Re-authoring a corrupt DVD results in audio out of sync.

Discussion in 'Video to DVD' started by mattstan, Sep 18, 2007.

  1. mattstan

    mattstan Member

    Joined:
    Feb 16, 2005
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    11
    Hi,

    I've got an audio out-of-sync problem. Here's how it occurred:

    I have a slightly corrupt DVD, when it plays in WinDVD it starts about 7.5 mins into the movie, chapters don't work, and the time always displays 00:00. I can't get it to play the first 7.5 mins at all.

    So I decided to re-author it.

    Using VobEdit - I de-muxed the DVD, resulting in a m2v file and an ac3 file and various subtitle sup files.

    Using IfoEdit - I re-authored the DVD, using the ORIGINAL m2v & ac3 files and one sup subtitle file, along with some chapter cell times.

    The resulting DVD plays perfectly from the beginning BUT it has the audio slightly out of sync, the audio arrives slightly too early, approx 800 ms. I re-authored again using DVD Author, just to check that it was not IfoEdit that was causing the problem, and that version also has its audio out of sync, in what appears to be by the same amount, but it also plays fine from the start.

    The original DVD's audio is perfectly in sync, and I didn't modify the m2v and ac3 files at all.

    According to Procoder 2, the de-muxed file lengths are:
    The m2v file has a length of 01:50:49:23
    The ac3 file has a length of 01:50:49:00

    Using Vobedit with the original DVD - I used its 'get video/audio delay' and was told is was 0. Presumably because the start of the original DVD is corrupt.

    DGMPGDEC aka DGIndex is another de-mux program, which usefully adds an audio sync value, in ms, to the filename of the ac3 file when de-muxing a DVD. Unfortunately this also says the audio delay is 0, I guess for the same reason as VobEdit does. I let it demux the whole video title set, hoping that my problem lay in the way VodEbit had demuxed the files in my first demux and then I re-authored the DVD using IfoEdit again, and was left with the same audio delay though, as usual, the re-authored DVD also played correctly from the beginning of the movie.

    I've tried various other things:

    1) Trying to re-author the original DVD using DVD Shrink which won't recognize the DVD (cos of the corruption), in either full disk or re-author modes.

    2) Using FixVTS to fix the original DVD - which failed dismally, actually deleting the troublesome VOB files!!

    3) Using DVD Rebuilder to make a 'movie only' copy using 'no compression' (a technique that I've used in the past to 'fix' troublesome DVDs) but that resulted in a 'SOURCE IS CORRUPT: VTS_01 VOBID: 01/CELLID: 02 was not found in the VOB' error repeated from 'VOBID: 01/CELLID: 02' through to 'VOBID: 01/CELLID: 13'.

    What I need to know is how to work out from the original DVD's VOB or IFO files, what the audio delay is, so that I can plug it into IFOEdit and get the audio back in sync. Can someone explain how this is done please? [Also when setting the audio delay in IFOEdit, there is a choice of 'ms' or 'pts', I don't know what 'pts' is (other than it stands for 'Presentation Time Stamp'), so if that needs to be used instead of ms can you tell me so please.]

    Of course any other suggestions would be greatly appreciated.

    Many, many thanks. Regards, etc..
     
  2. dimad

    dimad Regular member

    Joined:
    Apr 11, 2004
    Messages:
    104
    Likes Received:
    0
    Trophy Points:
    26
    Try running whole disk through DvdReMake (Pro). Just import and than export to new directory. It may fix some problems with the structure. And in Pro version you can modify disk navigation without touching video/audio/subs.
     
  3. mattstan

    mattstan Member

    Joined:
    Feb 16, 2005
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    11
    Thanks for the info.

    The Pro version of DvdReMake is $47 and I don't know if it will solve my problem or not. I'm tempted to get it anyway, but the demo is crippled so I can't even test it. Any suggestions?

    Any other helpwould be great. Surely it's possible to work out the audio delay from the IFOs and VOBs?

    Thanks.
     
  4. dimad

    dimad Regular member

    Joined:
    Apr 11, 2004
    Messages:
    104
    Likes Received:
    0
    Trophy Points:
    26
    yeah, demo will output just first 15 seconds of each chapter, but probably it is enough to see if it fixed the problem.
     
  5. mattstan

    mattstan Member

    Joined:
    Feb 16, 2005
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    11
    It won't actually load the DVD anyway. It only recognizes the DVD as being 136 MB and not 4.2 GB.

    Can anyone plaese tell me how to examine the DVD's files using, say, IFOEdit, VOBEdit, PGCEdit, and determine the audio delay.

    Many thanks.

    PS. Might I be better off posting in 'DVD±R for advanced users'?
     
  6. toaddub

    toaddub Regular member

    Joined:
    Sep 9, 2004
    Messages:
    108
    Likes Received:
    0
    Trophy Points:
    26
    Try demuxing using PgcDemux into video,audio,subpic streams, along with celltimes.txt for chapters, by PGC mode. Check for any A/V delay. Then mux everything back with MuxMan with celltimes.txt included.
     
  7. MysticE

    MysticE Active member

    Joined:
    Nov 15, 2003
    Messages:
    2,396
    Likes Received:
    0
    Trophy Points:
    66
    I would look to the out of sync DVD. Is the sync problem the same through out? If so use MediaPlayerClassic to view and adjust the audio sync value till you hit it. Then use that number (ms) in IfoEdit.
     
  8. mattstan

    mattstan Member

    Joined:
    Feb 16, 2005
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    11
    Thanks for all your replies.

    I resolved the problem with help in another forum and for the sake of completeness and for others searching the forum for this kind of problem, here's the solution.

    My audio out of sync problem turned out to be a well known 'leading black GOPs with no audio' problem. That is to say, some frames at the start of the DVD vob title set have no audio in them, but when de-muxed the audio starts at the same time as the video (including the no-audio video frames), meaning your audio starts fractionally too early, knocking it out of sync with the video.

    To fix:

    NOTE: If your audio is arriving too late and not too early then this fix is not for you, as you do not have the 'leading black GOPs with no audio' problem.

    Get a copy of the software DGMPGDec aka DGIndex, here's the URL:
    http://neuron2.net/dgmpgdec/dgmpgdec.html

    You need to use DGIndex to de-mux the DVD's streams.

    Load DGIndex, and use File-->Open to load the first vob file in the movie title's vob set (in my case the movie title's set starts with VTS_11_1.vob). This brings up a 'File list' dialog, use 'Add' to add all the rest of the vob files from the set, EG. VTS_11_2.vob, VTS_11_3.vob, VTS_11_4.vob, VTS_11_5.vob. Obviously they must be in the correct order. Click 'OK'.

    Them use the '>' button to skip a few I frames (each press skips not a single frame but on to the next I frame), I needed to press '>' 3 times. HINT: Skip until you see the first video frame displayed and then go back once using '<', but if this (later) does not give you an audio delay number then skip to the 1st video frame and don't go back 1. Then click on the '[' button to mark this I frame as the new start point, in so doing you're skipping the frames that have no audio.

    Now just select File-->Save Project And De-Mux Video. This will de-mux your vob file set's streams. The audio stream's file name will contain the out of sync value in ms - if this says 0, cancel and try moving on an I frame or more, as suggested in the previous paragraph, don't forget to use '[' again to mark the new I frame as the new starting point.

    Once de-muxing has finished, you can use IFOEdit (or whatever re-mux software you want) to re-author the DVD, using the value given in the audio file name to get your audio back in sync (don't forget the minus sign or you'll be making it exactly twice as badly out of sync!!).

    OR... if you are using Avisynth, use a script SOMETHING like this:

    LoadPlugin("path...\DGDecode.dll")
    video=MPEG2Source("path...\filename.d2v")
    audio=nicac3source("path...\filename.ac3").delayaudio(-0.128)
    AudioDub(video,audio)

    Replacing the delayaudio value of -0.128 with your out of sync value, converted to a fraction of 1000 (1000 ms = 1 sec), EG. -128 becomes -0.128, -64 becomes -0.064. If you're not sure about this simply divide your value by 1000, EG. 64 / 1000 = 0.064.

    Hope this helps.
     

Share This Page