Jedno HEVC dekódováno pomocí DXVA, druhé ne

koder

Jedno HEVC dekódováno pomocí DXVA, druhé ne
« kdy: 28. 06. 2018, 18:03:11 »
bloumá mi jedna věc, mám HEVC video, které chci přehrát v potlayeru a s akcelerací. Video má 1920x1080x60fps.

To první (20Mbps) přehraje. Jde o výstup ze střihového programu. (9W) Zobrazeno Native DXVA -> intel HD 530.
údaje(gui) : HVC1(24bit) NV12, range:tv, youtput dxva
údaje -soubor Framerate Constant : 59.94

Druhé (z ffmpeg s hw enkodérem quicksync, 4Mbps, rychlost enkodování úctyhodných 80fps) se přhrává softwarově (15W) .
údaje(gui): HVC1 yuv420p (ačkoli jsem dal pix_fmt nv12  , beze změny), tv range, output YV12.
údaje-soubor  Framerate Variable (proč?), original framerate 59.94 ,

společné vlastnosti:
soubor :Standart Component, YUV, 4:2:0 , HEVC Main L4.1 High., depth 8


Samozřejmě když v Potplayeru vyberu ffmpeg quicsync nebo intel quicksync.dll SDK, tak jsou výsledky v náročnosti přehrání podobné  v  ffmpeg qsv:11W  druhý, ovšem první odmítne přehrát
ovšem druhý soubor intel  QSV.dll SDK  přehrává sekaně(ale se spotřebou 6W )????, v ffmpeg qsv 9W

Proto také používám DXVA, která má nejnižsí spotřebu a nemá problémy spřehráním (nehraje sekaně nebo neodmítne přehrát)
« Poslední změna: 28. 06. 2018, 18:05:24 od Petr Krčmář »


kkt1

  • *****
  • 796
    • Zobrazit profil
Re:Jedno HEVC dekódováno pomocí DXVA, druhé ne
« Odpověď #1 kdy: 28. 06. 2018, 18:20:46 »
Macik?

koder?

Re:Jedno HEVC dekódováno pomocí DXVA, druhé ne
« Odpověď #2 kdy: 28. 06. 2018, 18:33:13 »
jazyk?

Jen bych dodal, že rozdíl v tom variable frame rate (cože je nějaký výstup z nějakého extraktoru informací typu media info v tom přehrávači) rate je způsoben tím ,že PRvní soubor je .MOV, druhý MKV.


Nicméně ani v jiných formátech (mov, mp4) durhý soubor nejde.

Napadá mě nějaká nekompatibilita v např počtu ref frames.

Výstup ffmpeg (Debug info -v verbose) z quicsync:
Initialized MFX session using hw.acc.implement.
Mode : ICQ
profile simple, level 297,
Gop: picsize 248, refdist 9, optflag closed,  ; idrinterval 1
target usage 4, ratecontrolmethod using icq
icqquality 40
nimslince 1, numrefframe 5
ratedistort unknown
další věci nezajímavé (0, uknwnow)


Mimochodem, proč nejde přes ffmpeg enkodovat hned napoprvé (zasekne se to u výstupu s infem o rychlosti), zátěž cpu jede, ale gpu nikoli, nutné ukončit ffmpeg (4x stiskem Ctrl C). 

Re:Jedno HEVC dekódováno pomocí DXVA, druhé ne
« Odpověď #3 kdy: 28. 06. 2018, 18:43:15 »
Tak ono těch nastavení tam jsou desítky a pokud některé z nich překračuje schopnosti HW tak se prostě akcelerace nepoužije. Nemá to moc Bframes například?
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci