Ho creato un semplice esempio trasformando un feed video RTSP o HTTP in un flusso WebRTC. Questo esempio è basato su Kurento Media Server (KMS) e richiede che sia installato affinché l'esempio funzioni.
Installa KMS e divertiti...
https://github.com/lulop-k/kurento-rtsp2webrtc
AGGIORNAMENTO 22-09-2015.Controlla questo post per una spiegazione tecnica sul perché la transcodifica è solo una parte della soluzione a questo problema.
Janus-gateway ha recentemente aggiunto un semplice supporto RTSP (basato su libcurl) ai suoi plugin di streaming da questo commit
Quindi è possibile configurare il gateway per negoziare RTSP con la telecamera e inoltrare l'RTP tramite WebRTC aggiungendo nella configurazione dei plug-in di streaming <prefix>/etc/janus/janus.plugin.streaming.cfg
[camera]
type = rtsp
id = 99
description = Dlink DCS-5222L camera
audio = no
video = yes
url=rtsp://192.168.1.16/play2.sdp
Successivamente potrai accedere allo stream WebRTC utilizzando la pagina demo streaming http://..../demos/streamingtest.html
La risposta breve è no. RTSP
non è menzionato nello standard IETF per WebRTC e nessun browser ha attualmente intenzione di supportarlo. Link alla discussione su Chrome.
La risposta più lunga è che se sei veramente esaurito su questa idea, dovrai creare un gateway/breaker webrtc utilizzando l'API WebRTC nativa.
- Avvia una sessione WebRTC tra il tuo browser e il tuo breaker
- Prendi il feed della telecamera IP con il tuo gateway/interruttore
- Crittografa e invia il flusso rtp alla tua sessione WebRTC dal tuo flusso RTSP raccolto dall'interruttore tramite l'API WebRTC.
Questo è il modo in cui altri l'hanno fatto e come dovrà essere fatto.
AGGIORNAMENTO 30/07/2014:
Ho sperimentato con janus-gateway e credo che il plug-in di streaming faccia ESATTAMENTE questo in quanto può acquisire un flusso rtp e inviarlo a un peer webrtc. Per RTSP, potresti probabilmente creare un client RTSP (possibilmente usando una libreria come gstreamer), quindi inviare RTP e RTCP dalla connessione al peer WebRTC.