As a few of you know, I've made a couple of video compilations recently. I thought I'd share some of my frustrations with the process and how I got around them. I hope that you will share your tips and tricks too!

Issue: Nexuiz/Xonotic AVIs and OGGs not being recognized by Cinelerra or Kdenlive

To get around this I had to transcode the videos into format supported by both programs. I chose to go with the Xvid codec and the AVI container, as both are widely supported in and out of Linux. One thing, though - Xvid is a lossy codec, meaning that you will lose quality if you don't encode with the correct parameters. You can use the following bash script to encode with the lowest loss of quality (0 loss in PSNR according to the mencoder documentation found here: http://www.mplayerhq.hu/DOCS/HTML/en/men...-xvid.html):

To use this script, save the above text as "convert2xvid.shl," make it executable, then "convert2xvid.shl dpvideoXXX.avi/ogg" to transcode your video. It will produce a filename similar to the original, but with an "_xvid" suffix.

Take note that this issue is Linux-specific, as Cinelerra is Linux-only and I believe Kdenlive is as well (for now).

Issue: Audio/Video sync in final video output

Both cinelerra and kdenlive default their projects to sample audio at 48000hz. Many other professional audio/video editors do the same (Final Cut, etc). If you are experiencing audio/video sync issues, check that you shouldn't be setting your project to 44100hz instead, as many mp3s use that sample rate. I banged my head against the wall for quite some time until I realized that the sample rate was causing my sync issues.

Issue: Raw video is too big for my HD

Sorry, you'll have to deal with it . Right now there isn't any option for DP to encode to a lossless, compressed video format such as HUFFYUV. What you can do, though, is to trim down on the space incrementally by transcoding your videos to HUFFYUV after you've recorded them to RAW AVI. You can do that with the following ffmpeg cmd:

On my system these settings produce a 3.6GB file for a 20 minute CTF game. YMMV.

Issue: My video is too long for YouTube (etc), but I don't want to re-encode

If you've already encoded your source material into one output video, but that video is too large for the video hosting service you are using (e.g. YouTube's 15 minute limit), you can always split up the video during post processing. They key thing you want to avoid is re-encoding your video (you've already encoded it!), so what you can do is framecopy a subset of your final video instead. Frame copying your codec stream avoids re-compressing your video, thus avoiding both quality degradation and spending a lot of your computing time. To "slice and dice" your video in Linux, you can use mencoder with its "-ss" and "-endpos" options as follows:

It helps me to set these options if I envision my video on a timeline, with the default markers for capture being at the absolute beginning and the absolute end of the video. If i set -ss to ten minutes (i.e. 00:10:00) I am moving the capture mark ten minutes into the video, and if I set -endpos to ten minutes I am capturing ten minutes of material past wherever my starting marker is (by default at the absolute beginning). For example, if I want to capture only the middle 5 minutes of a 15 minute video, I'd use -ss 00:05:00 and -endpos 00:05:00.