VirtualDub'у нужно, чтобы видео было той же длины, что и аудио. А у вас одна картинка.
Для решения этой проблемы можно использовать AviSynth. Это скриптовый язык для редактирования видео. Инсталлятор можно взять на
avisynth.nl
Нужно создать файл с расширением .avs и примерно следующим содержанием.
ImageSource("image.jpg", 0, 0) # здесь путь до вашей картинки
AssumeFPS(25) # установим частоту кадров будущего видео в 25
Loop(N) # тут нужно указать, сколько раз нужно повторить картинку,
# чтобы получилось видео нужной длины
# (продолжительность аудио в секундах × частота кадров = 25)
AviSynth-скрипты VirtualDub открывает как обычное видео. Не забудьте настроить сжатие видео (в сети полно мануалов), иначе получится файл очень большого размера.