Comme souvant, ce sont les discussion qui apparaissent les plus tranchées qui repose en fait sur un fond commun.
Emmanuel Piat a écrit:Pourquoi je dis ça ? Parce que parmis les personnes qui nous lisent, certaines pensent que le résultat dépend de l'agilité du programmeur à générer son code. Cette idée est fausse : soit l'algo est implanté de manière juste, soit il est implantée de manière fausse.
Je dis la même chose, sauf que le domaine auquel cette phrase s'applique dans sa généralité est celui du décodage et que tu pense qu'elle s'applique, toujours dans sa généralité, à l'intégralité du processus (codage + décodage).
J'avance qu'elle s'applique à l'intégralité du processus
dans le cas des codecs lossless, mais elle ne s'applique qu'à la phase de décodage des codecs lossy.
L'exemple que tu donne de l'AC3 mélange deux choses différentes : les possibilité
logiques d'un codec avec ses possibilités
légales. Les algos de codages lossy de l'AC3 doivent être algorithmiquement identique, non pas pour respecter le principe de fonctionnement des codecs lossy, mais pour respecter les règles du droit commercial concernant non pas
tous les codecs lossy, mais
ce codec lossy particulier.
L'AC3 n'est pas une norme internationale ou un logiciel libre. Il n'a pas à respecter un principe de publicité qu'implique ces deux formes juridiques. Si la norme est publiée, c'est justement avec l'idée qu'on puisse l'améliorer à l'interieur d'un cadre défini permettant l'interopérabilité. Ces améliorations, publiques mais donnant lieu néanmoins à des royalties (c'est pour ça qu'il peut être intéressant pour une firme de faire reconnaître son codec comme « standard »), sont hors de propos pour Dolby puisqu'il est le propriétaire exclusif des formes publiques de son codec.
Comme tu le dit, si tu veux la
certification commerciale Dolby pour ton programme d'encodage, tu ne peux pas faire autre chose que respecter les critères que Dolby t'impose. Mais ces critères n'ont rien a voir avec les possibilités de principe des codecs lossy. Ce que veux Dolby, c'est controler entièrement son codec, et donc qu'apparaisse hors de son contrôle un "AC3+" avec des qualités superieures. La certification AC3 n'est pas de manière essentielle une certification de qualité, mais un moyen de contrôle du marché. Ainsi, rien ne t'empêche en principe de développer pour ton usage privé un encodeur AC3 et rien ne dit, et surtout pas les principes d'une programmation correcte que tu avance, que ton encodeur ne sera pas meilleur que les encodeurs certifiés, « algorithmiquement identiques ».
Effectivement, tous ça peut paraître hors sujet. Ce qui ne l'est pas en revanche c'est l'affirmation commune à plusieurs intervenants de ce post dont l'argumentaire ci-dessus est une forme développée : le décodage par un player d'un fichier audio (non compressé, lossless, lossy) n'a rien à voir, quant à la qualité audio finale, avec l'habileté du programmeur.