
Аз рӯзҳои аввали кор дар системаи назорати видеоии абрӣ, мо бо мушкилот рӯбарӯ шудем, ки бидуни ҳалли он мо метавонем аз Ивидеон даст кашем - ин Эверести мо буд, кӯҳнавардӣ, ки қувваи зиёдеро талаб мекард, аммо ҳоло мо ниҳоят тешаи яхро ба болои муаммои кросс-платформа часпид.
Системаи интиқоли аудио ва видео аз тариқи Интернет набояд аз таҷҳизот, мизоҷони веб ва стандартҳое, ки онҳо дастгирӣ мекунанд, вобаста бошад ва инчунин дар ҳузури Тарҷумонҳои шабакавии адресҳо ва брандмауэрҳо дуруст кор кунад. Истифодабарандаи видеои назорати абрӣ ҳатто агар аз камераҳои аналогӣ истифода кунад ҳам, мехоҳад ба хидмат дастрасӣ пайдо кунад ва тамошои пахши мустақими видеоиро дар дастгоҳи муосиртарин афзалтар медонад.
Ин хеле муҳим аст, ки корбар мехоҳад видеоҳоро бо таъхири ҳадди ақал тамошо кунад. Қариб ягона роҳи нишон додани видео бо таъхири паст дар браузер ин истифодаи WebRTC (муоширати воқеии веб) мебошад. WebRTC маҷмӯи технологияҳо барои интиқоли видео ва аудио дар браузерҳо мебошад, ки дар аввал барои интиқол ва бозикунии ҷараёнҳои видеоӣ бо таъхири кам пешбинӣ шудааст. Бо ин мақсад, дар байни чизҳои дигар, протоколи UDP истифода мешавад.
Пеш аз он ки мо ба шумо бигӯем, ки муҳаррики нав ба корбар чӣ медиҳад, мо ба шумо хотиррасон мекунем, ки чаро ва чаро мо технологияҳои HLS-ро дастгирӣ мекунем ва чаро мо тасмим гирифтем, ки идома диҳем.
Муҳаррики HLS: мусбат ва манфии

