Partilhar via


MediaPlayer Classe

Definição

Fornece acesso à funcionalidade de reprodução de mídia, como reproduzir, pausar, avançar rapidamente, retroceder e volume.

public ref class MediaPlayer sealed
public ref class MediaPlayer sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class MediaPlayer final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(196608, "Windows.Foundation.UniversalApiContract")]
class MediaPlayer final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class MediaPlayer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(196608, "Windows.Foundation.UniversalApiContract")]
public sealed class MediaPlayer : System.IDisposable
function MediaPlayer()
Public NotInheritable Class MediaPlayer
Public NotInheritable Class MediaPlayer
Implements IDisposable
Herança
Object Platform::Object IInspectable MediaPlayer
Atributos
Implementações

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

A seção Reprodução de mídia da documentação contém artigos de instruções que fornecem diretrizes detalhadas para adicionar recursos de reprodução de mídia ao seu aplicativo. A tabela a seguir lista alguns dos artigos disponíveis.

Tópico Descrição
Reproduzir áudio e vídeo com o MediaPlayer Mostra como aproveitar os novos recursos e melhorias no sistema de reprodução de mídia para aplicativos UWP.
Itens de mídia, playlists e faixas Mostra como usar a classe MediaSource , que fornece uma maneira comum de referenciar e reproduzir mídia de diferentes fontes, como arquivos locais ou remotos, e expõe um modelo comum para acessar dados de mídia, independentemente do formato de mídia subjacente.
Integrar aos Controles de transporte de mídia do sistema Mostra como integrar seu aplicativo aos Controles de Transporte de Mídia do Sistema (SMTC).
Indicações de metadados programados com suporte do sistema Descreve como aproveitar vários formatos de metadados cronometrados que podem ser inseridos em arquivos de mídia ou fluxos.
Criar, programar e gerenciar pausas de mídia Mostra como criar, agendar e gerenciar pausas de mídia para seu aplicativo de reprodução de mídia.
Reproduzir mídia em segundo plano Mostra como configurar seu aplicativo para que a mídia continue a ser reproduzida quando seu aplicativo passa do primeiro plano para o segundo plano.
Streaming Adaptável Descreve como adicionar a reprodução de conteúdo multimídia de streaming adaptável a aplicativos de Plataforma Universal do Windows (UWP).
Transmissão de mídia Mostra como converter mídia em dispositivos remotos de um aplicativo Universal do Windows.
DRM do PlayReady Descreve como adicionar conteúdo de mídia protegido do PlayReady ao seu aplicativo Plataforma Universal do Windows (UWP).

Amostras do SDK de reprodução de mídia

As amostras a seguir do SDK demonstram os recursos de reprodução de mídia disponíveis para aplicativos UWP no Windows 10. Use essas amostras para ver as APIs de reprodução de mídia usadas no contexto ou como um ponto de partida para seu próprio aplicativo.

Histórico de versão

Versão do Windows Versão do SDK Valor adicionado
1511 10586 AddAudioEffect
1511 10586 RemoveAllEffects
1607 14393 AddVideoEffect
1607 14393 AudioBalance
1607 14393 AudioDevice
1607 14393 BreakManager
1607 14393 CommandManager
1607 14393 GetAsCastingSource
1607 14393 GetSurface
1607 14393 IsMutedChanged
1607 14393 PlaybackSession
1607 14393 RealTimePlayback
1607 14393 SetSurfaceSize
1607 14393 Sourcechanged
1607 14393 StepBackwardOneFrame
1607 14393 StepForwardOneFrame
1607 14393 StereoscopicVideoRenderMode
1607 14393 TimelineController
1607 14393 TimelineControllerPositionOffset
1703 15063 CopyFrameToStereoscopicVideoSurfaces
1703 15063 CopyFrameToVideoSurface(IDirect3DSurface)
1703 15063 CopyFrameToVideoSurface(IDirect3DSurface,Rect)
1703 15063 IsVideoFrameServerEnabled
1703 15063 VideoFrameAvailable
1.709 16299 RenderSubtitlesToSurface(IDirect3DSurface)
1.709 16299 RenderSubtitlesToSurface(IDirect3DSurface,Rect)
1.709 16299 SubtitleFrameChanged
1803 17134 AudioStateMonitor

Construtores

MediaPlayer()

Inicializa uma nova instância do objeto MediaPlayer .

Propriedades

AudioBalance

Obtém ou define uma proporção de volume entre alto-falantes estéreo.

AudioCategory

Obtém ou define o tipo de áudio que está sendo reproduzido no momento.

AudioDevice

Obtém ou define o objeto DeviceInformation que representa o dispositivo de áudio usado pelo MediaPlayer para renderizar áudio.

AudioDeviceType

Obtém ou define um valor que descreve o uso primário do dispositivo que está sendo usado para reproduzir áudio.

AudioStateMonitor

Obtém um objeto AudioStateMonitor que permite que um aplicativo UWP determine se algum dos fluxos de áudio do aplicativo está sendo ativado ou tendo seu volume reduzido pelo sistema.

AutoPlay

Obtém ou define um valor booliano que indica se a reprodução é iniciada automaticamente depois que a mídia é carregada.

BreakManager

Obtém o MediaBreakManager associado ao MediaPlayer, que fornece informações sobre e controle sobre as pausas de mídia para o player.

BufferingProgress

Obtém a quantidade de buffer que é concluída para o conteúdo de mídia, expressa como uma porcentagem.

Observação

MediaPlayer.BufferingProgress pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.BufferingProgress .

CanPause

Obtém um valor booliano que indica se a mídia pode ser pausada.

Observação

MediaPlayer.CanPause pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.CanPause .

CanSeek

Obtém um valor booliano que indica se a mídia dá suporte à busca de uma posição específica.

Observação

MediaPlayer.CanSeek pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.CanSeek .

CommandManager

Obtém o MediaPlaybackCommandManager associado ao MediaPlayer, que especifica o comportamento de e recebe eventos dos Controles de Transporte de Mídia do Sistema.

CurrentState

Obtém o estado atual da reprodução de mídia.

Observação

MediaPlayer.CurrentState pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.PlaybackState .

IsLoopingEnabled

Obtém ou define um valor booliano que indica se a mídia será reproduzida em um loop repetido.

IsMuted

Obtém ou define um valor booliano que indica se o áudio está mudo.

IsProtected

Obtém um valor booliano que indica se o conteúdo está protegido por um sistema de gerenciamento de direitos digitais.

Observação

MediaPlayer.IsProtected pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade IsProtected .

IsVideoFrameServerEnabled

Obtém um valor que indica se o modo de servidor de quadro de vídeo está habilitado para a instância do MediaPlayer .

NaturalDuration

Obtenha a duração real da mídia sem aplicar o PlaybackRate.

Observação

MediaPlayer.NaturalDuration pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.NaturalDuration .

PlaybackMediaMarkers

Obtém a coleção de marcadores linha do tempo para a mídia.

Observação

MediaPlayer.PlaybackMediaMarkers pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use MediaPlaybackItem.TimedMetadataTracks para gerenciar dados ou indicações de texto. Para obter mais informações, consulte Reprodução de mídia com MediaSource.

PlaybackRate

Obtém ou define a taxa de reprodução, expressa como uma taxa.

Observação

MediaPlayer.PlaybackRate pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.PlaybackRate .

PlaybackSession

Obtém o MediaPlaybackSession associado ao MediaPlayer, que fornece informações sobre o estado da sessão de reprodução atual e fornece eventos para responder a alterações no estado da sessão de reprodução.

Position

Obtém ou define a posição de reprodução dentro da mídia.

Observação

MediaPlayer.Position pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use a propriedade MediaPlaybackSession.Position .

ProtectionManager

Obtém ou define o gerenciador de proteção de conteúdo para a mídia.

RealTimePlayback

Obtém ou define um valor que configura o MediaPlayer para cenários em tempo real, como vídeo de transmissão ao vivo.

Source

Define a origem da reprodução do player de mídia.

StereoscopicVideoRenderMode

Obtém ou define um valor que indica o modo de renderização estereoscópico atual.

SystemMediaTransportControls

Obtém uma instância da classe SystemMediaTransportControls para habilitar o controle do usuário de reprodução do MediaPlayer e permitir que o aplicativo mostre informações sobre o conteúdo atualmente reproduzido na interface do usuário do sistema.

TimelineController

Obtém ou define o MediaTimelineController associado ao MediaPlayer. Use essa propriedade para manipular várias instâncias do MediaPlayer com um único controle linha do tempo.

TimelineControllerPositionOffset

Obtém ou define o deslocamento aplicado à posição do MediaTimelineController associado ao MediaPlayer.

Volume

Obtém ou define o volume de áudio para reprodução de mídia.

Métodos

AddAudioEffect(String, Boolean, IPropertySet)

Adiciona um efeito de áudio ao fluxo de reprodução do MediaPlayer.

AddVideoEffect(String, Boolean, IPropertySet)

Aplica um efeito de vídeo à reprodução de mídia.

Close()

Fecha o MediaPlayer e descarta os recursos associados.

CopyFrameToStereoscopicVideoSurfaces(IDirect3DSurface, IDirect3DSurface)

Copia o quadro de vídeo exibido atualmente pelo MediaPlayer para os dois objetos IDirect3DSurface fornecidos que representam o conteúdo do olho esquerdo e do olho direito de um quadro de vídeo estereoscópico.

CopyFrameToVideoSurface(IDirect3DSurface)

Copia o quadro de vídeo atual do MediaPlayer para o IDirect3DSurface fornecido.

