
Los ntawm thawj hnub ntawm kev ua haujlwm ntawm huab cua video soj ntsuam system, peb tau ntsib teeb meem, tsis muaj kev daws teeb meem uas peb tuaj yeem tso rau ntawm Ivideon - qhov no yog peb Everest, nce toj uas siv zog ntau, tab sis tam sim no peb muaj thaum kawg. daig ib tug pas dej khov rau sab saum toj ntawm tus ntoo khaub lig-platform puzzle.
Lub kaw lus xa suab thiab yees duab hauv Is Taws Nem yuav tsum tsis txhob nyob ntawm cov khoom siv, cov neeg siv Web thiab cov qauv uas lawv txhawb nqa, thiab tseem ua haujlwm kom raug nyob rau hauv lub xub ntiag ntawm Network Address Translators thiab firewalls. Ib tus neeg siv huab yees duab saib xyuas xav nkag mus rau qhov kev pabcuam, txawm tias nws siv cov koob yees duab analog, thiab nyiam saib cov yeeb yaj kiab tshaj tawm hauv cov cuab yeej niaj hnub no.
Nws yog qhov tseem ceeb heev uas tus neeg siv xav saib cov yeeb yaj kiab nrog kev ncua tsawg. Yuav luag tib txoj hauv kev los qhia cov vis dis aus nrog qis latency hauv qhov browser yog siv WebRTC (lub vev xaib sib txuas lus hauv lub sijhawm). WebRTC yog cov txheej txheem thev naus laus zis rau cov phooj ywg-rau-tus neeg sib kis ntawm cov vis dis aus thiab suab hauv browsers, pib tsim los rau kev sib kis thiab rov ua haujlwm ntawm cov kwj video uas tsis tshua muaj latency. Rau lub hom phiaj no, ntawm lwm yam, UDP raws tu qauv siv.
Ua ntej peb qhia koj tias lub cav tshiab muab rau tus neeg siv li cas, peb yuav nco ntsoov koj vim li cas thiab vim li cas peb thiaj li txhawb nqa HLS thev naus laus zis, thiab vim li cas peb thiaj li txiav txim siab mus ntxiv.
HLS engine: qhov zoo thiab qhov tsis zoo

