Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Rajta van legalább két oka van:

1. Mivel a nézők számát sugárzott Ethernet növekvő hiány lesz érezhető az első csatorna vastagságban, majd a források a kamera is.

Elindításához posnifaem IP kamerát, hogy mi ez a készülék elküldi a böngésző oldalon. Ahogy a kísérleti kamra jelentése D-Link DCS 7010L:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

A kép megjelenik az összes böngészőben és egyenletesen podlagivaet, körülbelül másodpercenként egyszer. Tekintettel arra, hogy a fényképezőgép és a laptop, amelyen azt látjuk, egy patak csatlakozik ugyanarra a router, akkor legyen sima és szép, de nem az. Hasonló a HTTP. Fuss Wireshark hogy erősítse meg a találgatások:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Itt látunk egy szekvencia TCP töredékek 1514 bájt hosszúságú

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

és befejez egy HTTP 200 OK hosszú elfogadott JPEG:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Ezután menj a Chrome / Developer Tools / Hálózat, és látni valós időben hogyan flash egy GET kérést és továbbított képeket HTTP-n keresztül:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Az ilyen streaming nem kell. Nem sima, húzza a HTTP kéréseket. Hány és másodpercenként a kamera állni? Okunk van azt hinni, hogy a 10 néző a kamera előtt kezd biztonságosan hajlított vagy félek hogy nem produkál diák.

Ha megnézzük a HTML oldal admin kamera, amit itt látunk egy érdekes kód:

Itt lehet megemlíteni egy másik Flash Player, amely lehet egy megfelelő típusú Wowza szerver megkapja RTMP stream az átalakított RTSP, RTP, H.264. Azonban a Flash Player, mint ismeretes, túl, egy böngésző plug-in, bár jóval népszerűbbek a VLC vagy QuickTime.

Ebben az esetben fogjuk tesztelni azonos RTSP / RTP újra streaming, hanem lejátszóig fogják használni WebRTC-kompatibilis böngésző anélkül, hogy további böngésző plug és más mankó. Mi lesz a szerver beállítása relé, ami elveszi a áramlását IP-kamerák, és adja meg, hogy tetszőleges számú internethasználók böngészőkkel támogatást WebRTC.

Csatlakoztatása IP-kamra

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

A kamera beállítása

Először is, a kamera beállítások le vannak tiltva hitelesítés részeként - a vizsgálati ad flow mindenkinek, aki kérdez. Ehhez a webes felületen a kamera megy a beállítás - Hálózat és az értéket az Authentication tiltása lehetőséget.

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

By the way, az áramlás a játék simán nélkül leletek. Várjuk ugyanaz WebRTC.

A kiszolgáló

Kalapált a megfelelő beállításokat a router ...

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

telnet 178.51.142.223 554

Ügyelve arra, hogy a port a válasz, folytassa a szerver telepítéséhez WebRTC.

Hosting lesz felelős a virtuális szerver Centos 64 bit az Amazon EC2.
Nem probléma van, akkor válasszon egy példányát m3.medium VCPU:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Igen, igen, még mindig van egy Linode és DigitalOcean, de ebben az esetben akart poamazonit.
Ami a jövőt illeti, írok az Amazon EC2 vezérlőpulton meg kell adni bizonyos szabályok (port forwarding), amely nélkül ez nem fog működni. Ez portok WebRTC (SRTP, RTCP, ICE) közlekedési és portok RTSP / RTP forgalmat. Ha megpróbáljuk, az Amazon szabályokat kell valami hasonlót a bejövő forgalom számára:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Mivel a szerver szoftver, a relé RTSP / RTP stream WebRTC fogja használni WebRTC Media # 038; A műsorszóró Szervert Flashphoner. Streaming szerver nagyon hasonlít a Wowza. amely képes adni RTSP / RTP folyam a Flash. Az egyetlen különbség az, hogy ez az áramlás kap a WebRTC, hanem a Flash. Ie a böngésző és a szerver lesz becsületes DTLS, SRTP kapcsolat jön létre, és a patak kódolt VP8 lesz a közönség.

A telepítéshez szükség van SSH-hozzáféréssel.

Under spoiler - részletes leírása a végrehajtott parancsok

