Quicktime

Streaming with Free Software

How WCCA's stream works

WCCA's live video stream was created entirely using free software. It doesn't depend on any proprietary software from Microsoft or Apple. We create it with the VLC media player and the Ubuntu operating system. This is how we made it happen.

WCCA's stream set up involves two servers, a server at WCCA with a modest DSL internet connection that digitizes WCCA's signal, and WCCA's web server which has lots of bandwidth and can handle many simultaneous connections. At the station, we use a Plextor ConnectX TV402U to convert WCCA's broadcast signal into digital format. Since the TV402U doesn't support encoding directly into Windows media format, we then transcode it into Windows Media format for streaming using VLC.

We use the WIS Streamer software to create a high quality digital stream from the broadcast signal that's only used locally. The following command creates a passworded 1.5MBps MPEG2 stream with audio in the mpeg audio format. It may be possible to eliminate this step and have VLC read directly from the Video for Linux device driver, but this works well enough for our purposes.

/usr/src/wis-streamer/wis-streamer -u wcca:password -mpegaudio 256 -tntsc -i0 -r1500000

On the same computer at the station, we run VLC to transcode this stream into Windows Media format. We use DIV3, the Windows Media MPEG4 video format, and mp3 audio, like your favorite music files, because they're known to work with Microsoft's player. The 128kbps video stream plus two 32kbps channels of mp3 audio combine to make a 192kpbs stream. We use the Windows Media streaming format. It should be possible to also create a QuickTime compatible stream, but we have not investigated this yet.

vlc -R -I http --http-host 127.0.0.1:8081 -v rtsp://wcca:password@127.0.0.1:8554/ 
   --sout '#transcode{vcodec=DIV3,vb=128,scale=1,acodec=mp3,ab=32,channels=2}:std{access=mmsh,mux=asfh,dst=:8080,user=wcca,pwd=password}'

On our web server, we run another copy of VLC. This is the one people connect to when they watch the stream. We do this because our web server has enough bandwidth to handle many users, while the DSL line at the station does not.

vlc -R -I http --http-host localhost:8081 -vvv mmsh://wcca:password@1.2.3.4:8080/ --sout  '#std{access=mmsh,mux=asfh,dst=www.wccatv.com:8080}'

That's it! We have a few platform specific scripts to start and stop the stream, but that's the extent of our configuration. If you're interested in setting up something similar, the VLC streaming manual is online, and I'm always glad to help out.

Syndicate content