Si les iPhones / iPads ne prennent pas en charge Flash, comment jouent-ils YouTube?

14

Quelle technologie les iPhones et iPads utilisent-ils pour lire YouTube sans prendre en charge Flash?

Tom Brito
la source

Réponses:

31

Ils utilisent un format appelé H.264 . YouTube et d' autres sites de vidéo livrer le contenu dans ce format aussi (afin que leurs vidéos sont visibles sur iPad / iPod touch).

Un avantage du H.264 est que le codage / décodage basé sur le matériel peut être utilisé.

Voir aussi les réflexions de Steve Jobs sur Flash

H.264 est l'un des formats de prise en charge vidéo dans la dernière version de HTML, HTML 5. Apple prend cela en charge dans Safari et Google dans Chrome *.

* Google a récemment annoncé qu'il ne prendrait plus en charge H.264 dans les futures versions de Chrome.

À cause de cela, le H.264 est plutôt chaud ces derniers temps. Voir ces articles .

Nivas
la source
Pour un peu d'histoire, Apple et Google se sont associés lorsque la première génération d'AppleTV a été introduite; cet appareil lit également YouTube sur H.264.
roguesys
C'est bien ça! question pouvez-vous parcourir youtube avec html5 activé? youtube.com/html5 ?
Trufa
Le flash peut également être accéléré par le matériel, ce n'est pas seulement h.264
Fake Name
@Fake Name, ne savait pas que le flash peut être accéléré h / w. Va lire à ce sujet ...
Nivas
Flash est accéléré par le GPU ces derniers mois (pour Mac). Flash a été accéléré par GPU dans Windows depuis peut-être un an? Le flash peut être accéléré par le matériel, sauf que personne ne l'a mis sur une puce dans un appareil mobile . Où pratiquement tout le monde a déjà un décodeur matériel audio h.264 et mpeg (MP3 + AAC) sur puce.
Jason Salaz
6

Nivas a dit tout ce qu'il y avait à savoir sur H.264 , le format utilisé par YouTube pour diffuser des vidéos. Mais c'est ainsi que la vidéo est encodée et décodée et utilisée par flash, iOS (système d'exploitation iPhone) et HTML5.

La vraie différence est de savoir comment la demande de vidéo est effectuée. En un mot, iPhone le demande de la même manière que HTML5 et Flash, mais récupère la réponse de YouTube et la lit ailleurs au lieu du navigateur ou du flash.

Sur un ordinateur de bureau , lorsque vous accédez à youtube.com, il identifie que vous êtes sur un navigateur de bureau, car le navigateur en informe YouTube. YouTube vous indique ensuite la version Flash et tout son code est déjà programmé pour lire la vidéo à sa manière. Cela implique également HTML et H.264. Imaginez donc le chemin parcouru par un octet de la vidéo à partir des fichiers YouTube vers votre écran. Ce serait quelque chose comme ça:

Serveur de streaming YouTube -> votre navigateur -> Flash -> écran.

Lorsque vous pointez votre navigateur vers la version HTML5 de YouTube , le code là-dedans s'attend juste à ce que votre navigateur puisse le lire sans Flash. Ainsi, le chemin des octets vidéo serait:

Serveur de streaming YouTube -> votre navigateur -> écran

C'est drôle à quel point il est simple d'y penser maintenant, mais HTML4 n'a jamais eu de code pour communiquer "lire la vidéo" seul, et aucun navigateur n'était censé être en mesure de le faire. Les navigateurs compatibles HTML5 sont donc également des lecteurs vidéo.

Ce nouveau navigateur et Flash ont essentiellement le même code source pour pouvoir décoder H.264 et tous deux ont besoin que le codec soit disponible à partir du système d'exploitation. Mais chacun en a sa propre implémentation.

Sur iOS , chaque fois qu'il identifie "YouTube" pendant que vous naviguez, il recherche le code, HTML5 ou Flash intégré, saisit la référence vidéo de ce code et demande directement à YouTube la vidéo. De la même manière que HTML5. Mais à la place, pour le lire dans le navigateur, il appelle une API iOS pour le lire à partir du lecteur vidéo. Le chemin des octets vidéo est donc:

Serveur de streaming YouTube -> lecteur vidéo iOS -> écran

Bien sûr, il y a beaucoup plus que cela, mais ce sont les concepts de base. La technologie utilisée par iPhone est donc la même et pratiquement transparente pour les serveurs YouTube.

cregox
la source
4

YouTube a également des lecteurs HTML5 - ils ont récemment changé leur code d'intégration en une méthode iframed qui permet d'afficher HTML5 et Flash en fonction de la configuration de votre navigateur, que l'iPhone prend en charge.

Essentiellement, le lecteur Flash est un moyen de lire un fichier vidéo, donc le fichier est disponible dans un format lisible (comme le disait Nivas) que l'iPhone / iPad peut ouvrir dans son lecteur multimédia.

Soundcloud fonctionne également sur l'iPhone, qui je pense est en HTML5.

monsieur andyface
la source
2
Cela ne répond pas à la question et n'est pas du tout lié. "HTML5" n'est pas la réponse, car l'application YouTube intégrée n'est pas "HTML5", par exemple.
Jason Salaz
1

Lorsque vous téléchargez une vidéo sur Youtube, elle est convertie en plusieurs formats, tailles et codec ( pas seulement la vidéo flash FLV / VP6 !).

Ce faisant, Youtube peut vous proposer la meilleure option compatible lorsque vous demandez une vidéo en fonction de l'application / du navigateur Web (mobile ou non) / de la bande passante dont vous disposez.

virginalforces
la source
0

Que fait la technologie d'encodage H.264 avec Adobe Flash et les applications d'intégration de contenu?

H.264 est un codec de protocole. Cela signifie que vous utilisez ce protocole pour "créer" un film. Une fois que vous avez le film, vous avez besoin d'une application pour lire le film. C'est ce que fait Adobe Flash (et de nombreuses autres applications). Voir la page Wikipedia pour plus d'informations.

Ce que M. Andyface dit a beaucoup plus de sens. Je suppose donc que Safari prend en charge HTML5.

Alex Angelico
la source
1
Les protocoles et les codecs sont deux choses très différentes. Un protocole est une méthode de communication, codec signifie Compressor / Decompressor. HTTP est un protocole, H.264 est un codec.
Jason Salaz
oui et non, vous parlez de protocoles de communication réseau, mais: "Un protocole est un ensemble de directives ou de règles" Donc, un CODEC est un sous-ensemble d'un protocole
Alex Angelico