MediaPlayer 클래스

정의

재생, 일시 중지, 빨리 감기, 되감기 및 볼륨과 같은 미디어 재생 기능에 대한 액세스를 제공합니다.

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
상속
Object IInspectable MediaPlayer
특성
구현

Windows 요구 사항

디바이스 패밀리
Windows 10 (10.0.10240.0에서 도입되었습니다.)
API contract
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)

설명

설명서의 미디어 재생 섹션에는 앱에 미디어 재생 기능을 추가하기 위한 자세한 지침을 제공하는 방법 문서가 포함되어 있습니다. 다음 표에는 사용 가능한 문서 중 일부가 나와 있습니다.

항목 설명
MediaPlayer를 사용하여 오디오 및 비디오 재생 UWP 앱용 미디어 재생 시스템의 새로운 기능과 향상된 기능을 활용하는 방법을 보여 줍니다.
미디어 항목, 재생 목록 및 트랙 로컬 또는 원격 파일과 같은 다른 원본에서 미디어를 참조하고 재생하는 일반적인 방법을 제공하고 기본 미디어 형식에 관계없이 미디어 데이터에 액세스하기 위한 공통 모델을 노출하는 MediaSource 클래스를 사용하는 방법을 보여 줍니다.
시스템 미디어 전송 컨트롤과 통합 SMTC(System Media Transport Controls)와 앱을 통합하는 방법을 보여 줍니다.
시스템에서 지원하는 시간이 제한된 메타데이터 신호 미디어 파일 또는 스트림에 포함될 수 있는 여러 형식의 시간 제한 메타데이터를 활용하는 방법을 설명합니다.
미디어 휴지 만들기, 예약 및 관리 미디어 재생 앱에 대한 미디어 중단을 만들고 예약하고 관리하는 방법을 보여 줍니다.
백그라운드에서 미디어 재생 앱이 포그라운드에서 백그라운드로 이동할 때 미디어가 계속 재생되도록 앱을 구성하는 방법을 보여 줍니다.
적응 스트리밍 UWP(유니버설 Windows 플랫폼) 앱에 적응 스트리밍 멀티미디어 콘텐츠의 재생을 추가하는 방법을 설명합니다.
미디어 캐스팅 유니버설 Windows 앱에서 원격 디바이스로 미디어를 캐스팅하는 방법을 보여줍니다.
PlayReady DRM UWP(유니버설 Windows 플랫폼) 앱에 PlayReady 보호 미디어 콘텐츠를 추가하는 방법을 설명합니다.

미디어 재생 SDK 샘플

다음 SDK 샘플은 Windows 10의 UWP 앱에 제공되는 미디어 재생 기능을 보여 줍니다. 이러한 샘플을 사용하여 컨텍스트에서 사용되거나 자체 앱의 시작점으로 사용되는 미디어 재생 API를 볼 수 있습니다.

버전 기록

Windows 버전 SDK 버전 추가된 값
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
1709 16299 RenderSubtitlesToSurface(IDirect3DSurface)
1709 16299 RenderSubtitlesToSurface(IDirect3DSurface,Rect)
1709 16299 SubtitleFrameChanged
1803 17134 AudioStateMonitor

생성자

MediaPlayer()

MediaPlayer 개체의 새 인스턴스를 초기화합니다.

속성

AudioBalance

스테레오 스피커의 볼륨 비율을 가져오거나 설정합니다.

AudioCategory

현재 재생 중인 오디오의 유형을 가져오거나 설정합니다.

AudioDevice

오디오를 DeviceInformation 렌더링하는 데 사용되는 오디오 디바이스를 나타내는 개체를 MediaPlayer 가져오거나 설정합니다.

AudioDeviceType

오디오 재생에 사용되는 디바이스의 기본 사용을 설명하는 값을 가져오거나 설정합니다.

AudioStateMonitor

AudioStateMonitor UWP 앱에서 앱의 오디오 스트림이 현재 음소거 중인지 또는 시스템에 의해 볼륨이 감소되는지 확인할 수 있는 개체를 가져옵니다.

AutoPlay

미디어가 로드된 후 재생이 자동으로 시작되는지 여부를 나타내는 부울 값을 가져오거나 설정합니다.

BreakManager

플레이어에 MediaBreakManager 대한 미디어 중단에 MediaPlayer대한 정보 및 제어를 제공하는 연결된 자를 가져옵니다.

BufferingProgress

미디어 콘텐츠에 대해 완료된 버퍼링의 양을 백분율로 표시합니다.

참고

MediaPlayer.BufferingProgress 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져옵니다 MediaPlaybackSession . 그런 다음 속성을 사용합니다 MediaPlaybackSession.BufferingProgress .

CanPause

미디어를 일시 중지할 수 있는지 여부를 나타내는 부울 값을 가져옵니다.

참고

MediaPlayer.CanPause 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져옵니다 MediaPlaybackSession . 그런 다음 속성을 사용합니다 MediaPlaybackSession.CanPause .

CanSeek

미디어가 특정 위치 검색을 지원하는지 여부를 나타내는 부울 값을 가져옵니다.

참고

