View Full Version : How to sync oddly mismatched audio?!
asarian
11th September 2016, 02:12
I have this movie, 1080i60, with an original framerate of 29.970 fps (with pulldown), which is set to play at 24.3094 fps. And it plays fine.
So, I removed the pulldown (with tsMuxer), reencoded it (denoised it), and the movie got encoded at 24.3094 fps as well.
But now I can't get the audio to sync at all, no matter at what framerate I set the video in the container (mkv).
I did get this weird error(s) from tsMuxer, though:
Warning! Source stream contain irregular pulldown marks. Mistiming between original fps and fps/1.25(without pulldown) exceed 6406ms.
And, indeed, audio is out of sync (severely). So, I double-checked the original, and, indeed, it's set to play at 24.3094 fps (but mentions the original framerate of 29.970).
So, how can I get this audio to sync properly?!
johnmeyer
11th September 2016, 02:32
Does it drift in and out of sync, or does it simply get progressively more and more out of sync? The former would indicate some sort of irregular pulldown pattern, which is what the error message suggests. The later would indicate a frame rate that isn't quite right.
For situations like this, I put the video into my NLE (Vegas) and look at the length of the audio and video. They should be identical, but if they aren't that gives me one clue.
Vegas generates waveforms for the audio which lets me easily measure the audio offsets at various places in the video (by looking for impulse noises, like a gunshot, or by looking at lip movement when uttering plosives). I can then usually figure out what remedies to apply.
One other thing, if the audio was indeed in perfect sync before you did your IVTC, then I suspect that you may also find problems with the video. You should do a critical look at whether you see missing frames (i.e., abnormal jumps in motion from one frame to the next) or duplicate frames.
asarian
11th September 2016, 07:05
Does it drift in and out of sync, or does it simply get progressively more and more out of sync? The former would indicate some sort of irregular pulldown pattern, which is what the error message suggests. The later would indicate a frame rate that isn't quite right.
Thank you for replying!
It's not drifting. It's just getting progressively out of whack. Up to 10 seconds or more.
For situations like this, I put the video into my NLE (Vegas) and look at the length of the audio and video. They should be identical, but if they aren't that gives me one clue.
That's the funny thing: both audio and video tracks (separately) are exactly 1:44:53 secs, playing at 24.3094 fps. If I change the muxing fps to, say, 23.976 fps, then the movie gets too long (1:46:21) or too short (1:25:04), when I set it to 29.970 fps. That's what's so weird: both tracks are exactly as long as they should be at 24.3094, but the audio doesn't mux with that at all. At first I used the demuxed audio stream; but I also tried it with just selecting the audio stream inside the original. Makes no difference.
When I tried to take a sample, with tsMuxer's 'cut' function, it just muxes it as 29.970 fps (or 24.3094 fps with pulldown removed). This is what mediainfo says about the original though (notice how it comments on the original frame rate being 29.970):
http://imgur.com/a/91Fk5
Quite lost here.
asarian
11th September 2016, 07:24
Hmm, smelling a rat here. :) I suddenly noticed the "frame rate mode: variable" line in the original mediainfo output.
So, that begs the question, How do I get tsMuxer to copy the variable frame rate indices of the original stream into the new one?
tebasuna51
11th September 2016, 09:36
The MediaInfo included don't show the container, and other interesting data (Frame count, Duration in ms, Interlacement, Delay...)
Use MediaInfo -> Debug -> Advanced mode
Load the file
File -> Export -> Text -> Advanced mode -> Save the report
Use Pastebin to upload the text or zip/7z to compress and attach here.
BTW, you can try this:
Load the original file in MkvToolNix and create a .mkv file.
Check if the mkv play in sync.
Use MkvExtract to extract the timecodes of video track.
Load the recoded file in MkvToolNix and create a .mkv file.
Use MkvExtract to extract the timecodes of video track.
Check if both timecodes files have the same number of lines (then have the same number of frames)
If videos have the same number of frames you can remux the recoded video with MkvToolnix with the original timecodes.
If recoded video have less frames than original you can't recover the sync with audio. The recoded video is usseless.
asarian
11th September 2016, 12:08
^^ Thank you kindly, tebasuna51!
The mkvextract + mkvtoolnix trick worked perfectly! I did as specified, created a timecodes.txt file from the original first, then created a new mkv with it, and muxed the audio back in with mkvtoolnix! Worked like a charm! :)
Also found out tsMuxer was never going to work, ever, as, apparently, it completely ignores any and all VFR flags.
P.S. Heretofore, to my shame, I must admit, I never encountered VFR video before. But I learnt a lot today!
Thanks again. Solved.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.