kerberos-io / machinery

(DEPRECATED) An open source image processing framework, which uses your USB-, IP- or RPi-camera to recognize events (e.g. motion).
https://www.kerberos.io
489 stars 102 forks source link

Provide a RTSP streaming with no recoding #90

Open flaviostutz opened 7 years ago

flaviostutz commented 7 years ago

In one of our projects we want to use Kerberos for advanced image processing, but for now we want to let video recording to the existing NVR infrastructure (it is well tested and people know how to use and operate them). So we thought we could connect the only cam feed to Kerberos.io and point the existing NVRs to the Kerberos (re)feed.

The majority of cams in the market can't perform more than one simultaneous RTSP/MJPEG feed on the cam itself (probably because of lack of onboard cpu power). On large deployments (hundreds), I don't want that kind of traffic duplication crowding the fibers too.

An important feature would be for the relay to perform restreaming with no recoding (maintaining original H264 encoded image from the camera) so that it could enable large scale deployments.

flaviostutz commented 7 years ago

We created a RTSP relay (https://github.com/flaviostutz/rtsp-relay) that could be used as a reference based on FFMPEG. The problem with this is that it recodes the stream, consuming 50% CPU for each feed (seems like FFMPEG works this way).

We managed to relay RTSP on VLC (just on Windows!) with no recoding and it got 4% cpu overhead for each feed. Now we are trying to use GStreamer for this task (still on dependency hell epic)...

cedricve commented 7 years ago

@flaviostutz nice, let's talk about this!

cedricve commented 7 years ago

@flaviostutz maybe we should use OpenRTSP?

flaviostutz commented 7 years ago

I read the documentation on http://www.live555.com/openRTSP/ but couldn't manage how to restream the feed. Could you send a sample command line for this?

Thanks.

Sent from my iPhone

On 15 Aug 2017, at 16:05, Cédric Verstraeten notifications@github.com wrote:

@flaviostutz maybe we should use OpenRTSP?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.