Youtube-like, with flash transcoding

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
yoann's picture

Hello,

I wrote a module derived from the drupal Video module to build a Youtube-like platform.
The site can be seen at http://www.kaouenn.net

Features:
- Creative commons licenses support
- auto transcoding to flash flv (with ffmpeg), with load balancing support (transcoding can be done outside the web server). Video formats supported include mpeg, realmedia, wmv... In fact the ffmpeg supported formats
- support video and audio only

The transcoding part is done with shell scripts updating the drupal DB through the XMLRPC interface.

If someone is interrested, I can share the code (how can I do that??). Since I'm new to Drupal and Web technologies, experienced advices are interresting!
It is still a little buggy (modifying a media does not work).

Thanks,
Yoann

Comments

contributing code back

bonobo's picture

Your module sounds like a very useful piece of code, particularly with regard to the flexible transcoding options --

You should apply for a cvs account: http://drupal.org/cvs-account --

To share the code in the meantime (while your account is being processed), you could create a tarball/zip on your website, and post the url here --

You should also look at the media mover module -- http://drupal.org/project/media_mover -- and the flashvideo module -- http://drupal.org/project/media_mover --

How does your module differ from these modules? Collaborating with either one of these projects could allow for better code with less work, and less dilution of developer effort.

Cheers,

Bill

I didn't knew media_mover

yoann's picture

I didn't knew media_mover and flash_video. I only got the video and audio modules.
Collaborating with these projects is more interesting that duplicating modules, I agree.
I'll test them and look at the differences!
The first one seems to be the transcoding, which can be done on another server (my server is small, only 256MB RAM).

Yoann

Interested in helping with development

mackh's picture

Hi

I'm working on transcoding on the fly as well, something a little more streamlined than the video module would be good. If you want to collaborate on developing this, drop me a line

-M

Hello, I looked at the 2

yoann's picture

Hello,

I looked at the 2 modules media_mover and flash_video, comparing with mine.
My module is a mix of both:

  • The ideas behind media mover are very interesting, but it seems that the control remains centralized on the server. My module uses external shell scripts which access the server using an XML RPC interface, allowing to share the cpu load of transcoding by adding a machine (even a desktop PC behind a NAT dsl box) running these scripts. I would like to keep this principle to ensure easy scalability.

  • flash_video upload a video to a node. The video is not a node by itself. In my module, the media is a node. I don't know if this is a good idea.
    I use another player, flowplayer http://flowplayer.sourceforge.net/. This player does not require Macromedia tools (it uses a reverse engineered flash compiler), and is under the Apache License (free of use for any purpose).

  • creative commons (licensing) support should be put in an external module (in my case it is in my media module). This would allow each node to have a specific licence, including Creative commons code for example for search engine indexation. There is one project for this at http://drupal.org/project/creativecommons (I wasn't aware of this)

  • there is http://openpackage.biz/ module (did someone tested it?), the good old video module and the audio module.

Yours opinions about the drupal state of art?

Yoann

Multiple machine transcoding

arthurf's picture

The ideas behind media mover are very interesting, but it seems that the control remains centralized on the server. My module uses external shell scripts which access the server using an XML RPC interface, allowing to share the cpu load of transcoding by adding a machine (even a desktop PC behind a NAT dsl box) running these scripts. I would like to keep this principle to ensure easy scalability.

You're right that Media Mover does centralize control, however, I was thinking about exactly the problem you describe when I wrote it. One of the reasons I decided to do the plugable infrastructure was exactly this- it should be possible to write a module that uses the media_mover hook to do exactly this.

I'm interested to hear about how you handled FFmpeg. I've cleaned up the FFmpeg module for media move a bit so it now should handle multiple codec settings as well as being able to fail more gracefully with bad files. Since practically all of drupal's video modules use FFmpeg, it would be great if we could build a common library that we all use- this would help all the projects....

Community

Group organizers

Group categories

Community Group Freetags

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: