AppCaptureMetadataWriter Kelas

Definisi

Memungkinkan aplikasi untuk menyimpan metadata yang akan disisipkan sistem ke dalam file video yang diambil atau menyiarkan aliran konten aplikasi.

public ref class AppCaptureMetadataWriter sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Media.Capture.AppCaptureMetadataContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Media.Capture.AppCaptureMetadataContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppCaptureMetadataWriter final : IClosable
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Media.Capture.AppCaptureMetadataContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Media.Capture.AppCaptureMetadataContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppCaptureMetadataWriter : System.IDisposable
function AppCaptureMetadataWriter()
Public NotInheritable Class AppCaptureMetadataWriter
Implements IDisposable
Warisan
Object Platform::Object IInspectable AppCaptureMetadataWriter
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows Desktop Extension SDK (diperkenalkan dalam 10.0.16299.0)
API contract
Windows.Media.Capture.AppCaptureMetadataContract (diperkenalkan dalam v1.0)

Keterangan

Saat Anda membuat instans AppCaptureMetadataWriter, sistem menginisialisasi instans unik untuk aplikasi Anda dan kemudian siap bagi Anda untuk menulis item metadata. Meskipun hanya satu aplikasi yang dapat menangkap atau menyiarkan pada satu waktu, sistem dapat mengumpulkan metadata untuk beberapa aplikasi secara bersamaan. AppCaptureMetadataWriter tidak memulai atau mengubah status pengambilan atau siaran saat ini. Anda harus membuat dan menahan instans AppCaptureMetadataWriter selama Anda ingin sistem menyimpan metadata dalam memori. Ketika instans AppCaptureMetadataWriter dirilis, semua metadata yang terkait dengan instans AppCaptureMetadataWriter juga dirilis.

Saat Anda menulis item metadata, sistem mengaitkan tanda waktu dengan item sehingga secara otomatis disertakan dengan rentang waktu yang diambil atau disiarkan yang diterapkannya.

Saat ini, dua jenis item metadata yang berbeda didukung AppCaptureMetadataWriter: peristiwa dan status. Peristiwa metadata dikaitkan dengan satu titik waktu dan biasanya dikaitkan dengan tindakan seketika, seperti pemain dalam game yang mencetak poin. Status adalah item metadata yang berlaku di seluruh jendela waktu. Contohnya adalah status yang berisi nama peta permainan tempat pemain saat ini berada. Setelah nilai status ditetapkan, sistem mempertahankan nilai tersebut untuk status hingga diatur ke nilai yang berbeda, hingga dihentikan dengan panggilan StopState, atau sampai semua status diakhiri dengan panggilan ke StopAllStates. Peristiwa dan status direpresentasikan sebagai pasangan kunci/nilai di mana kuncinya adalah status atau nama peristiwa dan nilainya adalah bilangan bulat, ganda, atau nilai string.

Saat pengambilan aplikasi historis diaktifkan, sistem mengakumulasi metadata yang ditulis dengan AppCaptureMetadataWriter bahkan ketika tidak secara aktif menangkap atau menyiarkan. Ketika, misalnya, tangkapan 30 detik sebelumnya ditulis ke file video di disk, metadata yang terkait dengan jendela waktu yang direkam disertakan dalam file. Sistem memberlakukan batasan pada ruang penyimpanan yang dialokasikan per aplikasi untuk menyimpan akumulasi metadata. Anda bisa mendapatkan ruang penyimpanan yang saat ini tersedia dengan memeriksa properti RemainingStorageBytesAvailable .

Ketika semua ruang yang dialokasikan telah diisi, sistem akan mulai membersihkan metadata menggunakan nilai AppCaptureMetadataPriority , ditentukan ketika item metadata ditulis, dan usia setiap item untuk menghapus data terlama dan paling tidak penting terlebih dahulu. Ketika ini terjadi, peristiwa MetadataPurged dinaikkan. Menanggapi peristiwa ini, Anda dapat memilih untuk mengurangi jumlah metadata yang ditulis aplikasi Anda, tetapi ini tidak diperlukan.

Item metadata diklasifikasikan sebagai Penting atau Informasi seperti yang ditentukan dengan enumerasi AppCaptureMetadataPriority . Prioritas penting berarti metadata akan diunggah ke layanan Xbox Live. Metadata akan digunakan untuk membantu pengguna mencari klip atau membuat anotasi siaran, antara lain. Metadata Penting dan Informasi disematkan dalam file .mp4 yang dihasilkan, sehingga Anda tidak boleh menyertakan informasi pengguna privat apa pun dalam metadata.

API ini dapat melemparkan kesalahan jika layanan latar belakang telah dimatikan karena batas waktu diam.

Konstruktor

AppCaptureMetadataWriter()

Menginisialisasi instans baru kelas AppCaptureMetadataWriter .

Properti

RemainingStorageBytesAvailable

Mendapatkan jumlah byte yang tersisa di ruang penyimpanan yang dialokasikan oleh sistem untuk item metadata pengambilan aplikasi.

Metode

AddDoubleEvent(String, Double, AppCaptureMetadataPriority)

Menambahkan peristiwa metadata ganda baru.

AddInt32Event(String, Int32, AppCaptureMetadataPriority)

Menambahkan peristiwa metadata bilangan bulat baru.

AddStringEvent(String, String, AppCaptureMetadataPriority)

Menambahkan peristiwa metadata string baru.

Close()

Membuang objek dan sumber daya terkait.

Dispose()

Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola.

StartDoubleState(String, Double, AppCaptureMetadataPriority)

Menambahkan status metadata ganda baru.

StartInt32State(String, Int32, AppCaptureMetadataPriority)

Menambahkan status metadata ganda baru.

StartStringState(String, String, AppCaptureMetadataPriority)

Menambahkan status metadata ganda baru.

StopAllStates()

Menghentikan semua status metadata.

StopState(String)

Menghentikan status metadata dengan pengidentifikasi yang ditentukan.

Acara

MetadataPurged

Terjadi ketika sistem menghapus menyeluruh item metadata yang disimpan sebelumnya.

Berlaku untuk