내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

MediaStreamSource.GetSampleAsync 메서드

2013-12-13

MediaElement는 이 메서드를 호출하여 MediaStreamSource에 미디어 파이프라인에 대해 요청된 스트림 형식의 다음 MediaStreamSample을 준비하도록 요청합니다. 개발자는 ReportGetSampleCompleted 또는 ReportGetSampleProgress를 호출하여 이 메서드에 응답할 수 있습니다.

Namespace:  System.Windows.Media
어셈블리:  System.Windows(System.Windows.dll)

protected abstract void GetSampleAsync(
	MediaStreamType mediaStreamType
)

매개 변수

mediaStreamType
형식: System.Windows.Media.MediaStreamType
다음 샘플을 가져와야 하는 스트림에 대한 설명으로, Audio 또는 Video입니다.

개발자는 다음 네 가지 방법 중 하나로 GetSampleAsync 호출에 응답할 수 있습니다.

  1. ReportGetSampleProgress을 호출합니다. 이 호출은 MediaStreamSource가 해당 버퍼를 다시 빌드하는 중이며 버퍼가 다시 빌드를 완료할 때까지 스트림에 샘플을 보고하지 않을 것임을 MediaElement에 알립니다. ReportGetSampleProgress 호출 또한 MediaElement가 렌더링이 일시 중지되는 버퍼링 상태로 전환하도록 허용합니다. 개발자는 ReportGetSampleProgress을 반복적으로 호출하여 MediaElement.BufferingProgress에서 반환되는 다운로드 진행률을 업데이트할 수 있습니다.

  2. 요청된 스트림의 스트림 끝 샘플 또는 미디어 샘플을 사용하여 ReportGetSampleCompleted을 호출합니다. 스트림에서 ReportGetSampleCompleted을 호출하면 해당 미디어에 대해 버퍼링이 완료되었음을 나타내고 버퍼링 상태가 될 수 있는 권한이 취소됩니다.

  3. 미디어가 실패했음을 나타내려면 ErrorOccurred을 호출하거나 예외를 발생시킵니다.

  4. 이처럼 즉각적인 동작은 수행하지 않지만 결과적으로 위의 세 가지 방법 중 하나로 응답합니다.

Windows Phone은 한 번에 하나의 MediaStreamSource 콜백만 호출합니다. 따라서 개발자는 신속하게 GetSampleAsync을 끝내야 하며 이에 실패할 경우 Windows Phone에서 다른 스트림의 샘플을 요청하거나 상태 변경을 보고하지 못하게 될 수 있습니다.

Windows Phone은 지정된 스트림의 버퍼가 가득 찰 때까지 다른 GetSampleAsync을 사용하여 ReportGetSampleCompleted에 응답합니다. Windows Phone은 다른 스트림의 샘플을 요청하기 전에 한 스트림의 샘플을 여러 개 요청할 수 있습니다.

버전 메모

Windows Phone

은 개발자가 ReportGetSampleProgress을 호출한 후에도 다른 스트림에 대해 GetSampleAsync을 호출하여 MediaStreamSource가 버퍼를 다시 빌드하고 있음을 나타낼 수 있습니다. 이 시나리오에서 개발자는 모든 버퍼링이 완료될 때까지 ReportGetSampleCompleted을 호출하지 않도록 주의해야 합니다.

Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

표시:
© 2014 Microsoft