Fermer le menu

QuickTime X : tabula rasa

Nonoche | | 12:23 |  63

Un lourd héritage

Il y a près de 18 ans, le 2 décembre 1991, Apple dévoilait au monde QuickTime, le premier logiciel dédié à la vidéo numérique faisant abstraction des capacités matérielles. Les utilisations modernes de la vidéo, de la Télévision Numérique Terrestre jusqu'au Blu-Ray en passant par les caméscopes numériques ou encore les set-top box, doivent beaucoup à QuickTime.

À l'époque, on était bien loin des standards actuels, mais la simple vignette en 160x120 et 3 images par seconde (!) visible ci-dessous, présentant le décollage d'Apollo 11 à titre d'exemple de ce que pouvait faire QuickTime, a laissé nombre d'utilisateurs de l'époque béats d'admiration, dont certains sont encore en vie aujourd'hui ;¬)

Il faut remettre les choses dans leur contexte : en 1991, le Mac le plus puissant que vous pouviez avoir ronronnait à quelque 25 MHz… Ce que QuickTime apporta de fondamentalement nouveau à l'époque tenait essentiellement à deux technologies qui le composaient : la capacité de synchroniser plusieurs pistes de média (en cas de surcharge, QuickTime affiche moins d'images pour rester synchrone avec la bande son), et un système de métafichiers, permettant d'intégrer une couche d'abstraction quant au contenu en lui-même. Ainsi, QuickTime pouvait gérer tous types de médias (au-delà des seules images et du son), les afficher de manière synchrone, et s'ouvrir sur des codecs additionnels.

Mais QuickTime fut avant tout la technologie décisive qui donna naissance au multimédia, suivie par l'apparition des premiers lecteurs de CD-Rom (au faramineux taux de transfert de 150 Ko par seconde pour un stockage de 650 Mo). Au fil des ans, QuickTime se verra adjoindre de nouveaux codecs, dont certains tiendraient le haut de l'affiche, comme le Cinepak, Sorenson, et enfin H.264, mais également de nouvelles fonctions, comme les sprites interactifs, le texte synchronisé, le chapitrage, le streaming, et bien d'autres. En outre, QuickTime fut même la première application qu'Apple a porté sur Windows. À mesure de l'augmentation de puissance des machines, les vidéos prenaient de l'ampleur en affichage pour aboutir jusqu'à la haute définition, et les codecs se faisaient également plus efficaces dans leur rapport compression/qualité d'image.

Bref, au cours de sa longue vie, QuickTime est devenu un gigantesque fourre-tout, qu'il était impensable d'intégrer tel quel dans l'iPhone et l'iPod touch. Apple a donc revu sa copie pour fournir à ses appareils de poche un framework compact et efficace, qui ne gérait plus que les codecs les plus modernes.

Un chantier considérable

Lorsqu'Apple a engagé les travaux sur Snow Leopard, il a fallu faire face à un problème de taille : le passage au 64 bits impliquait la réécriture complète de QuickTime… ce qui n'est pas une mince affaire eu égard aux quelque 18 ans d'héritage du logiciel. Il n'était pas question d'envisager d'avoir la totalité des fonctions de QuickTime 7 d'un seul coup. Apple a donc utilisé une astuce dont elle a le secret, étant passée maître dans les transitions technologiques et le maintien de la compatibilité ascendante.

Mais commençons par faire le détail de ce qui compose QuickTime. Il y a d'un côté le framework et son jeu d'API, qui permettent à toutes les applications sur Mac d'exploiter les fonctionnalités de QuickTime, et de l'autre QuickTime Player, qui n'est qu'une interface graphique permettant d'accéder à ces mêmes fonctions. Là où les choses se compliquent sur Mac OS X 10.6, c'est qu'il y a désormais deux frameworks et deux players.

