jean-emmanuel / open-stage-control

Libre and modular OSC / MIDI controller
https://openstagecontrol.ammd.net
GNU General Public License v3.0
701 stars 88 forks source link

Feature / Idea: video streaming input from RTSP server on local network #332

Closed baronlanteigne closed 6 years ago

baronlanteigne commented 6 years ago

Similar to the image widget. The idea would be to a fetch video stream from a RTSP server located on your local network. This would be very useful for video performance applications such as projection mapping, vjing, etc. The idea is to be able to use your controller (running open stage control) to see your video feed while you're away from the main media server.

An alternative would be to support Syphon or Spout.

I understand that this might not be the main focus of open stage control but I figured I would leave the idea here.

cyberic99 commented 6 years ago

FYI I have been able, with an external software, to use opencv to stream video frames to o-s-c over a local network. It is working quite good, but I haven't measured the bandwidth used.

I event think hat @jean-emmanuel had also made such prototype some time ago

baronlanteigne commented 6 years ago

Oh! Can you tell me how you did it? (which widget did you use to receive the image?)

I'm using TouchDesigner for my projects, it supports different ways to send video over network including NDI but I think it is proprietary.

Do you think the bandwidth could conflict with the data sent and received by o-s-c? I've noticed some latency so far but nothing problematic.

cyberic99 commented 6 years ago

I simply used the image widget (plots/image), you can update it dynamically by transmitting base64-encoded images

About the latency and the bandwidth... it depends on a lot of factors, you have to test

jean-emmanuel commented 6 years ago

This has been discussed here already: https://github.com/jean-emmanuel/open-stage-control/issues/259 The aforementioned prototype ended up here: https://github.com/jean-emmanuel/rtsp2osc

baronlanteigne commented 6 years ago

Merci!

This is great. I understand your concerns with keeping O-S-C dedicated to control. Your solution seems simple enough and great. I'll give it a try.

edit: It works pretty well! Thanks. The video is delayed, more than the delay I get with a regular rtsp stream input, but at least it does seem to affect the latency of the other messages that are sent/received.

I will keep using it.

jean-emmanuel commented 6 years ago

Cool !