Freigeben über


MediaStreamSource Klasse

Definition

Stellt eine Medienquelle dar, die Medienbeispiele direkt an die Medienpipeline übermittelt.

public ref class MediaStreamSource sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.Media.Core.IMediaStreamSourceFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [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 MediaStreamSource 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(Windows.Media.Core.IMediaStreamSourceFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class MediaStreamSource final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Media.Core.IMediaStreamSourceFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[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 MediaStreamSource
[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(typeof(Windows.Media.Core.IMediaStreamSourceFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class MediaStreamSource
function MediaStreamSource(descriptor, descriptor2)
Public NotInheritable Class MediaStreamSource
Vererbung
Object Platform::Object IInspectable MediaStreamSource
Attribute
Implementiert

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Hinweise

Im MediaStreamSource-Beispiel finden Sie ein Beispiel für die Verwendung der Medienstreamquelle in einer UWP-App.

MediaStreamSource ist eine neue generische Medienquelle für UWP-Apps, die in Windows 8.1 eingeführt wird. Mit MediaStreamSource können Apps komprimierte oder unkomprimierte Audio- und Videobeispiele zur Wiedergabe, Transcodierung und Streaming an die Medienpipeline senden. Medienbeispiele können dynamisch von der App generiert oder aus einem Stream oder dateien entfernt werden. Dank dieser Flexibilität können Apps die Plattformunterstützung für neue Medienformate einfacher erweitern oder komplexe Probleme wie adaptives Streaming lösen.

Die MediaStreamSourceAPI ist der Gleichnamigen Microsoft SilverlightAPI sehr ähnlich.

MediaStreamSource kann mit Audio- und Videoobjekten in Windows-Apps mit JavaScript, MediaElement-Objekten in UWP-Apps mit C++, C# oder Visual Basic und mediaTranscoder verwendet werden.

Das MediaStreamSource-Beispiel veranschaulicht die Verwendung von MediaStreamSource. Im Folgenden finden Sie einige der Standard MediaStreamSource-API. Die Reihenfolge beschreibt den grundlegenden Ablauf der Funktionsweise von MediaStreamSource. Sie werden feststellen, dass MediaStreamSource Anforderungsobjekte über Ereignisargumente an die App sendet. Diese Anforderungsobjekte ermöglichen es der App, mit mediaStreamSource zu interagieren und Daten an diese zurück zu übergeben.

API BESCHREIBUNG
Mediastreamsource Stellt eine Medienquelle dar, die Medienbeispiele direkt an die Medienpipeline übermittelt. MediaStreamSource verwendet MediaStreamSample-Objekte , die von der Anwendung bereitgestellt werden.
MediaStreamSample Stellt ein Medienbeispiel dar, das von mediaStreamSource verwendet wird.
MediaStreamSource.Starting (Ereignis) MediaStreamSource verwendet dieses Ereignis, um die App zu benachrichtigen, dass sie mit der Verarbeitung von Mediendaten beginnen kann.
MediaStreamSourceStartingRequest Stellt eine Anforderung von MediaStreamSource dar, dass sie bereit ist, mit der Verarbeitung von Mediendaten zu beginnen. Apps sollten so schnell wie möglich auf diese Anforderung antworten, indem sie SetActualStartPosition für die Anforderung aufrufen. Wenn eine App die Verarbeitung von Daten von MediaStreamSource verzögern muss, kann sie eine asynchrone Verzögerung von MediaStreamSourceStartingRequest.GetDeferral erhalten. Wenn die App für den Start von MediaStreamSource bereit ist, ruft sie Complete für das Deferral-Objekt auf. Auf die startende Anforderung wird über die MediaStreamSourceStartingEventArgs zugegriffen, die an den MediaStreamSource.Starting-Ereignishandler übergeben werden.
MediaStreamSource.SampleRequested (Ereignis) MediaStreamSource verwendet dieses Ereignis, um die App zu benachrichtigen, dass sie für ein MediaStreamSample bereit ist. Apps müssen einen Handler für dieses Ereignis registrieren.
MediaStreamSourceSampleRequest Stellt eine Anforderung von MediaStreamSource für ein neues Medienbeispiel dar. Wenn Sie die Sample-Eigenschaft auf die neue MediaStreamSample-Eigenschaft festlegen, wird die MediaStreamSource ausgelöst, um das Medienbeispiel abzurufen und die Verarbeitung der Mediendaten fortzusetzen. Apps sollten so schnell wie möglich auf diese Anforderung antworten. Wenn eine App Zeit vor dem Senden von MediaStreamSample benötigt, kann sie eine asynchrone Verzögerung von MediaStreamSourceSampleRequest.GetDeferral erhalten. Wenn die App mit dem Zurückstellen abgeschlossen ist, ruft sie Complete für das Deferral-Objekt auf. Der Zugriff auf die Beispielanforderung erfolgt über die MediaStreamSourceSampleRequestedEventArgs , die an den MediaStreamSource.SampleRequest-Ereignishandler übergeben werden. Die App gibt an, dass sie das Ende des Streams erreicht hat, indem sie auf eine MediaStreamSourceSampleRequest antwortet, ohne ein MediaStreamSample bereitzustellen, oder indem sie die MediaStreamSourceSampleRequest.Sample-Eigenschaftnull zuweisen.
MediaStreamSource.Closed (Ereignis) MediaStreamSource verwendet dieses Ereignis, um die App darüber zu informieren, dass sie heruntergefahren wurde.
MediaStreamSourceClosedRequest Stellt eine Anforderung aus der MediaStreamSource dar, die geschlossen wurde. Auf die Close-Anforderung wird über die MediaStreamSourceClosedEventArgs zugegriffen, die an den MediaStreamSource.Closed-Ereignishandler übergeben werden.
MediaElement.SetMediaStreamSource Legt die Quelle des MediaElement auf eine MediaStreamSource fest.

Versionsverlauf

Windows-Version SDK-Version Mehrwert
1607 14393 SampleRendered
1703 15063 MaxSupportedPlaybackRate
1709 16299 IsLive

Konstruktoren

MediaStreamSource(IMediaStreamDescriptor)

Erstellt eine instance von MediaStreamSource aus dem angegebenen IMediaStreamDescriptor.

MediaStreamSource(IMediaStreamDescriptor, IMediaStreamDescriptor)

Erstellt eine instance von MediaStreamSource aus zwei IMediaStreamDescriptor-Objekten.

Eigenschaften

BufferTime

Ruft die Datenmenge ab, die von MediaStreamSource gepuffert wird, oder legt diese fest.

CanSeek

Ruft ab oder legt fest, ob die Anwendung das Ändern ihrer Position in der Medienzeitlinie unterstützt oder nicht.

Duration

Ruft die Dauer der Medienzeitlinie ab oder legt sie fest.

IsLive

Ruft einen Wert ab, der angibt, ob der verarbeitete Medieninhalt live ist, oder legt einen Wert fest.

MaxSupportedPlaybackRate

Ruft die maximal unterstützte Wiedergaberate für MediaStreamSource ab.

MediaProtectionManager

Ruft den MediaProtectionManager ab, der zum Schutz der Medien verwendet wird, oder legt diesen fest.

MusicProperties

Ruft die Musikeigenschaften ab, die für musikbezogene Metadaten verwendet werden.

Thumbnail

Ruft die Miniaturansicht ab, die ein Verweis auf einen Stream für ein Videominiaturbild oder ein Musikalbumbild ist, oder legt diese fest.

VideoProperties

Ruft die Videoeigenschaften ab, die für videobezogene Metadaten verwendet werden.

Methoden

AddProtectionKey(IMediaStreamDescriptor, Byte[], Byte[])

Fügt einen DRM-Schutzschlüssel (Digital Rights Management) hinzu, der vom MediaProtectionManager zum Verschlüsseln und Entschlüsseln des angegebenen Datenstroms verwendet wird.

AddStreamDescriptor(IMediaStreamDescriptor)

Fügt der MediaStreamSource einen neuen Streamdeskriptor hinzu.

NotifyError(MediaStreamSourceErrorStatus)

Benachrichtigt die MediaStreamSource , dass ein Fehler aufgetreten ist, der die Anwendung daran hindert, weiterhin Daten an MediaStreamSource zu übermitteln.

SetBufferedRange(TimeSpan, TimeSpan)

Legt den Datenbereich fest, den die Anwendung derzeit puffert.

Ereignisse

Closed

Tritt auf, wenn mediaStreamSource heruntergefahren wird.

Paused

Tritt auf, wenn die MediaStreamSource angehalten ist und die Anforderung von MediaStreamSample-Objekten für einen nicht angegebenen Zeitraum anhält. Es wird jedoch erwartet, dass die Anforderung von MediaStreamSample-Objekten von der aktuellen Position fortgesetzt wird.

SampleRendered

Tritt auf, wenn ein Beispiel aus der MediaStreamSource gerendert wird.

SampleRequested

Tritt auf, wenn mediaStreamSource einen MediaStreamSample für einen angegebenen Stream angibt.

Starting

Tritt auf, wenn mediaStreamSource bereit ist, mediaStreamSample-Objekte anzufordern. Das -Ereignis kann eine Position in der Medienzeitzeile angeben, von der aus das erste MediaStreamSample übermittelt werden soll.

SwitchStreamsRequested

Tritt auf, wenn MediaStreamSource die Anforderung von MediaStreamSample-Objekten für einen bestimmten Stream beendet und stattdessen mediaStreamSample-Objekte aus einem anderen Stream anfordert.

Gilt für:

Weitere Informationen