View Full Version : Source MPEG PS plays fine, demuxed result goes out of sync.
Blue_MiSfit
2nd February 2009, 20:12
Hi folks,
I have a couple of sources that are giving me a hard time.
The sources are MPEG Program Streams, with MPEG-2 video, and Dolby Digital audio. They play fine in Media Player Classic and VLC, with no sync issues whatsoever.
However, when I try to demux the audio track, I get something that goes out of sync after a certain point. DGIndex and eac3to are my standard tools, but both produce the same result. I even tried transcoding the audio from the source using Avisynth and DirectShow + SoundOut, and got the same result!
I tried cutting a piece of this program stream using MPEG2Cut2, but this also goes out of sync!
Am I going insane? Any suggestions are welcome!!:p
Thanks in advance,
~MiSfit
Guest
2nd February 2009, 20:16
Are they live captures with commercials? Sometimes the audio parameters change at commercials.
Blue_MiSfit
2nd February 2009, 20:25
Hi neuron2,
No, these are 50mbps CBR captures from some sort of HD tape (comes from one of our partner encoding houses).
~MiSfit
Guest
2nd February 2009, 20:48
Post a sample that includes a point at which sync changes.
Blue_MiSfit
2nd February 2009, 20:58
Okay, uploading now. It's big... 320MB. Sorry about that, the point where it seems to go out of sync doesn't have much in the way of audio, so I included a large range to be safe. I'll update this post when it's completed.
http://www.megaupload.com/?d=XBCIHON0
Thanks!!
~MiSfit
madshi
2nd February 2009, 22:36
You say you demux the audio. But what do you do with the video? Do you remux the audio to some other container? Along with the video? Or do you play the video inside of the original MPEG container while playing the audio externally? I'm asking because this could be a problem related to the source filters you're using for playback...
Blue_MiSfit
2nd February 2009, 23:58
Madshi:
I've done it one of a few ways. The standard procedure is to process audio directly to a new AC3, then encode video (to H.264), then mux to a TS, which then goes through QA. This is where the problem was detected.
To diagnose the problem, I've completely demuxed the program stream, and remuxed with the original MPEG-2 video. I've also used the little trick in Media Player Classic where it loads audio tracks based on file names.
So for example, if meat.m2v and meat.ac3 are in the same directory, opening meat.m2v will also play audio from meat.ac3.
~MiSfit
Guest
3rd February 2009, 02:07
Regarding your sample...
The video has jerks in it. Are you aware of that?
I don't see a sync discontinuity. To get the screeching of the train's stop at the beginning and the talking at the end in sync, I apply:
vid=MPEG2Source("MidnightMeatTrain_178_6ch_2008.d2v")
aud=nicac3source("MidnightMeatTrain_178_6ch_2008 T80 3_2ch 640Kbps DELAY 50ms.ac3",2).DelayAudio(-.700)
audiodub(vid,aud)
So I don't think the sync changes in the clip. But it does mismatch the delay declared by DGIndex. I'll have to study that in more detail.
Have you a sample where there is a discernible sync discontinuity? If not, then you can solve this with an appropriate audio offset.
Blue_MiSfit
3rd February 2009, 02:47
neuron2,
Thanks for looking!
When you say "jerks", what exactly do you mean?
I'm uploading another (larger) sample that should be helpful, and seems to contain the sync change. When played normally this sample will be in sync.
When demuxed to M2V+AC3 with DGIndex, and played back, it will be out of sync by the end. The opening fight scene will be in sync, but the ending piece of dialogue - "please" will be clearly out of sync.
Apologies ahead of time for the excessive gore :) It's Lionsgate...
I'll make another post when I get in tomorrow morning and the sample is finished uploading.
Thanks for your time!
~MiSfit
Guest
3rd February 2009, 03:05
I mean there are visible jerks. :) Single step and you can see missing frames -- discontinuous motion.
I like gore. Even if he was wrong about global warming. Bring it on.
Blue_MiSfit
3rd February 2009, 03:48
:D
Interesting find! I think it might be part of production... this whole scene is pretty disconcerting, what with the flickering lights and fast action.
~MiSfit
Guest
3rd February 2009, 04:01
Waiting for your new upload...watching Family Guy while I wait.
Blue_MiSfit
3rd February 2009, 05:22
I hope you have lots of episodes stocked up, because it's going to be tomorrow morning :)
Thanks again for your kind help!
~MiSfit
madshi
3rd February 2009, 09:39
neuron2 is quite right with saying that video frames are missing. Here's the eac3to log when remuxing to MKV:
eac3to v3.06
command line: eac3to MidnightMeatTrain_178_6ch_2008.MPG test.mkv
------------------------------------------------------------------------------
MPG, 1 video track, 1 audio track
1: MPEG2, 1080p24 /1.001 (16:9)
2: AC3, 5.1 channels, 640kbps, 48khz, dialnorm: -27dB, 51ms
[v01] Extracting video track number 1...
[v01] Muxing video to Matroska...
[a02] Extracting audio track number 2...
[a02] Removing AC3 dialog normalization...
[a02] Applying (E-)AC3 delay...
[a02] A remaining delay of -13ms could not be fixed.
[a02] Creating file "test - 2 - AC3, 5.1 channels, 640kbps, 48khz.ac3"...
[v01] Video has a gap of 2 frames at playtime 0:00:18. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:18. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:19. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:19. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:19. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:19. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:20. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:20. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:20. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:20. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:20. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:21. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:22. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:24. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:27. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:30. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:00:31. <WARNING>
[v01] The MKV file was created without making use of the gap/overlap information. <WARNING>
[v01] Please check whether audio is in sync. If it is in sync everything is fine. <WARNING>
[v01] Otherwise ask eac3to to repeat the muxing. It will then automatically make <WARNING>
[v01] use of the detailed gap/overlap information. <WARNING>
Added fps value to MKV header.
Video track 1 contains 1272 frames.
eac3to processing took 9 seconds.
Done.
When I play the resulting MKV + AC3 file, audio gets clearly out of sync. However, if I let eac3to redo the MKV file timestamps to honor the gaps in the video stream, video and audio are in sync again when playing the MKV + AC3 combination.
So the problem is that the video stream is missing frames. If you simply demux the video, these missing frames mean that the video is too short compared to the audio. When playing the video in its original container, although some frames are missing, the timestamps in the container take care of that audio and video stay in sync. By demuxing the video track you're losing the timestamp information.
Make sure you get a proper stream from your encoding house and the problem should disappear automatically...
------------
P.S: Damn, I should have waited with posting this, because now we might not get that bigger upload. Let me retract my statement. Hmmmmm... I think in order to analyze this problem, you need to upload the whole movie for us to look at... ;)
Guest
3rd February 2009, 14:48
Yes, madshi sounds spot on. But if Blue remuxed it, those timestamp discontinuities shouldn't be there (muxer rewrites timestamps) unless his muxer hosed up. Blue, what muxer did you use? Can you give us a cut of the original, unprocessed source, so we can see if the problem is in the source or you introduced it with your process.
madshi
3rd February 2009, 14:57
As far as I understand the MPEG fragment we got is the original container coming from the encoding house?
Guest
3rd February 2009, 14:59
If so, then case closed. I understood it the other way, but we'll soon find out.
"To diagnose the problem, I've completely demuxed the program stream, and remuxed with the original MPEG-2 video."
Blue_MiSfit
3rd February 2009, 20:59
Hi all,
Yes, both fragments I posted were from the original, albeit cut with MPEG2Cut2, which I'm no expert in. I know it can alter streams quite a bit.
Here's the latest sample I uploaded last night:
http://www.megaupload.com/?d=KFRIRGUW
madshi, I'm still groking your findings.
So, you're saying that because there are missing video frames, the demuxed (or re-encoded) video will go out of sync after the point where the missing frames should have been, because this mux doesn't have the timestamps (pts, right?).
Hmmmmm... I think in order to analyze this problem, you need to upload the whole movie for us to look at...
I'd be happy to provide it... but unfortunately our licensing agreement with the studio doesn't allow me to do this :( I'm sorry...
neuron2:
If so, then case closed. I understood it the other way, but we'll soon find out.
"To diagnose the problem, I've completely demuxed the program stream, and remuxed with the original MPEG-2 video."
Right. I demuxed the program stream and remuxed it to a TS using TSMuxeR, and got a file that goes out of sync at the same place. This was just a sanity check to make sure nothing in my encoding chain was throwing a wrench into things.
I know it's an ugly workaround, but is there any way to extract these timestamps from the program stream, and include them in the mux of a transport stream containing H.264 and re-encoded AC3? Our in-house muxer has support for something like this.
The real question now becomes how 3 files on the same disk were corrupted like this. I've already ordered redeliveries, but WTH?
Thanks again for your help, gents!
~MiSfit
Guest
3rd February 2009, 21:41
Don't use MPEG2CUT!!!!!
Use DGSplit to get an unaltered cut. Then upload that. It's not worth bothering with anything other than the original untouched stream. Really.
Blue_MiSfit
3rd February 2009, 22:12
Ouch. I had no idea MPEG2Cut2 was such a bad idea :p
I'll do another upload with DGSplit.
Here's my guess on how to do it:
Cut ~900MB starting at ~81.1% of the total filesize - 81.1% being roughly where I started the previous sample with MPEG2Cut2 based on timecode, and hope for the best?
Sorry, I'm new to this app.
~MiSfit
Guest
3rd February 2009, 22:24
The latest version of DGSplit will allow you to specify the start and end of the segment you want. Use segment mode and experiment a bit until you get what you want.
Blue_MiSfit
3rd February 2009, 22:32
Very cool! The cut segment doesn't play in Media Player Classic (I assume since I split at an arbitrary place), but DGIndex is just fine with it.
My first few tries weren't quite right regarding the region I was interested in. However, the final cut shows everything I care about, and even plays in MPC!
Uploading..
~MiSfit
madshi
3rd February 2009, 22:37
So, you're saying that because there are missing video frames, the demuxed (or re-encoded) video will go out of sync after the point where the missing frames should have been, because this mux doesn't have the timestamps (pts, right?).
Correct.
But even if you maintain the timestamps it's all bad. The sync is correct then, but the motion still isn't smooth due to those missing video frames.
I'd be happy to provide it... but unfortunately our licensing agreement with the studio doesn't allow me to do this :( I'm sorry...
No worries. I was 100% sure that you wouldn't be allowed to do that. I was just kidding... ;)
I know it's an ugly workaround, but is there any way to extract these timestamps from the program stream, and include them in the mux of a transport stream containing H.264 and re-encoded AC3?
I don't think so. But even if that was possible: Do you really want to work with a clearly broken source? If it was me, I'd slap your encoding house guys left and right and demand a clean source. (That is if the original source coming from the encoding house is really broken, so better make sure it's really their fault before slapping them... :p).
Guest
3rd February 2009, 22:37
Great. Upload it. But we don't need 900MB. Just give us 200MB including a jerky section. We need to see if the timestamps are hosed and frames missing in your source, versus being lost in your process. You'll also be able to tell them exactly what is wrong with their source, assuming it is their source.
Blue_MiSfit
3rd February 2009, 22:46
I'm going to upload the whole stupid thing, if you don't mind ;)
This is "the" definitive sample that shows both in and out of sync sections, and was properly sliced apart with your handy tool.
~MiSfit
Blue_MiSfit
3rd February 2009, 22:56
Madshi:
I don't think so. But even if that was possible: Do you really want to work with a clearly broken source? If it was me, I'd slap your encoding house guys left and right and demand a clean source. (That is if the original source coming from the encoding house is really broken, so better make sure it's really their fault before slapping them... ).
Absolutely. A large, smelly trout is being prepared as we speak. This investigation just makes the fish all the smellier :)
Thank you both again!
~MiSfit
Guest
3rd February 2009, 23:34
Post again when the upload is complete.
Blue_MiSfit
3rd February 2009, 23:48
http://www.megaupload.com/?d=LOVJ2EK0
There's the link!
~MiSfit
madshi
4th February 2009, 13:03
Same issue as before:
eac3to v3.06
command line: eac3to meat_cut3.mpg test.mkv
------------------------------------------------------------------------------
MPG, 1 video track, 1 audio track
1: MPEG2, 1080p24 /1.001 (16:9)
2: AC3, 5.1 channels, 640kbps, 48khz, dialnorm: -27dB, -18ms
[v01] Extracting video track number 1...
[a02] Extracting audio track number 2...
[a02] Removing AC3 dialog normalization...
[a02] Applying (E-)AC3 delay...
[a02] A remaining delay of +14ms could not be fixed.
[v01] Muxing video to Matroska...
[a02] Creating file "test - 2 - AC3, 5.1 channels, 640kbps, 48khz.ac3"...
[v01] Video has a gap of 2 frames at playtime 0:01:49. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:49. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:49. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:49. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:50. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:50. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:50. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:50. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:51. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:51. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:51. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:51. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:52. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:54. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:01:57. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:02:01. <WARNING>
[v01] Video has a gap of 2 frames at playtime 0:02:01. <WARNING>
[v01] The MKV file was created without making use of the gap/overlap information. <WARNING>
[v01] Please check whether audio is in sync. If it is in sync everything is fine. <WARNING>
[v01] Otherwise ask eac3to to repeat the muxing. It will then automatically make <WARNING>
[v01] use of the detailed gap/overlap information. <WARNING>
Added fps value to MKV header.
Video track 1 contains 3407 frames.
eac3to processing took 32 seconds.
Done.
So unless there's a bug in eac3to your encoding house dropped the ball.
Blue_MiSfit
4th February 2009, 21:04
Thanks, Madshi.
I've never used the full remux functionality of eac3to before. Our workflow only uses eac3to for the audio track (and we process the video via DGIndex). I assume there's no way for eac3to to look at the video stream if it's only asked to demux audio, correct?
And neuron2 - is there any way for DGIndex to catch errors like these during the indexing phase?
~MiSfit
madshi
4th February 2009, 21:35
I've never used the full remux functionality of eac3to before. Our workflow only uses eac3to for the audio track (and we process the video via DGIndex). I assume there's no way for eac3to to look at the video stream if it's only asked to demux audio, correct?
eac3to counts the video frames if audio is demuxed, only, but no warnings are shown for video gaps.
I guess I could make the already existing "-check" option complain about video gaps/overlaps (it currently doesn't do that, either). You could then do "eac3to source.mpg -check audio.ac3". That would demux audio and check for video gaps/overlaps at the same time...
lexor
4th February 2009, 22:34
eac3to counts the video frames if audio is demuxed, only, but no warnings are shown for video gaps.
I guess I could make the already existing "-check" option complain about video gaps/overlaps (it currently doesn't do that, either). You could then do "eac3to source.mpg -check audio.ac3". That would demux audio and check for video gaps/overlaps at the same time...
would these gaps not be the same as audio gaps?
Blue_MiSfit
4th February 2009, 22:41
Madshi,
If you think it would be useful to others to add that option, I'm all for it :)
Thanks again,
~MiSfit
madshi
4th February 2009, 22:50
would these gaps not be the same as audio gaps?
What do you mean?
Guest
4th February 2009, 23:53
And neuron2 - is there any way for DGIndex to catch errors like these during the indexing phase? Not currently. It's a horribly pathological stream and so I don't consider it worth adding anything for that. If you know what you are doing you can parse the timestamps log to detect it.
lexor
5th February 2009, 00:14
What do you mean?
This, are these gaps not the same as video gaps? I can't check, this was a cap of a concert and I didn't keep the video, which was atrocious quality, I just have the music. (eac3to fixes it all nice, I'm assuming, output is flawless as far as I can tell)
command line: "eac3to.exe" input.ac3 output.ac3
------------------------------------------------------------------------------
AC3, 5.1 channels, 0:51:20, 384kbps, 48khz, dialnorm: -27dB
Removing AC3 dialog normalization...
Creating file "output.ac3"...
This track is not clean. <WARNING>
Audio has a gap of 32ms at playtime 0:00:24. <WARNING>
Audio has a gap of 32ms at playtime 0:00:39. <WARNING>
Audio has a gap of 32ms at playtime 0:01:09. <WARNING>
Audio has a gap of 32ms at playtime 0:01:18. <WARNING>
Audio has a gap of 32ms at playtime 0:01:19. <WARNING>
Audio has a gap of 32ms at playtime 0:02:00. <WARNING>
Audio has a gap of 32ms at playtime 0:02:28. <WARNING>
Audio has a gap of 32ms at playtime 0:02:42. <WARNING>
Audio has a gap of 32ms at playtime 0:03:23. <WARNING>
Audio has a gap of 32ms at playtime 0:03:40. <WARNING>
Audio has a gap of 32ms at playtime 0:04:14. <WARNING>
Audio has a gap of 32ms at playtime 0:04:16. <WARNING>
Audio has a gap of 32ms at playtime 0:04:27. <WARNING>
Audio has a gap of 32ms at playtime 0:05:24. <WARNING>
Audio has a gap of 32ms at playtime 0:05:41. <WARNING>
Audio has a gap of 32ms at playtime 0:07:20. <WARNING>
Audio has a gap of 32ms at playtime 0:07:54. <WARNING>
Audio has a gap of 32ms at playtime 0:09:06. <WARNING>
Audio has a gap of 32ms at playtime 0:09:09. <WARNING>
Audio has a gap of 32ms at playtime 0:09:34. <WARNING>
Audio has a gap of 32ms at playtime 0:11:15. <WARNING>
Audio has a gap of 32ms at playtime 0:12:19. <WARNING>
Audio has a gap of 32ms at playtime 0:12:34. <WARNING>
Audio has a gap of 32ms at playtime 0:14:21. <WARNING>
Audio has a gap of 32ms at playtime 0:15:13. <WARNING>
Audio has a gap of 32ms at playtime 0:15:31. <WARNING>
Audio has a gap of 32ms at playtime 0:15:42. <WARNING>
Audio has a gap of 32ms at playtime 0:16:55. <WARNING>
Audio has a gap of 32ms at playtime 0:17:24. <WARNING>
Audio has a gap of 32ms at playtime 0:17:39. <WARNING>
Audio has a gap of 32ms at playtime 0:17:55. <WARNING>
Audio has a gap of 32ms at playtime 0:18:07. <WARNING>
Audio has a gap of 32ms at playtime 0:18:08. <WARNING>
Audio has a gap of 32ms at playtime 0:18:17. <WARNING>
Audio has a gap of 32ms at playtime 0:18:20. <WARNING>
Audio has a gap of 32ms at playtime 0:19:09. <WARNING>
Audio has a gap of 32ms at playtime 0:19:36. <WARNING>
Audio has a gap of 32ms at playtime 0:19:56. <WARNING>
Audio has a gap of 32ms at playtime 0:22:08. <WARNING>
Audio has a gap of 32ms at playtime 0:22:23. <WARNING>
Audio has a gap of 32ms at playtime 0:23:36. <WARNING>
Audio has a gap of 32ms at playtime 0:23:41. <WARNING>
Audio has a gap of 32ms at playtime 0:23:54. <WARNING>
Audio has a gap of 32ms at playtime 0:23:54. <WARNING>
Audio has a gap of 32ms at playtime 0:24:41. <WARNING>
Audio has a gap of 32ms at playtime 0:24:42. <WARNING>
Audio has a gap of 32ms at playtime 0:24:49. <WARNING>
Audio has a gap of 32ms at playtime 0:25:23. <WARNING>
Audio has a gap of 32ms at playtime 0:26:58. <WARNING>
Audio has a gap of 32ms at playtime 0:29:13. <WARNING>
Audio has a gap of 32ms at playtime 0:29:26. <WARNING>
Audio has a gap of 32ms at playtime 0:29:53. <WARNING>
Audio has a gap of 32ms at playtime 0:29:57. <WARNING>
Audio has a gap of 32ms at playtime 0:30:31. <WARNING>
Audio has a gap of 32ms at playtime 0:30:51. <WARNING>
Audio has a gap of 32ms at playtime 0:31:25. <WARNING>
Audio has a gap of 32ms at playtime 0:32:04. <WARNING>
Audio has a gap of 32ms at playtime 0:32:27. <WARNING>
Audio has a gap of 32ms at playtime 0:32:41. <WARNING>
Audio has a gap of 32ms at playtime 0:32:53. <WARNING>
Audio has a gap of 32ms at playtime 0:33:38. <WARNING>
Audio has a gap of 32ms at playtime 0:33:43. <WARNING>
Audio has a gap of 32ms at playtime 0:36:09. <WARNING>
Audio has a gap of 32ms at playtime 0:36:09. <WARNING>
Audio has a gap of 32ms at playtime 0:37:39. <WARNING>
Audio has a gap of 32ms at playtime 0:38:31. <WARNING>
Audio has a gap of 32ms at playtime 0:38:36. <WARNING>
Audio has a gap of 32ms at playtime 0:38:56. <WARNING>
Audio has a gap of 32ms at playtime 0:39:26. <WARNING>
Audio has a gap of 32ms at playtime 0:40:41. <WARNING>
Audio has a gap of 32ms at playtime 0:40:42. <WARNING>
Audio has a gap of 32ms at playtime 0:41:01. <WARNING>
Audio has a gap of 32ms at playtime 0:41:04. <WARNING>
Audio has a gap of 32ms at playtime 0:41:59. <WARNING>
Audio has a gap of 32ms at playtime 0:42:06. <WARNING>
Audio has a gap of 32ms at playtime 0:42:48. <WARNING>
Audio has a gap of 32ms at playtime 0:43:13. <WARNING>
Audio has a gap of 32ms at playtime 0:43:43. <WARNING>
Audio has a gap of 32ms at playtime 0:44:00. <WARNING>
Audio has a gap of 32ms at playtime 0:45:18. <WARNING>
Audio has a gap of 32ms at playtime 0:45:54. <WARNING>
Audio has a gap of 32ms at playtime 0:46:17. <WARNING>
Audio has a gap of 32ms at playtime 0:47:33. <WARNING>
Audio has a gap of 32ms at playtime 0:48:48. <WARNING>
Audio has a gap of 32ms at playtime 0:49:02. <WARNING>
Audio has a gap of 32ms at playtime 0:49:27. <WARNING>
Audio has a gap of 32ms at playtime 0:50:08. <WARNING>
Audio has a gap of 32ms at playtime 0:50:25. <WARNING>
Starting 2nd pass...
Realizing (E-)AC3 gaps...
Creating file "output.ac3"...
eac3to processing took 19 seconds.
Done.
Blue_MiSfit
5th February 2009, 00:19
neuron2:
Understood. I'm just trying to figure out how to catch something like this before it goes through encoding and QA :) The symptoms are pretty clear, so I should easily be able to identify something like this in the future.
Thanks so much for your time! I think we can close the case and shut the book ;)
~MiSfit
Guest
5th February 2009, 01:57
I made a little program to process the timestamps dump. Attached is the output. The first field is the video PTS. The second is the difference from the last one. I mark the discontinuities. This is the smoking gun evidence you can give to the content provider.
There's one disconinuity at the start and then a bunch more at 5142433. It's always one missing picture at a time.
If you'd find this useful I could give you the application. But you can just run eac3to also.
madshi
5th February 2009, 08:50
This, are these gaps not the same as video gaps?
I still don't know what you're aiming at. Video gaps are gaps in the video and audio gaps are gaps in the audio.
Guest
5th February 2009, 14:41
I think he is saying that there are audio gaps coincident with the video gaps. But if that were the case, then there would not be a sync problem.
Blue_MiSfit
5th February 2009, 23:32
neuron2:
Very kind of you to make the dump for me!
I think we have the issue resolved and should be getting new sources soon. I'll hold on to it for future reference!
~MiSfit
madshi
8th February 2009, 12:12
With eac3to v3.07 you can now do this to check for problems in video and audio tracks:
eac3to source.mpg -check
This will complain about video gaps/overlaps, if any are found.
C:\Desktop>eac3to meat_cut3.mpg -check
MPG, 1 video track, 1 audio track
1: MPEG2, 1080p24 /1.001 (16:9)
2: AC3, 5.1 channels, 640kbps, 48khz, dialnorm: -27dB, -18ms
v01 Extracting video track number 1...
a02 Extracting audio track number 2...
v01 Video has a gap of 2 frames at playtime 0:01:49.
v01 Video has a gap of 2 frames at playtime 0:01:49.
v01 Video has a gap of 2 frames at playtime 0:01:49.
v01 Video has a gap of 2 frames at playtime 0:01:49.
v01 Video has a gap of 2 frames at playtime 0:01:50.
v01 Video has a gap of 2 frames at playtime 0:01:50.
v01 Video has a gap of 2 frames at playtime 0:01:50.
v01 Video has a gap of 2 frames at playtime 0:01:50.
v01 Video has a gap of 2 frames at playtime 0:01:51.
v01 Video has a gap of 2 frames at playtime 0:01:51.
v01 Video has a gap of 2 frames at playtime 0:01:51.
v01 Video has a gap of 2 frames at playtime 0:01:51.
v01 Video has a gap of 2 frames at playtime 0:01:52.
v01 Video has a gap of 2 frames at playtime 0:01:54.
v01 Video has a gap of 2 frames at playtime 0:01:57.
v01 Video has a gap of 2 frames at playtime 0:02:01.
v01 Video has a gap of 2 frames at playtime 0:02:01.
Video track 1 contains 3407 frames.
eac3to processing took 1 minute, 16 seconds.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.