이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

MediaStreamSource.ReportGetSampleCompleted 메서드

2013-12-13

개발자는 GetSampleAsync에 대한 응답으로 이 메서드를 호출하여 렌더링할 다음 미디어 샘플을 MediaElement에 제공하거나 스트림 끝을 보고합니다.

Namespace:  System.Windows.Media
어셈블리:  System.Windows(System.Windows.dll)
protected void ReportGetSampleCompleted(
	MediaStreamSample mediaStreamSample
)

매개 변수

mediaStreamSample
형식: System.Windows.Media.MediaStreamSample
이 샘플을 가져온 미디어 스트림에 대한 설명입니다. null Stream 속성을 갖는 MediaStreamSample 개체를 전달하면 스트림이 종료되었다는 의미입니다.
예외조건
ArgumentException

MediaStreamSource가 보호되는 재생용으로 설정되지 않고 샘플에 DRMAlgorithmID가 설정된 경우. 이때 DRMAlgorithmID가 "보호되지 않음"과 같지 않으면 모든 경우에 예외가 발생합니다.

ArgumentException

MediaStreamSample가 보호되는 재생용으로 설정되지 않고 샘플에 DRMKeyIdentifier가 설정된 경우. 이때 GuidGuid.Empty와 같지 않으면 모든 경우에 예외가 발생합니다.

ArgumentException

입력 MediaStreamSample 매개 변수에 DRMKeyIdentifier 특성의 값이 Guid.Empty로 설정된 경우

또는 다음 조건에 해당하는 경우

  • DRMKeyIdentifier가 값으로 설정된 경우(Guid.Empty로 설정되지 않음)

  • MediaStreamSource가 스트림 라이선스용으로 설정된 경우

이 메서드는 ErrorOccurred가 대신 호출되지 않은 경우 GetSampleAsync에 대한 요청 후에 호출되어야 합니다. 이 메서드보다 먼저 ReportGetSampleProgress를 호출하여 샘플이 준비되지 않았음을 나타낼 수 있지만 궁극적으로 이 메서드를 호출해야 합니다.

MediaStreamSample에 올바른 Stream 개체가 있으면 Windows Phone에서는 지정된 오프셋에 대한 스트림의 포인터를 찾습니다. 이 메서드가 반환되면 지정된 바이트 수를 읽고 스트림의 현재 위치를 해당 바이트만큼 뒤로 이동하게 됩니다.

스트림의 끝을 보고하려면 null 스트림을 가진 MediaStreamSample 개체를 생성하고 이를 ReportGetSampleCompleted에 전달합니다. 스트림의 끝을 보고하면 MediaElement가 해당 스트림에 대한 샘플을 추가로 사용할 수 없음을 알게 됩니다. MediaElement는 모든 스트림에 대해 가능한 모든 스트림을 렌더링한 후 자동으로 Paused 또는 Stopped 상태로 전환하고 MediaEnded 이벤트를 발생시킵니다.

상태 전환: 스트림에서 ReportGetSampleCompleted을 호출하면 해당 미디어에 대해 버퍼링이 완료되었음을 나타내고 버퍼링 상태가 될 수 있는 권한이 취소됩니다. MediaElement가 버퍼링 상태인 경우 이 메서드를 호출하면 다시 재생 상태로 변환됩니다.

ReportGetSampleCompleted이 반환되면 내부 동영상 코덱은 전달된 MediaStreamSample에서 가리킨 메모리에 대한 소유권을 더 이상 갖지 않습니다. 구현에 따라, 이제 해당 메모리는 호출이 수행된 후 어느 시점에 재사용 또는 삭제가 가능한 것으로 간주됩니다.

Windows Phone OS

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

Windows Phone

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.
표시:
© 2014 Microsoft. All rights reserved.