Indeo

Indeo
Logo d’Indeo.
Caractéristiques
Extension
ivf
Type MIME
video/x-ivf, video/x-indeo
Développé par
Version initiale
Type de format
Contenu par
Basé sur
Sites web

Indeo Video (connu en pratique sous le nom de « Indeo ») est une famille de formats audio et vidéo et de codecs d’abord publiés en 1992, et conçus pour la lecture vidéo en temps réel par des processeurs de bureau. Alors que sa version originale était liée au format de flux vidéo DVI (en) d’Intel, un codec uniquement matériel pour la compression de la vidéo de qualité télévisuelle sur des disques compacts, Indeo s’est distingué en étant l’un des premiers codecs permettant la lecture vidéo à pleine vitesse sans utiliser l’accélération matérielle. Contrairement à Cinepak et TrueMotion S (en), la compression a utilisé le même espace colorimétrique Y’CbCr 4:2:0 que le H.261 de l’UIT et le MPEG-1 de l’ISO. L’utilisation d’Indeo était gratuite[1] afin de permettre une utilisation la plus large possible.

Historique[modifier | modifier le code]

Au cours du développement de ce qui est devenu le microprocesseur P5 Pentium, les Intel Architecture Labs (en) ont mis en œuvre l’un des premiers codecs vidéo logiciels, de la plus haute qualité à l’époque, qui était mis sur le marché sous le nom de « Indeo Video ». Il a été développé depuis les années 1980 sur la base du codec matériel Digital Video Interactive (en) (DVI) qui a été développé précédemment par General Electric[2]. Indeo est sorti pour la première fois en 1992 avec la plate-forme Video for Windows (en) de Microsoft[3]. Lors de son introduction publique, il était le seul codec vidéo pris en charge aussi bien dans les environnements logiciels de Microsoft (Video for Windows), par le framework multimédia QuickTime sur les ordinateurs Apple, ainsi que par les systèmes logiciels d’IBM de l’époque. Il a été vendu à Ligos Corporation en 2000.

Intel a produit plusieurs versions du codec entre 1993 et 2000, basées sur des mathématiques sous-jacentes très différentes et offrant des caractéristiques différentes.

Bien qu’Indeo ait connu une utilisation importante au milieu des années 1990, elle est restée propriétaire. Intel a ralenti le développement et a arrêté le marketing actif, et il a été rapidement dépassé en popularité par la montée des codecs MPEG et d’autres, du fait que les processeurs sont devenus plus puissants et son optimisation pour les puces d’Intel moins importante. Indeo a encore vu une certaine utilisation de son codec dans les vidéos cinématiques de jeux vidéo, comme dans Police Quest: SWAT 2 (1998).

Formats[modifier | modifier le code]

Le format d’origine a été conçu pour la lecture en temps réel sur les processeurs Intel bas de gamme (i386 et i486), supportable en option par du matériel de décodage dédicacé (Intel i750 (en)). La complexité du décodage était significativement inférieure à celle des codecs MPEG contemporains (H.261, MPEG-1 Partie 2).

Le codec était très asymétrique, ce qui signifie que l’encodage d’un flux vidéo nécessitait beaucoup plus de calcul que son décodage. Le système de vidéoconférence ProShare (en) d’Intel en a profité, en utilisant l’accélération matérielle pour coder le flux (et donc en exigeant l’installation d’une carte d’extension), mais permettant l’affichage du flux sur n’importe quel ordinateur personnel.

Indeo 2[modifier | modifier le code]

Indeo 2 précédemment connu sous le nom de Real-Time Video 2, fonctionne par compression delta pixels ligne par ligne, soit contre la ligne temporellement ou spatialement précédente, couplé avec un codage de Huffman statique[4].

Indeo Video 3[modifier | modifier le code]

Indeo Video 3 est une transformation de format de codage basée sur une TCD traditionnelle conçue pour la lecture vidéo de CD-ROM qui est très similaire à la Cinepak concurrente. Il utilise le sous-échantillonnage de la chrominance, la compression delta, la quantification vectorielle, le codage par plages (run-length encoding) et la compensation de mouvement (en) (codage inter trame) avec un intervalle recommandé de quatre trames-clefs et a des caractéristiques de temps d’exécution nettement asymétriques[5],[3].

Indeo Video Interactive[modifier | modifier le code]

Indeo Video Interactive avait une plus grande complexité de calcul et s’adressait aux développeurs de jeux vidéo[6]. Il était basé sur des compression en ondelettes[7] et comprenait de nouvelles fonctionnalités telles que l’incrustation par technique de transparence chroma key et le support de points chauds. Initialement, il n’y avait pas de support pour les systèmes Apple[8]. Deux variantes de cette technologie ont été produites : Indeo Video 4 et 5. Le format n’a jamais été officiellement documenté, mais plus tard a fait l’objet de rétro-ingénierie pour permettre la conception de décodeurs tiers[9].