CopyFrameToVideoSurface(IDirect3DSurface, Rect)

Copia o quadro de vídeo atual do MediaPlayer para o retângulo de destino especificado dentro do IDirect3DSurface fornecido.

Dispose()

Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados.

GetAsCastingSource()

Obtém um CastingSource que representa o MediaPlayer, que permite que sua mídia seja convertida em outros dispositivos.

GetSurface(Compositor)

Obtém um objeto MediaPlayerSurface para o MediaPlayer, que permite renderizar o conteúdo do jogador usando um Compositor sem depender da estrutura XAML.

Pause()

Pausa a reprodução de mídia.

Play()

Inicia a reprodução de mídia.

RemoveAllEffects()

Remove todos os efeitos do fluxo de reprodução do MediaPlayer.

RenderSubtitlesToSurface(IDirect3DSurface)

Solicitações para que o sistema renderize o texto do subtítulo atual para o IDirect3DSurface fornecido.

RenderSubtitlesToSurface(IDirect3DSurface, Rect)

Solicita que o sistema renderize o texto do subtítulo atual para o retângulo de destino especificado dentro do IDirect3DSurface fornecido.

SetFileSource(IStorageFile)

Defina a origem da mídia como um arquivo.

Observação

MediaPlayer.SetFileSource pode ser alterado ou indisponível após o Windows 10. Em vez disso, use MediaPlayer.Source .

SetMediaSource(IMediaSource)

Define a fonte de mídia para reprodução.

Observação

MediaPlayer.SetMediaSource pode ser alterado ou indisponível após o Windows 10. Em vez disso, use MediaPlayer.Source .

SetStreamSource(IRandomAccessStream)

Define a fonte de mídia como um fluxo.

Observação

MediaPlayer.SetMediaSource pode ser alterado ou indisponível após o Windows 10. Em vez disso, use MediaPlayer.Source .

SetSurfaceSize(Size)

Define o tamanho da superfície de composição retornada por GetSurface.

SetUriSource(Uri)

Define o caminho para a mídia.

Observação

MediaPlayer.SetUriSource pode ser alterado ou indisponível após o Windows 10. Em vez disso, use MediaPlayer.Source .

StepBackwardOneFrame()

Faz com que a posição de reprodução do MediaPlayer se mova para trás em 0,042 segundos, o que corresponde a um quadro a 24 fps, independentemente da taxa de quadros real do conteúdo que está sendo reproduzido.

StepForwardOneFrame()

Faz com que o MediaPlayer avance na mídia atual em um quadro.

Eventos

BufferingEnded

Ocorre quando o buffer foi concluído.

Observação

MediaPlayer.BufferingEnded pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use o evento MediaPlaybackSession.BufferingEnded .

BufferingStarted

Ocorre quando o buffer foi iniciado.

Observação

MediaPlayer.BufferingStarted pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use o evento MediaPlaybackSession.BufferingStarted .

CurrentStateChanged

Ocorre quando o estado do player de mídia foi alterado.

Observação

MediaPlayer.CurrentStateChanged pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use o evento MediaPlaybackSession.PlaybackStateChanged .

IsMutedChanged

Ocorre quando o status ativado atual do MediaPlayer é alterado.

MediaEnded

Ocorre quando a mídia conclui a reprodução.

MediaFailed

Ocorre quando um erro é encontrado.

MediaOpened

Ocorre quando a mídia é aberta.

MediaPlayerRateChanged

Ocorre quando a taxa de reprodução de mídia foi alterada.

Observação

MediaPlayer.MediaPlayerRateChanged pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use o evento MediaPlaybackSession.PlaybackRateChanged .

PlaybackMediaMarkerReached

Ocorre quando um marcador de mídia foi atingido durante a reprodução.

Observação

MediaPlayer.PlaybackMediaMarkerReached pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use MediaPlaybackItem.TimedMetadataTracks para gerenciar dados ou indicações de texto. Para obter mais informações, consulte Reprodução de mídia com MediaSource.

SeekCompleted

Ocorre quando uma operação de busca é concluída.

Observação

MediaPlayer.SeekCompleted pode ser alterado ou indisponível após o Windows 10, versão 1607. Em vez disso, use a propriedade MediaPlayer.PlaybackSession para obter um objeto MediaPlaybackSession e, em seguida, use o evento MediaPlaybackSession.SeekCompleted .

SourceChanged

Ocorre quando a fonte de mídia do MediaPlayer é alterada.

SubtitleFrameChanged

Ocorre quando o conteúdo do subtítulo atual foi alterado enquanto o MediaPlayer está no modo de servidor de quadros.

VideoFrameAvailable

Ocorre quando IsVideoFrameServerEnabled é definido como true e um novo quadro de vídeo está disponível para processamento.

VolumeChanged

Ocorre quando o volume do áudio é alterado.

Aplica-se a