IAMTimelineGroup::SetSmartRecompressFormat, méthode
[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]
Notes
[Déconseillé. Cette API peut être supprimée des versions ultérieures de Windows.]
La SetSmartRecompressFormat
méthode spécifie un format de compression vidéo à utiliser pour la recompression intelligente.
La recompression intelligente n’est pas prise en charge pour les groupes audio.
Syntaxe
HRESULT SetSmartRecompressFormat(
long *pFormat
);
Paramètres
-
pFormat
-
Pointeur vers une structure décrivant le format de compression. Actuellement, seule la structure SCompFmt0 est valide. Vous devez convertir ce paramètre en pointeur de type long.
Valeur retournée
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Notes
Avant d’appeler cette méthode, appelez la méthode IAMTimelineGroup::SetMediaType sur le même groupe pour spécifier un format non compressé.
Si la SetSmartRecompressFormat
méthode réussit, vous pouvez utiliser le moteur de rendu intelligent pour générer un flux vidéo compressé. La vidéo compressée aura la largeur, la hauteur et la fréquence d’images spécifiées dans le paramètre pFormat . Ces valeurs remplacent celles fournies pour le format non compressé dans la méthode SetMediaType . Toutefois, pour bénéficier des avantages de la recompression intelligente, les deux formats doivent correspondre. En d’autres termes, les formats compressés et non compressés doivent avoir la même hauteur, la même largeur et la même fréquence d’images.
Si le moteur de rendu intelligent ne parvient pas à produire le format compressé, il produit un flux vidéo non compressé à la place. Si cela se produit, le moteur de rendu intelligent signale une erreur de rendu DEX_IDS_CANT_FIND_COMPRESSOR pendant la méthode IRenderEngine::ConnectFrontEnd . L’application peut intercepter cette erreur via la méthode IAMErrorLog::LogError . (Pour plus d’informations, consultez Erreurs de journalisation et erreurs de rendu.)
Le format de recompression intelligente n’est pas persistant. Si une application utilise la recompression intelligente, elle doit définir le format de recompression chaque fois qu’elle charge un fichier projet.
Notes
Le fichier d’en-tête Qedit.h n’est pas compatible avec les en-têtes Direct3D ultérieurs à la version 7.
Notes
Pour obtenir Qedit.h, téléchargez la mise à jour Microsoft Windows SDK pour Windows Vista et .NET Framework 3.0. Qedit.h n’est pas disponible dans le Microsoft Windows SDK pour Windows 7 et .NET Framework 3.5 Service Pack 1.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|
Voir aussi