Pourquoi un décodeur n’accepte-t-il pas le format d’entrée que j’ai défini ?
Il existe de nombreuses raisons pour lesquelles un décodeur peut rejeter un format. Les données de format étendu manquantes ou incorrectes sont les plus courantes. Les données de format étendu sont des informations spécifiques au codec qui sont ajoutées à la structure décrivant le type de média.
Lorsque vous énumérez un type de sortie à l’aide d’un objet encodeur, le membre pbFormat de la structure DMO_MEDIA_TYPE pointe vers une structure WAVEFORMATEX . Des données de format étendu sont ajoutées à cette structure, et la taille de ces données est stockée dans le membre WAVEFORMATEX.cbSize . Quel que soit le conteneur utilisé pour stocker les données compressées, vous devez conserver la structure WAVEFORMATEX et l’utiliser dans le type d’entrée du décodeur. Sans les données de format étendu, le décodeur ne peut pas décompresser le contenu.
Pour les formats vidéo, vous devez récupérer manuellement les données de format étendu et les ajouter à la structure VIDEOINFOHEADER . Pour plus d’informations, consultez Utilisation de données privées de codec vidéo.
Rubriques connexes