About recording screencasts/converting video on Linux
-
recordMyDesktop can capture the screen video and the microphone input reasonably well on Linux/Ubuntu.
-
You will get an
.ogv(ogg container) file with an Ogg Theora encoded video stream and an Ogg Vorbis audio stream. Don’t expect to get a lossless video by enabling theZero Compressionoption. -
You can expect this to play perfectly using all the Linux-based players like MPlayer, VLC, totem, etc.
-
Don’t expect to be able to open the resulting video file in commercial editing tools like Adobe After Effects.
-
There are two popular tools for transcoding/converting videos, mencoder and gstreamer.
-
Don’t expect to find a reasonable UI that can convert an OGV to an AVI without quality loss using these tools.
-
Don’t expect that you can convert this using
mencoder, at least not for .ogv files recorded by recordMyDesktop:mencoder in.ogv -o out.avi -ovc copy -oac copy mencoder in.ogv -o out.avi -ovc lavc -oac lavcThe resulting video might be shorter than the original video. Or you might get not very helpful error messages like
"Too many audio packets in the buffer. Maybe you are playing a non-interleaved stream/file or the codec failed". -
mencoders gives you a huge range of command line switches to express your coding wishes. Think one machine with 100 switches and levers. Some of them only apply to mplayer. Some only to encoding DVDs. Some only for encoding video streams with specific coding libraries. -
gstreameris mostly a library for writing video tools, but can be used on the command line as well for transcoding and converting. Think connecting wires from your video source to your destination sink. The syntax to express this using the command line options is a bit scary in the beginning, but once you figured it out everything makes sense and you’ll have one very powerful video streaming/converting solution in your hands. See thegst-launchman page and the available plug-ins. -
You can import
.ogvinto most commercial editing tools by converting to a sequence of.pngsand an uncompressed wav:gst-launch filesrc location="in.ogv" ! oggdemux ! theoradec ! ffmpegcolorspace \ ! pngenc snapshot=false ! multifilesink location="out_%06d.png" oggdec -o out.wav in.ogv -
FAT32 file systems can only hold 32.768 files in a folder.
-
If you plan to copy these to an USB stick, allow for a little bit more time (because of a bug that seems to be known for three years now).
-
Png image sequences and the audio can be played back using:
mplayer "mf://out_*.png" -audiofile out.wav -
To convert from ogv to avi (ogv2avi):
gst-launch filesrc location="in.ogv" ! oggdemux name=demux \ { avimux name=mux ! filesink location="out.avi" } \ { demux. ! vorbisdec ! audioconvert ! mux. } \ { demux. ! queue ! theoradec ! mux. } -
The resulting file will be very big, you can compress the video with quality loss as Motion JPEG by adding
! jpegencafter! theoradec.