()
Cov thev naus laus zis HLS (HTTP Live Streaming) tau tsim los ntawm Apple, yog li nws tsis yog qhov xav tsis thoob uas nws tau txhawb nqa thawj zaug ntawm Apple cov khoom siv. Niaj hnub no, HLS video kuj tau txhawb nqa los ntawm yuav luag txhua lub thawv teeb tsa thiab ntau lub cuab yeej khiav OS. Android.
Lub cav HLS siv lub npe nrov H264 video codec ua ke nrog AAC lossis MP3 suab kwj los kwj cov ntaub ntawv video. Tag nrho cov ntaub ntawv audio thiab video kwj yog ntim rau hauv MPEG-TS thawv thauj khoom. Rau kev sib kis los ntawm HTTP raws tu qauv, cov ntaub ntawv muaj nyob rau hauv cov kwj deg tau muab faib ua cov kab lus piav qhia hauv m3u8 playlists. Thiab tsuas yog tom qab ntawd cov seem no, nrog rau cov playlists, kis tau los ntawm HTTP. Chunking cia li txhais tau tias ncua sijhawm hauv vib nas this. Qhov no yog ib tug feature ntawm lub thawv MPEG-TS.
Lub cav HLS kuj tseem txhawb nqa cov kwj deg multibitrate, Live / VOD.
Cov txiaj ntsig tseem ceeb ntawm HLS:
- built-in kev them nyiaj yug nyob rau hauv tag nrho cov loj browsers;
- yooj yim ntawm kev siv (piv rau WebRTC);
- Nws yog qhov yooj yim heev thiab muaj txiaj ntsig los npaj txhua yam kev tshaj tawm rau cov neeg tuaj saib coob vim qhov tseeb tias ntu tuaj yeem xa mus rau CDN ib zaug.
Txawm hais tias lub simplicity ntawm lub cav, tsis yog txhua yam zoo li du. Qhov teeb meem tseem ceeb yog tus neeg thib peb cov neeg tsim khoom tsim tawm tau txav deb ntawm Apple cov lus pom zoo, piv txwv li ntawm cov suab tawm tswv yim. Tshwj xeeb, ntau tus tsim tawm tau pib ntxiv lub peev xwm los ua haujlwm nrog cov suab nrov nrov: mpeg2 video, mpeg2 suab, thiab lwm yam. Yog li ntawd, lawv yuav tsum tsim cov playlist sib txawv rau cov players sib txawv.
Tab sis ib qho teeb meem loj tshaj plaws nrog HLS lub cav yog qhov siab latency hauv cov ntaub ntawv hloov chaw.
Keeb kwm ntawm "brakes"
Lub ntsiab yog vim li cas rau lub siab latency ntawm HLS yog nyob rau hauv qhov tseeb hais tias programmers tsim lub cav kom tau cov zoo tshaj plaws dluab. Yog li ntawd, qhov tsis sib xws ntawm cov ntu ntu siv thiab qhov loj ntawm qhov kev ua si tsis yog tsuas yog tsis haum rau kev tshaj tawm hauv video. Vim li no, muaj kev ncua ntev heev hauv kev xa cov duab video, uas tuaj yeem yog 5-7 vib nas this.
Ntawm qhov tod tes, qhov no tsis yog ntau, piv txwv li, rau cov neeg saib yeeb yaj kiab los ntawm video hosting server. Tab sis rau cov kab ke soj ntsuam video, kev ncua sijhawm hauv kev xa cov duab video tuaj yeem yog qhov tseem ceeb heev.
Yog tias koj tab tom saib lub chaw ua haujlwm uas cov neeg ua haujlwm saib ntawm lawv cov saib ib teev ib teev, ces ncua 5 vib nas this tsis muaj teeb meem txhua. Tab sis tib neeg pib yws tias, piv txwv li, thaum tshaj tawm kev sib tw ncaws pob, lawv twb tau sau GOOOOL hauv kev sib tham, tab sis qhov no tseem tsis tau muaj nyob hauv video :). Peb twb muaj tus lej ntawm cov neeg siv uas Ivideon yuav tsum xyaum hloov Skype.
Puas muaj peev xwm tuav latency hauv HLS? Cov lus teb rau lo lus nug no zoo li cov lus hais ntawm tus kws paub txog nas exterminator ntawm kev qhuab qhia rau cov kws paub txog kev tswj xyuas kab tsuag tshiab: "Ntsuas tsis tuaj yeem tshem tawm, tab sis lawv cov lej tuaj yeem raug txo kom tsawg kawg nkaus." Ib yam li qhov ncua sij hawm hauv HLS, nws yuav tsis tuaj yeem txo nws mus rau xoom, tab sis muaj cov kev daws teeb meem ntawm kev ua lag luam uas tuaj yeem txo qhov qeeb.
Kev txiav npluav
Lwm qhov tsis zoo ntawm lub cav yog siv cov ntaub ntawv me me rau kev hloov cov ntaub ntawv. Nws yuav zoo li tias qhov no yog dab tsi?
Txhua tus neeg uas tau sim luam cov ntaub ntawv me me los ntawm ib qho nruab nrab mus rau lwm qhov, tej zaum yuav pom tias kev sau ntawv ceev ntawm cov txheej txheem no tsawg dua li ib cov ntaub ntawv loj ntawm tib qhov loj. Thiab qhov kev siv ntawm kev nkag mus rau lub hard drive nce ntau, uas feem ntau cuam tshuam tsis zoo rau kev ua haujlwm ntawm tag nrho lub computer. Yog li ntawd, kev xa cov ntaub ntawv video hauv me me 10 thib ob chunks kuj tseem txhawb nqa lub cav latency.
Cia peb qhia luv luv txhua qhov zoo thiab qhov tsis zoo ntawm HLS thev naus laus zis.
Qhov zoo ntawm HLS:
- Muaj peev xwm ua haujlwm nrog txhua yam khoom siv. Koj tuaj yeem saib cov yeeb yaj kiab ntawm txhua lub cuab yeej niaj hnub, xws li smartphone, ntsiav tshuaj, laptop lossis desktop PC. Qhov tseem ceeb tshaj plaws yog tias lub vev xaib browser tau hloov kho tshiab thiab sib xws nrog HTML5 thiab Media Source Extensions.
- Cov duab zoo heev. Lub adaptive cov ntaub ntawv kis tau tus mob muaj nuj nqi siv tso cai rau koj mus dynamically hloov qhov zoo ntawm cov video kis tau tus mob nyob ntawm lub bandwidth ntawm Internet kev twb kev txuas, thaum lub algorithm sib zog ua kom zoo tshaj plaws.
- Tsis tas yuav muaj kev teeb tsa nyuaj ntawm tus neeg siv khoom siv.
Tsis zoo:
- Kev txhawb nqa txwv rau kev ua haujlwm nrog lub cav ntawm qee cov khoom siv.
- Siab qeeb hauv kev xa cov duab.
- Qhov tseem ceeb nce hauv cov nyiaj siv ua haujlwm thiab qhov nyuaj ntawm kev ua kom zoo dua qub vim yog siv cov ntaub ntawv me me. Vim qhov xwm txheej ntawm lub thawv, peb yuav tsis muaj peev xwm tau txais latency qis dua qhov loj me.
Qhov tsis zoo ntawm HLS tshaj nws qhov zoo rau peb thiab yuam kom peb nrhiav lwm txoj hauv kev.
WebRTC yog dab tsi

