Compartilhar via


Aplicativos de exemplo do SDK de Formato de Mídia do Windows

[O recurso associado a esta página, Windows Media Format 11 SDK, é um recurso herdado. Ele foi substituído por Leitor de Origem e Gravador de Coletor. O Leitor de Origem e o Gravador do Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o Leitor de Origem e o Gravador do Coletor em vez do SDK do Windows Media Format 11, 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 código de exemplo fornecido com esse SDK está na forma de projetos para o Microsoft Visual Studio 2005. A maioria dos exemplos está em C++, mas ManagedWMFSDKWrapper e ManagedMetadataEdit exigem C#.

Esses exemplos não funcionarão, a menos que o SDK do Windows Media Format ou o SDK do Windows Player tenha sido instalado.

As informações de uso de cada exemplo estão contidas em um arquivo readme.txt em cada diretório de exemplo.

Samle Descrição
Audioplayer Reproduz arquivos do Windows Media, incluindo arquivos protegidos por DRM. Ele é controlado por meio de uma GUI e os comandos incluem Reproduzir, Pausar, Buscar e Parar. Ele pode reproduzir arquivos locais ou arquivos lidos da Internet (incluindo esses saídas para a Internet usando o exemplo WMVNetWrite). Nota: As partes drm deste exemplo não têm suporte em versões baseadas em x64 do Windows.
DRMHeader DRMHeader é um aplicativo de console que usa a interface IWMDRMEditor do editor de metadados para ler atributos DRM de arquivos sem vincular à biblioteca estática drm. Nota: Este exemplo não tem suporte em versões baseadas em x64 do Windows.
DRMShow DRMShow é um aplicativo de console que mostra como ler propriedades DRM de um arquivo do Windows Media usando o método IWMDRMReader::GetDRMProperty . Este exemplo demonstra o uso do método IWMDRMReader::GetDRMProperty e as propriedades que podem ser recuperadas do leitor de DRM. Ele não demonstra como adquirir uma licença para conteúdo protegido por DRM. Este exemplo requer que a biblioteca de stub do DRM WMStubDRM.lib seja compilada.
Nota: Este exemplo não tem suporte em versões baseadas em x64 do Windows.
Quando você adquire o WMStubDRM.lib da Microsoft, a biblioteca recebe um nível de segurança do aplicativo. Se o nível de segurança da biblioteca recebida não for suficiente para reproduzir um arquivo protegido, este exemplo exibirá um erro.
DirectShowInterop/DSCopy Transcodifica um ou mais arquivos para um arquivo ASF usando o filtro Gravador ASF do WM do DirectShow. O arquivo de entrada pode ser qualquer formato compactado ou descompactado compatível com o DirectShow.
DirectShowInterop/DSPlay Este exemplo é um player de arquivo de mídia de áudio/vídeo interativo com suporte a DRM . Ele usa o filtro leitor asf do WM do DirectShow para reproduzir arquivos do Windows Media (ASF, WMA, WMV) sem proteção drm e arquivos que usam DRM em um nível de 100 ou abaixo. Confira readme.txt no diretório do exemplo para obter mais informações.
DirectShowInterop/DSSeekFm Este exemplo demonstra como usar o Filtro de Leitor ASF do DirectShow WM para reproduzir conteúdo ASF em um grafo de filtro directShow e também como usar o quadro que busca suporte no SDK do Formato de Mídia do Windows.
Gerenciado/WMFSDKWrapper Esse assembly gerenciado serve como um wrapper usado por exemplos de código gerenciado para acessar algumas interfaces de metadados desse SDK.
Managed/MetadataEdit Esse aplicativo C# pode ser usado para exibir e editar metadados de arquivos do Windows Media.
MetaDataEdit Esta é uma versão C++ do aplicativo Managed MetadataEdit.
ReadFromStream Este exemplo de aplicativo de console mostra como ler dados do IStream com o WMReader. A origem IStream foi implementada para usar um arquivo no Formato de Mídia do Windows (WMA/WMV/ASF). Nota: Este exemplo não mostra como processar os exemplos de mídia provenientes do WMReader. Para obter exemplos sobre como processar áudio/vídeo ou outros tipos de exemplos de mídia, consulte outros exemplos, por exemplo, AudioPlayer, que estão incluídos no SDK do Formato de Mídia do Windows.
UncompAVIToWMV Este exemplo de aplicativo de console mostra o código necessário para compactar um arquivo AVI em um arquivo WMV. Ele mostra como mesclar amostras para fluxos de áudio e vídeo de vários arquivos AVI e mesclá-los em fluxos semelhantes ou criar um novo fluxo com base no perfil de fluxo de origem. Ele também mostra como criar um fluxo arbitrário, fazer codificação multipasso, adicionar código de tempo SMPTE e aplicar a proteção drm versão 1.
WMGenProfile/exe Este exemplo foi atualizado da versão 7.1. Agora é um aplicativo de caixa de diálogo MFC. O exemplo WMGenProfile demonstra o uso da biblioteca estática WMGenProfile. Ele também serve como uma ferramenta para a criação de perfis. Essa ferramenta destina-se a desenvolvedores familiarizados com o Formato de Mídia do Windows. A interface do usuário não foi testada quanto à experiência do usuário e não se destina a ser uma recomendação sobre como apresentar essas informações a um usuário.
WMGenProfile/lib O exemplo de biblioteca GenProfile demonstra a criação de perfis. Ele mostra como criar tipos de mídia e fluxos para vários tipos de fluxo (áudio, vídeo, script, imagem, transferência de arquivos e Web). Ele não demonstra como trabalhar com perfis do sistema ou como converter perfis do sistema em perfis que especificam os codecs da Série 9 de Áudio e Vídeo do Windows Media.
WMProp Este aplicativo de console demonstra como recuperar atributos usando o objeto do editor de metadados e as informações de perfil do leitor.
WMStats Este aplicativo de console exibe estatísticas de Leitor e Gravador. Várias instâncias do WMStats também podem ser usadas simultaneamente em um computador. Inicie uma instância como um servidor para enviar o fluxo para a rede e, em seguida, execute uma segunda instância como um cliente para verificar se o servidor está transmitindo corretamente.
WMSyncReader Este exemplo de aplicativo de console mostra como ler um arquivo de mídia usando IWMSyncReader sem criar nenhum thread extra ou usar retornos de chamada. Os seguintes recursos são implementados:Lendo amostras compactadas ou descompactadas
Busca baseada em tempo
Busca baseada em quadros
Fonte derivada de IStream
WMVAppend Esse aplicativo de console usa dois arquivos do Windows Media para entrada e tenta criar um arquivo de saída com o conteúdo do primeiro seguido pelo segundo. O exemplo compara os perfis dos dois arquivos de entrada para garantir que eles sejam semelhantes o suficiente para serem acrescentados. Se esse não for o caso, uma mensagem de erro será exibida. Por exemplo, uma mensagem de erro ocorre quando um arquivo é somente áudio e o segundo é um arquivo de áudio-vídeo ou quando dois arquivos de áudio têm taxas de bits diferentes. O exemplo aceita fontes de VBR (taxa de bits variáveis). No entanto, ao comparar os perfis das duas fontes de VBR, o exemplo ignora a diferença de taxa de bits média porque dois fluxos de VBR terão taxas médias de bits diferentes, mesmo que tenham sido criados usando o mesmo perfil. O WMVAppend não pode comparar a taxa de bits de pico de fluxos VBR baseados em taxa de bits irrestrita ou o nível de qualidade dos fluxos de VBR baseados em qualidade, pois essas informações não existem nos arquivos de origem. Portanto, é responsabilidade do usuário garantir que dois arquivos de origem sejam criados usando o mesmo perfil. Caso contrário, conteúdo inválido pode ser criado.
WMVCopy Este exemplo mostra o código necessário para copiar um arquivo WMV. Ele mostra como ler e gravar exemplos compactados, ler atributos e scripts de cabeçalho e modificar atributos de cabeçalho.
WMVNetWrite Este aplicativo de console mostra como um arquivo do Windows Media é transmitido pela Internet. O exemplo requer que uma porta seja especificada e, em seguida, o arquivo pode ser reproduzido usando um player.
WMVRecompress Este aplicativo de console mostra como recompactar um arquivo WMV. Ele demonstra a leitura de amostras descompactadas, a gravação de amostras descompactadas e a codificação de várias passões, a saída de vários canais e a recompactação inteligente.

Sobre o SDK do Windows Media Format

Guia de programação