()
Технологияи HLS (HTTP Live Streaming) аз ҷониби Apple таҳия шудааст, аз ин рӯ, тааҷҷубовар нест, ки он бори аввал дар дастгоҳҳои Apple дастгирӣ карда шуд. Имрӯз, видеои HLS инчунин аз ҷониби қариб ҳамаи приставкаҳои телевизионӣ ва бисёр дастгоҳҳое, ки бо системаи амалиётӣ кор мекунанд, дастгирӣ карда мешавад. Android.
Муҳаррики HLS кодеки маъруфи H264-ро дар якҷоягӣ бо ҷараёнҳои аудиоии AAC ё MP3 барои ҷараён додани маълумоти видео истифода мебарад. Тамоми ҷараёни маълумотҳои аудио ва видео дар як контейнери нақлиётии MPEG-TS бастабандӣ карда мешавад. Барои интиқол тавассути протоколи HTTP, иттилооти дар ҷараён мавҷудбуда ба порчаҳое тақсим мешавад, ки дар рӯйхати навозишҳои m3u8 тавсиф шудаанд. Ва танҳо пас аз он, ин порчаҳо дар якҷоягӣ бо рӯйхати навозишҳо тавассути HTTP интиқол дода мешаванд. Ҷудокунӣ ба таври худкор маънои таъхир дар сонияҳоро дорад. Ин хусусияти контейнери MPEG-TS мебошад.
Муҳаррики HLS инчунин ҷараёнҳои мултипликатори Live/VOD -ро дастгирӣ мекунад.
Афзалиятҳои асосии HLS:
- дастгирии дарунсохт дар ҳама браузерҳои асосӣ;
- осонии татбиқ (дар муқоиса бо WebRTC);
- Ташкили ҳама гуна пахшҳо барои аудиторияи калон хеле қулай ва муассир аст, зеро сегментҳоро як маротиба ба CDN бор кардан мумкин аст.
Сарфи назар аз содда будани муҳаррик, на ҳама чиз он қадар ҳамвор аст, ки ба назар мерасад. Мушкилоти асосӣ дар он аст, ки таҳиягарони плеери тарафи сеюм аз тавсияҳои Apple дур шудаанд, масалан дар робита ба форматҳои аудиоии дастгирӣ. Аз ҷумла, бисёре аз таҳиягарон ба илова кардани қобилияти кор бо ҷараёнҳои маъмули аудио оғоз карданд: видео mpeg2, аудио mpeg2 ва ғайра. Дар натиҷа, онҳо маҷбур шуданд форматҳои гуногуни рӯйхати навозишро барои плеерҳои гуногун эҷод кунанд.
Аммо яке аз бузургтарин мушкилоти муҳаррики HLS ин таъхири баланд дар интиқоли маълумот мебошад.
Сарчашмаҳои "тормозҳо"
Сабаби асосии таъхири баланди HLS дар он аст, ки барномасозон муҳаррикро барои ба даст овардани тасвирҳои баландсифат офаридаанд. Аз ин рӯ, параметрҳои фосилаи чаҳорчӯбаи истифодашуда ва андозаи буфери бозикунӣ барои пахши мустақими видео мувофиқ нестанд. Аз ин сабаб, дар интиқоли наворҳои видеоӣ хеле зиёд таъхир мешавад, ки метавонад 5-7 сонияро ташкил диҳад.
Аз як тараф, ин чандон зиёд нест, масалан, барои онҳое, ки аз сервери хостинги видео филм тамошо мекунанд. Аммо барои системаҳои назорати видеоӣ таъхир дар интиқоли наворҳои видеоӣ метавонад хеле муҳим бошад.
Агар шумо офисеро тамошо кунед, ки дар он кормандон дар як соат як маротиба аз мониторҳои худ нигоҳ мекунанд, пас таъхири 5 сония умуман аҳамият надорад. Аммо одамон шикоят карданд, ки масалан, ҳангоми пахши бозии футбол, онҳо аллакай дар чат GOOOOL навиштаанд, аммо ин ҳанӯз дар видео нест :). Мо аллакай як қатор ҳолатҳои корбарон дорем, ки Ivideon бояд амалан Skype-ро иваз кунад.
Оё имкон дорад, ки таъхирро дар HLS мағлуб кард? Ҷавоб ба ин савол ба сухани як кассаҳои ботаҷриба дар лексия ба мутахассисони навраси мубориза бо ҳашароти зараррасон монанд аст: «Кашамушҳоро нест кардан мумкин нест, аммо шумораи онҳоро ба ҳадди ақалл кам кардан мумкин аст». Ба монанди таъхир дар HLS, онро ба сифр кам кардан ғайриимкон аст, аммо дар бозор қарорҳое мавҷуданд, ки метавонанд таъхирро ба таври назаррас коҳиш диҳанд.
Буридани хуб
Камбудии дигари муҳаррик ин истифодаи файлҳои хурд барои интиқоли маълумот мебошад. Чунин ба назар мерасад, ки дар ин чӣ хато аст?
Ҳар касе, ки кӯшиши нусхабардории миқдори зиёди файлҳои хурдро аз як миёнарав ба дигараш кардааст, эҳтимол пай бурдааст, ки суръати навиштани чунин маҷмӯа нисбат ба як файли калони ҳамон андоза хеле пасттар аст. Ва шиддатнокии дастрасӣ ба диски сахт ба таври назаррас меафзояд, ки умуман ба кори тамоми компютер таъсири манфӣ мерасонад. Аз ин рӯ, интиқоли маълумоти видеоӣ дар қисмҳои хурди 10 сония инчунин ба зиёд шудани таъхири муҳаррик мусоидат мекунад.
Биёед ҳама мусбат ва манфии технологияи HLS-ро мухтасар ҷамъбаст кунем.
Афзалиятҳои HLS:
- Қобилияти кор бо ҳама гуна дастгоҳ. Шумо метавонед видеоҳоро дар ҳама гуна дастгоҳи муосир, хоҳ смартфон, планшет, ноутбук ё компютери мизи корӣ тамошо кунед. Муҳим он аст, ки браузери веб навсозӣ буда, бо HTML5 ва Media Source Extensions мувофиқ аст.
- Сифати аълои тасвир. Функсияи мутобиқгардонии интиқоли додаҳо, ки истифода мешавад, ба шумо имкон медиҳад, ки сифати видеои интиқолшударо вобаста ба фарохмаҷрои пайвасти интернет ба таври динамикӣ тағир диҳед, дар ҳоле ки алгоритм кӯшиш мекунад, ки сифати ҳадди аксарро нигоҳ дорад.
- Барои конфигуратсияи мураккаби таҷҳизоти корбар лозим нест.
Қисми ғайриқонунӣ:
- Дастгирии маҳдуд барои кор бо муҳаррик дар баъзе дастгоҳҳо.
- Таъхирҳои баланд дар интиқоли тасвир.
- Афзоиши назарраси хароҷоти изофӣ ва мураккабии оптимизатсия аз ҳисоби истифодаи файлҳои хурд. Аз сабаби хусусияти контейнер, мо ҳеҷ гоҳ наметавонем як таъхирро аз андозаи сегмент камтар ба даст орем.
Камбудиҳои HLS аз бартариҳои он барои мо зиёдтар буданд ва моро маҷбур карданд, ки вариантҳои алтернативӣ ҷустуҷӯ кунем.
WebRTC чист

()
Платформаи WebRTC аз ҷониби Google дар соли 2011 барои интиқоли видео ва аудиои ҷараёнӣ байни браузерҳо ва замимаҳои мобилӣ бо ҳадди ақали таъхир таҳия шудааст. Барои ин протоколи стандартии UDP ва алгоритмҳои махсуси назорати ҷараён истифода мешаванд. Имрӯз он як лоиҳаи кушодаасос буда, онро Google фаъолона дастгирӣ мекунад ва таҳия карда мешавад.
WebRTC маҷмӯи технологияҳо барои интиқоли видео ва аудио ба ҳамсол ба ҳамсол мебошад. Яъне, масалан, браузерҳои корбар бо истифода аз WebRTC метавонанд бидуни истифодаи серверҳои дурдаст барои нигоҳдорӣ ва коркарди маълумот маълумотро ба ҳамдигар мустақиман интиқол диҳанд. Ҳама маълумот инчунин тавассути браузерҳои корбарони ниҳоӣ ва замимаҳои мобилӣ коркард карда мешаванд.
Қулайӣ ва имконоти васеи ин технология аз ҷониби таҳиягарони ҳамаи браузерҳои маъмул қадр карда шудааст. Дастгирии WebRTC айни замон дар Mozilla Firefox, Opera, Google Chrome (ва ҳамаи браузерҳои асоси Chromium), инчунин дар барномаҳои мобилӣ, ки кор мекунанд, дастрас аст. Android ва iOS.
Бо тамоми бартариҳои бешубҳаи худ, WebRTC якчанд камбудиҳои назаррас дорад.
Мушкилоти интихоби
Технологияи WebRTC дар робита бо ҳамкории шабакавӣ хеле мураккабтар аст, зеро он дар бораи P2P аст. Онро ислоҳ кардан, озмоиш кардан душвор аст ва метавонад ба таври ғайричашмдошт рафтор кунад. Ҳамзамон, мо бояд NAT ва брандмауэрро паси сар кунем, мо бояд корро дар шабакаҳое, ки UDP баста шудааст, таъмин кунем.
Истифодаи WebRTC-и Google хеле душвор аст. Ҳатто як ширкате вуҷуд дорад, ки хидматҳои васлкунии SDK-ро пешниҳод мекунад. Ғайр аз он, татбиқи Google бо системаи мо бидуни рамзгузории тамоми видео хеле душвор буд.
Бо вуҷуди ин, мо кайҳо боз мехостем ба корбарон имконият диҳем, ки бо видеои мукаммали "зинда" кор кунанд ва қафомонии байни тасвир дар экран ва худи рӯйдодҳоро ба ҳадди ақалл кам кунанд. Ғайр аз он, мо хоҳиш доштем, ки камераҳои PTZ-ро истифода барем, ки дар он таъхирҳо муҳим ва бароҳаттаранд.
Бо дарназардошти он, ки дигар татбиқи зидди ақибмонӣ ҳоло ҳам функсияҳои маҳдуд доранд ва ба таври назаррас бадтар кор мекунанд, мо тасмим гирифтем, ки WebRTC-ро истифода барем.
Мо чӣ кор кардаем

Дуруст татбиқ кардани платформаи WebRTC кори осон нест. Ҳама гуна ҳисобкунии нодуруст ё нодуруст метавонад боиси таъхир дар интиқоли видео на танҳо дар муқоиса бо дигар платформаҳо кам нашавад, балки ҳатто афзоиш ёбад.
Барои дуруст кор кардани WebRTC, пеш аз ҳама, такмилдиҳии технологии стек барои кор бо веб-видео зарур аст. Мо ин корро кардем.
Аввалан, мо сервери протоколи сигнализатсияи WebRTC-ро тавассути Websocket татбиқ кардем ва инчунин сервери ҳамсолони WebRTC-ро дар абр дар асоси webrtc.org SDK ҷойгир кардем. Вазифаи он паҳн кардани ҷараёнҳои видеоӣ ба ҳамсолони муштарии WebRTC дар формати H.264 + Opus/G.711 бидуни рамзгузории видео мебошад.
Мо Websocket-ро ҳамчун протоколи сигналӣ интихоб кардем, зеро он аллакай дар ҳама браузерҳои машҳури веб дастгирии баландсифат дорад. Аз ин рӯ, шумо метавонед на танҳо хароҷоти рушдро ба таври назаррас коҳиш диҳед, балки инчунин аз талафи вақт ва захираҳо дар мубодилаи такрории TCP ва TLS дар муқоиса бо AJAX пешгирӣ кунед.
Гап дар он аст, ки ба таври нобаёнӣ, WebRTC протоколи сигнализатсияро барои дуруст конфигуратсия кардан, нигоҳдорӣ ва қатъ кардани алоқаи видеоии воқеии байни барномаҳои манбаъ ва муштарӣ таъмин намекунад.
Ва барои мустақилона татбиқ кардани технологияи сигнализатсия, ба мо лозим буд, ки сервери сигнализатсияи худро бо дастгирии якчанд протоколҳои веб (Websocet, WebRTC) таҳия кунем. Ва бо қобилияти бехатар идора кардани ҷаласаҳо ва огоҳиномаҳо дар вақти воқеӣ, идоракунии видео ва ғайра.
Мо маҳдудиятҳои P2P-ро тавассути кам кардани таъхири на тавассути P2P, балки тавассути UDP ва назорати ҷараён паси сар кардем. Он инчунин дар WebRTC сохта шудааст, зеро истифодаи асосӣ гуфтугӯҳои p2p тавассути браузер мебошад.
Дар муштарии мобилӣ, мо плеерро бо истифода аз webrtc.org SDK амалӣ кардем, зеро танҳо он назорати ҷараёнро дуруст иҷро мекунад, ҳама схемаҳои маълуми Ислоҳи Хатогии Forward (FEC) дорад ва механизми фиристодани пакетҳоро барои ҳама браузерҳо дуруст иҷро мекунад. Инчунин муҳим аст, ки webrtc.org SDK аз ҷониби Google фаъолона таҳия карда мешавад.
Натиҷаи татбиқи WebRTC чист?
Барои дидани видеои зинда аз камераҳо, мо ба ҳисоби шахсии шумо плеери нави оптимизатсияшуда дар асоси WebRTC илова кардем. Он суръати тези боркунии видеоро таъмин мекунад ва мушкилоти ҷамъшавии таъхирро бо афзоиши вақти тамошо комилан бартараф мекунад.
Пас аз ҷорӣ кардани дастгирии WebRTC дар хидмати абрии Ivideon, мо бо итминони комил гуфта метавонем, ки муштариёни мо акнун метавонанд видеои мукаммали мустақимро тамошо кунанд. Ҳоло таъхир ҳангоми пахши пайдарпайии видео аз як сония зиёд нест! Барои муқоиса, муҳаррики қаблии HLS интиқоли видеоро бо таъхири 5-7 сония таъмин мекард. Тафовут дар суръати намоиши видео хеле назаррас аст ва корбар онро фавран пас аз оғоз кардани кор бо хидмати видеоии мо пай мебарад.
Тавре ки мо интизор будем, татбиқи плеери нав мутобиқати PTZ ва иртиботи овозиро бо камера беҳтар кард.

Танҳо як нуктаи нозук вуҷуд дорад, ки мо мехоҳем таваҷҷӯҳро ба он ҷалб кунем. Плеери нави WebRTC айни замон дар реҷаи санҷишӣ кор мекунад. Ва аз ин рӯ, мо онро ба таври нобаёнӣ барои ҳамаи муштариёни худ фаъол намекунем. Аммо шумо метавонед онро худатон бо фаъол кардани ҷузъи мувофиқ дар танзимоти камера фаъол созед (барои ин кор, ба ).
Хусусиятҳои татбиқи WebRTC дар хидмати Ivideon

WebRTC ҳоло ҳам технологияи таҷрибавӣ мебошад. Дастгирии он ҳанӯз дар ҳама браузерҳо ва дастгоҳҳои корбар дуруст иҷро карда нашудааст, инчунин на дар ҳама камераҳо.
Маҳз аз ин рӯ, мо то ҳол плеери WebRTC-ро барои ҳама корбарон пешфарз накардаем.
Ҳоло мо тавсия медиҳем, ки WebRTC-ро танҳо дар браузерҳои Google Chrome истифода барем. Версияҳои охирини Firefox ва Safari низ ин технологияро дастгирӣ мекунанд, аммо, мутаассифона, он то ҳол ноустувор аст.
Мо то ҳол дастгирии WebRTC-ро барои браузерҳо дар дастгоҳҳои мобилӣ амалӣ накардаем. Дар айни замон, агар шумо аз дастгоҳи мобилӣ ворид шавед ва WebRTC-ро фаъол кунед, ин режим кор намекунад. Аммо, WebRTC дар замимаҳои мобилии мо барои и .
Ва хулосаи ҳикоя дар бораи хусусиятҳои татбиқи WebRTC дар хидмати мо, биёед боз ду нуктаи нозукро қайд кунем.
Аввалан, технология ба пахши видеои мустақим дар вақти воқеӣ нигаронида шудааст. Аз ин рӯ, агар канали шумо барои интиқоли видео фарохмаҷрои кофӣ надошта бошад, шумо камшавии кадрҳоро мушоҳида хоҳед кард (бо HLS шумо пажмурда шудани видео ва зиёд шудани таъхири видеоро мушоҳида мекунед, аммо ҳеҷ гуна тарки кадрҳо вуҷуд нахоҳад дошт), аммо видео ба ҳар ҳол воқеӣ пахш мешавад. вақт.
Дуюм, азбаски технология барои кор кардан бо видеои зинда дар вақти воқеӣ тарҳрезӣ шудааст, мо онро барои кор бо маълумоти бойгонии видео истифода намебарем.
Дигар тағйирот дар хидмат
Дар айни замон, Flash дигар дар механизми интихоби автоматии муҳаррик иштирок намекунад. Шумо ҳоло ҳам метавонед чунин плеерро истифода баред, аммо барои ин шумо бояд онро дар танзимоти ҳисоб ё камера дастӣ интихоб кунед. Ин арҷгузорӣ ба мӯд нест, танҳо он аст, ки тибқи омори хидмати мо, корбарон бо Flash амалан кор намекунанд. Ва кӯшиши муайян кардани он ки браузери корбар онро дастгирӣ мекунад, мо тақрибан 2 сония вақти гаронбаҳоро аз даст медиҳем.
Ин аст шарҳи мухтасари тағиротҳое, ки шуморо дар системаи назорати видеоии абрӣ ва ҳисоби шахсии мо интизоранд. Бо мо бимонед ва хабарҳоро пайгирӣ кунед!
Манбаъ: will.com
