Hope you don't mind me asking for a couple of pointers and your advice on the following prior to registering the (great!) product. I have included as much detail as possible and apologize in advance if any specifics have been covered elsewhere. Sorry if the list of questions is overwhelming, and for compiling them all into one post, hopefully some of the questions and issues are applicable to other users too. Feedback on any individual sections by Major or any of the other video-gurus around here would be splendid:
I have multiple cases of DivX or XviD presentations (640x272, 23.98fps) with AC3 audio (48000Hz, 5channels, 448kb/s) which I am attempting to convert to SVCD, XSVCD SVCD-D2 compliant MPEGs for playback on a DVD player at T-Mobile conferences.
The .AVI is split into two sections. The parts play well in QT with all three codecs, Ac3/3ivX/DivX. No need to DivX-Doctor the movie for correct playback and infact if I do, the error "no movie found" is returned!
First question, do these QT codecs all work equally well together for all video types, or does one take preference over the other when both can mutually handle the same video type? Which is better suited to the source types?
Now if I use the "Join" feature in ffmpegX to combine the two .avi, the resulting file only plays three quarters in QT/VLC/MPalyer before the movie stops. If I cut/paste one after the other in QT then save "with dependencies" the movie runs all the way till the end in QT, however the .MOV has one "Generic MPEG 4" video track (same as before), while audio becomes two "AC3 Stereo" tracks. One track per half of the movie! While this doesn't affect the playing or decoding/encoding is there any way you know of having both halves joined into one as happened with the video track? Although the AC3 track is seen by ffmpegX as 5 Channels, QT reports it as AC3 Stereo, so would this affect the resulting combined QT-with-depedencies file, ie. down-mixing, or are those two stereo tracks both the same 5 Channel tracks as before?
What exactly is the Join function doing (ie. the intermediate files/re-encoding, etc) any ideas why it is causing issues? I experimented using the Join tool after encoding the two .AVI sections separately with mixed results - joining two .mpv elementary streams results in a file size 25 bytes smaller than that of the two files together, while joined .mp2 elementary streams are identical in file size to the two files together. The joined .mpg (made from the same elementary streams) is 4689 bytes smaller than the two file sizes separately! The resulting joined mpeg also cuts short exactly like the joined .avi, although the separate mpegs play fine! (Whew!)
Although ffmpegX can't pull any data for the QT-with-dependencies movie (therefore Calculator won't work, etc) mpeg2enc recognises and encodes both video and audio accurately. ffmpeg on the other hand "could not find codec parameters" for audio. Any ideas or workaround?!
When using any source file of 23.98fps, the mpeg2enc encoder automatically applies 3:2 pulldown regardless of the "Set 3:2" option. "INFO: [mpeg2enc] Frame rate code: 1 = 24000.0/1001.0 (NTSC 3:2 pulldown converted FILM)". Does ffmpeg encoder also apply the same pulldown? Under what conditions (profile, etc) does this pulldown automatically occur? Surely the pulldown function in Video Tools should not be restricted to .m2v as the ffmpeg elementary streams which more appropriately require pulldown are .mpv files!
Using ffmpeg encoder I have created a 2500kbit/s svcd with D2 file size (352x480) and 16x9 flag using the original .avi as source. The final muxed .mpg created successfully during the original encoding, however attempting to re-create the .mpg using the 'MUX as SVCD or XSVCD' function in Video Tools on the elementary streams results in multiple errors "++ WARN: [mplex] Stream e0: data will arrive too late sent(SCR)" and termination. Any idea why this happens? The same methods using mpeg2enc produced no such errors - the final disc sizes were identical although the terminal showed different values throughout. Is there any difference between the Mpegs and CD images created by leaving the "Author as SVCD" option checked, and using the "MUX as SVCD" function on the elementary streams?
I've found from forum research (and some trial and error) that the general opinion is ffmpeg produces better quality MPEG2 video quality. What is the difference in MP2/AC3 audio encoding. I've found that mpeg2enc sometimes produces a small 'blip' glitch right at the beginning of MP2 audio, but perfect AC3, while ffmpeg produces great MP2, but AC3 with muddled channel volume (left is v.soft), although both AC3 output file sizes are identical! It seems that mpeg2enc's mp2 encoder exports the sound track as a .wav with same bitrate as source, then encodes exactly as if one were to extract the sound manually using QT then encode with ffmpeg encoder's audio file only, indeed both method's result in the same resulting file-size with small 'blip' fault. That being so, how come the file is different to ffmpeg's "movie audio to mp2" preset with same bitrate? mpeg2enc is also making the audio slightly longer playing (approx 2mins per 2hrs) with faster/higher pitched audio - this is the also the result of directly exporting the sound track to .wav via QT at 48000Hz (44100Hz makes the sound even longer and faster!).
At the moment I use decode with QT as it implements auto letterboxing and can retain 2.35:1 ratio video on 16x9 flagged video size by adding small black bars. Please correct me if I'm wrong I believe this is the method for producing anamorphic video from un-letterboxed, wider than 16x9 video.
For speed I'd rather use ffmpeg to decode (QT not ticked), however if I attempt to add manual letterboxing values the ratio always returns to 4:3 with black bars. Is this a known issue and is there anything else I should consider? For when this issue is resolved how does one calculate the manual letterbox values from the source and destination video heights, also including the 16:9 flag's affect on ratio. I know encode makes the biggest quality difference, but how does decode quality compare? Decode with ffmpeg also converts from FILM to 29.97 fps - is this what affects sync?
So... I'd prefer to use ffmpeg for my SVCD and am okay using QT-decoding, however I ALWAYS receive multiple "[mpeg2video @ 0x35e2b8]rc buffer underflow" errors with the SVCD profile (q=2-20). The same errors occur at different intervals even if I reduce the bitrate from 2500 to 1800. De-selecting QT-decode only returns more errors as above and also "[svcd @ 0x376034]buffer underflow".
If I leave the bitrate at 2500 but change to D2 video-size (352x480, 16x9 flag and svcd profile) I receive no such errors. Selecting "no profile" also returns no errors, even back at 480x480, 2500kbit/s. Which leads me to my final and most important question.
Last (thank goodness) questions, exactly what effect is the "Profile" setting having on both the ffmpeg and mpeg2enc encoders? With mpeg2enc, selecting SVCD profile forces 2500kbit/s bitrate no matter what is in the video tab. Changing the bitrate forces the profile to move to XSVCD. What are the similar effects on QMin (as it always says 6 in the box) and other such options and variables. What is the QMin value for mpeg2enc's SVCD related profiles and are there any coded QMax values? (Perhaps an extra section on the already-brill web-site detailing the intricacies and specifics of the Profiles!)
On the other hand, ffmpeg profiles seem not to force such things as the bitrate, QMin/Max values, etc. In this case the default QMin=2 and QMax=20 are apparent for both "SVCD" and "No profile" profiles. Any profile can be chosen and the Quantisation values successfully altered. Indeed with ffmpeg, increasing QMin to 6 (q=6-20) has allowed me to use the SVCD profile without underflow errors, but the quality is poor around edges. What would the actual differences be between svcd profile and no profile if the same Bitrate, video size and QMin/QMax settings were selected, as the terminal displays exactly the same data? This being so, how come q=2-20 causes underflow errors for one profile and not the other, perhaps the difference is in tolerable thresholds - the lack of errors when reducing the video size to D2 certainly indicates this? Is the QMin setting the same effect for both encoders and if so are they set the same for both encoder's SVCD profiles - is 6 the actual setting for SVCD in mpeg2enc, or is the profile selection just not updating the value on the options tab.
Your time and help (and patience!) with this is very much appreciated and I look forward to your response.
(No more brackets, except this one..)
Kind regards,
Adam Hirshfield
Results 1 to 6 of 6
-
-
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
-
Major, I can't thank you enough for your assistance. Your support really is superb and unrivalled!
I follow most of your responses and only a small amount of confusion remains. In a few parts of the above reply you mention the use of XSVCD profile for ffmpeg encoding to avoid buffer underflow errors. There is definitely no such profile for this encoder, hence why I was enquiring as to the difference with "No profile" which worked successfully but obviously without the "other muxing features needed for SVCD, like svcd scan data" to which you refer.
I still don't fully understand why exported .WAV files from QT or the mpeg2enc encoder run longer and faster than the source. Will this affect the final multiplexing - would video speed up or audio slow down to match the other's play length?
You state that there is no difference between leaving the "Author as SVCD" option checked, and using the "MUX as SVCD" function on the elementary streams, however as I described, on encoding a single .AVI with ffmpeg, the muxing which automatically occurs at the end of encoding successfully created the .mpg file. Using the same elementary streams with the "MUX as SVCD or XSVCD" function broke the MUX as... tool with "data will arrive too late" like you explained.
My main goal is to mux the .mpv resulting from ffmpeg's video encoding of the QT-with-dependencies file with audio ripped and converted to .mp2 from the source. This separate audio method is only required as the QT-with-dependencies has successfully combined video, but "could not find codec parameters" for audio. Any ideas, as the mpeg2enc has no such problems with audio from a QT-with-dependencies file?
To get a full audio track I either 'extract to .wav' in QT, from the QT-with-dependencies file, which gives me a full audio track but running a little longer and faster as previously mentioned. I have also successfully used the 'Movie audio to MP2' profile on both separate .avis then joined the .mp2's using the Join tool which works on .mp2 perfectly. This latter method gives me an ffmpeg encoded .mp2 with running time and pitch exactly the same as source.
I am choosing to do it all this way in order to utilize your applications feature of splitting a large resulting MPEG into appropriate CD file sizes. If I just encode the two .AVI halves separately with ffmpeg, the streams are muxed perfectly (but only when done automatically as above!) however are too large for each to fit on single CD, so both would require two discs. If the file sizes were combined they could fit on 3 CDs instead of 4, but
What is the calculation to determine the required manual letterboxing values, from the source and destination movie height. For example source is 640x272 and destination is 480x480, so scaling needs to be calculated then additional black bar requirement? Furthermore would this be the same value when 16:9 flag is used (for after the fix) or would the input letterbox values be 'auto-squashed' at the same rate as the picture with that flag.
As I am unable to utilize the 'MUX As' tool on my resulting .mpv, but can successfully use the muxing which occurs at the end of an encode session, is there any way to insert my separate audio track (.wav or .mp2 as above) for encoding with the QT-With-dependencies source providing the video track?
I am currently experimenting with the "Add audio..." feature but does it require the encode audio box checked, will it re-encode the input audio file as per the Audio Codec and Parameter settings, and which is the default Audio track number for an SVCD? What is the effect of the source file already having an audio track - even though in this case ffmpeg will "not find codec parameters"? Would invert mapping affect me in anyway during my endeavours?
Thanks again (and again). Hope you had a splendid weekend.
Kind regards,
Adam
-
Originally Posted by hirshfield
-
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Originally Posted by hirshfield
Similar Threads
-
Ripbot's Audio profiles
By thezanny in forum Video ConversionReplies: 0Last Post: 18th Mar 2011, 20:51 -
WinFF - QMin/QMax : why 31 ???
By Klagar in forum Video ConversionReplies: 6Last Post: 28th Sep 2010, 15:58 -
audio encoders in avidemux
By mbur in forum Newbie / General discussionsReplies: 4Last Post: 30th Jul 2010, 19:48 -
What is max bitrate and max channels supported by PCM audio format?
By Bonie81 in forum Newbie / General discussionsReplies: 10Last Post: 18th May 2010, 23:35 -
QMin and QMax?
By RioCreations in forum ffmpegX general discussionReplies: 1Last Post: 1st Jan 2008, 14:33