DVD Splicing

Come back tape, all is forgiven

Have you ever looked at some of your old home-made DVDs and wished you could delete a few seconds here, and a few second there? Me too. Sadly, not having the original DV files means I have to work with the VOBs on the disk. Given the range of video software (free and commercial), I thought it would be pretty easy to do what I wanted. Pop the DVD into the drive, rip out the A/V streams, isolate those little bits I didn’t want to see any more, delete, save, burn. That’s what I thought, but unfortunately it was not that simple.

To start, I decided to experiment on a recently made DVD+RW that I had created with my PVR from a movie broadcast on satellite. It contained some announcer bits at the beginning and the end, plus a few glitches mid-movie due to the wind blowing my dish. A total of 1h40m of movie. An ideal candidate for my trial DVD re-editing.

Let’s get a few things out of the way first:

  • VOB files are “Video Objects” that contain audio, video, subtitle and menu data. The structure can be quite complex because of multi-angles, multi-language etc.
  • Video is held in a VOB in MPEG-2 format, while the audio is usually AC3 at 192kbps (for stereo). I don’t have higher audio rates because I don’t have the means to record 5:1 sound.
  • The DVD also has information (IFO) files indicating the start of chapters, locations of subtitles etc.
  • On a DVD, the VOB files don’t get bigger than 1Gb, although on a PC it is possible to create bigger VOBs, which may (or may not) work with various software.
  • My DVD PVR (personal video recorder) will record 2 hours of reasonable-quality widescreen on a 4.7Gb DVD, so I am assuming a rough guideline of 2Gb per hour. Any tool or process that produces smaller files will, I suspect, involve loss of quality.
  • As the audio is separate from the video in the VOB, it is possible for the audio to get out of sync with the video. Even a small fraction of a second too early or late will be noticed, especially when you are looking at the face of someone talking in the video.
  • My recordings are PAL (25 Frames/sec, 625 lines per screen, interlaced) because I’m living in Europe. Therefore my VOBs should be simple streams of video synchronised with the corresponding audio.
  • I have a mixture of 4:3 and widescreen (16:9) videos, and a few with slightly more unusual aspect ratios because I generated them from software without really paying attention to what I was doing. A few recordings are widescreen inside a 4:3 screen, with black bands above and below. (This is sometimes called the letterbox mode.)
  • All my recordings are from my own camera or from the TV. If I want a quality version of a movie, I’ll buy it myself, or drop enough hints to encourage others to buy it for me.

What I wanted to do was open the VOBs, crop the size to widescreen from letterbox mode (thus removing the black bars) and then select small subsets (a few seconds here and there) to be deleted from the video (and corresponding audio) streams. When that was done, I wanted to burn a new DVD from the edited streams.

Sadly, there was no single tool that I could find to do this task. Instead, I tried to break it into several subtasks and use various tools at each stage. All the time I was concious of the potential to introduce loss of quality or loss of audio sync. Here’s what I did to achieve the result I wanted:

First, extract the audio/video from the VOB files. The DVD contained several VOBs so I assumed that if I could join them into a single VOB it would be easier to extract the streams as a unit. Unfortunately, VOBMerge would not open the VOBs directly from the DVD so I had to copy them to the HD first. I merged all the VTS_xx_x.VOB files into a single 3.8Gb file.

Next I used avi.NET to create a *.avs file. This enables a program that needs AVI as input to consume the content of a VOB file instead. (I had previously tried DGIndex but could not get it to work as I wanted.)

Then the king of video processing: VirtualDub. With this I was able to open the *.avs file and crop the letterbox video into a wide format (in this case 628×356 because of an artifact at the right edge) and generate an AVI file. Initially I generated an uncompressed AVI, which resulted in over 100Gb of disk space chewed up (after an hour of processing). So I tried a compressed AVI instead, which produced a 3.5Gb file after 13 hours of processing.

This file was the right format for PC processing but it still had the bits that I wanted to delete, so I used SolveigMM AVI Trimmer to select and remove the offending segments. I was concerned that this might force me to use TimeStretcher or Cuttermaran to resync the audio, but I got lucky as there was no noticeable slippage.

At this point I assumed that ShowBiz would be able to burn the compressed/edited AVI. It accepted the AVI and it appeared to process and burn a new DVD for me, but when I tried to play it on the PC I got an error. Essentialy a complaint about a missing codec, so I figured I should try another approach. (Later I would discover that the DVD I burned played fine on the PVR, except for a burn error on VOB1 that meant I had to re-do the disk.)

The next step was to convert the compressed/edited AVI into an MPEG file using MPEG Encoder. This produced an 800k MPEG file that played well in Windows Media Player, but obviously there would be a loss of quality given that the file was now quarter of the original size. I decided to keep this file for use on my laptop.

It occured to me during all this process that the old method of having two VCRs was a lot easier. You played one, and paused the recording on the other at the bits you wanted omitting. At first you might think this is slow, but just consider the time it took me to do it via PC: two days! At least with the tape I would have completed the task in about 2 hours, and I would have watched a movie while doing so.

Categorised as: Uncategorized

Comment Free Zone

Comments are closed.