Un bug très caché dans DVdate
J’ai publié ce matin mon logiciel DVdate en version 8.0.6, après correction d’un bug bien caché. Il s’agit de la conversion de vidéos DV de Pal en NTSC ou réciproquement. Jusqu’ici DVdate produisait bien le fichier demandé en NTSC ou Pal et celui-ci présentait les qualités requises d’un tel fichier quand on le traitait dans la plupart des outils vidéos.
Néanmoins, quand j’ai voulu décoder ce fichier avec ffdshow Video Decoder au lieu d’utiliser le bon vieux DV Video decoder de Microsoft, alors il ne donnait plus d’image, mais seulement le son.
J’ai découvert que DVdate oubliait de changer un octet dans les frames du fichier résultant. C’est un octet qui est utilisé par certains décodeurs pour reconnaître le standard du fichier: il vaut $3F pour NTSC et $BF pour Pal. C’est donc en fait un seul bit qui est mal marqué, mais cela suffisait à provoquer une difficulté de lecture avec ffdshow, et d’autres décodeurs comme LAV Video Decoder, qui s’avèrent donc plus exigeants sur la conformité au standard que ne l’est Microsoft avec son DV Video decoder. C’est corrigé dans le version publiée ce matin.
Je reste surpris par le fait que depuis des années que cette commande existe dans DVdate personne ne m’en ait parlé. C’est sans doute parce que ceux qui ont des fichiers traités avec une version de DVdate affectée par ce bug, ont pu les utiliser de façon quasi normale, comme c’était mon cas jusqu’à hier.
Toutefois, si certains utilisateurs ayant de grandes quantités de fichiers convertis en Pal ou NTSC par DVdate, ont besoin de les rectifier, et qu’ils ne peuvent pas reconvertir à partir des fichiers originaux, alors je pourrai éventuellement ajouter une commande de correction dans la prochaine version de DVdate. Mais comme l’utilité de cette commande serait très ciblée sur un problème très particulier et sans doute peu fréquent, je souhaite plutôt éviter d’encombrer DVdate avec une commande supplémentaire dont la plupart des utilisateurs n’auront pas l’usage. J’espère que les utilisateurs concernés se contenteront alors de mes excuses.