Saisie d’un cadre d’affiche

[Cette API n’est pas prise en charge et peut être modifiée ou non disponible à l’avenir.]

cet article explique comment afficher un cadre d’affiche à partir d’un fichier multimédia numérique à l’aide de l’objet MediaDet (media detecter) fourni avec les Services d’édition de DirectShow.

Le détecteur de média est un objet d’assistance qui peut obtenir des informations de format à partir d’un fichier source de média. Il peut également récupérer une image bitmap à partir d’un flux vidéo dans le fichier source. En supposant que le fichier peut être recherché, vous pouvez obtenir l’image à partir de n’importe quel point du fichier. L’image retournée est toujours au format RGB 24 bits.

le détecteur de média n’est pas un filtre et l’application n’a pas besoin d’utiliser le gestionnaire de Graph de filtre ou de créer un graphique de filtre. En interne, le détecteur de média crée un graphique de filtre qui contient l' exemple de filtre d’accrochage. Pour obtenir une image bitmap, le détecteur de média recherche et interrompt le graphique de filtre, puis récupère le bitmap à partir de l’exemple de filtre d’accrochage. L’application communique avec le détecteur de média par le biais de l’interface IMediaDet . Le détecteur de média est un bon exemple d’encapsulation d’un graphique de filtre à l’intérieur d’un objet d’assistance, afin de protéger les applications des détails liés au graphique.

Le détecteur de média fonctionne en deux modes. La première fois que vous la créez, le détecteur de média est en mode « collecte d’informations ». Vous pouvez spécifier le nom d’un fichier multimédia et obtenir des informations sur chacun des flux du fichier, tels que le type de format, la fréquence d’images ou la durée. Si le fichier contient un flux vidéo, vous pouvez basculer le détecteur de média en mode « manipulation bitmap » et récupérer les bitmaps à partir de la source. Toutefois, une fois que vous avez fait cela, vous ne pouvez pas rétablir le mode d’origine du détecteur de média. elle est attachée de manière permanente à ce flux vidéo. Pour utiliser un autre flux ou un autre fichier, vous devez créer une nouvelle instance du détecteur de média.

Notes

Les exemples de code de ce didacticiel utilisent la classe ATL CComPtr qui gère automatiquement les décomptes de références. Si vous préférez utiliser des pointeurs d’interface bruts, n’oubliez pas de libérer chaque interface lorsque vous n’en avez plus besoin. Par ailleurs, par souci de concision, les exemples de code omettent une grande partie de la vérification des erreurs qu’une application doit effectuer. Dans le code de travail, vérifiez toujours les valeurs HRESULT .

Ce didacticiel comprend les étapes suivantes :

utilisation des Services de modification DirectShow