Compartilhar via


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

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Nota A interface ICaptureGraphBuilder foi preterida. Em vez disso, use ICaptureGraphBuilder2 .
 
Cria a seção de renderização do grafo de filtro, que salvará bits em disco com o nome de arquivo especificado.

Sintaxe

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

Parâmetros

[in] pType

Ponteiro para um GUID que representa o subtipo de mídia. Deve ser &MEDIASUBTYPE_Avi.

[in] lpstrFile

Ponteiro para uma cadeia de caracteres largos que contém o nome do arquivo de saída.

[out] ppf

Endereço de um ponteiro para uma interface IBaseFilter que representa o filtro multiplexer. Esse método incrementa a contagem de referência na interface IBaseFilter para que você decremente a contagem de referência usando o método Release nesse parâmetro quando terminar de usar o filtro.

[out] ppSink

Endereço de um ponteiro para uma interface IFileSinkFilter que representa o gravador de arquivos. Esse método incrementa a contagem de referência na interface IFileSinkFilter para que você decremente a contagem de referências usando Release quando terminar de usar o filtro.

Retornar valor

Retorna um valor HRESULT . Os possíveis valores incluem os seguintes.

Código de retorno Descrição
E_FAIL
Falha.
E_INVALIDARG
Argumento inválido. Audio-Video AVI (Intercalado) é o único formato de saída com suporte.
E_OUTOFMEMORY
Sem memória.
E_POINTER
Argumento de ponteiro NULL.
E_UNEXPECTED
Ocorreu um erro inesperado.
NOERROR
Êxito.
S_OK
A instância do filtro multiplexador AVI foi criada com êxito.

Comentários

Esse método insere o multiplexador e o gravador de arquivos no grafo de filtro e chama IFileSinkFilter::SetFileName para definir o nome do arquivo de saída.

Você pode usar o parâmetro ppf retornado por esse método como o parâmetro pfRenderer em chamadas para RenderStream.

Você pode usar o parâmetro pSink desse método em uma chamada para SetFileName para alterar o nome do arquivo definido por ICaptureGraphBuilder::SetOutputFileName.

Requisitos

Requisito Valor
Cliente mínimo com suporte Referência:_Dshowh
Plataforma de Destino Windows
Cabeçalho strmif.h
DLL Quartz.dll

Confira também

Códigos de erro e êxito

ICaptureGraphBuilder Interface