Share via


Utilisation de l’encodage Two-Pass (Microsoft Media Foundation)

L’encodage à deux pas peut être utilisé pour l’encodage à débit constant (CBR) et à débit variable (VBR) avec certains codecs Windows Media. Vous pouvez trouver le nombre maximal de passes d’encodage prises en charge par un codec en récupérant la propriété MFPKEY_PASSESRECOMMENDED . Aucun des codecs ne prend en charge plus de deux passes. Configurez le DMO pour utiliser deux passes en définissant la propriété MFPKEY_PASSESUSED sur 2.

Fournissez les exemples à l’encodeur DMO un par un, comme vous le feriez en mode une seule passe. Lorsque vous traitez les exemples d’entrée pour votre passe de prétraitement, les appels à IMediaObject::P rocessInput ou IMFTransform::P rocessInput retournent S_FALSE, pour indiquer qu’aucune sortie n’est produite.

À la fin de la première passe (une fois que la dernière entrée est traitée pour la première fois), vous devez définir la propriété MFPKEY_ENDOFPASS pour informer le codec que l’entrée suivante traitée est la première entrée de la deuxième passe. Aucune valeur n’est requise pour cette propriété. Vous devez donc utiliser une structure VARIANT vide.

Codecs Windows Media