Thanks for the guide. I'm using Ubuntu 8.10 and the installation seemed to work without any problems. However, I now get an encoding error where I didn't before, and I was wondering if anyone else has seen it. I'm trying to encode a DVD vob file to an xvid avi (I haven't got around to using the x264 stuff yet!).
Code:
ffmpeg -i VTS_01_3.VOB -vcodec libxvid -f avi -vtag XVID -s 320x128 -b 300k
-acodec libmp3lame -ar 44100 -ab 16k -ac 2 -vsync 0 -async 1 out.avi
I know for sure that the above worked with the ffmpeg I had previously from the Medibuntu repos. The error I now get from ffmpeg is:
Code:
[libxvid @ 0xa340f50]error, non monotone timestamps 20 >= 20
av_interleaved_write_frame(): Error while opening file
This error occurs only for one of the vobs, but still, it didn't occur before I upgraded ffmpeg. I have found some workarounds, and it might be that my original command was wrong?
The first workaround is to use 'vsync 1' instead of 'vsync 0' (or omitting the vsync option altogether). I only used 'vsync 0' for historical reasons, i.e. I copied it from somewhere. I've yet to find an explanation of the ffmpeg vsync option that I understand:
Code:
ffmpeg -i VTS_01_3.VOB -vcodec libxvid -f avi -vtag XVID -s 320x128 -b 300k
-acodec libmp3lame -ar 44100 -ab 16k -ac 2 -vsync 1 -async 1 out.avi
Another thing that avoids the error is to skip the start of the file using '-ss 0.001', which is not ideal because I want all of it:
Code:
ffmpeg -i VTS_01_3.VOB -ss 0.001 -vcodec libxvid -f avi -vtag XVID -s 320x128 -b 300k
-acodec libmp3lame -ar 44100 -ab 16k -ac 2 -vsync 0 -async 1 out.avi
Here's some ffmpeg output for those of you that can find problems hidden within gobbledygook:
Code:
FFmpeg version SVN-r17855, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-gpl --enable-postproc --enable-pthreads --enable-libfaac
--enable-libfaad --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libxvid
libavutil 49.15. 0 / 49.15. 0
libavcodec 52.21. 0 / 52.21. 0
libavformat 52.31. 1 / 52.31. 1
libavdevice 52. 1. 0 / 52. 1. 0
libswscale 0. 7. 1 / 0. 7. 1
libpostproc 51. 2. 0 / 51. 2. 0
built on Mar 6 2009 19:14:35, gcc: 4.3.2
I'd usually put this down to my source file being nonsense, but in this case I know it worked before.
Has anyone got any suggestions? Is ffmpeg broken? Is vsync useful?
Thanks in advance.
Bookmarks