MediaStreamSource Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili sumber media yang mengirimkan sampel media langsung ke alur media.
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
- Warisan
- Atribut
- Penerapan
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Keterangan
Lihat Sampel MediaStreamSource untuk contoh penggunaan Sumber Aliran Media di aplikasi UWP.
MediaStreamSource adalah sumber media generik baru untuk aplikasi UWP yang diperkenalkan di Windows 8.1. MediaStreamSource memungkinkan aplikasi mengirim sampel audio dan video terkompresi atau tidak terkompresi ke alur media untuk pemutaran, transkode, dan streaming. Sampel media dapat dihasilkan secara dinamis oleh aplikasi, atau dide-multipleks dari aliran atau file. Fleksibilitas ini memungkinkan aplikasi untuk lebih mudah memperluas dukungan platform untuk format media baru atau memecahkan masalah kompleks, seperti streaming adaptif.
MediaStreamSourceAPI sangat mirip dengan Microsoft SilverlightAPI dengan nama yang sama.
MediaStreamSource dapat digunakan dengan objek audio dan video di aplikasi Windows menggunakan JavaScript, objek MediaElement di aplikasi UWP menggunakan C++, C#, atau Visual Basic, dan MediaTranscoder.
Sampel MediaStreamSource menunjukkan cara menggunakan MediaStreamSource. Berikut adalah beberapa API MediaStreamSource utama. Urutan menguraikan alur dasar bagaimana MediaStreamSource berfungsi. Anda akan melihat bahwa MediaStreamSource mengirim objek permintaan ke aplikasi melalui argumen peristiwa. Objek permintaan ini memungkinkan aplikasi berinteraksi dengan MediaStreamSource dan meneruskan data kembali ke dalamnya.
API | Deskripsi |
---|---|
MediaStreamSource | Mewakili sumber media yang mengirimkan sampel media langsung ke alur media. MediaStreamSource menggunakan objek MediaStreamSample yang disediakan oleh aplikasi. |
MediaStreamSample | Mewakili sampel media yang digunakan oleh MediaStreamSource. |
MediaStreamSource.Starting (kejadian) | MediaStreamSource menggunakan kejadian ini untuk memberi tahu aplikasi bahwa siap untuk mulai memproses data media. |
MediaStreamSourceStartingRequest | Mewakili permintaan dari MediaStreamSource bahwa siap untuk mulai memproses data media. Aplikasi harus membalas permintaan ini sesegera mungkin dengan memanggil SetActualStartPosition pada permintaan. Jika aplikasi perlu menunda MediaStreamSource dari pemrosesan data, aplikasi bisa mendapatkan deferral asinkron dari MediaStreamSourceStartingRequest.GetDeferral. Ketika aplikasi siap untuk MediaStreamSource dimulai, aplikasi memanggil Selesai pada objek deferral. Permintaan awal diakses melalui MediaStreamSourceStartingEventArgs yang diteruskan ke penanganan aktivitas MediaStreamSource.Starting . |
MediaStreamSource.SampleRequested (peristiwa) | MediaStreamSource menggunakan kejadian ini untuk memberi tahu aplikasi bahwa siap untuk MediaStreamSample. Aplikasi diperlukan untuk mendaftarkan handler untuk kejadian ini. |
MediaStreamSourceSampleRequest | Mewakili permintaan dari MediaStreamSource untuk sampel media baru. Mengatur properti Sampel ke MediaStreamSample baru memicu MediaStreamSource untuk mengambil sampel media dan melanjutkan pemrosesan data media. Aplikasi harus membalas sesegera mungkin untuk permintaan ini. Jika aplikasi membutuhkan waktu sebelum mengirim MediaStreamSample, aplikasi bisa mendapatkan deferral asinkron dari MediaStreamSourceSampleRequest.GetDeferral. Setelah aplikasi selesai dengan penangguhkan, aplikasi memanggil Selesai pada objek penangguhkan. Permintaan sampel diakses melalui MediaStreamSourceSampleRequestedEventArgs yang diteruskan ke penanganan aktivitas MediaStreamSource.SampleRequest . Aplikasi menunjukkan telah mencapai akhir aliran dengan menanggapi MediaStreamSourceSampleRequest tanpa menyediakan MediaStreamSample, atau dengan menetapkan properti MediaStreamceSampleRequest.Sample ke null. |
MediaStreamSource.Closed (kejadian) | MediaStreamSource menggunakan kejadian ini untuk memberi tahu aplikasi bahwa aplikasi telah dimatikan. |
MediaStreamSourceClosedRequest | Mewakili permintaan dari MediaStreamSource yang telah ditutup. Permintaan penutupan diakses melalui MediaStreamSourceClosedEventArgs yang diteruskan ke penanganan aktivitas MediaStreamSource.Closed . |
MediaElement.SetMediaStreamSource | Mengatur sumber MediaElement ke MediaStreamSource. |
Riwayat versi
Versi Windows | Versi SDK | Nilai ditambahkan |
---|---|---|
1607 | 14393 | SampleRendered |
1703 | 15063 | MaxSupportedPlaybackRate |
1709 | 16299 | IsLive |
Konstruktor
MediaStreamSource(IMediaStreamDescriptor) |
Membuat instans MediaStreamSource dari IMediaStreamDescriptor yang ditentukan. |
MediaStreamSource(IMediaStreamDescriptor, IMediaStreamDescriptor) |
Membuat instans MediaStreamSource dari dua objek IMediaStreamDescriptor . |
Properti
BufferTime |
Mendapatkan atau mengatur jumlah data yang di-buffer oleh MediaStreamSource. |
CanSeek |
Mendapatkan atau mengatur apakah aplikasi mendukung perubahan posisinya di garis waktu media atau tidak. |
Duration |
Mendapatkan atau mengatur durasi garis waktu media. |
IsLive |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah konten media yang sedang diproses ditayangkan. |
MaxSupportedPlaybackRate |
Mendapatkan laju pemutaran yang didukung maxiumum untuk MediaStreamSource. |
MediaProtectionManager |
Mendapatkan atau mengatur Digital Rights Management (DRM)MediaProtectionManager yang digunakan untuk melindungi media. |
MusicProperties |
Mendapatkan properti musik yang digunakan untuk metadata terkait musik. |
Thumbnail |
Mendapatkan atau mengatur gambar mini yang merupakan referensi ke streaming untuk gambar mini video atau seni album musik. |
VideoProperties |
Mendapatkan properti video yang digunakan untuk metadata terkait video. |
Metode
AddProtectionKey(IMediaStreamDescriptor, Byte[], Byte[]) |
Menambahkan kunci perlindungan Digital Rights Management (DRM) yang digunakan oleh MediaProtectionManager untuk mengenkripsi dan mendekripsi aliran yang ditentukan. |
AddStreamDescriptor(IMediaStreamDescriptor) |
Menambahkan deskriptor aliran baru ke MediaStreamSource. |
NotifyError(MediaStreamSourceErrorStatus) |
Memberi tahu MediaStreamSource bahwa terjadi kesalahan yang mencegah aplikasi terus mengirimkan data ke MediaStreamSource. |
SetBufferedRange(TimeSpan, TimeSpan) |
Mengatur rentang data yang saat ini di-buffer oleh aplikasi. |
Acara
Closed |
Terjadi ketika MediaStreamSource dimatikan. |
Paused |
Terjadi ketika MediaStreamSource dijeda dan berhenti meminta objek MediaStreamSample untuk jangka waktu yang tidak ditentukan, tetapi diharapkan untuk melanjutkan permintaan objek MediaStreamSample dari posisi saat ini. |
SampleRendered |
Terjadi ketika sampel dari MediaStreamSource dirender. |
SampleRequested |
Terjadi ketika MediaStreamSource meminta MediaStreamSample untuk aliran tertentu. |
Starting |
Terjadi ketika MediaStreamSource siap untuk mulai meminta objek MediaStreamSample . Peristiwa dapat menentukan posisi di garis waktu media tempat MediaStreamSample pertama harus dikirimkan. |
SwitchStreamsRequested |
Terjadi ketika MediaStreamSource akan berhenti meminta objek MediaStreamSample untuk aliran tertentu dan akan mulai meminta objek MediaStreamSample dari aliran yang berbeda sebagai gantinya. |