La BBC libère ses travaux sur le codec vidéo Dirac

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes : aucune
0
11
mai
2004
Technologie
La BBC (British Broadcasting Corporation) a placé en mars son projet de codec vidéo Dirac sur SourceForge (le fameux site communautaire de développement de logiciels libres).

Elle travaille à ce codec depuis janvier 2003 et s'adresse maintenant à la communauté du logiciel libre afin qu'elle puisse en faire un produit.

Le codec Dirac utilise la compression par ondelettes qui consiste à décomposer une image en une somme d'ondes de fréquences différentes. En fait, c'est le résultat de la décomposition qui est compressé.

La BBC affirme que le codec produit un fichier 2 fois moins volumineux qu'un fichier MPEG2 haute résolution, et qu'il sera optimisé pour le streaming. Bref, les performances du codec seraient comparables à celui de Microsoft (WMV 9).

Bref, appel aux matheux et programmeurs de tout poil ! Le codec Dirac, du nom du physicien brittanique Paul Dirac (1902-1984), autorise des résolutions de 180x144 (QCIF) à 1920x1080 (HDTV) en progressif ou entrelacé.

Il est placé sous tri-licence GPL+LGPL+MPL, comme Mozilla.

Rappel : un comparatif des codecs a été publié récemment sur le site de référence Doom9 : le codec XviD en est sorti largement vainqueur.

Laissons le temps à Dirac de gagner en performances.