MediaPlayer.CanSeek 은 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져옵니다 MediaPlaybackSession . 그런 다음 속성을 사용합니다 MediaPlaybackSession.CanSeek .

CommandManager

MediaPlaybackCommandManager 시스템 미디어 전송 컨트롤의 동작을 지정하고 시스템 미디어 전송 컨트롤에서 이벤트를 수신하는 연결된 MediaPlayer값을 가져옵니다.

CurrentState

미디어 재생의 현재 상태를 가져옵니다.

참고

MediaPlayer.CurrentState 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져옵니다 MediaPlaybackSession . 그런 다음 속성을 사용합니다 MediaPlaybackSession.PlaybackState .

IsLoopingEnabled

미디어가 반복 루프에서 재생되는지 여부를 나타내는 부울 값을 가져오거나 설정합니다.

IsMuted

오디오가 음소거되었는지 여부를 나타내는 부울 값을 가져오거나 설정합니다.

IsProtected

콘텐츠가 디지털 권한 관리 시스템에 의해 보호되는지 여부를 나타내는 부울 값을 가져옵니다.

참고

MediaPlayer.IsProtected는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 속성을 사용합니다 IsProtected .

IsVideoFrameServerEnabled

MediaPlayer 인스턴스에 대해 비디오 프레임 서버 모드를 사용할 수 있는지 여부를 나타내는 값을 가져옵니다.

NaturalDuration

를 적용 PlaybackRate하지 않고 미디어의 실제 기간을 가져옵니다.

참고

MediaPlayer.NaturalDuration 은 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 속성을 사용합니다 MediaPlaybackSession.NaturalDuration .

PlaybackMediaMarkers

미디어에 대한 타임라인 표식의 컬렉션을 가져옵니다.

참고

MediaPlayer.PlaybackMediaMarkers 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 데이터 또는 텍스트 신호를 관리하는 데 사용합니다 MediaPlaybackItem.TimedMetadataTracks . 자세한 내용은 MediaSource를 사용한 미디어 재생을 참조하세요.

PlaybackRate

비율로 표현된 재생 속도를 가져오거나 설정합니다.

참고

MediaPlayer.PlaybackRate 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 속성을 사용합니다 MediaPlaybackSession.PlaybackRate .

PlaybackSession

MediaPlaybackSession 현재 재생 세션의 상태에 대한 정보를 제공하고 재생 세션 상태의 변경 내용에 응답하기 위한 이벤트를 제공하는 연결된 MediaPlayer값을 가져옵니다.

Position

미디어 내에서 재생 위치를 가져오거나 설정합니다.

참고

MediaPlayer.Position 은 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 속성을 사용합니다 MediaPlaybackSession.Position .

ProtectionManager

미디어의 콘텐츠 보호 관리자를 가져오거나 설정합니다.

RealTimePlayback

라이브 스트리밍 비디오와 같은 실시간 시나리오를 MediaPlayer 구성하는 값을 가져오거나 설정합니다.

Source

미디어 플레이어의 재생 소스를 설정합니다.

StereoscopicVideoRenderMode

현재 스테레오스코픽 렌더링 모드를 나타내는 값을 가져오거나 설정합니다.

SystemMediaTransportControls

사용자가 재생 MediaPlayer 을 제어할 수 있도록 하고 앱이 시스템 UI에서 현재 재생 중인 콘텐츠에 대한 정보를 표시할 수 있도록 하는 SystemMediaTransportControls 클래스의 인스턴스를 가져옵니다.

TimelineController

MediaTimelineController와 연결된 MediaPlayer를 가져오거나 설정합니다. 단일 타임라인 컨트롤을 사용하여 여러 MediaPlayer 인스턴스를 조작하려면 이 속성을 사용합니다.

TimelineControllerPositionOffset

와 연결된 MediaPlayer위치에 적용되는 오프셋을 MediaTimelineController 가져오거나 설정합니다.

Volume

미디어 재생을 위한 오디오 볼륨을 가져오기 또는 설정합니다.

메서드

AddAudioEffect(String, Boolean, IPropertySet)

의 재생 스트림 MediaPlayer에 오디오 효과를 추가합니다.

AddVideoEffect(String, Boolean, IPropertySet)

미디어 재생에 비디오 효과를 적용합니다.

Close()

연결된 리소스를 MediaPlayer 닫고 삭제합니다.

CopyFrameToStereoscopicVideoSurfaces(IDirect3DSurface, IDirect3DSurface)

MediaPlayer 가 현재 표시하는 비디오 프레임을 스테레오스코픽 비디오 프레임의 왼쪽 눈과 오른쪽 눈 콘텐츠를 나타내는 제공된 두 개의 IDirect3DSurface 개체에 복사합니다.

CopyFrameToVideoSurface(IDirect3DSurface)

MediaPlayer 에서 제공된 IDirect3DSurface 로 현재 비디오 프레임을 복사합니다.

CopyFrameToVideoSurface(IDirect3DSurface, Rect)

MediaPlayer 에서 제공된 IDirect3DSurface 내의 지정된 대상 사각형으로 현재 비디오 프레임을 복사합니다.

