I'm trying to make XviD files (made with MPEG4 Native Enconder from ffmpeg) really DVD Compliant. But there must be some default option I can't find, which makes it unplayable (only sound) in one DVD Player I've tested. With libxvid it's Works OK in every Player I've tested, but with mpeg4 library there are lots of problems with B frames, but also whithout using them! And I'd like to be able to use it (without B frames) maybe for interlacing or just because it's much faster than libxvid. And also because I just found a Bug with 2 pass in libxvid nobody seems to care...
I only made mpeg4 library work with Mencoder (I think it uses the same libavcodec mpeg4 encoder library than ffmpeg) and default settings (only whitout B frames and adding XVID FourCC), but I don't know if there's a way to know what differences are between files made with ffmpeg and the working one made with Mencoder, besides MediaInfo and Gspot (only changes User Data and audio Preload Duration, which won't be the problem, althought I can't change).
I've just opened them with Elecard Video Format Analyzer and Vdub Hex Editor, but I can't uderstand anything... And can't find encoder options.
Also with Mencoder I get rid of that annoying "VBR Audio detected" message with VDub! But I think this can't be fixed with ffmpeg...
+ Reply to Thread
Results 1 to 9 of 9
The ffmpeg version has much shorter GOPs (I-frame interval), 12 vs. (up to ) 166. That's usually not a problem for Xvid players, but that's about the only difference I see.
When using B-frames look into "packed bitstream". Some players may require it off or on.
You can see those statistics with GSpot.
The fourCC is the key, if a xvid player don't see xvid or divx as the id it usually won't try to play it. Only workaround would be to change the fourCC manually or specify it at encode time.if all else fails read the manual
Both his files show XVID as the fourcc.
Good catch, my bad.if all else fails read the manual
I don't think it's small (default) gop size, because with libxvid it was worse with -g 250, but only when burned files to a CD (it stutters and hangs), but with a DVD all libxvid files were ok.
I don't use B frames, but and I think libxivd always does Packed (can be turned off only with MPEG4 Modifier), but mpeg4 never does (which causes pixelations in almost all players I tried).
Looking with Elecard Video Format Analyzer I see differences in dwQuality and dwSuggestedBufferSie (some RIFF variables...) and with Audio Sampling Rate:
Mencoder: 16 KHz (but it's really 48 kHz!) Because it says dwRate=16000 and dwScale=1
ffmpeg: 0.042 knz!? (it's also 48 kHz!) Because it says dwRate=125 and dwScale=3 (125/=41,667)
And in Mencoder there are 2 extra JUNK in every stream. Whatever that means...
I would try the following:
Remux both videos with VirtualDub without the audio (Video -> Direct Stream Copy, Audio -> No Audio). That will eliminate issues involving audio and audio muxing. Do the result videos play any differently?
Remux both videos with VirtualDub, keeping both video and audio (Video -> Direct Stream Copy, Audio -> Direct Stream Copy). This will eliminate some multiplexing issues. Any difference in playback?
You can try changing the dwQuality and dwSuggestedBufferSize variables with a hex editor. VirtualDub's Hex editor shows you where they are when you click on them.
[Attachment 41153 - Click to enlarge]
There's no such thing as making Xvid files "DVD compliant". Xvid is not part of the DVD spec. The ability to play Xvid is an option provided by some manufactures on some models. Supported features will vary from manufacturer to manufacturer and model to model.
Packed Bitstream doesn't apply when there are no B frames.
The features that usually cause problems with DVD players are GMC and QPel. Neither of your files use them.
Another cause of problems can be the bitrate -- too high a bitrate will cause problems. But your two videos have about the same bitrate.
Muxing method can be an issue. Remuxing with a different program may make a difference.
It is odd that VirtualDub thinks the audio in the ffmpeg video is VBR, when everything else thinks is CBR.
Last edited by jagabo; 5th Apr 2017 at 08:11.
I've tried remuxing both videos (with and whitout audio), and the problem is the same, only Work videos made with Mencoder (with and without audio), so the muxing is not the problem.
If I open the video with AVInaptic, there's a repeated Audio Bitrate field which says "128 kbps VBR" appart from the one that says "128 kbps CBR"! So, there's must be something wrong, and Vdud still complains about if I just remux video and audio.
But, yes, it doesn't complain with "FFMPEG Suported Files"...