我可以使用 獲取 MFT 的名稱MFT_FRIENDLY_NAME_Attribute并檢查它是硬體還是軟體MFT_ENUM_FLAG_HARDWARE,我如何檢查編碼器是基于 CPU 還是基于 GPU?
即 Intel QuickSync 是 CPU,NVIDIA H.264 Encoder MFT 是 GPU,等等
編碼器通過MFTEnumEx(MFT_CATEGORY_VIDEO_ENCODER, ...);它提供了一個陣列,IMFActivate從那里我可以獲得 MFT 標志和編碼器的 GUID。
uj5u.com熱心網友回復:
如何檢查編碼器是基于 CPU 還是基于 GPU
MFT 不表明它們是基于 CPU 還是基于 GPU。他們不必這樣做,然后也沒有多大意義。
MFT_ENUM_FLAG_HARDWARE 你已經發現的標志已經告訴你你想要的資訊。
MFT_ENUM_FLAG_HARDWAREMFT 使用 AVStream 驅動程式或基于 GPU 的代理 MFT 執行基于硬體的資料處理。此類別中的 MFT 始終異步處理資料。
這個標志表明在這個編碼器后面沒有 CPU 實作,它是一些處理編碼的硬體。具體是什么硬體?通常,它是GPU。
沒有 AMD、Intel 或 NVIDIA Media Foundation 編碼器MFT_ENUM_FLAG_HARDWARE同時“基于 CPU”(如果 H.264/AVC 或 H.265/HEVC 有問題,則 Media Foundation 外形中沒有 CPU/軟體編碼器完全來自上述供應商)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/314745.html
標籤:登录 视频编码 ms-media-基金会
上一篇:在c#中從Win32_PnPEntity獲取DEVPKEY_Device_BusReportedDeviceDesc
下一篇:對話框視窗程序作為類的成員函式
