The Pain of Screencasting on Linux

Some will say that screencasting on linux is easy. You just start recordmydesktop and stop when you’re finished. Upload the result to the internet and you’re done! Whilst this may be true in certain circumstances there are cases where this breaks. I encountered one today.

My goal is to create a short (less than 10 min) video of the Ubuntu install process. I don’t want to have to do much in the way of post recording editing, but the install process is 20-30 mins long, so I want to use the ‘PAUSE’ function in recordmydesktop. When the Ubuntu installer gets to something long running and dull I just press CTRL+ALT+P to pause the recording. When the long running process (e.g. scanning partitions or copying files) has finished I unpause with the same keyboard combo.

The problem is that when I unpause the video capture only seems to grab changes since the unpause, not since the pause. This leads to frames which are a mixture of two screens.

rmd_issue

The only alternative I can see is to use a video editor to cut the lengthy chunks out. If someone knows of an editor which will load an ogv from recordmydesktop and let me skip forward to one point, highlight a chunk of the video, delete it and save it with no loss of quality or hair, I’d love to hear it. Alternatively patches to recordmydesktop would be even better :)

Update: Based on some suggestions in the comments I have now tried a few video editors on my 64-bit Ubuntu Karmic system.

OggConvert: Converts the ogv made by rmd into an ogv (I know this sounds mad, but sometimes re-encoding means other apps can open a file when the original could not)
Avidemux: Can’t open the ogv made by rmd or oggconvert
Kdenlive: Can’t play the ogv made by rmd, locks up playing the one made by oggconvert.
Open Movie Editor: Can’t play the ogv made by rmd – looks corrupted, also corrupts when playing the ogv made by oggconvert, crashes when resizing preview window
OpenShot Video editor: Crashes on the File-Open dialog, installs ffmpeg in /usr/local/bin which takes precedence over the ubuntu ffmpeg package in /usr/bin which is sub-optimal
Blender: Can’t play the ogv made by rmd, complains that ffmpeg can’t understand the file created by oggconvert.
Pitivi: Opens, edits and renders the video but won’t let me choose the frame rate that the original video was made, in but forces me to use one from a list.

Now, admittedly I’m using a ppa for the ogv theora encoder to give me the high quality thusnelda encoder, however the same result occurs with an ogv video created with rmd _without_ using the thusnelda encoder. Both Totem and Mplayer can _play_ the video just fine.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
This entry was posted in Linux, Ubuntu. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