En effet, QuickTime X (le framework) est réduit à sa plus simple expression : il gère la lecture et l'acquisition vidéo, de même que l'exportation, mais seulement avec les codecs "modernes" (peu ou prou ceux supportés par l'iPod, l'iPhone et l'Apple TV), de même que l'accélération matérielle pour la lecture et l'encodage sur certaines cartes graphiques. En revanche, il ne gère pas l'édition vidéo, ni les codecs externes sous forme de plug-ins. Ainsi, le copier-coller, l'extraction de pistes, et les autres codecs sont pris en charge par QuickTime 7 (le framework) qui est également installé par défaut dans Snow Leopard. Les deux cohabitent harmonieusement à l'aide d'une gare de triage, QTKit, qui invoquera l'un ou l'autre des deux frameworks en fonction des tâches effectuées par l'utilisateur. L'approche permet ainsi de faire cohabiter le code 32 et 64 bits, alors que Mac OS X ne peut d'ordinaire pas mélanger des tâches de ces deux types. On peut d'ailleurs aisément voir QTKit à l'œuvre, il suffit pour cela d'ouvrir un fichier non supporté par QuickTime X (mettons par exemple la vidéo ci-dessus) et de regarder dans le Moniteur d'activité :

Catégorie : 

Les derniers dossiers

63 Commentaires

avatar Jean-Jacques Cortes 19/10/2010 - 01:33

J'ai encore par là, la disquette officielle de QuickTime 1.0 récupérée à l'Apple Expo 1992. Je n'avais pas encore les moyens de m'acheter un Mac, bien que j'en mourais d'envie depuis 1984, mais je me suis dit qu'un truc pareil serait obligatoirement payant à très court terme. Deouis, QuickTime est dans l'ensemble, toujours gratuit, et je viens de récupérer un Macintosh 128 de 1984 en parfait état, pour mon musée privé.

avatar Seb du 95 08/02/2010 - 15:45

@ Nonoche
Le MPEG 1 est plus ancien, 1988 d'après wikipédia.
Et de mémoire, il y avait des vidéos en MPEG avant 92.

avatar Nonoche 07/11/2009 - 16:31

@ Lemmings : sachant que le M-JPEG est basé sur le JPEG et que ce dernier n'est venu au monde qu'en 1992… pwned ;¬p

avatar Lemmings 06/11/2009 - 11:41

Nonoche : quand je parle de M-JPEG on est loin des anim en RLE... Mais bon ;)

avatar BeePotato 06/11/2009 - 01:32

@ Un Vrai Type : Tu sembles vraiment ne pas comprendre le problème.

« Tu voudrais une API complète ? Oki, mais pas avant X.8. »

Comment peux-tu écrire ça tout en affirmant qu’il n’y a pas de retard au niveau du développement de QuickTime ?

On ne peut pas développer un programme en 64 bits basé sur QuickTime en utilisant une autre API que celle de QTKit.
Mais non ne peut pas développer un programme complexe (plus qu’un simple lecteur, quoi) basé sur QuickTime en utilisant QTKit, qui est bien trop incomplet pour ça.
Conclusion : on ne peut pas développer de programmes QuickTime complexes en 64 bits à l’heure actuelle.

Et de nos jours, avoir une technologie qui ne permet pas le développement en 64 bits, oui, ça s’appelle être sérieusement en retard.
Je ne vois pas en quoi tu trouves normal de se dire que cette situation durera au moins jusqu’à la sortie de la version 10.7 de Mac OS.

avatar DrFatalis 06/11/2009 - 00:38

@ un vrai...
"Rien n'a été promis" Tiens donc.
Apple n'a donc jamais communiqué sur les bénéfices mirifiques amenés par SL? La page de présentation sur son site ne commence t'elle pas par "plus rapide" ? J'ai du rêver. Il fallait lire "plus rapide" (plus tard).

