Se os iPhones / iPads não suportam Flash, como eles reproduzem o YouTube?

14

Que tecnologia os iPhones e iPads usam para reproduzir o YouTube sem oferecer suporte ao Flash?

Tom Brito
fonte

Respostas:

31

Eles usam um formato chamado H.264 . YouTube e outros sites de vídeo distribuir conteúdo neste formato também (para que seus vídeos são visualizados no iPad / iPod touch).

Uma vantagem do H.264 é que a codificação / decodificação baseada em hardware pode ser usada.

Veja também Pensamentos de Steve Jobs no Flash

O H.264 é um dos formatos para suporte de vídeo na versão mais recente do HTML, HTML 5. A Apple suporta isso no Safari e no Google no Chrome *.

* O Google anunciou recentemente que não suportará mais o H.264 nas versões futuras do Chrome.

Por causa disso, o H.264 está meio quente ultimamente. Veja estes artigos .

Nivas
fonte
Por um pouco de história, a Apple e o Google fizeram parceria quando a AppleTV de primeira geração foi lançada; esse dispositivo também reproduz o YouTube através do H.264.
roguesys 16/02
Está correto! pergunta você pode navegar no youtube com o html5 ativado? youtube.com/html5 ?
Trufa
Flash pode ser acelerado por hardware, bem como, não é apenas h.264
Falso Nome
@Fake Name, não sabia que o flash pode ser h / w acelerado. Vai ler sobre isso ...
Nivas
O Flash é acelerado por GPU nos últimos meses (para Mac). O Flash foi acelerado por GPU no Windows por talvez um ano? O flash pode ser acelerado por hardware, exceto que ninguém o colocou em um chip em um dispositivo móvel . Onde praticamente todo mundo já tem um decodificador de hardware h.264 e áudio mpeg (MP3 + AAC) no chip.
Jason Salaz
6

Nivas disse tudo o que há para saber sobre o H.264 , o formato usado pelo YouTube para transmitir vídeo. Mas é assim que o vídeo é codificado e decodificado e usado por flash, iOS (sistema operacional iPhone) e HTML5.

A diferença real é como a solicitação do vídeo é feita. Em poucas palavras, o iPhone solicita da mesma forma que o HTML5 e o Flash fazem, mas pega a resposta do youtube e a reproduz em outro lugar, em vez do navegador ou do flash.

Em uma área de trabalho , quando você acessa o youtube.com, ele identifica que você está em um navegador, porque o navegador informa o YouTube sobre isso. Em seguida, o YouTube indica a versão Flash e todo o seu código já está programado para reproduzir o vídeo à sua maneira. Isso também envolve HTML e H.264. Imagine o caminho que um byte do vídeo faz dos arquivos do YouTube para sua tela. Seria algo assim:

Servidor de streaming do YouTube -> seu navegador -> Flash -> tela.

Quando você aponta o navegador para a versão HTML5 do YouTube , o código espera que o navegador seja capaz de reproduzi-lo usando o Flash. Portanto, o caminho do byte do vídeo seria:

Servidor de streaming do YouTube -> seu navegador -> tela

É engraçado como é simples pensar nisso agora, mas o HTML4 nunca teve nenhum código para comunicar "reproduzir vídeo" por conta própria, e nenhum navegador deveria fazê-lo. Portanto, os navegadores habilitados para HTML5 também são players de vídeo por conta própria.

Tanto o novo navegador quanto o Flash têm basicamente o mesmo código-fonte para decodificar o H.264 e ambos precisam que o codec esteja disponível no sistema operacional. Mas cada um tem sua própria implementação.

No iOS , sempre que identifica o "YouTube" enquanto você navega, ele procura código, HTML5 ou Flash incorporado, pega a referência de vídeo desse código e apenas solicita o vídeo diretamente ao YouTube. Da mesma forma que o HTML5 faz. Mas, em vez de reproduzi-lo no navegador, ele chama uma API do iOS para reproduzi-lo no player de vídeo. Portanto, o caminho do byte de vídeo é:

Servidor de streaming do YouTube -> player de vídeo iOS -> tela

Claro, há muito mais além disso, mas esses são os conceitos básicos. Portanto, a tecnologia que o iPhone usa é a mesma e praticamente transparente para os servidores do YouTube.

cregox
fonte
4

O YouTube também possui players HTML5 - eles alteraram recentemente o código de incorporação para um método iframed que permite a exibição de HTML5 e Flash, dependendo da configuração do navegador, suportada pelo iPhone.

Essencialmente, o Flash player é uma maneira de reproduzir um arquivo de vídeo, portanto, o arquivo está disponível em um formato legível (como Nivas estava dizendo) que o iPhone / iPad pode abrir em seu media player.

O Soundcloud também funciona no iPhone, que eu acho que é o HTML5.

senhor andyface
fonte
2
Isso não responde à pergunta, nem é de todo relacionado. "HTML5" não é a resposta, porque o aplicativo interno do YouTube não é "HTML5", por exemplo.
Jason Salaz
1

Quando você carrega um vídeo no Youtube, ele é convertido em múltiplos formatos, tamanhos e codec ( não apenas vídeo flash FLV / VP6 !).

Fazendo isso, o YouTube pode lhe oferecer a melhor opção compatível quando você solicitar um vídeo, dependendo do aplicativo / navegador da web (móvel ou não) / largura de banda que você possui.

forças virgens
fonte
0

O que a tecnologia de codificação H.264 tem a ver com o Adobe Flash e os aplicativos para incorporação de conteúdo?

H.264 é um codec de protocolo. Isso significa que você usa este protocolo para "criar" um filme. Depois de ter o filme, você precisa de um aplicativo para reproduzi-lo. É isso que o Adobe Flash faz (e muitos outros aplicativos). Veja a página da Wikipedia para mais informações.

O que o sr. Andyface diz faz muito mais sentido. Então, suponho que o Safari suporte HTML5.

Alex Angelico
fonte
1
Protocolos e codecs são duas coisas muito diferentes. Um protocolo é um método de comunicação, codec significa Compressor / Decompressor. HTTP é um protocolo, H.264 é um codec.
Jason Salaz
sim e não, você está falando sobre protocolos de comunicação de rede, mas: "Um protocolo é um conjunto de diretrizes ou regras" Então, um codec é um subconjunto de um protocolo
Alex Angelico