← Back

ofxGstRTP

github.com/arturoc/ofxGstRTP · @arturoc
OF 0.8 Web/Networking

Addon for sending video, audio, depth and osc to a remote peer using RTP. It can also use ofxXMPP to initiate the session through google talk, jabber or any other xmpp compatible server so you don't need to know the IP of the remote end. It can also use ofxNice to do NAT transversal so you can send data from computers behind NAT routers. Requires gstreamer to work.

57 23 Last commit 11y ago Created 13y ago

Forks

Forks pushed to more recently than arturoc/ofxGstRTP itself, plus any admin-confirmed fork with commits of its own — worth checking if you're hitting issues with the original.

nakamuraprocess/ofxGstRTP by @nakamuraprocess · ★ 0 · pushed 13d ago
hsab/ofxGstRTP by @hsab · ★ 0 · pushed 7y ago
torukawanabe/ofxGstRTP by @torukawanabe · ★ 0 · pushed 9y ago
avilleret/ofxGstRTP by @avilleret · ★ 0 · pushed 10y ago
kvnwinata/ofxGstRTP by @kvnwinata · ★ 0 · pushed 11y ago

README

ofxGstRTP



ofxGstRTP is part of a toolkit in development called OFStreamer, which is a set of openFrameworks addons designed to make it easier to use GStreamer on OSX and Windows. The toolkit is being developed by Arturo Castro and Seth Hunter for applications that require streaming video, audio and metadata between remote locations.

You can use the examples included in ofxGstRTP to send multiple compressed channels of data between remote peer-to-peer networks. For example, send h.264 compressed video and depth, compressed audio, and osc metadata between applications in different countries.

The addon uses ofxXMPP to establish the connection using jabber, google talk or any other xmpp compatible server. There's some examples that demonstrate how to establish a connection with another computer using these services. In addition, we resolve NAT traversal issues (computers being behind routers) using ofxNice so you don't have to use static IPs or setup a VPN, potentially making your applicaiton scalable to many clients. NAT traversal will work with most routers (92%) except symetric routers in big organizations and hotels. You'll also need ofxDepthStreamCompression that commpresses the depth stream to have good quality point clouds and ofxSnappy used also to compress the depth and osc streams.

There's an experimental echo cancelation module, disabled by default that can be enabled in src/ofxGstRTPConstants.h. It depends on ofxEchoCancel

Currently we have examples working on OSX and Linux and are working on porting the examples to windows 7 and 8.

Installing gstreamer



This addon also depends on gstreamer, in linux it's installed by default as part of openFrameworks. On OSX and Windows you'll need to install it manually. To make this process easier please use the ofxGstreamer addon and follow the directions included there to install the dependencies.

Running the examples





Get this addon

HTTPS
SSH