GetAsCastingSource()

CastingSource 미디어를 다른 디바이스로 MediaPlayer캐스팅할 수 있는 나타내는 값을 가져옵니다.

GetSurface(Compositor)

MediaPlayerSurface XAML 프레임워크에 MediaPlayer의존하지 않고 플레이어의 콘텐츠를 렌더링할 수 있는 Compositor 개체를 가져옵니다.

Pause()

미디어 재생을 일시 중지합니다.

Play()

미디어 재생을 시작합니다.

RemoveAllEffects()

의 재생 스트림 MediaPlayer에서 모든 효과를 제거합니다.

RenderSubtitlesToSurface(IDirect3DSurface)

시스템에서 제공된 IDirect3DSurface에 현재 자막 텍스트를 렌더링하도록 요청합니다.

RenderSubtitlesToSurface(IDirect3DSurface, Rect)

시스템에서 제공된 IDirect3DSurface 내의 지정된 대상 사각형에 현재 자막 텍스트를 렌더링하도록 요청합니다.

SetFileSource(IStorageFile)

미디어 원본을 파일로 설정합니다.

참고

MediaPlayer.SetFileSource 는 Windows 10 이후에 변경되거나 사용할 수 없습니다. 대신 MediaPlayer.Source를 사용하세요.

SetMediaSource(IMediaSource)

재생을 위한 미디어 원본을 설정합니다.

참고

MediaPlayer.SetMediaSource 는 Windows 10 이후에 변경되거나 사용할 수 없습니다. 대신 MediaPlayer.Source를 사용하세요.

SetStreamSource(IRandomAccessStream)

미디어 원본을 스트림으로 설정합니다.

참고

MediaPlayer.SetMediaSource 는 Windows 10 이후에 변경되거나 사용할 수 없습니다. 대신 MediaPlayer.Source를 사용하세요.

SetSurfaceSize(Size)

에서 반환 GetSurface하는 컴퍼지션 표면의 크기를 설정합니다.

SetUriSource(Uri)

미디어의 경로를 설정합니다.

참고

MediaPlayer.SetUriSource 는 Windows 10 이후에 변경되거나 사용할 수 없습니다. 대신 MediaPlayer.Source를 사용하세요.

StepBackwardOneFrame()

재생되는 콘텐츠의 MediaPlayer 실제 프레임 속도에 관계없이 24fps의 한 프레임에 해당하는 .042초까지 재생 위치가 뒤로 이동하도록 합니다.

StepForwardOneFrame()

MediaPlayer 현재 미디어에서 한 프레임씩 앞으로 이동하도록 합니다.

이벤트

BufferingEnded

버퍼링이 끝나면 발생합니다.

참고

MediaPlayer.BufferingEnded는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 이벤트를 사용합니다 MediaPlaybackSession.BufferingEnded .

BufferingStarted

버퍼링이 시작되면 발생합니다.

참고

MediaPlayer.BufferingStarted는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 이벤트를 사용합니다 MediaPlaybackSession.BufferingStarted .

CurrentStateChanged

미디어 플레이어의 상태가 변경된 경우에 발생합니다.

참고

MediaPlayer.CurrentStateChanged 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 이벤트를 사용합니다 MediaPlaybackSession.PlaybackStateChanged .

IsMutedChanged

현재 음소거 상태가 변경될 때 발생합니다 MediaPlayer .

MediaEnded

미디어 재생이 완료되면 발생합니다.

MediaFailed

오류가 발생할 때 발생합니다.

MediaOpened

미디어를 열면 발생합니다.

MediaPlayerRateChanged

미디어 재생 속도가 변경될 때 발생합니다.

참고

MediaPlayer.MediaPlayerRateChanged 는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 이벤트를 사용합니다 MediaPlaybackSession.PlaybackRateChanged .

PlaybackMediaMarkerReached

재생 중에 미디어 마커에 도달했을 때 발생합니다.

참고

MediaPlayer.PlaybackMediaMarkerReached는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 데이터 또는 텍스트 신호를 관리하는 데 사용합니다 MediaPlaybackItem.TimedMetadataTracks . 자세한 내용은 MediaSource를 사용한 미디어 재생을 참조하세요.

SeekCompleted

검색 작업이 완료되면 발생합니다.

참고

MediaPlayer.SeekCompleted는 Windows 10 버전 1607 이후에 변경되거나 사용할 수 없습니다. 대신 속성을 사용하여 MediaPlayer.PlaybackSession 개체를 가져와 MediaPlaybackSession 서 이벤트를 사용합니다 MediaPlaybackSession.SeekCompleted .

SourceChanged

미디어 원본이 변경되면 발생합니다 MediaPlayer .

SubtitleFrameChanged

MediaPlayer가 프레임 서버 모드에 있는 동안 현재 자막 콘텐츠가 변경된 경우에 발생합니다.

VideoFrameAvailable

true로 설정되고 새 비디오 프레임을 처리할 수 있을 때 IsVideoFrameServerEnabled 발생합니다.

VolumeChanged

오디오 볼륨이 변경될 때 발생합니다.

적용 대상