Shivering on the 49th Parallel
Thursday, March 17, 2005

Disclaimer: I'm in no way an expert on video codecs and compression, but I have managed to figure out with the help of the people on this board and google how to get my video clips to play properly on the Prismiq Media Player. It's taken me over a year, and I'm going to try and help you get sorted out in about 15 minutes. I'm going to make certain assumptions on the level of computer proficiency, so rather than baby-step through "press the Start button, then press All Programs..." I'll just say "Open program X" and things like that. I'll assume you know what File>Open means and what dialog boxes, dropdown boxes and list boxes are. What I say here just might be incorrect, or there's a better way to do it. That's the beauty of a wiki is that if you know of a better/faster/easier way to do this, or I said something so completely wrong, then change it!

What you need for this tutorial:

If you play the video as is, you'll see that the audio and video aren't in sync with each other. This is bad. It makes the video unwatchable. I've found in my experience that it's a two-step process to get the videos into a watchable state. Unfortunate, but that's just how it goes. I'd love to be able to write a program that would automagically run a new video file through these two processes for me, but I'm not a programmer. :)

The first step is to fix the audio/video sync issue. For this we'll need VirtualDub. Open VirtualDub and then click File>Open video file. Find & select your video file and click Open. Right away you'll probably get a dialog pop up saying (insert VBR header error msg here & insert screenshot). It took a few tries at Google before I got to a page with information on what to do next. Click OK and then click File>Save WAV. Give the file a name (something close to your original file name would be handy) and click OK to extract the audio portion of the video to an uncompressed WAV file.

Once that's done, click the Audio menu and select WAV Audio from the list. This will pop open another dialog box, and you can select the wav file you just created. After you've done that, make sure and select Full Processing from the same menu, otherwise your file size will go way up from having uncompressed audio. Select the Audio menu again and choose Compression this time. Select LAME from the list (or whichever MP3 encoder you're using) and then choose a CBR (Constant Bit Rate) setting. I go with 128kbps CBR.

Step two is to click on the Video menu. It should already be set to Full Processing mode. If it isn't, select it and select the Video menu again. Click on Compression this time, and choose your video codec (XviD or DivX, whichever). This is also very important because if not it will save it as an uncompressed AVI which is, on the  SSSC (Scottish Size System Classification) is above both "Wee" and "Not-So Wee". It's "FRIGGIN HUGE!" VirtualDub will also pop a warning dialog if you forget to select a video compression codec. I leave all the other settings alone.

Click the File menu again and select "Save as AVI" and in the resulting dialog box, give it a name. Click Save and VirtualDub will start to re-compress your video file with CBR audio. On my desktop that the Media Server Software runs on, which is a P4 2.6Ghz with 1gb of RAM, a typical 42 minute video takes about 42 minutes to compress.

Try watching the video on your Prismiq Media Player and you'll notice now that we've swung the other way. From the video not keeping up with the audio to the video racing ahead of the audio. Still broken. This is where the MPEG4 Modifier comes into play.

MPEG4 Modifier analyzes your video and sees that one of the streams (I'm not sure if it's the audio or video) is a "packed bitstream". Whatever that means, it's what's causing the new sync issue. Click on Browse, find the new file we just saved with VirtualDub and it takes 15-20 seconds to analyze. Once it's done, you'll see a screen kind of like this: (insert screenshot) Notice that on the right hand side, the "unpack" checkbox is unchecked (If you try this with a file that is already unpacked, the checkbox is grayed out) Check it and see the second line disapear from the list box. Click the SAVE button and give it -again- a new name. I tend to call it (original filename)-FIXED.avi but you're free to name it anything you want. Another 15-30 seconds as the MPEG4 Modifier does it's magic, and you're all set.

Queue up the video again, and you'll see that the audio and video are now synced, and your clip is watchable. Hooray!

Advanced Notes:
You may see some slight degradation in the video, but that has to do with re-encoding. Think of it like a cassette or VHS tape: every tape-to-tape copy you make loses a little bit of quality. I don't particularly notice the difference when watching it on a 32" TV, and if you do, then you take things a little too seriously and should go get yourself an HD PVR.

VirtualDub has a "batch" feature so that if you have a lot of hard drive space available (and storage is cheap these days) then you can extract multiple WAV files and re-encode multiple files all at once. I've done this before going to bed, and woken up to find a bunch of files that are ready to go. Sort of. I'm not sure where the issue is (Most likely the Problem Exists Between my Chair And Keyboard) but I've found that everytime I try to do more than one video clip at a time, that the WAV file from the first video clip gets used for the subsequent videos as well. Last time I went to great pains to double check everything, and it still had the wrong audio track. The filenames were correct, but they had the wrong data. Experimentation is ongoing. :)

Thursday, March 17, 2005 7:34:17 AM (Pacific Standard Time, UTC-08:00) | Comments [0] | Links | Tech | Gadgets | Linux#
Home page

Comment (HTML not allowed)  

Enter the code shown (prevents robots):

Admin Login
Sign In
Pick a theme: