Sempre que inicio o Skype, o Zoom ou o Hangouts, aguardo com interesse um novo lote de batentes com vĂdeo e som. A tecnologia raramente me decepciona: coaxar, ruĂdos de fundo, perda de voz, divisĂŁo de vĂdeo em âquadradosâ, quadros congelados e outras alegrias da videoconferĂȘncia sĂŁo assombrados por videochamadas, pelo que me lembro. O interesse Ă© amplamente profissional: alĂ©m da telefonia programĂĄvel para telefones comuns, pĂĄginas da web e aplicativos mĂłveis, nĂłs da Voximplant enviamos vĂdeos para desenvolvedores. Eu quero Full HD, em tempo real, sem frisos, em qualquer navegador e a conferĂȘncia Ă© de cerca de 50 pessoas. Curiosamente, no laboratĂłrio, funciona exatamente assim. Mas em alguns parques 3G, a consulta por vĂdeo com um mĂ©dico pode se transformar em uma estratĂ©gia baseada em turnos: os pacotes estĂŁo perdidos! A moderna pilha de tecnologias ainda nĂŁo nos permite lutar em igualdade de condiçÔes com a Internet "piscante", mas a pesquisa estĂĄ em andamento. Under a cut - a tradução sobre
Salsify adaptada para Habr: uma liga de um codec de vĂdeo e um protocolo de rede que minimiza os problemas ao transmitir vĂdeo em tempo real.
Uma equipe de Stanford conduziu um experimento: substituiu toda a colcha de retalhos das modernas tecnologias de videoconferĂȘncia por um Ășnico protocolo de compressĂŁo e transmissĂŁo pela rede.
VideoconferĂȘncia: lllllags, ffffffreezes e jerking
Depois de um tempo, os problemas desaparecem sozinhos. Ăs vezes - junto com a imagem, deixando uma tela preta. As entregas variam de "espere alguns minutos, a grade pisca" a "teleoperação pode ser concluĂda, o paciente estĂĄ morto". Os cientistas de Stanford abordaram o problema dramaticamente, desenvolvendo do zero uma pilha de rede, um codec e uma maneira de transferir dados com o Ășnico objetivo: fazer melhor que o Skype, FaceTime, Hangouts e Chrome + WebRTC.
O estudante de Stanford Sajjad Foladi, que lidera o estudo, apresentou os
resultados na conferĂȘncia principal da
NSDI'18 . As idĂ©ias subjacentes Ă solução "do zero" estĂŁo disponĂveis para todos os interessados ââe podem ser usadas em soluçÔes comerciais. Claro, se alguĂ©m quiser substituir a pilha
inteira .
âA transmissĂŁo de vĂdeo pela Internet evoluiu ao longo de dĂ©cadas. Agora a pilha de tecnologia Ă© mais como uma colcha de retalhos â, diz
Keith Winstein, professor associado de ciĂȘncia da computação. "Sajjad mostrou como vocĂȘ pode montar essas peças de uma maneira diferente para obter vĂdeos de melhor qualidade e menos latĂȘncia."
Mas sobre o momento da introdução de Winstein mais cauteloso. âAgora estamos pensando em mudanças, para que um dia a transmissĂŁo de vĂdeo em tempo real se torne mais confiĂĄvel. SerĂĄ muito Ăștil em operaçÔes de telemedicina e robĂłtica â, diz ele. "Mas no software que Ă© usado agora, todas essas mudanças sĂŁo difĂceis de fazer."
Nova abordagem, novo nome
A equipe de Stanford chamou sua estrutura de âSalsifyâ (jardineiro de cabras, uma âflorâ, que lembra vagamente um dente de leĂŁo em sua juventude - um comentĂĄrio de um tradutor). A estrutura resolve o problema causado pelo fato de que a "transmissĂŁo de vĂdeo em tempo real" agora Ă© feita a partir de duas tecnologias diferentes. Este Ă© um "codec" que comprime vĂdeo e um "protocolo de rede" que transmite pequenos dados pela rede e tenta adivinhar quando enviar os prĂłximos itens para que nĂŁo sejam lançados em nenhum lugar do caminho, porque a rede estĂĄ sobrecarregada e geralmente tudo estĂĄ ruim. O problema Ă© que esses dois componentes evoluĂram separadamente um do outro, geralmente por empresas diferentes, e depois foram combinados em produtos como Skype ou FaceTime.
Foladi tem certeza: para resolver o problema com frisos e atrasos, o codec e a pilha de rede devem trabalhar juntos. Afinal, Ă© importante nĂŁo apenas enviar o pacote pela rede a tempo. VocĂȘ precisa dos dados corretos neste pacote! E nem um pedaço de vĂdeo hĂĄ 3 segundos, que ainda serĂĄ jogado no lado receptor como "muito velho". Segundo o gerente de projeto, "quando o protocolo de transporte e o codec perdem a sincronização, os problemas começam". Portanto, a equipe criou um novo codec o mais integrado possĂvel ao protocolo de transporte. Um algoritmo controla a compactação de quadros de vĂdeo, a formação de pacotes de rede e seu envio. Assim, o fluxo de vĂdeo âsabeâ sobre o estado da rede em tempo real e tenta âajustĂĄ-loâ sempre que possĂvel.
Mesmo um quadro enviado fora do tempo pode levar a solavancos e frisos. O Salsify nunca enviarĂĄ um quadro se puder levar a problemas de rede
Ver e acreditar
Os pesquisadores realizaram muitos testes comparando o Salsify ao Microsoft Skype, Google Hangouts, Apple FaceTime e Google Chrome + WebRTC. Em média, o Salsify reduz o atraso em quatro vezes (!!!) e a qualidade da imagem fica 60% melhor (de acordo com o método de alteração da similaridade estrutural, SSIM). Uma
comparação lado a lado com o Chrome 65 WebRTC estå pronta e um
site separado dedicado ao projeto foi criado. Projeto de
cĂłdigo aberto: vocĂȘ pode baixar, estudar, usar as melhores prĂĄticas.
Todo mundo tem problemas com a videoconferĂȘncia. Ă muito legal trabalhar em um projeto que visa fazer a diferença.