Techniques For Publishing Video

Many people want to use Drupal as a platform for distributing video. Drupal is a great tool for video distribution because there are so many ways to get it done. And Drupal is a pain in the neck because there are so many ways to get it done. It all depends on your perspective I guess. With this post I'll offer some solutions that can help you choose between some of the more reliable options for publishing video.

Host Your Own

There are plenty of modules that can assist you with creating your own 'DruTube' if you will. I will warn you that there are some pitfalls to this approach. If your site is hosted on a shared server you could slow down your entire site if your video gets popular. Hosting your own video on a shared server can work fine if you have light traffic. So don't be disuaded by my disclaimer.

The video module (Drupal 5 only) handles upload, display and basic statistics for videos. With this module you have the choice of uploading a file or linking to a file that is already on your site. It's important to know that if you're uploading files greater than 7MB you might need to adjust the php.ini file on your web server. This method works for QuickTime (.mov), Windows Media (.wmv) and Flash (.flv) formats.

FLV Media Player with XSPF Playlist (both Drupal 5) is an option for publishing Flash video files. This option integrates with Jeroen Wijering's excellent flash player to provide flash video playback withing nodes. If you use this method you will need to convert your files to Flash format prior to uploading to the site.

The Flash Video module (Drupal 5 and 6) aims to provide a soup-to-nuts 'DruTube' like solution that allows for upload, conversion to Flash and display of video. For more detailed information see the flash video tutorial created by the module developer.

Utilize YouTube

You can let YouTube do the heavy lifting for you and embed the flash video back into your Drupal site. I recommend reading my previous drop titled Many Ways To Do YouTube on Drupal to find out more about this method. One shortcoming of a pure YouTube approach is that you can't make your published videos available as a downloadable podcast via iTunes or other podcast subscription software.

Hybrid Approach

The hybrid approach is very simple. You host your videos elsewhere and come back to your Drupal site to post videos (and maybe even link directly to a download file) within a node on your site. This approach takes a little more work because it means you publish twice. First you upload to your video hosting provider. Then you come back to your Drupal site to include your video in a post. Some video hosting sites (like Blip.tv for instance) allow you to cross post directly from their sites over to your Drupal site.

There are a few notable benefits to the hybrid approach. The load from delivering the video won't affect your site since the media is hosted elsewhere. Transcoding of the video from your source format (probably QuickTime or Windows Media) will be handled by your video host. You also usually get a nice flash video player that you can embed on multiple sites.

Test Before Commiting

Before you commit to a particular approach I highly recommend that you do a bit of testing. Try out different methods and video hosts to see if they are going to work for you. For example, YouTube encodes video in a relatively small player. So if you want your videos to show in a large player then the YouTube approach probably won't work for you. Most third-party video hosts add their own branding to the player that they provide you. So the hybrid approach might not work if you really need a non-descript or even custom player for the flash version of your videos.

It can hurt to get very deep into the development of a production site when you find out that your video process just won't work. Consider the time and effort you put into experimenting an investment that will yield a video publishing solution that works for both you and the visitors to the site you're building.

Bookmark and Share Bookmark Post

Comments

Have you tried op_video?

I've had great success with it - Open Package (http://drupal.org/project/op_video). I should say, I have tried other video modules, nearly a year ago I spent lots of time trying every solution available.

Open Package does require ffmpeg to be installed on the server. There are a few things I wish was different about the module but all in all it is a nice module.

The new YouTube API wrapper (not quite released yet) that beeradb is developing, will turn the hybrid solution into a one-site solution. I had the pleasure of testing and reviewing the module last week, and was able to post a video to my site and have it automatically uploaded to YouTube. The next phase for that would be integrating it with Embedded Media Field so that it would turn around and also post it to your site.

Thanks for your excellent write up!

Elvis: I had not previously seen Open Package Video. It looks good though so thanks for adding it here.

Aaron: I've been waiting for someone to cook up a module that accesses the new YouTube API. This is welcome news indeed.

Rob

Thank you so much for this article. I run a Visual Basic source and tutorial page using Drupal. As of right now, I don't do any video guides but I think I would like to. I am going to take these tips and see if I can figure out how to include this in my Visual Basic Source site.

Hello, Thanks for this post I too am going to use this information on my website. Specifically I am going to use it on my Linode Review site to post some videos of how Linode works as a hosting environment. Hopefully I can host them directly from my server so I can show how it works but I think I will also look into the youtube approach to get more exposures. At any rate thanks for your great work on this! Keep it up.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <span> <img>
  • Lines and paragraphs break automatically.
  • Images can be added to this post.

More information about formatting options