정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

MediaStreamSource 클래스

2013-12-13

MediaStreamSource는 미디어 파이프라인에 직접 미디어 샘플을 전달하며 MediaElement가 Windows Phone에서 기본적으로 지원되지 않는 컨테이너 형식을 사용할 수 있도록 하는 데 주로 사용됩니다.

System.Object
  System.Windows.Media.MediaStreamSource

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

public abstract class MediaStreamSource

MediaStreamSource 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Protected 메서드MediaStreamSourceMediaStreamSource 클래스의 새 인스턴스를 초기화합니다.
맨 위

  이름설명
Protected 속성AudioBufferLength오디오 버퍼의 길이를 가져오거나 설정합니다. 이 속성의 값은 Windows Phone OS 7.1 및 Windows Phone OS 8.0에서 무시됩니다.
Public 속성MaxDecryptorCountDecryptor 버퍼에 허용되는 최대 decryptor 수를 가져옵니다.
맨 위

  이름설명
Protected 메서드BeginDrmSetupDecryptor(Byte[], Guid)새 decryptor를 만드는 과정을 시작합니다.
Protected 메서드BeginDrmSetupDecryptor(Byte[], Guid, Object)새 decryptor를 만드는 과정을 시작합니다.
Protected 메서드CloseMediaMediaElement는 정상적으로 종료될 때 또는 오류의 결과로 이 메서드를 호출할 수 있습니다. 이를 통해 개발자는 MediaStreamSource에 대해 필요한 모든 정리 작업을 수행할 수 있습니다.
Public 메서드Equals(Object)지정한 Object가 현재 Object와 같은지 확인합니다. (Object에서 상속됨)
Protected 메서드ErrorOccurred개발자는 MediaStreamSource에서 복구할 수 없는 오류가 발생할 때마다 이 메서드를 호출합니다. 이렇게 하면 MediaFailed 이벤트가 발생됩니다.
Protected 메서드Finalize가비지 수집기에서 Object를 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Protected 메서드GetDiagnosticAsyncMediaElement는 이 메서드를 호출하여 MediaStreamSource에 대한 정보를 요청할 수 있습니다. 개발자는 ReportGetDiagnosticCompleted를 호출하여 이 메서드에 응답합니다.
Public 메서드GetHashCode특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨)
Protected 메서드GetSampleAsyncMediaElement는 이 메서드를 호출하여 MediaStreamSource에 미디어 파이프라인에 대해 요청된 스트림 형식의 다음 MediaStreamSample을 준비하도록 요청합니다. 개발자는 ReportGetSampleCompleted 또는 ReportGetSampleProgress를 호출하여 이 메서드에 응답할 수 있습니다.
Public 메서드GetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Protected 메서드MemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Protected 메서드OpenMediaAsyncMediaElement는 이 메서드를 호출하여 MediaStreamSource에 미디어를 열도록 요청합니다.
Protected 메서드ReportGetDiagnosticCompleted개발자는 GetDiagnosticAsync에 대한 응답으로 이 메서드를 호출하여 요청된 진단 정보를 MediaElement에 전달합니다.
Protected 메서드ReportGetSampleCompleted개발자는 GetSampleAsync에 대한 응답으로 이 메서드를 호출하여 렌더링할 다음 미디어 샘플을 MediaElement에 제공하거나 스트림 끝을 보고합니다.
Protected 메서드ReportGetSampleProgress개발자는 GetSampleAsync에 대한 응답으로 이 메서드를 호출하여 MediaStreamSource가 버퍼를 다시 채워야 하므로 지금 당장은 샘플을 반환하지 않을 것임을 MediaElement에 알리고 MediaElementBuffering 상태로 전환될 수 있도록 합니다.
Protected 메서드ReportOpenMediaCompleted개발자는 OpenMediaAsync에 대한 응답으로 이 메서드를 호출하여 MediaStreamSource가 열려 있었음을 MediaElement에 알리고 포함하는 스트림에 대한 정보를 제공합니다.
Protected 메서드ReportSeekCompleted개발자는 SeekAsync에 대한 응답으로 이 메서드를 호출하여 MediaStreamSource가 요청된 위치 변경을 완료했으며 이후에 ReportGetSampleCompleted를 호출하면 미디어의 해당 지점에서 샘플이 반환될 것임을 MediaElement에 알립니다.
Protected 메서드ReportSwitchMediaStreamCompleted 개발자는 SwitchMediaStreamAsync에 대한 응답으로 이 메서드를 호출하여 MediaStreamSource가 요청된 스트림 전환을 완료했으며 반환되는 샘플이 이제 원래 스트림이 아닌 요청된 스트림에서 제공될 것임을 MediaElement에 알립니다. 참고: 이 메서드는 적응 스트리밍이 아니라 다중 오디오 스트림의 경우(언어 추적)에 사용됩니다.
Protected 메서드SeekAsync MediaElement는 이 메서드를 호출하여 MediaStreamSource에 지정된 기간 이전에 임의로 액세스 가능한 가장 가까운 지점을 찾도록 요청합니다. 개발자는 ReportSeekCompleted를 호출하고 ReportGetSampleCompleted에 대한 후속 호출이 미디어의 해당 지점에서 샘플을 반환하도록 하여 이 메서드에 응답합니다.
Protected 메서드SwitchMediaStreamAsyncMediaElement에서 스트림 전환이 요청될 때 호출됩니다.
Public 메서드ToString현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)
맨 위

  이름설명
Protected 이벤트DrmSetupDecryptorCompleted설치가 성공했는지 또는 실패했는지에 관계없이, BeginDrmSetupDecryptor 최초 호출이 예외를 발생하지 않는 경우 DrmSetupDecryptorCompleted 이벤트가 완료되면 발생합니다.
맨 위

Windows Phone의 일부인 MediaStreamSource는 개발자에게 인코딩된 기본 오디오 및 동영상 스트림을 조작하는 API에 직접 액세스할 수 있도록 하여 미디어 파일 컨테이너로 인한 영향을 제거합니다.

컨테이너를 제거하려는 이유 중 하나는 개발자가 기본 스트림에 액세스할 수 있으면 다른 솔루션에서는 아직까지 제공하지 않는 시나리오를 구현할 수 있기 때문입니다.

또 다른 이유는 개발자가 기본 스트림에 액세스할 수 있으면 Windows Phone에서 구현하지 않은 시나리오를 구현할 수 있기 때문입니다. 예를 들어 RTSP:T 프로토콜 지원, SHOUTcast 프로토콜 지원, 원활한 오디오 반복, ID3 v1 및 ID3 v2 메타데이터 지원 등 다양한 시나리오를 구현할 수 있습니다.

MediaStreamSource 샘플MediaStreamSource를 사용하여 시작합니다.

버전 메모

Windows Phone

Windows Phone에서 오디오와 동영상을 모두 포함하도록 구현된 미디어 원본을 스트리밍할 때 스트림 중 하나가 누락되면 모든 스트림의 재생이 중지됩니다. 이 경우 재생을 계속하려면 누락된 스트림의 모의 프레임을 제공해야 합니다.

Windows Phone OS

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

Windows Phone

이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 모든 인스턴스 멤버는 스레드로부터 안전하지 않을 수 있습니다.

표시: