Working With Video From Ruby
With only the performance of a scripting language, Ruby isn't considered a particularly suitable choice for intense video work (direct transcoding, encoding, and the like.). Nonetheless, there are a handful of Ruby libraries and Ruby-based technologies you can use to work with video and movie files - primarily through interacting with faster tools or libraries.
RMov (Ruby Quicktime Library)
RMov is an awesome new Ruby library by Ryan Bates that wraps around Apple's QuickTime API and allows you to open, edit, and export QuickTime movies from within Ruby. It is, unfortunately, OS X only.
RVideo (Ruby Video Processing)
RVideo (Github) is a Ruby library that interfaces with tools like ffmpeg to let you inspect and process video and audio files. For example, you can use RVideo to help you convert videos into FLVs.
Panda (Video Encoding and Streaming Platform)
Panda is a Ruby-powered open source "video uploading, encoding and streaming" solution. While it uses Ruby as an interface (in the shape of a Merb application), it relies on tried and tested tools like FFMpeg to do the heavy lifting but may be perfect if you have an Amazon EC2 account and fancy offloading the CPU intense video work.
Hey!Spread (Video Promotion Web Service)
Hey!Spread makes it easy to upload videos to YouTube and Google Video - each operation essentially becoming a method.
Fliqz4R ("White-Label YouTube" API)
Fliqz is a provider of "plug and play video solutions." Effectively they provide the backend infrastructure for hosting and playing videos, a kind of white-label YouTube, if you will. Libin Pan has put together a tutorial that demonstrates how to use Fliqz from Ruby / Rails using the Fliqz4R Rails plugin.
Any other libraries to recommend? Leave a comment.
October 17, 2008 at 5:13 pm
Shoes http://shoooes.net/ has video handling as an option. And you've mentioned it here before, so I'm surprised it didn't make it into the list!
October 19, 2008 at 2:09 pm
ankoderonrails (http://doc.ankoder.com) is a ruby library for Ankoder api. Ankoder is a scalable video upload/download/transcode service build on AWS.
October 22, 2008 at 3:50 pm
There's also RTranscoder, it is a wrapper for ffmpeg, mencoder and mplayer. It' very similar to RVideo, but RVideo doesn't have mencoder support yet.
http://rtranscoder.rubyforge.org/
November 6, 2008 at 3:34 am
Hey, Juanger!
The RTranscoder is awesome.. it really help me in my project. Thanks for talk about it. =)