Umbes kuus kuud tagasi otsustasin teha programmi arvuti juhtimiseks läbi brauseri. Alustasin lihtsast ühe pesaga HTTP serverist, mis edastas pildid brauserisse ja sai juhtimiseks kursori koordinaadid.
Teatud etapis mõistsin, et WebRTC tehnoloogia sobib nendeks eesmärkideks hästi. Chrome'i brauseris on selline lahendus olemas, see installitakse laienduse kaudu. Kuid ma tahtsin teha kerge programmi, mis töötaks ilma installita.
Esmalt proovisin kasutada Google’i pakutavat teeki, kuid peale kompileerimist võtab see 500MB. Pidin kogu WebRTC virna peaaegu nullist juurutama ja suutsin kõik mahutada 2.5 MB exe-faili. Sõber aitas JS-i liidese loomisel ja selleni me lõpuks jõudsime.
Käivitame programmi:
Avage link brauseri vahekaardil ja hankige täielik juurdepääs töölauale:
Lühike animatsioon ühenduse loomise protsessist:
Toetavad Chrome, Firefox, Safari, Opera.
Võimalik on edastada heli, helikõnet, hallata lõikepuhvrit, edastada faile ja helistada kiirklahvidele.
Programmi kallal töötades pidin uurima tosinat RFC-d ja mõistma, et Internetis pole WebRTC-protokolli töö kohta piisavalt teavet. Soovin kirjutada artikli selles kasutatavate tehnoloogiate kohta, tahaksin teada saada, millised järgmistest küsimustest pakuvad kogukonnale huvi:
- SDP voogesituse andmete kirjeldamise protokoll
- ICE kandidaadid ja ühenduse loomine kahe punkti, STUN ja TURN serverite vahel
- DTLS-ühendus ja võtmete ülekandmine RTP-seansile
- Meediumiandmete edastamiseks krüpteeritud RTP ja RTСP protokollid
- Edastage H264, VP8 ja Opus RTP kaudu
- SCTP-ühendus binaarandmete edastamiseks
Allikas: www.habr.com