Valores de atributo de leitura
[O recurso associado a esta página, Reprodutor Multimídia do Windows SDK, é um recurso herdado. Foi substituído pelo MediaPlayer. O MediaPlayer foi otimizado para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o MediaPlayer em vez de Reprodutor Multimídia do Windows SDK, 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.]
Os atributos que você pode encontrar na biblioteca e nos arquivos do Windows Media têm nomes predefinidos. Você pode escrever um código que recupera o valor de um atributo passando o nome desse atributo para Mídia. getItemInfo ou Media. getItemInfoByType. Você também pode escrever um código que recupera os valores de todos os atributos em um arquivo ou item.
O exemplo de C# a seguir recupera o valor do atributo Title e o exibe em uma caixa de mensagem. Neste exemplo, o objeto Player foi definido como axWMPLib.AxWindowsMediaPlayer Player.
IWMPMedia media;
string strAttribValue = "";
// Initialize the media object
media = Player.currentMedia;
// Retrieve the object's Title attribute
strAttribValue = media.getItemInfo("Title");
// Display the title
if (strAttribValue != "")
{
MessageBox.Show("Current title: " + strAttribValue);
}
Na chamada para getItemInfoByType, o segundo parâmetro é uma cadeia de caracteres que especifica o idioma. Se você passar uma cadeia de caracteres vazia conforme mostrado neste exemplo, o método recuperará o valor no idioma padrão. Para obter informações sobre o terceiro parâmetro, consulte Atributos com vários valores.
O exemplo de C# a seguir recupera os valores de um determinado atributo no item de mídia atual. Ele retorna esses valores como uma cadeia de caracteres delimitada por ponto e vírgula. Observe que, para atributos representados como objetos, como WM/Lyrics_Synchronised, WM/Picture e WM/UserWebURL, a função retorna uma cadeia de caracteres vazia.
private string getAttributeValues(string strAttrName, IWMPMedia3 media)
{
string strAttrValue = "";
int iAttrCount = 0;
if (media != null)
{
// Retrieve the count of values for this attribute
iAttrCount = media.getAttributeCountByType(strAttrName, "");
// Retrieve the values
for (int i = 0; i < iAttrCount; i++)
{
strAttrValue += media.getItemInfoByType(strAttrName, "", i);
strAttrValue += ";";
}
}
// Return the resulting string
return strAttrValue;
}
O terceiro argumento passado para o método getItemInfoByType é o índice de um atributo específico em um conjunto de atributos com o mesmo nome.
Você pode usar código semelhante para recuperar atributos que têm nomes exclusivos. Nesses casos, getAttributeCountByType retorna 1. No exemplo mostrado anteriormente, a chamada para getItemInfoByType seria executada apenas uma vez.
Tópicos relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de