Converting with ffmpeg a .mov to uncompressed .avi results in a black screen in virtualdub

ffmpegvideovideo conversionvirtualdub

I am trying to convert a .mov to an uncompressed .avi with ffmpeg. As I want no quality loss, I am using the following ffmpeg command:

ffmpeg -i toto.mov -vcodec copy -y toto.avi

The convertion works perfectly (the video works in VLC) except that when I am opening the file with virtualdub I get a black screen.

In VirtualDub, under file information I get the following:

Frame size: 800x600, 30.000fps
Length: 802 frames
Decompressor: Internal DIB decoder

If I am not specifying the -pix_fmt and -vcodec arguments, ffmpeg convert to mpeg-4 and yuv420p but I am loosing on the quality as my file shrunk to about 400Mo to 1Mo but the video works in virtualdub and this time the Decompressor is set to ffdshow Video Codec (FMP4). I doubt this is a ffdshow as I had another video working perfectly with the internal DIB decoder.

Any idea, to get the image in virtualdub?

Best Answer

In first instance you are just changing the media container, but not the codec. Probably VirtualDub can not decode that codec which is in your original toto.mov container. You can transcode the codec to MPEG-4 with the -q:v set to 1, this results in good enough quality.

ffmpeg -i toto.mov -q:v 1 -vcodec mpeg4 -y toto.avi
Related Question