Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Encoder video Media Foundation H.265 adalah Transformasi Yayasan Media yang mendukung pengodean konten ke dalam format H.265/HEVC. Encoder mendukung profil berikut:
- Profil Utama
Encoder video H.265 mengekspos antarmuka berikut:
Jenis Input
Jenis media input harus memiliki salah satu subjenis berikut:
- MFVideoFormat_IYUV
- MFVideoFormat_NV12
- MFVideoFormat_YUY2
- MFVideoFormat_YV12
Untuk informasi selengkapnya tentang subjenis ini, lihat GUID Subjenis Video.
Jenis output harus diatur sebelum jenis input. Hingga jenis output diatur, metode IMFTransform::SetInputType encoder mengembalikan MF_E_TRANSFORM_TYPE_NOT_SET.
Jenis output
Encoder mendukung subjenis output tunggal:
- MFVideoFormat_H265
Atur atribut berikut pada jenis media output.
Atribut | Deskripsi |
---|---|
MF_MT_MAJOR_TYPE | Jenis utama. Pasti MFMediaType_Video. |
MF_MT_SUBTYPE | Subjenis video. Pasti MFVideoFormat_HEVC. |
MF_MT_AVG_BITRATE | Laju bit rata-rata yang dikodekan, dalam bit per detik. Harus lebih besar dari nol. |
MF_MT_FRAME_RATE | Kecepatan bingkai. |
MF_MT_FRAME_SIZE | Ukuran bingkai. |
MF_MT_INTERLACE_MODE | Mode interlace. |
MF_MT_VIDEO_PROFILE | Profil pengodean H.265. Nilai yang didukung adalah:
|
MF_MT_MPEG2_LEVEL | Menentukan tingkat video berkode. Untuk informasi selengkapnya tentang batasan profil dan tingkat, lihat Lampiran A DARI ITU-T H.265. |
MF_MT_PIXEL_ASPECT_RATIO | Pilihan. Menentukan rasio aspek piksel. Nilai defaultnya adalah 1:1. |
Setelah jenis output diatur, encoder video memperbarui jenis dengan menambahkan atribut MF_MT_MPEG_SEQUENCE_HEADER . Atribut ini berisi header urutan.
Metode IMFTransform yang didukung
Metode antarmuka IMFTransform berikut didukung untuk encoder H.265/HEVC:
- GetAttributes
- GetInputAvailableType
- GetInputCurrentType
- GetInputStatus
- GetInputStreamInfo
- GetOutputAvailableType
- GetOutputCurrentType
- GetOutputStatus
- GetOutputStreamInfo
- GetStreamCount
- GetStreamLimits
- ProcessEvent
- ProcessMessage
- ProcessInput
- ProcessOutput
- SetInputType
- SetOutputType
- SetOutputBounds
Semua metode IMFTransform lainnya akan mengembalikan kesalahan E_NOTIMPL.
Metode ICodecAPI yang didukung
Metode antarmuka ICodecAPI berikut didukung untuk encoder H.265/HEVC:
Semua metode ICodecAPI lainnya akan mengembalikan kesalahan E_NOTIMPL.
Properti Codec
Encoder H.265 mengimplementasikan antarmuka ICodecAPI untuk mengatur parameter pengodean. Ini mendukung properti berikut.
Untuk persyaratan codec untuk sertifikasi encoder HCK, lihat bagian Encoder Perangkat Keras Bersertifikat di bawah ini.
Properti | Deskripsi |
---|---|
CODECAPI_AVEncCommonRateControlMode | Mengatur mode kontrol laju. Mode yang didukung adalah:
Ini adalah nilai VT_UI4. |
CODECAPI_AVEncCommonMeanBitRate | Mengatur laju bit rata-rata untuk aliran bit yang dikodekan, dalam bit per detik. Rentang yang valid adalah [1 ... 2³²–1]. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncCommonBufferSize | Mengatur ukuran buffer, dalam byte, untuk pengodean laju bit konstan (CBR). Rentang yang valid adalah [1 ... 2³²–1]. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncCommonMaxBitRate | Mengatur laju bit maksimum untuk mode kontrol laju yang memungkinkan laju bit puncak. Rentang yang valid adalah [1 ... 2³²–1]. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncMPVGOPSize | Mengatur jumlah gambar dari satu header GOP ke header berikutnya, termasuk jangkar utama tetapi bukan yang berikut ini. Rentang yang valid adalah [0 ... 2³²–1]. Jika nol, encoder memilih ukuran GOP. Nilai defaultnya adalah nol. Ini adalah nilai VT_UI4. |
CODECAPI_AVLowLatencyMode | Mengaktifkan atau menonaktifkan mode latensi rendah. Ini adalah nilai VT_BOOL. |
CODECAPI_AVEncCommonQualityVsSpeed | Mengatur tradeoff kualitas/kecepatan. Nilai ini memengaruhi bagaimana encoder melakukan berbagai operasi pengodean, seperti kompensasi gerakan. Pada tingkat kompleksitas yang lebih tinggi, encoder berjalan lebih lambat tetapi menghasilkan kualitas yang lebih baik pada laju bit yang sama. Rentang yang valid adalah 0 – 100. Secara internal, nilai ini dipetakan ke serangkaian tingkat kualitas/kecepatan yang lebih kecil yang didukung oleh encoder. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncVideoForceKeyFrame | Memaksa encoder untuk membuat kode bingkai berikutnya sebagai bingkai kunci. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncVideoEncodeQP | Ketika properti ini diatur, itu akan menyebabkan encoder menggunakan QP yang ditentukan untuk mengodekan bingkai berikutnya dan semua bingkai berikutnya sampai QP baru ditentukan. Rentang valid: 0–51, inklusif |
CODECAPI_AVEncVideoMinQP | Properti ini akan menetapkan batas QP minimum yang dapat digunakan encoder selama ratecontrol CBR. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncVideoMaxQP | Properti ini akan menetapkan batas QP maksimum yang dapat digunakan encoder selama ratecontrol CBR. Ini adalah nilai VT_UI4. |
CODECAPI_VideoEncoderDisplayContentType | Mengatur apakah konten adalah video layar penuh, dibandingkan dengan konten layar yang mungkin memiliki jendela video yang lebih kecil atau tidak memiliki video sama sekali. Ini adalah nilai VT_UI4. |
CODECAPI_AVEncNumWorkerThreads | Mengatur jumlah utas yang digunakan untuk melakukan operasi pemadatan. Encoder akan membagi bingkai menjadi petak sehingga jumlah utas sama dengan jumlah petak peta.
|
Encoder Perangkat Keras Bersertifikat
Jika ada encoder perangkat keras bersertifikat, umumnya akan digunakan alih-alih encoder sistem kotak masuk untuk skenario terkait Media Foundation. Encoder bersertifikat diperlukan untuk mendukung sekumpulan properti ICodecAPI tertentu dan dapat secara opsional mendukung serangkaian properti lain. Proses sertifikasi harus menjamin bahwa properti yang diperlukan didukung dengan benar dan, jika properti opsional didukung, properti tersebut juga didukung dengan benar.
Berikut ini adalah sekumpulan properti ICodecAPI yang diperlukan dan opsional untuk encoder untuk meneruskan sertifikasi encoder HCK.
- CODECAPI_AVEncCommonRateControlMode
- CODECAPI_AVEncCommonQuality
- CODECAPI_AVEncCommonMeanBitRate
- CODECAPI_AVEncCommonBufferSize
- CODECAPI_AVEncMPVGOPSize
- CODECAPI_AVEncVideoEncodeQP
- CODECAPI_AVEncVideoForceKeyFrame
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 10 [khusus aplikasi desktop] |
Server minimum yang didukung |
Tidak ada yang didukung |
DLL |
|
Lihat juga