" et QT 7 fonctionne parfaitement." Encore heureux. Mais tu as raison: faire tout un battage (mais j'ai tévè) sur SL et devoir livrer avec l'ancienne version de quicktime pour avoir quelque chose de complet et d'utilisable dans l'ensemble, c'est une stratégie de winners dont la cohérence apparaît pleinement aux yeux du janissaire pommé que tu es, mais qui reste obscur pour un pauvre vermisseau de la pomme comme moi...

"Quand à Slow, c'est juste un troll, mais on est habitué à ton opinion qui fait office de vérité dans ton monde isolé et débile..."
Tiens, j'ai affaire à un poète scandinave. Tu aurais pu rajouter "méchant" à la liste de mes qualités. Quant aux monde isolé, il me semble plutôt être celui de ceux qui vivent en permanence sous perfusion Cupertinienne, de ceux qui vouaient Intel aux feux de l'enfer le 4 juin 2005 et lui tressait des lauriers le 7...
Va donc, vrai type, je ne te hais point, je fus, autrefois, si semblable à ce que tu es....

avatar Macleone 05/11/2009 - 21:19

[quote]Tu voudrais une API complète ? Oki, mais pas avant X.8.[/quote]

OK, excuse moi je n'avais pas compris que tu avais accès aux roadmaps Apple. La prochaine fois je te demanderai directement au lieu d'aller sur les Forum officiels Apple.

Jusqu'à preuve du contraire le QTKit n'est pas nouveau dans Snow Leopard. Il date de Tiger (et il était même dispo sur Panther). En 5 ans Apple n'a pas été capable d'en faire un API complète malgré les demandes répétés des developpeurs. J'ai donc de sérieux doute pour l'avenir de QuickTime. S'ils veulent en faire un simple player, tant mieux, mais qu'ils le disent.

[quote]Tu voulais quoi pour le X86 ? Qu'Apple publie les API avant de dévoiler le passage à Intel ? (On a eu quand même un bout de temps avec les pentium4 pour développer...)[/quote]

Relis mon message, je ne me plains pas du passage à Intel, et je le prends justement en exemple de ce qu'ils auraient du faire avec QuickTime.

avatar Vivid 05/11/2009 - 20:40

en 1991 comme en 2009 QT reste une daube, VLC leur bote le cul...menu menu!!!

avatar Un Vrai Type 05/11/2009 - 20:01

@ Macleone:
Allo mars ? On est à la 1ère étape...

Tu voudrais une API complète ? Oki, mais pas avant X.8.
Tu râles en même temps sur le silence pesant et le fait qu'ils partagent ce qu'ils commencent à faire ... Logique...
Tu voulais quoi pour le X86 ? Qu'Apple publie les API avant de dévoiler le passage à Intel ? (On a eu quand même un bout de temps avec les pentium4 pour développer...)

Bref, je ne comprends pas ce que tu reproches, qu'on puisse profiter de QT X maintenant pour l'affichage ou bien que QT7 fonctionne encore ?

avatar Atlantique 05/11/2009 - 18:59

C'est ça un article?

avatar Anonyme (non vérifié) 05/11/2009 - 18:50

Un réaction d'un "Ancien" :
- J'ai participé au développement d'une application de diffusion et vente via Numéris de séquences vidéo en 1991 sous Quicktime 0.9b ;
- Les séquences numérisées étaient des extraits de vidéo broadcast, pouvant être envoyées aux clients sous forme de cassettes BetaCam ;
- Ces séquences étaient en format 200 x 150 à 15 images / seconde (un peu plus, me semble-t-il que les 160 x 120 à 3 i/s de l'article d'Arnaud), encodées au format AppleVideo ;
- Pour limiter la durée des téléchargements via Numéris, la taille des fichiers était bordé à 2 Mo, ce qui faisait des clips d'environ 2 minutes ;
- La compression était image par image (plus lent, mais de bien meilleure qualité), à la vitesse d'environ 1 image par seconde (soit environ 2 heures par séquences), sur des Mac II vx à 32 MHz ;
- Les Macs les utilisant étaient des IIsi ou IIci, à 20 MHz ou 25 MHz ;
- Les CD-ROM existaient avant QuickTime, j'ai entre les mains "The May 1991 Golden Master Release : System 7", et ce n'est pas le plus vieux ;
- Mes employeurs n'étaient pas trop "Pro-Mac", ils ont cherché les solutions possibles sur PC, Atari ou Amiga, et même en créant des solutions matérielles (ce que nous faisions pour les autres applications, comme des cartes de numérisation ou de visualisation Broadcast), seul le Mac pouvait répondre au besoins en performance vidéo / taille fichier à transférer à 120 kb/s ;
- Si certains se le rappellent, j'ai fait une conférence sur cette solution à la conférence APPLE 1992 des développeurs à Deauville.

Moi, ce qui m'étonne, ce serait plutôt de constater le peu d'avancements de QuickTime par rapport à la richesse des possibilités initiales. Par exemple, j'ai un jeu de Memory fait en QuickTime, d'une toute petite taille, qui montrait que l'on pouvait aussi avoir une piste de programmation Live, sans parler de QuickTime VR !

avatar Anonyme (non vérifié) 05/11/2009 - 18:18

- oups, envoi incontrôlé !

avatar Macleone 05/11/2009 - 17:15

[quote]En fait, tu es de ceux qui aurait aimé que QT X apparaisse d'un coup complet par magie dans Mac OS X.8 ?[/quote]

Non, j'aurais aimé que les outils soient près au moment ou on en a besoin, comme la transition vers Intel. Au moment du passage sur Intel, Apple n'a pas sortie la moitié des bibliothèques en gardant un silence pesant quant à l'avenir des autres bibliothèques et en disant, "pour le moment, vous pouvez déjà essayer de bricoler une solution avec ce qu'on vous donne ou rester au PPC et utiliser rosetta…"

[quote]Grand Central et les autres technologies sont des bases et il faut du temps pour refaire les couches plus hautes qui en tirent partie.[/quote]

Oui bin justement. Empêcher les developpeurs qui utilisent l'API QuickTime d'entamer une transition en douceur vers ces technologie n'est pas la meilleurs chose qu'ils aient fait.

avatar jumpinjacksam 05/11/2009 - 16:16

Oui bein moi, je suis pas fan de quicktime x, dont je ne vois pas bien l'intérêt concrètement, si ce n'est sa belle interface et sa plus grande réactivité. Pleins de fonctions en moins, notamment l'impossibilité de lire des fîchiers "mkv" et la disparition des préférances. Plus d'exports possibles non plus !!! Dans le même temps, QT 7 me met des bandeaux noirs avec les sous-titres alors qu'il ne me faisait pas le coup avant d'installer Snow Leopard... Heureusement qu'il y a mplayer...

avatar Nonoche 05/11/2009 - 14:53

@ Lemming : si tu vas par là, Adobe Director, pardon, MacroMind VideoWorks faisait déjà tout ça dès 1985 (il est vrai en noir et blanc, mais en 512x342… La couleur est arrivée avec VideoWorks II et le Macintosh II en 1987, 256 couleurs en 640x480 à 30 images secondes, la télé s'est aussi beaucoup servi de Director et du Mac pour les incrustations).

Rigoler d'une vidéo en 160x120 à 3 fps, c'est bien joli, mais l'encodage RLE des animations de l'Amiga ne permettaient que des animations en aplats de couleurs (le codec Animation de QuickTime faisait largement aussi bien d'ailleurs, dès la 1e version, et avec une vraie bande son qui plus est). En ce sens, je ne crois pas qu'on puisse dire que l'exploit technique revienne à l'Amiga, que les "pros" de l'époque l'aient attesté ou non…

avatar Lemmings 05/11/2009 - 10:58

BeePotato : non pas d'erreur... Entre les émulateurs ShapeShifter, Basilik II, SheepShaver... On avait le choix. Et j'ai pu jouer à la série "Alone in the dark" ainsi... De même, j'utilisais un éditeur de niveau pour Doom sur le Mac pour y jouer dans le portage Amiga ;)

avatar Emile Schwarz 05/11/2009 - 10:12

Ah la mémoire!

J’ai fait (à l'époque) une conversion depuis un disque video (LaserDisc) de John Lennon d’un de ses clips (enregistré en direct dans le studio: images et son) avec une carte d'acquisition video (8 heures de travail) et je l’ai montré à quelques privilégié(e)s sur un Quadra 700 (1991) avec une taille d'image et une vitesse d'affichage largement plus sympa que ce qui est écrit dans l'article…

Et oui, ceux qui ont eu droit à la visualisation/écoute du clip en étaient… baba de surprise.

Of course: le disque dur contenant la vidéo devait être non fractionné (surtout la vidéo)…

Malheureusement, cette vidéo de près de 50 Mo a due être jetée (manque de support de stockage / archivage) lorsque j'ai quitté Apple en 1994.

Emile

avatar Un Vrai Type 05/11/2009 - 10:06

@ Macleone : En fait, tu es de ceux qui aurait aimé que QT X apparaisse d'un coup complet par magie dans Mac OS X.8 ?
Du moins, c'est l'impression que donne ton avis.
Aujourd'hui, Apple est claire : il ne faut utiliser QT X que pour visionner un film... Apple ELLE MEME utilise QT 7 pour l'édition etc...
Grand Central et les autres technologies sont des bases et il faut du temps pour refaire les couches plus hautes qui en tirent partie.
Ce temps ne peut exister que de 2 manières : Développer en secret les nouvelles versions ou bien faire des versions bridées mais capable de travailler avec l'ancien monde qui se complètent petit à petit.
Dans les 2 cas, les developpeurs auraient gueulé, mais avec le choix qu'Apple à fait, les petits projets peuvent déjà bénéficier de QTX, les plus gros peuvent déjà voir à quoi ça ressemble.

avatar Un Vrai Type 05/11/2009 - 09:44

@ BeePotato : Le support sera complet après qu'Apple ne supporte plus son OS sur les core duo (32 bits).
Combien de temps après ? Bonne question... (la bonne nouvelle est que X.7 ne devrait plus supporter le 32bits, puisque X.6 ne supporte plus le PPC).
Mais Apple a toujours fait des transitions lentes et donc en douceur ce qui n'empêche pas qu'elles soient radicales.
Ceux qui ont espéré que QT X soit complet avec Snow Leopard se sont emballés un peu rapidement. En fait, c'est l'espoir des développeurs qui crée cette sensation de retard, mais ça c'est plutôt très bon signe.

(Il y a aussi la crainte d'accouchement d'une fourmi. Apple ayant perdu beaucoup de terrain dans la vidéo.
Mais les annonces et le support de l'édition sur l'iPhone montre qu'Apple a une ambition dans ce domaine, je reste confiant)

avatar Macleone 05/11/2009 - 09:40

[quote]On parlera de transition ratée quand au moins on aura vu la suite[/quote]
Je considère la transition raté du moment ou je me retrouve pendant un temps (entre l'ancienne version et la nouvelle version) sans rien pour travailler correctement.

Aujourd'hui on est dans Snow Leopard, et Apple pousse les développeurs à adopter le 64 bits, et le multi-threading (via Grand Central entre autre). Et aujourd'hui, tout développeur qui veut une intégration poussé de QuickTime dans son appi (pour autre chose que simplement visionner un film) se voit privé de 64 bits, et fortement limité du point de vue multi-threading. Apple a bien essayé de mettre une couche CoreVideo sur QuickTime, ça n'en réduit pas les énormes limitations que connait cette API (comme l'absurde obligation d'être sur le thread graphique pour ouvrir un fichier).

Aujourd'hui, pour pouvoir gérer la transition sereinement, il faudrait avoir accès à l'ancienne API (pour la compatibilité) et à une nouvelle API complète qui permettrais de préparer le futur. Comme ce n'est pas le cas, je considère qu'il y a un retard.

Quand je dis transition raté, ça ne veut pas dire que Apple ne sortira pas une API QuickTime X capable de remplacer l'ancienne (même si on perd quelques fonctions au passage), mais juste que la transition pour les développeurs et loin d'être aussi transparente que la passage sous Intel ou le passage au 64 bits (qui au final ne fut pas si transparent que ça à cause de la volonté d'Apple de réduire le Carbon dans les applis OS X).

avatar BeePotato 05/11/2009 - 00:28

@ Lemmings : « de toute façon l'Amiga était un Mac »

Tu voulais sans doute écrire que l’Amiga aurait bien voulu être un Mac… ;-P

avatar BeePotato 05/11/2009 - 00:27

@ Macleone : Oui, QTKit est très limité. C’était déjà frustrant avec Leopard, mais c’est carrément décevant avec Snow Leopard.

@ Un Vrai Type : « Quand au retard, je doute qu'un autre chantier de la taille de QuickTime soit en cours de passage 32->64bit. Donc bon, il est relatif à quoi ce retard ? »

Ben le retard, il est relatif au développement d’applications 64 bits pour Mac OS. On aurait aimé avoir un accès relativement complet aux fonctions de QuickTime pour les applis 64 bits dès le début, c’est-à-dire à la sortie de Leopard. Mais cet accès est toujours très limité même dans Snow Leopard.
Voilà où il est, le retard.

« Pitié, conservez QuickTime VR et pensez aussi à démocratiser les qtz... »

Tout à fait d’accord sur ces deux points.

avatar thg 04/11/2009 - 23:18

En parlant de QuickTime, je viens de télécharger sur son site et de regarder la plus grosse bande annonce .mov que j'ai vu jusqu'à présent : 245 Mo (3 min 30 en Full HD).

C'est Avatar, le nouveau James Cameron, très prometteur au vu des images incroyables.

avatar Un Vrai Type 04/11/2009 - 23:09

@ DrFatalis : Rien n'a été promis et QT 7 fonctionne parfaitement.
Quand à Slow, c'est juste un troll, mais on est habitué à ton opinion qui fait office de vérité dans ton monde isolé et débile...

avatar noAr 04/11/2009 - 23:09

"certaines fonctionnalités qui ont quelque peu vieilli, comme par exemple QuickTime VR"

Bouhouhou…

Pages