stream video over network

I have a project where I need to send bi-directional (webcam)video and audio between 2 computers on the same wireless local network. Similar to video conferencing. I will be pre processing the input video, but that shouldn’t matter.

what would be the best approach for this?

I’m thinking this: ofVideoGrabber -> GStreamer -> (compression - H.264?) -> ofxNetwork via a UDP connection.

Since it’s over the local network I don’t need it to be compressed all that much. what I’m more concerned about is error resiliency.

has anyone sent video streams over the network before?

thanks!

hi,

if you’re going to use gstreamer, it shopuld do the streaming for you so no need for the ofxNetwork addon.

i’ve tried to receive a stream in an oF app with gstreamer but not to send if although it should be possible.

you can take a look at this version: http://forum.openframeworks.cc/t/gstreamer-videograbber/2097/0

it’s for linux but it should work for any platform if you compile gstreamer for it and change some constants in ofConstants.h

for sending a stream you will need to use the appsrc plugin to inject the pixels data from the video in the gstreamer pipeline, it’s not already implemented in this version though.

also if you just need to get the video from the camera and send it to another app without modifying it you can just try with gstreamer or with the setPipelineWithSink method in the oF gstreamer version.

here’s also info on how to setup the pipeline to receive a stream from the special version of oF with gstreamer:
http://forum.openframeworks.cc/t/gstreamer-custom-pipes/2473/0

I was not aware gstreamer has the ability to handle the network streaming. very nice! I was anticipating that was going to be the tricky part.

thanks for the heads up on the appsrc plugin. I’ll post any usefull code when i’ve got it running.