()
Lub WebRTC platform tau tsim los ntawm Google hauv 2011 los xa cov streaming video thiab cov ntaub ntawv audio ntawm browsers thiab mobile applications nrog tsawg latency. Rau qhov no, tus qauv UDP raws tu qauv thiab tshwj xeeb ntws tswj algorithms yog siv. Niaj hnub no nws yog qhov qhib qhov project, nws tau nquag tswj hwm los ntawm Google thiab tab tom tsim.
WebRTC yog cov txheej txheem thev naus laus zis rau cov phooj ywg-rau-peer video thiab audio kis. Ntawd yog, piv txwv li, cov neeg siv browsers siv WebRTC tuaj yeem hloov cov ntaub ntawv mus rau ib leeg ncaj qha, tsis tas siv cov chaw taws teeb tswj kev khaws cia thiab ua cov ntaub ntawv. Tag nrho cov ntaub ntawv tseem ua tiav los ntawm cov neeg siv kawg ' browsers thiab daim ntawv thov mobile.
Cov neeg tsim khoom ntawm txhua lub browser nrov tau txais txiaj ntsig zoo rau qhov yooj yim thiab muaj peev xwm ntawm cov thev naus laus zis no. Kev txhawb nqa WebRTC tam sim no muaj nyob rau hauv Mozilla Firefox, Opera, Google Chrome (thiab txhua lub browsers raws li Chromium), nrog rau hauv cov mobile apps khiav Android thiab iOS.
Rau tag nrho nws cov txiaj ntsig tsis muaj kev ntseeg siab, WebRTC muaj ntau qhov tsis zoo.
Kev xaiv nyuaj
WebRTC thev naus laus zis muaj ntau qhov nyuaj ntawm kev sib cuam tshuam hauv network vim qhov tseeb tias nws yog hais txog P2P. Nws yog qhov nyuaj rau kev debug, sim, thiab tuaj yeem coj tus cwj pwm tsis zoo. Nyob rau tib lub sijhawm, peb yuav tsum kov yeej NAT thiab firewall, peb yuav tsum ua kom muaj kev ua haujlwm hauv cov tes hauj lwm uas UDP raug thaiv.
Google qhov kev siv WebRTC nyuaj heev rau siv. Muaj txawm tias tag nrho lub tuam txhab uas muab kev pabcuam SDK sib dhos. Ntxiv rau, Google qhov kev siv tau nyuaj heev rau kev koom ua ke nrog peb lub cev yam tsis tau rov encoding tag nrho cov vis dis aus.
Txawm li cas los xij, peb tau xav ntev los muab sijhawm rau cov neeg siv los ua haujlwm nrog cov yeeb yaj kiab "nyob" thiab txo qis qis ntawm cov duab ntawm lub vijtsam thiab cov xwm txheej lawv tus kheej. Ntxiv rau, peb muaj lub siab xav ua kom siv PTZ koob yees duab, qhov twg qeeb yog qhov tseem ceeb, nyiam dua.
Xav tias lwm qhov kev siv los tiv thaiv kev lag luam tseem muaj kev txwv tsis pub ua haujlwm thiab ua haujlwm tsis zoo, peb txiav txim siab siv WebRTC.
Peb tau ua dab tsi

