Método IDvdGraphBuilder::RenderDvdVideoVolume (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.]
O RenderDvdVideoVolume
método conclui a criação de um grafo de filtro de acordo com as especificações do usuário para reproduzir um volume DVD-Video.
Sintaxe
HRESULT RenderDvdVideoVolume(
[in] LPCWSTR lpcwszPathName,
[in] DWORD dwFlags,
[out] AM_DVD_RENDERSTATUS *pStatus
);
Parâmetros
[in] lpcwszPathName
Ponteiro para o caminho do volume de DVD-Video a ser reproduzido. Pode ser NULL.
[in] dwFlags
OR bit a bit de sinalizadores de AM_DVD_GRAPH_FLAGS enumeração, especificando como criar o grafo de reprodução de DVD.
[out] pStatus
Ponteiro para uma estrutura AM_DVD_RENDERSTATUS . Quando o método retorna, a estrutura indica quaisquer falhas de renderização.
Retornar valor
Retorna um valor HRESULT que depende da implementação da interface . Os valores retornados da implementação do DirectShow incluem o seguinte:
Código de retorno | Descrição |
---|---|
|
O parâmetro dwFlags especifica opções conflitantes. |
|
O método foi parcialmente bem-sucedido. Para descobrir quais erros ocorreram, examine o parâmetro pStatus . |
|
O método foi bem-sucedido e todos os fluxos foram renderizados. |
|
Não foi possível renderizar um ou mais fluxos.
Se você especificou o sinalizador AM_DVD_HWDEC_ONLY ou AM_DVD_SWDEC_ONLY no parâmetro dwFlags , tente chamar o método novamente com o sinalizador AM_DVD_HWDEC_PREFER ou AM_DVD_SWDEC_PREFER. |
|
O grafo de filtro já contém um renderizador de vídeo. O método retornará esse código de erro se você especificar o sinalizador AM_DVD_EVR_ONLY no parâmetro dwFlags , mas o grafo já contiver um renderizador de vídeo diferente do filtro VMR (Renderizador de Vídeo Avançado). |
|
Ocorreu um erro ao compilar o grafo. Por exemplo, o Dvd Graph Builder não pôde criar um filtro necessário ou não pôde renderizar nenhum dos fluxos. |
|
O grafo de filtro contém mais de um renderizador de vídeo. |
Comentários
A estrutura AM_DVD_RENDERSTATUS reflete códigos de falha para esse método. Os motivos para esse método retornar S_FALSE incluem o seguinte:
- O grafo foi completamente compilado, mas um dos itens a seguir é verdadeiro.
- A combinação de sobreposição não funciona— o aplicativo não definiu o sinalizador AM_DVD_NOVPE e o fluxo de vídeo não pôde ser colocado por meio do Mixer de Sobreposição. Nesse caso, se o vídeo for decodificado no software, o aplicativo terá informações suficientes para informar ao usuário que o vídeo não ficará visível. O vídeo decodificado por hardware ficará visível apenas em uma TV conectada à porta de saída do NTSC do decodificador de vídeo de hardware.
- O decodificador de vídeo não produz dados de linha 21. O aplicativo pode exibir um aviso ou uma mensagem informativa informando que a legendagem oculta não está disponível devido ao decodificador.
- Nenhum caminho de volume é especificado e o Navegador de DVD não localizou nenhum volume DVD-Video a ser reproduzido. O aplicativo pode solicitar que o usuário insira um disco DVD-Video se nenhum estiver disponível na unidade quando a reprodução for iniciada.
- Alguns fluxos não foram renderizados. O aplicativo pode indicar ao usuário que alguns fluxos não podem ser reproduzidos.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | strmif.h (inclua Dshow.h) |
Biblioteca | Strmiids.lib |