How to stream your webcam videos live online using Ubuntu

Posted in:Tips 'n Tricks

If you are planning to conduct an event but the participants can't physically attend it, then what do you do? You take the event to them of course!! In more technical terms this is called live streaming. In this post we are going to show you how to live stream an event using a handycam, a web connection and of course the tools found in Ubuntu!!

Ubuntu Video

To start streaming

  1. We need to capture the video from the camcorder
  2. Convert the raw video into a suitable format to be transmitted over the web
  3. A web server that can host the video so that users can view it via a link in their browser

We can stream video from either a webcam or a handycam. Handycams are much preferred  as they are  compact and handy and of course support better resolutions. Here we will see how to stream videos from a handycam. The tool used to capture video or audio from camcorders  is called dvgrab.

dvgrab can be installed using the command in Ubuntu

 sudo apt-get install dvgrab

From the camcorder we can grab video using the following command

#dvgrab --format raw

In addition to dvgrab, we need two other tools named ffmpeg2theora and oggfwd. To install these packages, use the following command.

sudo apt-get install ffmpeg2theora oggfwd

Now with the video inputs taken care of, all that is left is to broadcast the video to the rest of the world via the web. For that you need to have a streaming video server. If you do not own one you can use

Giss tv is a free tool for for free media which means that  you can use their services to stream events related to Free Software and non copyrighted stuff, perfect for an Ubuntu release party, not good for viewing the security cam of your house :-D. If you have our own streaming icecast server you can use it for the same purpose

Coming back to giss, the  next step is to create a mount point in Giss tv (http://giss.tv) service.

Add mount point from the link given below

http://giss.tv/addmount.html

Once you have created your mount point you will get mount point details that include a password to your email id.

Now connect the camera and the computer with a firewire cable and execute the command below.

#sudo dvgrab --format raw - | ffmpeg2theora -a 0 -v 5 -f dv -x 320 -y 240 -o /dev/stdout - | oggfwd  icecastserver  8000 pwd /theora.ogg

Here 320x240 is the resolution, icecast server is the streaming server(in our case it is giss.tv), pwd is the password and theor.ogg is the mount point.

 

Now all that is needed it to send the link of the live video to your viewers.  Distribute the following url to your viewers.

http://gist.tv:8000/<mountpoint> where <mountpoint> should be replaced with the uniquemountpoint supplied to you by gist.tv.

Yep, thats it. If all goes well, you should have the vide up and running on the website.

Video Streaming in Ubuntu can be done using the above commands. If you prefer a more user friendly method without having to resort to typing all those commands, we recommend that you use an alternative, Theora Streaming Studio.

Theora Streaming Studio is a GUI for streaming which can be downloaded from http://gollum.artefacte.org/tss/ .There is a deb package available for Ubuntu and Debian users.

Theora Streaming Studio

Input camera configuration screen

Video Streaming

Streaming server configuration screen

Ubuntu Video

( Giss tv service cannot be used for commercial purpose. Please make sure that you read terms and conditions of  Giss tv) .

Hope you found the article useful. If you have any questions, please post them in the comment box below. We will be posting a thorough howto on setting up a live streaming environemnt using Theora Streaming Studio soon.

Press the button below if you liked this site.
webmaster's picture

The brains or the lack of it behind Ubuntu Manual. Crazy about Linux, hates windows except for the fact that it runs many of his favorite games by default. Loves blogging

writeforus