Kev siv WebRTC platform kom raug tsis yog ib txoj haujlwm yooj yim. Ib qho kev suav tsis raug lossis qhov tsis raug tuaj yeem ua rau qeeb hauv kev sib kis video tsis yog tsuas yog txo qis piv rau lwm lub platform, tab sis tseem nce ntxiv.
Rau WebRTC ua haujlwm kom raug, ua ntej ntawm tag nrho cov, nws yog ib qho tsim nyog los ua kom tiav cov txheej txheem thev naus laus zis ntawm pawg rau kev ua haujlwm nrog lub vev xaib video. Qhov ntawd yog qhov peb tau ua.
Ua ntej, peb tau siv lub WebRTC signaling raws tu qauv neeg rau zaub mov ntawm Websocket, thiab kuj tau xa mus rau WebRTC phooj ywg neeg rau zaub mov hauv huab raws li webrtc.org SDK. Nws txoj haujlwm yog txhawm rau faib cov kwj video rau cov neeg siv WebRTC cov phooj ywg hauv H.264 + Opus / G.711 hom yam tsis muaj kev hloov pauv video.
Peb xaiv Websocket raws li cov txheej txheem qhia vim nws twb muaj kev txhawb nqa zoo hauv txhua qhov web browsers nrov. Vim li no, koj tuaj yeem txo qis tsis tsuas yog kev txhim kho nyiaj siv ua haujlwm xwb, tab sis kuj zam kev nkim sijhawm thiab cov peev txheej ntawm TCP thiab TLS rov tuav tes piv rau AJAX.
Qhov tseeb yog tias, los ntawm lub neej ntawd, WebRTC tsis muab cov txheej txheem teeb liab tsim nyog los teeb tsa, tswj, thiab txiav tawm kev sib txuas lus video hauv lub sijhawm tiag tiag ntawm qhov chaw thiab cov neeg siv khoom siv.
Thiab txhawm rau ua kom nws tus kheej siv cov thev naus laus zis thev naus laus zis, peb xav tau los txhim kho peb tus kheej cov neeg siv khoom siv nrog kev txhawb nqa rau ntau lub vev xaib (Websocet, WebRTC). Thiab nrog lub peev xwm los tswj hwm kev sib tham thiab kev ceeb toom hauv lub sijhawm tiag tiag, kev tswj hwm video thiab ntau ntxiv.
Peb tau kov yeej cov kev txwv ntawm P2P los ntawm kev txo qis latency tsis yog los ntawm P2P, tab sis los ntawm UDP thiab ntws tswj kom txo latency. Qhov no kuj tau tsim rau hauv WebRTC, txij li qhov kev siv tseem ceeb yog p2p kev sib tham ntawm browser.
Hauv cov neeg siv xov tooj ntawm tes, peb tau siv cov neeg ua si siv webrtc.org SDK, txij li tsuas yog nws ua raws li kev tswj hwm ntws, muaj tag nrho cov kev paub txog Forward Error Correction (FEC) schemes, thiab ua raws li cov txheej txheem rau kev xa cov pob ntawv rau txhua qhov browser. Nws tseem yog ib qho tseem ceeb uas lub webrtc.org SDK tab tom tsim los ntawm Google.
Qhov txiaj ntsig ntawm kev siv WebRTC yog dab tsi?
Txhawm rau saib cov vis dis aus nyob ntawm lub koob yees duab, peb tau ntxiv ib tus neeg ua si zoo tshaj plaws raws li WebRTC rau koj tus kheej tus account. Nws muab ceev ceev video loading speeds thiab tshem tawm tag nrho cov teeb meem ntawm latency accumulating raws li saib lub sij hawm nce.
Tom qab qhia WebRTC kev txhawb nqa hauv Ivideon huab kev pabcuam, peb tuaj yeem hais nrog kev ntseeg siab tias peb cov neeg siv khoom tam sim no tuaj yeem saib cov yeeb yaj kiab nyob puv puv. Tam sim no qhov qeeb thaum tshaj tawm cov yeeb yaj kiab tsis dhau ib thib ob! Rau kev sib piv, lub cav HLS yav dhau los muab kev xa khoom video nrog ncua sijhawm ntawm 5-7 vib nas this. Qhov sib txawv ntawm kev ua yeeb yaj kiab video ceev yog qhov tseem ceeb heev, thiab cov neeg siv yuav pom nws tam sim ntawd tom qab pib ua haujlwm nrog peb cov kev pabcuam video.
Raws li peb xav tau, qhov kev siv ntawm cov neeg ua si tshiab tau txhim kho cov lus teb ntawm PTZ thiab lub suab sib txuas lus nrog lub koob yees duab.

