January 20, 2021, 07:26:50 PM



MPEG2 doesn't work any more

Started by McBrady, November 14, 2020, 11:09:59 PM

Previous topic - Next topic



MPEG2-Encoding always worked fine. As of today, I cannot get ANY MPEG2-encode to work. Whatever file and whatever setting I use, I get the message
"Cannot set up encoder. The configuration supplied to the encoder may be incompatible or the encoder may depend on features unavailable on this system."
Any idea what's going on?


Works fine for me with the latest official MinGW (win64) nightly. Please reproduce the issue and attach admlog.txt from %localappdata%\avidemux\ to your reply.




[adm_lavLogCallback] 23:28:22-790 [lavc] MPEG-1/2 does not support 2997/100 fps
The problem is the source AVI, it should actually have fps of 30000/1001 but it has 29970/1000 instead (yes, Avidemux creates such AVIs as the AVI muxer hasn't received updates for improved time base handling). You might try to force the proper timing with the "changeFps" filter.


Thank you very much, it worked fine...

Could you please explain the technical difference to me, for mathematically it is the same...


They are not the same, mathematically. The MPEG-2 encoder expects one of standard frame rates, expressed as a fraction (timebase denominator / timebase numerator): https://github.com/FFmpeg/FFmpeg/blob/release/4.2/libavcodec/mpeg12framerate.c#L24

Thus 1000/29970 is invalid as time base for MPEG-2. The frame rate ( = 1/timebase) is pretty close to that of 1001/30000, but not the same.