Indeo Audio Coder[modifier | modifier le code]

Indeo Audio Coder est un format de codage basé sur une transformée en cosinus discrète modifiée (en) (TCDM)[10].

Implémentations[modifier | modifier le code]

Des décodeurs officiels Indeo 5 existent pour Microsoft Windows, le Mac OS Classic, BeOS R5 (en) et le lecteur XAnim sur Unix. Des décodeurs conçus par rétro-ingénierie pour les versions 2, 3, 4 et 5 ont été introduits dans FFmpeg entre 2003 et 2011[11]. Indeo version 3 (IV31 et IV32), 4 (IV41) et 5 (IV50) sont pris en charge par MPlayer[12] et XAnim. La version 5.11 est disponible en freeware[13] et peut être utilisée sur toutes les versions 32 bits de Windows antérieures à Vista. La version 5.2 a été créée pour XP et est disponible à l’achat sur le site officiel[14] pour une utilisation uniquement avec Windows 95, 98, ME, NT, 2000 et XP. Cela comprend la prise en charge des codecs Indeo Video 4.5 et Indeo Audio 2.5, mais la version 3.2 du codec vidéo a été supprimé depuis la sortie originale d’Indeo XP pour Windows. Bien que Indeo Video ne soit pas officiellement pris en charge par Windows Vista et Windows 7, le simple fait d’entrer ce qui suit dans l’invite de commande pourrait permettre la lecture de la vidéo codée Indeo : regsvr32 ir50_32.dll[15].

Avis de sécurité[modifier | modifier le code]

La mise en œuvre du codec Indeo pour Microsoft Windows contient plusieurs failles de sécurité et on ne devrait pas lire des vidéos Indeo à partir de sources non fiables. Microsoft a essayé de les supprimer dans XP SP1, mais a dû publier un hotfix (en) pour l’ajouter à nouveau[16]. Le codec a été initialement sous licence d’Intel et Microsoft n’a probablement pas le code source qui serait nécessaire pour corriger les vulnérabilités. Sur les systèmes entièrement patchés et tous les systèmes Windows Vista et les systèmes ultérieurs, le codec Indeo est partiellement désactivé dans la plupart des circonstances[17].

Littérature[modifier | modifier le code]

  • (en) Michael Keith (Intel) « Future directions for Indeo Video » (DOI 10.1109/cmpcon.1993.289725)
    IEEE Computer Society Press, IEEE International Computer Conference (Compcon) (San Francisco, CA, USA)

Notes et références[modifier | modifier le code]

Notes[modifier | modifier le code]

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Indeo » (voir la liste des auteurs).

Références[modifier | modifier le code]

  1. (en) « Home ».
  2. (en) Thomas Boudier et David M. Shotton, « Video on the Internet: An Introduction to the Digital Encoding, Compression, and Transmission of Moving Image Data », Journal of Structural Biology, vol. 125, nos 2–3,‎ , p. 133–155 (ISSN 1047-8477, PMID 10222270, DOI 10.1006/jsbi.1999.4097).
  3. a et b (en) « Codec Central – Indeo Codec », sur siggraph.org, (consulté le ).
  4. (en) « Indeo 2 », sur MultimediaWiki, (consulté le ).
  5. (en) « Indeo 3 », sur MultimediaWiki, (consulté le ).
  6. (en) Suleiman Mustafa et Hannan Xiao, « Comparison of Cinepak, Intel, Microsoft video and indeo codec for video compression », The International Journal of Multimedia & Its Applications, vol. 7, no 6,‎ (arXiv 1601.01408).
  7. (en) « Archived copy » [archive du ] (consulté le ).
  8. (en) « Codec Central – Indeo Codec », sur siggraph.org, (consulté le ).
  9. (en) « Indeo 4 », sur MultimediaWiki, (consulté le ).
  10. (en) « Imc: Make IMDCT support stereo output (34271cab) · Commits · libav / Libav ».
  11. « git.videolan.org Git - ffmpeg.git/blob - Changelog », sur git.videolan.org (consulté le ).
  12. (en) « Codec Status Table - MPlayer - the Movie Player ».
  13. (en) « Free Download Ligos Indeo Codec 5.11 ».
  14. (en) « Ligos Corporation » Indeo ».
  15. (en) « Indeo 5.x problem with Vista ».
  16. (en) « Game stops responding (hangs) or quits unexpectedly when introductory video clip is played », sur microsoft.com.
  17. (en) « Microsoft Security Advisory (954157) - Security Enhancements for the Indeo Codec », sur microsoft.com.

Liens externes[modifier | modifier le code]