Muaj tsuas yog ib qho kev hloov maj mam uas peb xav kos xim rau. Tus tshiab WebRTC player tam sim no ua haujlwm hauv hom kev sim. Thiab yog vim li cas peb tsis tso cai rau tag nrho peb cov neeg siv khoom los ntawm lub neej ntawd. Tab sis koj tuaj yeem qhib nws tus kheej los ntawm kev ua kom cov khoom sib xws hauv lub koob yees duab teeb tsa (kom ua qhov no koj yuav tsum mus rau ).
Cov yam ntxwv ntawm kev siv WebRTC hauv kev pabcuam Ivideon

WebRTC tseem yog ib qho kev sim tshuab tam sim no. Nws txoj kev txhawb nqa tseem tsis tau raug coj los siv hauv txhua qhov browsers thiab cov neeg siv khoom siv, thiab tsis yog hauv txhua lub koob yees duab.
Qhov no yog qhov tseeb vim li cas peb tseem tsis tau ua WebRTC player ua lub neej ntawd rau txhua tus neeg siv.
Txog tam sim no, peb pom zoo kom siv WebRTC nkaus xwb hauv Google Chrome browsers. Qhov tseeb versions ntawm Firefox thiab Safari kuj txhawb cov thev naus laus zis no, tab sis, hmoov tsis, nws tseem tsis ruaj khov.
Peb tseem tsis tau siv WebRTC kev txhawb nqa rau browsers ntawm cov khoom siv mobile. Tam sim no, yog tias koj nkag rau hauv los ntawm lub xov tooj ntawm tes thiab qhib WebRTC, hom no yuav tsis ua haujlwm. Txawm li cas los xij, WebRTC muaj nyob rau hauv peb cov ntawv thov mobile rau и .
Thiab xaus zaj dab neeg hais txog cov yam ntxwv ntawm kev siv WebRTC hauv peb qhov kev pabcuam, cia peb nco txog ob lub ntsiab lus ntxiv.
Ua ntej, thev naus laus zis tau tsom mus rau kev tshaj tawm cov yeeb yaj kiab nyob hauv lub sijhawm. Yog li ntawd, yog tias koj channel tsis muaj bandwidth txaus los xa cov vis dis aus, koj yuav pom cov thav duab poob (nrog HLS koj yuav pom cov vis dis aus fading thiab nce latency, tab sis yuav tsis muaj thav duab poob), tab sis cov vis dis aus tseem yuav tshaj tawm hauv qhov tiag. sij hawm.
Qhov thib ob, txij li cov thev naus laus zis tau tsim los ua haujlwm tshwj xeeb nrog cov yeeb yaj kiab nyob hauv lub sijhawm tiag tiag, peb tsis siv nws los ua haujlwm nrog cov ntaub ntawv video archived.
Lwm yam kev hloov pauv rau kev pabcuam
Lub sijhawm no, Flash tsis koom nrog hauv lub tshuab xaiv lub cav tsis siv neeg. Koj tseem tuaj yeem siv cov neeg uas ua ntawv zoo li no, tab sis ua qhov no koj yuav tsum xaiv nws manually hauv tus account lossis lub koob yees duab teeb tsa. Qhov no tsis yog khoom plig rau kev zam, nws tsuas yog hais tias raws li kev txheeb cais ntawm peb cov kev pabcuam, tsis muaj cov neeg siv sab laug ua haujlwm nrog Flash. Thiab sim txiav txim siab seb tus neeg siv qhov browser txhawb nws, peb poob li 2 vib nas this ntawm lub sijhawm muaj txiaj ntsig.
Nov yog cov lus piav qhia luv luv ntawm cov kev hloov pauv uas tos koj hauv peb cov huab yees duab saib xyuas thiab tus account tus kheej. Nyob nrog peb thiab ua raws li xov xwm!
Tau qhov twg los: www.hab.com
