Partager via


Méthode ICaptureGraphBuilder ::SetOutputFileName (strmif.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si 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.]

NoteL’interface ICaptureGraphBuilder est déconseillée. Utilisez ICaptureGraphBuilder2 à la place.
 
Crée la section de rendu du graphique de filtre, qui enregistre les bits sur le disque avec le nom de fichier spécifié.

Syntaxe

HRESULT SetOutputFileName(
  [in]  const GUID      *pType,
  [in]  LPCOLESTR       lpstrFile,
  [out] IBaseFilter     **ppf,
  [out] IFileSinkFilter **ppSink
);

Paramètres

[in] pType

Pointeur vers un GUID représentant le sous-type de média. Doit être &MEDIASUBTYPE_Avi.

[in] lpstrFile

Pointeur vers une chaîne de caractères larges contenant le nom du fichier de sortie.

[out] ppf

Adresse d’un pointeur vers une interface IBaseFilter représentant le filtre de multiplexeur. Cette méthode incrémente le nombre de références sur l’interface IBaseFilter . Vous devez donc décrémenter le nombre de références à l’aide de la méthode Release sur ce paramètre lorsque vous utilisez le filtre.

[out] ppSink

Adresse d’un pointeur vers une interface IFileSinkFilter représentant l’enregistreur de fichiers. Cette méthode incrémente le nombre de références sur l’interface IFileSinkFilter. Vous devez donc décrémenter le nombre de références à l’aide de Release lorsque vous avez terminé avec le filtre.

Valeur retournée

Retourne une valeur HRESULT . Les valeurs possibles sont les suivantes.

Code de retour Description
E_FAIL
Échec.
E_INVALIDARG
Argument non valide. Audio-Video entrelacé (AVI) est le seul format de sortie pris en charge.
E_OUTOFMEMORY
Mémoire insuffisante.
E_POINTER
Argument pointeur NULL .
E_UNEXPECTED
Une erreur inattendue s'est produite.
NOERROR
Réussite.
S_OK
L’instance du filtre de multiplexeur AVI a été créée avec succès.

Remarques

Cette méthode insère le multiplexeur et l’enregistreur de fichiers dans le graphique de filtre et appelle IFileSinkFilter ::SetFileName pour définir le nom du fichier de sortie.

Vous pouvez utiliser le paramètre ppf retourné par cette méthode comme paramètre pfRenderer dans les appels à RenderStream.

Vous pouvez utiliser le paramètre pSink de cette méthode dans un appel à SetFileName pour modifier le nom de fichier défini par ICaptureGraphBuilder::SetOutputFileName.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Référence :_Dshowh
Plateforme cible Windows
En-tête strmif.h
DLL Quartz.dll

Voir aussi

Codes d’erreur et de réussite

ICaptureGraphBuilder, interface