Az elképzelés az, hogy ahelyett, hogy a fenti 10. célszerű lenne megkérdezni a szükséges portok és a tűzfal szabályokat, de tesztelési célokra, úgy döntött, hogy egyszerűen kikapcsolja a tűzfalat.

A szerver beállítása

Emlékezzünk vissza, hogy a szerkezet a WebRTC fordítás a következő:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Telepítés alapeleme ebben az ábrában, már készül, hogy létre kell hozni „nyilak” kölcsönhatásokat.

A kapcsolat a böngésző és a szerver WebRTC biztosít web-kliens, amely a githabe. Állítsa JS, CSS és HTML fájlokat egyszerűen dob a / var / www / html a telepítés során (ld. Fenti 9. pont spoiler).

A szerver beállítása itt véget ér, akkor nézd meg a munkáját:

Nyissa meg a web-kliens index.html oldalt a böngészőben (erre a célra ugyanazon Amazon kiszolgáló telepítve apache parancs yum -y install httpd):

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

És DDNS támogatása a router úgy néz ki:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Most már készen áll, hogy teszteljék és értékeljék az eredményeket.

tesztelés

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Ekkor létrejön a kapcsolat a szerverrel böngésző vebsoketam, akkor a szerver kér IP kamera RTSP, H.264 kap áramot az RTP transcodes be VP8 / SRTP - ami végül is játszik WebRTC- böngészőt.

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Ezt követően, miután egy rövid várakozás, megjeleníti az ismerős kép.

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Gondoskodunk róla, hogy tényleg WebRTC.

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

Ebben az időben, akkor nem villog, és nem lát képeket HTTP protokollon keresztül. Minden, amit látunk ebben az időben - ez WebSocket keretek, és a legtöbbjük tartozik a ping / pong típusú fenntartani WebSocket-session. Érdekes keretek: csatlakozni, prepareRtspSession és onReadyToPlay - ebben a sorrendben van telepítve kapcsolódni a szerverhez: első párhuzamos kapcsolása WebSocket, majd patak reprodukció kérelmet.

De ez azt mutatja, a chrome: // WebRTC-internals

Tanúsága szerint a grafikonok, hogy van egy kis üteme 1 Mbps IP kamera. A kimenő forgalom is, valószínűleg ez RTCP csomagokat és a jég. RTT az Amazonas szerver körülbelül 300 milliszekundum.

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

A következő teszt - a kapcsolat más nézők. Nem sikerült megnyitni a Chrome Windows 10, és mindegyik képet mutat. Ugyanakkor kezdte a Chrome egy kicsit tompa. Amikor a nyitás a 11. ablak egy másik számítógépen, a lejátszás sima volt.

Mintegy WebRTC mobil

Mint ismeretes, a WebRTC támogatja a Chrome és a Firefox böngészőt az Android platform.
Megnézzük, mi adás van meg:

Műsorszolgáltató a videó stream az ip-kamera segítségével WebRTC, savepearlharbor

következtetés

Ennek eredményeként sikerült futtatni a WebRTC online sugárzott IP-kamerák több böngészővel minimális erőfeszítéssel. Nem vállal semmilyen táncokat tambura, nem rakéta-tudomány - csak az alapvető ismereteket a Linux és SSH-konzol.

Broadcast minőségű volt elfogadható szinten, és a lejátszási késleltetés észrevehetetlen a szemnek.

Miért nem látjuk a széles körű bevezetését WebRTC?

A fő fék talán a hiányzó kodekeket. WebRTC közösség és a gyártók erőfeszítést kellene tennie, és tegye be a H.264 kodek WebRTC. Ellen VP8 nincs mit mondani, de miért adja fel milliónyi kompatibilis eszközök és szoftverek, amelyek működnek H.264? A szabadalmak szabadalmi ...

A második helyen nem teljesen támogatott böngészők. C IE és Safari, például a kérdés továbbra is nyitott, és ott kell váltani egy másik típusú streaming vagy egy dugós webrtc4all.

Annak érdekében, hogy a jövőben, reméljük, hogy több érdekes megoldást, ami nem kell konverziót és az átkódolás patakok és a legtöbb böngésző is otygrivat folyamok több eszköz már közvetlenül.