Aller plus loin

  • # Un aveu ?

    Posté par  . Évalué à -4.

    Le format WMV est plus puissant. C'est vrai que quand on voit la qualité de real à côté, ça fait vomir. La license est sombre mais l'image est claire.
    S'il faut faire un choix, j'avoue que je choisirais....
    Choisir la bonne touche :
    1/ une image claire
    2/ un code libre
    • [^] # Re: Un aveu ?

      Posté par  . Évalué à 1.

      [2] Pour rendre l'image claire et même meilleure
      • [^] # Re: Un aveu ?

        Posté par  . Évalué à 1.

        Comparaison entre Real et WMV puis un choix à effectuer entre du logiciel libre et du propriétaire ? J'avoue que je ne comprend pas bien, surtout vu la qualité que du Xvid peut atteindre... :-|

        --
        Jedaï
  • # Juste une petite remarque...

    Posté par  . Évalué à -4.

    "SourceForge (le fameux site communautaire de développement de logiciels libres)"

    Ouais, bof. Site communautaire, je veux bien, mais pas particulièrement orienté logiciels libres, bien que de nombreux y soient hébergés.

    SourceForge impose simplement (par son concept même même) que le logiciel soit en source ouvert (tiens, au fait, quelle est la traduction généralement retenue ?), pas que la licence associée à ce logiciel soit libre.
    • [^] # Re: Juste une petite remarque...

      Posté par  (site web personnel) . Évalué à 8.

      Ce n'est pas ce que je lis sur sf.net :
      "The term "Open Source" is defined by the Open Source Initiative (OSI) in their Open Source Definition. Only Open Source projects may be hosted on SourceForge.net."

      Open Source definition by OSI : http://opensource.org/docs/definition.php(...)
      redistribution libre, modifications libres, etc...
      Que faut-il de plus pour qu'il soit "libre" en ton sens.

      Ma définition de "libre" me fait dire que sf.net n'accepte que du libre.
      • [^] # Re: Juste une petite remarque...

        Posté par  . Évalué à -1.

        C'est la dénomination «Open Source», qui est ambiguë: Elle est sensible à la casse.
        • [^] # Re: Juste une petite remarque...

          Posté par  (site web personnel) . Évalué à 1.

          Elle est sensible à rien du tout. Sur www.opensource.org, tout est en minuscules.
          • [^] # Re: Juste une petite remarque...

            Posté par  . Évalué à 1.

            Évidement, il s'agit d'un nom de domaine !

            Les majuscules sont utilises pour montrer que l'on fait référence à la marque déposée «Open Source», et pas seulement à du logiciel à code source ouvert.
            C'est pas la première fois que je vois quelqu'un faire la confusion. Certains pensent même que l' on devrait éviter ce terme pour lui préférer logiciel libre.

            http://www.gnu.org/philosophy/words-to-avoid.fr.html#Open(...)
            • [^] # Re: Juste une petite remarque...

              Posté par  (site web personnel) . Évalué à 2.

              Ahem, je sais qu'il s'agit d'un nom de domaine, mais si tu étais allé voir le contenu du site, tu aurais pu lire par exemple

              The basic idea behind open source is very simple:

              Puis

              We in the open source community have learned

              Sur la page d'accueil, par exemple. Ensuite, tu te serait balladé sur la page de la définition, et tu aurais trouvé :

              Open source doesn't just mean access to the source code. The distribution terms of open-source software must comply with the following criteria:

              Et finalement, puisqu'on parle de marque déposée, tu aurais sans aucun doute visité la page qui en parle, et tu serait tombé sur le logo officiel

              http://opensource.org/trademarks/opensource/web/opensource-250x216.(...)

              Et bon, les majuscules, elles ont du disparaitre pendant la dernière pleine lune ;-)
              • [^] # Re: Juste une petite remarque...

                Posté par  . Évalué à 1.

                Les majuscules servent a montrer que l'on ne parle pas des noms communs «open» et «source».

                exemple:
                open windows ne veut pas dire la même chose que open Windows.

                Le terme open source est souvent employé pour autre chose que du logiciel libre:

                exemple:
                Le freeware PGP:
                http://www.pgp.com/company/pr/2002/venturefunding.html(...)

                « PGP Corporation has based its operations on the principles of continuity, relationship, and innovation.

                * Continuity: a commitment to open source and non-commercial freeware, [...]»


                ou encore Microsoft:
                http://www.microsoft.com/resources/sharedsource/Government/opensour(...)

                « Shared Source Initiative: Open Source Software »

                Et j'ai souvent vu ce genre de confusion:
                http://linuxfr.org/comments/410572,1.html(...)
                • [^] # Re: Juste une petite remarque...

                  Posté par  (site web personnel) . Évalué à 1.

                  On est d'accord que la confusion est classique, mais tu me montre ou tu vois des majuscules sur le logo officiel de la marque déposée dont tu parles ?

                  Sinon, la page de Microsoft que tu cites dit bien

                  OSS licenses typically allow people to freely copy, modify and redistribute source code

                  Donc, non, ils n'ont pas fait la confusion. Ils restent dans le vague histoire que quelqu'un qui lit la page en diagonale puisse croire que MS fait de l'open source avec son shared source, c'est tout.
      • [^] # Re: Juste une petite remarque...

        Posté par  . Évalué à -3.

        sf.net accepte des projets libres destinés uniquement à des plateformes non-libres.
        A mon sens, être obligé de tourner sur une telle plateforme pour utiliser tel logiciel n'est pas si "libre" que ça.
        • [^] # Re: Juste une petite remarque...

          Posté par  . Évalué à -1.

          sf.net accepte des projets libres destinés uniquement à des plateformes non-libres.

          Ah bon, moi j'ai un projet sur sf.net et il ne tourne QUE sous Linux qui, aux dernières nouvelles, est encore libre (je ne mets pas l'adresse de ce projet par manque de modestie... je ne veux pas que vous voyez la chose que j'appelle projet)
          • [^] # Re: Juste une petite remarque...

            Posté par  . Évalué à -1.

            J'ai dit des projets, pas tous les projets ^_-
            En gros, tu peux vérifier, il y a de plus en plus de projets sur sf qui ne tournent que sous windows, c'est ceci que je trouve être à l'encontre de l'idée de "libre".
        • [^] # Re: Juste une petite remarque...

          Posté par  . Évalué à 0.

          Ah bon? Et tu en connais beaucoup des plateformes entièrement libres? Pour rappel, une plateforme, ce n'est pas que l'OS...

          Un logiciel libre, même sous windows, est libre! Il suffit de prendre la GPL qui est toute à fait représentative du libre, même un peu trop au goût de certains, qui définit comme limite au logiciel un appel système : peu importe ce qu'il y a derrière, ça n'a pas d'influence sur la license du logiciel.
          • [^] # Re: Juste une petite remarque...

            Posté par  . Évalué à 2.

            De plus un logiciel qui tourne sous un OS libre/pas libre n'est pas le seul point de vue, c'est un peu trop binnaire.

            Un logiciel qui fait appel seulement à des fonctions POSIX tourne sur toutes les plateformes compatibles POSIX en se contrefoutant totalement qu'elle soit OpenSource/ClosedSource, Libres/Fermés, Payantes/Gratuites.
  • # ondelettes

    Posté par  . Évalué à 5.

    Pour autant que je me souvienne, mes connaissance sur le sujet étant limitées et lointains, les ondelettes ne sont pas des ondes et n'ont pas de fréquence.
    Je crois que ce sont soit des fonctions C(infini) à support compact, soit des fonctions à décroissance rapide.
    (et pour trouver une définition mathématique sur internet, bonjour. Rien que du blabla sur "les ondelettes, c'est bien pour faire de la compression". Même sur planetmaths, y a rien)
    • [^] # Re: ondelettes

      Posté par  . Évalué à 2.

      http://en.wikipedia.org/wiki/Wavelet_compression(...)

      j'ai pas tout lu mais ils en parlent ;-)
    • [^] # Re: ondelettes

      Posté par  . Évalué à 10.

      La notion de fréquence n'est pas absurde pour une ondelette.

      L'analyse en ondelettes permet en effet de mettre en évidence à la fois les propriétés fréquentielles (en fait on parlera plutôt d'échelle) et les propriétés spatiales (ou temporelles) d'une image (ou son). A comparer avec la transformée de Fourrier, qui elle ne laisse plus que transparaître les fréquences, et perd toute la localité de l'information.

      Classiquement, l'ondelette a une gueule d'onde localisée, une petite onde, ondelette, quoi ! Bref un petit tas d'oscillations localisées (fonction d'énergie finie ... ce qu'on traduit en général par support compact).

      La transformation en ondelettes se fait en projetant l'espace des données sur l'espace engendré par une famille d'ondelettes, famille indexée par deux paramètres : la dilatation de l'ondelette ( -> notion d'échelle) et la position de l'ondelette ( -> notion de localité spatiale/temporelle).

      Une métaphore serait de considérer une ondelette comme une note de musique, et le résultat de la transformation comme une portée musicale, qui évoque ainsi la musique que l'on veut représenter (la donnée d'origine).

      Voilà, j'espère avoir éclairci le sujet pour les néophytes.
    • [^] # Re: ondelettes

      Posté par  (site web personnel) . Évalué à 9.

      J'ai écrit un petit document sur une utilisation des ondelettes en analyse, disponible sur ma page perso :

      http://perso.ens-lyon.fr/quentin.merigot(...)

      (Bon c'est assez calculatoire et probablement bourré d'erreur, mais a priori les définitions sont correctes. Enfin, elles sont cohérentes avec ce que j'en fais ; pour l'instant, et à ma connaissance, la notion d'ondelette n'est pas encore définie de manière «standard»)

      Une «ondelette mère» (à partir de laquelle on construit une base d'ondelettes par translation et dilatation) est effectivement une fonction décroissant rapidement à l'infini. Ceci afin d'observer plus facilement les propriétés locales d'un signal à partir de son analyse par ondelette (ie. la connaissance des produits scalaires entre le signal et les ondelettes issues de l'ondelette mère) qu'avec l'analyse de Fourier.

      Pour plus de détails, le livre de J-P Kahane et Pierre Gilles Lemarié-Rieusset appelé «Séries de Fourier et ondelettes.» est très bien. Il y a aussi «Ondelettes et algorithmes» de Yves Meyer, qui devrait intéresser plus les informaticiens.
    • [^] # Re: ondelettes

      Posté par  . Évalué à 3.

      Si je ne me trompe pas la différence de la transformation en ondelettes donne une information de fréquence et de positionnement.

      Contrairement à une transformée de fourrier qui nous donne une information de fréquence de -infini à +infini, ce qui nous oblige à découper le signale en morceaux.
      Ce qui donne le problèmes que l'on connais pour les JPEG fortement compressé !

      J'espère que cela vous éclaire un peux ;-)
      • [^] # Re: ondelettes

        Posté par  (site web personnel) . Évalué à 1.

        J'espère que cela vous éclaire un peu

        Heu... non !
        J'ai pas compris : la différence, elle est entre quoi et quoi ?
      • [^] # Re: ondelettes

        Posté par  . Évalué à 5.

        Les artefactes de 16x16 du JPEG au decoupage tel qu'il est definie dans le format et non aux transformation de fourrier.

        Les transformation en ondelettes permet un decoupage par bande de frequence plustot que par zone, sont principal autout est donc de permet d'eliminier facilement les hautes-frequences. On a donc affaire a un autre type de degradation, plus on coupe dans les hautes frequences et plus l'image se floute au lieu de "pixeliser".

        Mais dans tous les cas on obtient assez vite une image deguelasse , tous le debat autour des ondelette vs fournier, est de savoir le quel supporte les bas qualités ( les ondelettes sont pas specialement interessente ou efficasse en lossless ).

        C'est trés subjectif mais personnellement je trouve que l'image compressé en JPEG2000 se tien bien les trés basse qualités comparativement au JPEG(Q1-Q2) mais n'a presque aucun interet pour les qualités moyenne ( JPEG Q4) et aucun pour du Q8.

        Donc les ondelettes c'est super dans le domaine assez restreint de l'image déguelasse mais trés legére, parce que dés qu'on monte un peut en qualité il perd tous interet a mes yeux.
        • [^] # Re: ondelettes

          Posté par  . Évalué à 4.

          On peut aussi signaler que la taille des blocs JPEG (8x8, et non 16x16 comme indiqué au dessus) a été choisie pour des questions de complexité des calculs.

          La transformée utilisée dans l'algorithme JPEG est la DCT (Discret Cosinus Transform), transformation proche de la transformée de fourier rapide. La complexité est en O(n2).

          Sinon la notion d'échelle utilisée dans la compression par ondelettes, ça peut être très pratique dans le cadre du streaming : on peut très facilement (sans recompresser) transmettre les images à un taux de compression plus ou moins élevé, suivant la bande passante disponible au cours de la diffusion du même flux.

          De même, on peut réencoder à un taux plus élevé sans recalculer, ils suffit de supprimer des composantes (un peu comme le ogg/vorbis).

          Si besoin, je dois pouvoir retrouver des références, j'avais fait successivement un TIPE sur la compression d'image par ondelettes puis la compression JPEG en prépa. Mais bon, c'était il y a plus de 4 ans ... déjà ...
    • [^] # Re: ondelettes

      Posté par  . Évalué à 2.

      Il y a des vrais analyses mathematiques et traités mathematique sur les ondelettes, mais en general on nous sert de l'ondelettes a toutes les sauces notament en matiére de compressions pour des techniques qui s'en rapproche plus ou moin.
      Ont a souvant droit a de l'interpolation bicubic qui deviennent des ondelettes.

      Cinon comme tu le dis toi même on en entend beaucoup parlé comme d'une technique revolutionnaire, mais dans les faits les ondelettes ont du mal a faire leurs preuves ( faut dire qu'en matiére d'image dans la collection j'aime pas les contrastes et le piqué, c'est pas mal même par rapport au jpeg :-).

      Personnellement je pence que les ondelettes servent souvant de bozoword qu'on sert a toutes les sauces pour faire a la pointe de la technique.
  • # Ogg/Tarkin

    Posté par  . Évalué à 10.

    Au fait, le projet Ogg ne cherchait-il pas justement à développer Tarkin, un codec basé sur les ondelettes, il y a quelque temps ?
    Ce projet a, je crois, été mis en pause à cause de la difficulté de la tâche ... pour développer plutôt Theora, basé sur le VP3 d'On2, plus près du but, c'est à dire un codec réellement utilisable pour encoder de la video.

    Maintenant que, tout à coup, il existe un codec libre ondeletteux, est-ce que ça ne risque pas de relancer la machine ?

    Bientôt un Ogg/Tarkin basé sur Dirac ?
    • [^] # Re: Ogg/Tarkin

      Posté par  . Évalué à 4.

      Même question pour jpeg 2000, une implémentation libre existera-t-elle bientôt, divisera-t-elle le poids du jpeg par 2 ?
      • [^] # Re: Ogg/Tarkin

        Posté par  . Évalué à 3.

        Même question pour jpeg 2000, une implémentation libre existera-t-elle bientôt, divisera-t-elle le poids du jpeg par 2 ?

        Ca existe pas deja ?
        Je crois que c'est ce que fait jasper : http://www.ece.uvic.ca/~mdadams/jasper/(...)
        A moins que tu parle de la creation d'un format equivalent au jpeg2000...
      • [^] # Re: Ogg/Tarkin

        Posté par  . Évalué à 2.

        le JPEG 2000 est protegé par de nombreux brevets. Les licences sont chers, c'est donc un format mal aimé que ce soit par le libre ou les industriels, et un format qui n'est pas connue et reconnue par une majorité de logiciel c'est un format assez inutile.

        Oui il peut diviser la taille d'un JPEG par 2 mais avec une perte de qualité qui reste importante notament pour les images contrasté ou avec du grain et du piquet, le JPEG2000 tien mieux la baisse de poid que le JPEG mais n'est pas miraculeu pour autent .
    • [^] # Re: Ogg/Tarkin

      Posté par  . Évalué à 3.

      Non Ogg Tarkin est un projet plustot orienté recherche, proof of concept basé sur la compression a ondelette qui est au point mort depuis qu'ils se sont rendut compte que la compression a ondelette en 3D était bien pourrie ( perte des haute frequence dut aux ondelettes, mais justement en general ce qui bouge dans une même scéne ce sont les haute frequence d'ou probléme ). Donc pour le moment Tarkin semble au point mort ( de plus la plus part de developpeur bossent sur Theora )

      Ogg Theora est quand a lui un projet destiné a l'utilisation comme vorbis basé sur l'ancienne version du codec de On2 le VP3, vut la transparence de la fondation ogg il n'y a pas trop d'info sur ce qu'ils font et ou ils en sont.

      Cinon il existe divers codec video experimentaux basés sur les ondelettes, comme le rududu.
      http://forum.doom9.org/showthread.php?s=76f36f77bfadf2dfa18f585cca7(...)
  • # Pour info

    Posté par  (site web personnel, Mastodon) . Évalué à 9.

    Résumé de mes commentaires à deux balles sur http://linuxfr.org/~dcp/12613.html(...)

    Je rappelle que la BBC est l'un des 4 plus gros contributeurs de l'Union Européenne de Radiodiffusion (aka EBU/UER connu pour l'Eurovision), et à ce titre travaille énormément sur la définition de standards techniques et l'amélioration de qualité de production.

    La BBC, comme la Rai et Deutsche Welle possède encore/historiquement un service R&D très affirmé et efficace. De quoi faire oublier le flop des *Mac et de la TVHD. Parmis les technos développées dans leurs labs : le système couleurs PAL, le télétexte (CEEFAX), le PAL+, le C-Mac,...

    Le site officiel http://www.bbc.co.uk/heritage/story/index.shtml(...)

    Un site officieux en anglais, ça a un logo qui fait rire en bas, mais le résumé est intéressant
    http://www.vaxxine.com/master-control/BBC/chapters/Res_mile.html(...)
    http://www.vaxxine.com/master-control/BBC/Bbc_tv.html(...)

    si vous allez à Londres, passez voir le Broadcast Musem, très ludique.
  • # Compression avec pertes

    Posté par  (site web personnel) . Évalué à 4.

    En fait, c'est le résultat de la décomposition qui est compressé.

    Ca, c'est pas nouveau du tout.
    La compression JPEG (et la plupart des compressions avec perte) utilisent ce principe

    On prend une image (ou une video) comme une matrice.
    On applique une transformation mathématique
    On obtient une matrice avec pas mal de valeurs plutot petites qu'on remplace par des 0
    On compresse (les 0, ca se compresse pas mal) avec un algo généraliste (LZ, Huffman...)

    Pour décompresser, on fait l'inverse (sauf qu'a cause des 0 la matrice originale n'est pas retrouvée exacte.

    Dans le cas de JPEG, ca marche parce que le résultat de la transformation correspond a ce que "voit" notre système visuel et qu'on enleve les valeurs que notre cerveau cache de toutes facons.


    JPEG et MPEG 1/2 utilisent la DCT (Transformation de Fourrier)
    JPEG2000, Dirac et pas mal de nouveaux algo utilisent les ondelettes qui sont plus prométeuses.

    Les ondelettes sont plus ou moins une généralisation de Fourrier avec des motifs différent alors que Fourier utilise les sinusoides
  • # humour noir (mon premier moinssage)

    Posté par  . Évalué à 9.

    Moi, j'aime pas les viéos dirac, on y voit des américains se faire couper la tête !

    Désolé!
  • # maturité du projet ?

    Posté par  . Évalué à 2.

    plop,

    Est ce que quelqu'un sait si c'est déjà utilisable? quelqu'un l'a déjà essayé?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.