headermask image

header image

category archive listing Category Archives: My Work

NetVideoBroadcaster for DirectShow

Quite a while ago I wrote a suite of applications that allows you to stream video and/or audio data across a network.

The first was NetAudio, and was particularly useful to me for streaming radio audio across my network from my radio setup to my webserver, where it can be streamed out onto the internet (my WebRadio project).
Next came NetVideo (which uses Video for Windows). This allowed me to stream TV from upstairs down to my ‘lab’ and let me record content on-the-fly to my HDD.

Unfortunately NetVideo fell apart when I replaced the computer upstairs with one running WinXP (the old one ran Win98, hence the use of the VfW API). Since capturing video under WinXP with VfW doesn’t work with modern capture cards, the broadcaster component failed to work full stop.

Last Friday I wrote the new, shiny DirectShow-compatible version of NetVideoBroadcaster. It creates a capture filter graph and streams the captured video and audio into two sample grabbers, which pass media samples to the broadcaster to be send out across the network. The nice thing I’ve conformed to the same protocol I designed for the original VfW so I didn’t have to alter the code of the NetVideoReceiver – they’re all compatible with each other.