Drupal 6 video streaming roundup
In this article I'm going to take a look at video streaming options for Drupal 6, from the point of view of setting up a user generated content video website. What provisions does Drupal 6 have for handling video content? Drupal itself has the upload module which allows you to upload files and attach them to nodes, but this doesn't really cut it for a fully fledged video content site as it has no support for embedded playback of these files. To get the kind of functionality we need (embedded playback, video conversion, compression etc) we're going to need to look to third party contributed modules.
Modules that might be of use
A quick scan through the Drupal modules database turned up the following modules which sound like they could be of use.
As you can see, Drupal 6 seems to have a rather limited set of video streaming options compared to version 5 and so it seems there's really only a couple of options.
Flash Node
"If you just want to add Flash content to nodes without having to worry about writing any HTML or PHP then this module is for you! Create a flash node, upload an swf file, and hit submit, and you have flash on your site..."
Whilst this module will allow you to add flash content to your Drupal site, a lot of it's features (including the ability to play flv files) are only available with the help of the SWF Tools module, which is currently unavailable for Drupal 6. This seems to be a bit of a stopping point. I also don't really like the way it treats flash files as separate nodes and don't think it would provide enough flexibility to create a complete user-generated-content site.
Imediasee Premium Player
"Now you can easily add affordable high quality streaming video to your Drupal site, even if you’re using shared hosting and have limited bandwidth. With the Imediasee Premium Player Module for the Imediasee Flash Video Streaming Service you can embed your www.imediasee.com hosted videos to your site with a simple tag. Upload your Flash videos to Imediasee or have us encode them for you. Either way you can video enable your 5.x or 6.x Drupal site in just a few minutes..."
The Imediasse Premium Player seems to be a Drupal interface for a commercial product. If your happy to pay to have your videos hosted by Imediasee then this might be a good route to go down, but I'm not going to peruse it.
Flash Video
At time of writing, this module is still in the beta stage is not ready for use on production sites. Howevr, it does look like an interesting module and seems to be worth a look. From the modules homepage...
"FlashVideo is a complete video solution that expands the upload module to allow web developers and users to upload video files, automatically convert those videos to the popular Flash format, and then embed their video in any node type in the Drupal System using the simple [video] tag..."
It is being billed as "the complete solution for any user-generated-content video website" complete with flash video conversion, thumbnail creation, batch import, playlist support, Amazon S3 support, CCK integration, Views integration and more. It also has some very good documentation and a complete walkthrough tutorial designed to get you up and running in no time.
Installing the module
Installing the module is a breeze and basically consists of 5 simple steps:
- Install ffmpeg
- Modify php.ini
- Install the flashvideo module
- Install a flash player
- Set up a cron task (if you haven't already done so)
Uploading and embedding a video
Once the module has been installed, flash video can be enabled on a per node-type basis. Once a video has been uploaded, it can be embedded within a node by using a specially provided [video] tag. This tag takes all sorts of parameters to specify exactly how the video should be embedded. It can also be disabled through the administration interface, allowing you to to handle the embedding of media files in a more controlled manner such as through custom templates with the contemplate module.
File conversion.
Flash Video uses ffmpeg for it's video conversion, so videos can be uploaded in a variety of formats. The ffmpeg conversion parameters can be customised in the administration pages and can be applied on a per-node-type bases. You can choose to have videos converted as they are uploaded, of you can run the conversions as part of the cron task.
Browsing and viewing and gathering statistics
The flashvideo module exposes itself to both CCK and views, which gives the potential for some real flexibility when it comes to browsing and viewing your videos. Since the videos are just stored as files, they can be sorted of filtered like any other file attachment. And since videos can be attached to any type of node, the nodes which they are attached to can also be sorted and filtered as normal with the views module. Play count can effectively be interpreted as the view count for the node that it is attached to (perhaps there is a better way, but I can't see it), and user ratings could be done with the Fivestar module.
Conclusions
Is Drupal 6 ready to power an interactive, community based, user generated video site? I'd like to say yes, but I don't think I can really say for sure until I try. At the moment, Flash Video certainly looks like the most viable solution for video streaming within Drupal.
If anybody has any experience of using Flash Video or any other Drupal 6 module to build a user-generated-content video site I'd love to hear about it. In the meantime I'm going to try and set up my own - I'll post my findings soon.
UPDATE - 21/09/2008
Shortly after I published this article, an exciting new product entered the market. Read all about Dash Media Player...





8th Sep 2008, 7:28pm
I'm currently exploring Dash player and it has a lot of potential, but it's definitely still in the dev phase not due to it's own problems, but because it relies on the still very buggy in 6.x Services module.
Definitely worth taking a look. I have it's basic functionality working and can't wait to get it's playlist features live.
9th Sep 2008, 1:18pm
I have actually already had a look at this module since I wrote this article and have been quite impressed with it. I managed to get it up and running on Drupal 6 and have it's playlist functionality working correctly. I intend to write a follow up article to this one in the next couple of weeks, detailing my experiences with the DASH Media Player
21st Sep 2008, 1:47pm
Post new comment