31 Comments

  1. Posted September 2, 2009 at 12:03 pm | Permalink

    Have you had a look at http://www.openshotvideo.com/ ? I haven’t used it myself but the screenshots look mildly promising :)

      More from author
    • Posted September 2, 2009 at 12:06 pm | Permalink

      I have looked at it, yes. I haven’t installed it because at the moment I don’t like the way it’s packaged. It’s done via checkinstall, and packages up ffmpeg rather than using the one in the repo. Concerned that it might break my existing ffmpeg install. Will give it a try though.

        More from author
  2. Urko Masse
    Posted September 2, 2009 at 12:09 pm | Permalink

    I think Avidemux works for cutting .ogv without loss of quality, as long as you stick to keyframes.

    • Posted September 2, 2009 at 12:22 pm | Permalink

      Avidemux won’t even open the ogv file. “Attempt to open /home/alan/Videos/Screencasts/20090902_Ubuntu_Dual_Boot_Install/Ubuntu_Dual_Boot_Install.ogv failed”

        More from author
      • Urko Masse
        Posted September 2, 2009 at 12:25 pm | Permalink

        Mmm… I’d try changing the file’s extension, in case Avidemux is really lazy. Try .ogm.

        If not, it must be codec-related, but I don’t think that can be solved.

        A pity.

        • Posted September 2, 2009 at 12:36 pm | Permalink

          Sadly not. I recall a couple of years ago that this is one of the reasons I used to use xvidcap. xvidcap could record to mpeg2 which avidemux supported just fine. Sadly now I have xvidcap which is broken, and avidemux which won’t read files from rmd.

          Tempted to revert back to using ffmpeg with x11grab again.

            More from author
  3. Posted September 2, 2009 at 12:17 pm | Permalink

    I would recommend trying the ogg Video Tools. There are several utilities that I’ve used before on my ogv files from RMD. I’ve never cut oggs with them, but I’ve split them (into separate theora and vorbis files) and concatenated ogg files together with them and they seem to work great. There is an oggCut utility that will let you slice a section out of an ogg file. So presumably you’d cut out the two good sections for example and then oggCat them together.

    Here’s the link to the manual in case you haven’t seen it (http://en.flossmanuals.net/TheoraCookbook/ManipulateOggTheoraFiles)

    I believe it’s the oggz-tools package in the repos.

      More from author
    • Posted September 2, 2009 at 12:39 pm | Permalink

      Having a look at the ogg tools, thanks, but I’d rather have something ‘point and shoot’ to make workflow easy enough for others to get involved in.

        More from author
  4. David
    Posted September 2, 2009 at 12:36 pm | Permalink

    I think that pitivi will be able to do what you want. Be certain to use the last version available from their PPA

    http://www.pitivi.org/wiki/Main_Page/
    http://pitivi.ecchi.ca/

    • Posted September 2, 2009 at 1:03 pm | Permalink

      I keep forgetting Pitivi. It’s certainly worked the best so far. It opened the ogv made by rmd, I figured out how to cut video without reading any documentation or having to refer to frames, key frames or other obscure terminology.

      The only slight gripe I have is that it forced me to change the frame rate of the video. I recorded at 15fps in rmd, but pitivi gave me a load of frame rate options, 15 wasn’t one of them. I chose 30fps instead, and I’ll see how that comes out. Thanks!

        More from author
  5. Posted September 2, 2009 at 12:40 pm | Permalink

    Video editing is just horrible under Linux. For photo-editing, you can get by with GIMP, but video editing there is nothing.

    Cinelerra, Kino etc. simply unreliably/prone to crashing. Linux doesn’t even have something that beats Windows Movie Maker.

      More from author
    • Posted September 2, 2009 at 1:07 pm | Permalink

      I say hooey. Blender happens to be a superb video editing app. It’s not an iMovie replacement, it’s much much more capable. It’s very stable, heavily developed and quite capable. I’ve done 3 screencasts on getting newbies (like me) up to speed on editing video in Blender, and I’ve heard lots of good feedback from people who’ve tried it.

      I hope that PiTiVi and OpenShot become stable and usable, but Blender is a completely capable video editing app right now.

        More from author
    • Posted September 2, 2009 at 1:08 pm | Permalink

      Yeah, most of the video editors I have tried so far just crash on loading the video, or playing it. Pitivi is looking good so far, fingers crossed.

        More from author
  6. Willem
    Posted September 2, 2009 at 1:01 pm | Permalink

    You could try using .

  7. Nigel Cundy
    Posted September 2, 2009 at 1:02 pm | Permalink

    I would probably proceed by using mencoder or ffmpeg to convert the file to a format which avidemux or cinelerra (cinelerra would be my choice) can easily edit, edit it and then convert it back. It should be possible to write a quick script to automate the conversion process (as much as possible) to make it easier for others to use or remind yourself of the precise command needed later.

    • Posted September 2, 2009 at 1:07 pm | Permalink

      That’s certainly an option, but every time there’s a transcode/render step it lengthens the processing by some margin. I’m after a “record and go” solution.

      I got away from encoding from ogv to mp4 and flv for the site by offloading that task to blip.tv. I’d also like to offload the transcoding job by having a video editor that supported y’know the most popular format supported Linux :)

        More from author
  8. Posted September 2, 2009 at 1:07 pm | Permalink

    This was around a short while back, I don’t know if it’d help you?

    http://www.linuxhaxor.net/2009/07/21/professional-video-editing-in-linux-with-kdenlive/

      More from author
    • Posted September 2, 2009 at 1:16 pm | Permalink

      Kdenlive is indeed a comprehensive package. Sadly it crashes, locks up or freezes on playing the ogg videos made by recordmydesktop.

        More from author
  9. Dave
    Posted September 2, 2009 at 2:41 pm | Permalink

    Just for clarity, are all these programs failing to deal with the single buggy Theora file created by the pause-unpause bug (or a second generation transcode from the same) or are they failing on any screencast created with RMD, or indeed any random Theora file from the internet?

    • Posted September 2, 2009 at 2:51 pm | Permalink

      There’s nothing technically buggy about the ogv created by rmd. It’s just the way rmd recognises screen changes that result in the “wrong” thing being recorded. The file seems okay enough for mplayer, vlc and totem to play it. So I’d expect any video editor to be able to open it.

        More from author
  10. Posted September 2, 2009 at 3:42 pm | Permalink

    Try the current version of PiTiVi to cut your video (use this PPA https://launchpad.net/~gstreamer-developers/+archive/ppa) You should use the current version since PiTiVi has been rewritten by sratch…

      More from author
    • Posted September 2, 2009 at 4:24 pm | Permalink

      I’m just trying pitivi out right now. It seems to fulfil my requirements for this project! Gotta wait 12 more minutes for the render to finish though :)

        More from author
  11. Posted September 2, 2009 at 8:02 pm | Permalink

    There is also Cinelerra CVS, I know it is a little bit too “fat” for only screencasts, but it works flawlessly with the ogv videos from rmd. (if you set ignoring warnings)
    Its a very professional app so you can change and edit really a lot.
    With Compositing it is also able to zoom into the video or zoom out and create fanzy effects.

      More from author
  12. Posted April 16, 2010 at 9:34 pm | Permalink

    Your tip on oggconvert just saved my ass. I don’t know what’s happened since last year, but I used to capture in gtk-recordMyDesktop and then convert straight to MP4 in Handbrake, but this time around, I get 99% scrambled eggs and every now and then a clear picture in the MP4 output. Like you said, OggConvert does something to make an ogv a better ogv which can be converted more readily.

    Incidentally, after I learned the command line recordmydesktop, I liked it better because it allowed me to specify specific dimensions to record. I can’t believe the UI doesn’t provide this! Well, beggars can’t complain, right?

    Thanks for your tips. If there were one area I’d love to concentrate on in development for Ubuntu, it would be in screencapturing and publishing. This is SO big for education and informational sites. I don’t write manuals on how to use software anymore. I just capture it and publish it on our intranet at work.

      More from author
  13. Posted April 16, 2010 at 9:42 pm | Permalink

    Damn! I spoke too soon. Now my output mp4 is 99% OK and 1% scrambled video. The audio is still fine. The quality of the mp4 was also pretty sketchy. I’ll write again if I find a combo that works.

      More from author
  14. Posted May 3, 2010 at 5:35 pm | Permalink

    UPDATE: There’s a program called DeVeDe which can handle converting from the current gtkRecordMyDesktop OGV format to AVI, and it also handles rescaling or adding black bars to make the output a standard format. VERY nice. Plenty of other features to explore.

    From there, Handbrake could be used to go from AVI to MP4 if desired.

    Instructions here: http://www.blogcatalog.com/search/frame?term=recordmydesktop&id=c190930a83f620711792a0a04f318c51

      More from author
  15. Ken Ham
    Posted June 24, 2010 at 3:08 pm | Permalink

    I’ve been having this trouble for two or three years (the video conversion/editing problem, not the pausing gtk-recordmydesktop one). A couple of years ago it was possible to convert the videos into huffyuv/avi format and kdenlive would edit the files perfectly, lamentably this seems to no longer be the case.

    Development on recordmydesktop is frozen, except for patches, so the chances of being able to record to a useful format for editing are pretty slim.

    It’s a really, really sad and pathetic state for desktop Linux to be in.

3 Trackbacks

  1. [...] New Blog Post: "The Pain of Screencasting on Linux" http://popey.com/blog/2009/09/02/the-pain-of-screencasting-on-linux/ [...]

  2. [...] http://popey.com/blog/2009/09/02/the-pain-of-screencasting-on-linux/ a few seconds ago from mbpidgin [...]

  3. By A Video Editor that Just Works | popey.com blog on September 2, 2009 at 8:09 pm

    [...] popey.com blog a geek through and through Skip to content Contact me « The Pain of Screencasting on Linux [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Additional comments powered by BackType