Choppy video

Note: This is an old post in a blog with a lot of posts over a long span of time. The world has changed, technologies have changed, and I've changed. It's likely this is out of date, the code doesn't work, the ideas haven't aged well, or the ideas were terrible to begin with. Let me know if you think this is something that needs updating.

I have a Canon PowerShot S230 Digital Elph camera which has the almighty power to record video in some encoding with AVI format. Playing these videos works fine under Windows XP with Windows Media Player. However, I had a heck of a time trying to get it to work with either MPlayer (as it's distributed by Ubuntu Hoary) or Totem (as it's distributed by Ubuntu Hoary). With MPlayer, I'd get some incomprehensible error, then MPlayer would tell me to re-compile with the debugging information and try it again, then die. Totem (the one with the gstreamer backend) would play it, but it'd be really weird and choppy.

As a side note, in case this is useful to anyone, I have a system with an AMD64-3200+, 1 GB of RAM, and various other exciting quantities of exciting things running a mostly stock Ubuntu 05.04 though I am pulling packages out of the universe. This wouldn't be much of an issue given that I've got a machine running Windows XP with Windows Media Player except that I'm switching my world over to run exclusively on GNU/Linux and Open Source applications.

So armed with my observations, I did some poking around to at least get a handle on what the pieces involved were. After 15 minutes of googling, I found nothing that seemed to help. However, I did discover that there's a version of Totem with a xine backend in the Ubuntu repositories. So on a whim, I switched from the gstreamer Totem to the xine one.

Now the video works fine. I figured I'd post this even though the details I've written down couldn't be any less defined.

Want to comment? Send an email to willkg at bluesock dot org. Include the url for the blog entry in your comment so I have some context as to what you're talking about.