Devdroid 21 Posted April 27, 2018 Posted April 27, 2018 (edited) I can't get HEVC hardware quicksync transcoding to work. Tried a bunch of different x265 encodes and none works; GPU stays @ 0% load. HEVC HW transcoding is enabled in Emby. Log says (guessing qsv = quick sync video): [hevc_qsv @ 0000020423207d00] Error initializing the MFX video decoder: invalid video parameters (-15) Are my encodes bad, or what's up? System info: OS: Windows 10CPU/GPU: Core i5 i5-8250U / Intel HD 620Driver: Intel HD 15.65 (27/4, 2018) Emby: 3.3.1.0 Log file: https://pastebin.com/vb5UihG6 Media info: Encode #1: General Unique ID : 178345915114879517469265176759423121838 (0x862C2C80A3D050FAB1AA257FB66EB9AE) Format : Matroska Format version : Version 4 / Version 2 File size : 1.31 GiB Duration : 1 h 1 min Overall bit rate : 3 030 kb/s Encoded date : UTC 2016-09-09 16:14:19 Writing application : mkvmerge v9.2.0 ('Photograph') 64bit Writing library : libebml v1.3.3 + libmatroska v1.4.4 Video ID : 1 Format : HEVC Format/Info : High Efficiency Video Coding Format profile : Main 10@L4@Main Codec ID : V_MPEGH/ISO/HEVC Duration : 1 h 1 min Bit rate : 2 512 kb/s Width : 1 920 pixels Height : 1 080 pixels Display aspect ratio : 16:9 Frame rate mode : Constant Frame rate : 23.976 (24000/1001) FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 10 bits Bits/(Pixel*Frame) : 0.051 Stream size : 1.08 GiB (83%) Writing library : x265 2.0+16-215eedc9ecc0:[Windows][GCC 6.1.0][64 bit] 10bit Encoding settings : wpp / ctu=64 / min-cu-size=8 / max-tu-size=32 / tu-intra-depth=1 / tu-inter-depth=1 / me=1 / subme=2 / merange=57 / no-rect / no-amp / max-merge=2 / temporal-mvp / no-early-skip / rskip / rdpenalty=0 / no-tskip / no-tskip-fast / strong-intra-smoothing / no-lossless / no-cu-lossless / no-constrained-intra / no-fast-intra / open-gop / no-temporal-layers / interlace=0 / keyint=250 / min-keyint=23 / scenecut=40 / rc-lookahead=20 / lookahead-slices=6 / bframes=4 / bframe-bias=0 / b-adapt=2 / ref=3 / limit-refs=3 / no-limit-modes / weightp / no-weightb / aq-mode=1 / qg-size=32 / aq-strength=1.00 / cbqpoffs=0 / crqpoffs=0 / rd=3 / psy-rd=2.00 / rdoq-level=0 / psy-rdoq=0.00 / log2-max-poc-lsb=8 / no-rd-refine / signhide / deblock=0:0 / sao / no-sao-non-deblock / b-pyramid / cutree / no-intra-refresh / rc=2 / pass / bitrate=2507 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ipratio=1.40 / pbratio=1.30 Default : Yes Forced : No Audio #1 ID : 2 Format : AAC Format/Info : Advanced Audio Codec Format profile : LC Codec ID : A_AAC-2 Duration : 1 h 1 min Bit rate : 412 kb/s Channel(s) : 8 channels Channel positions : Front: L C R, Side: L R, Back: L R, LFE Sampling rate : 48.0 kHz Frame rate : 46.875 FPS (1024 SPF) Compression mode : Lossy Delay relative to video : 20 ms Stream size : 182 MiB (14%) Language : English Default : Yes Forced : No Encode #2: General Unique ID : 199326385801784773818489302735343749358 (0x95F4DD92355D7294995D128A1E7288EE) Format : Matroska Format version : Version 4 / Version 2 File size : 4.65 GiB Duration : 2 h 9 min Overall bit rate : 5 121 kb/s Movie name : Stargate Encoded date : UTC 2018-01-30 14:36:11 Writing application : mkvmerge v14.0.0 ('Flow') 64bit Writing library : libebml v1.3.4 + libmatroska v1.4.5 Video ID : 1 Format : HEVC Format/Info : High Efficiency Video Coding Format profile : Main 10@L4@Main Codec ID : V_MPEGH/ISO/HEVC Duration : 2 h 9 min Bit rate : 4 499 kb/s Width : 1 920 pixels Height : 800 pixels Display aspect ratio : 2.40:1 Frame rate mode : Constant Frame rate : 23.976 (24000/1001) FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 10 bits Bits/(Pixel*Frame) : 0.122 Stream size : 4.08 GiB (88%) Writing library : x265 2.6+14-f09f3b4a2115:[Windows][GCC 7.2.0][64 bit] 10bit Encoding settings : cpuid=1173503 / frame-threads=3 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=1920x800 / interlace=0 / total-frames=186786 / level-idc=0 / high-tier=1 / uhd-bd=0 / ref=4 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=23 / keyint=250 / gop-lookahead=0 / bframes=4 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=25 / lookahead-slices=4 / scenecut=40 / no-intra-refresh / ctu=64 / min-cu-size=8 / rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=2 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=3 / limit-refs=3 / limit-modes / me=3 / subme=3 / merange=57 / temporal-mvp / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=4 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=1.00 / no-rd-refine / analysis-reuse-mode=0 / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=abr / bitrate=4500 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=2 / cplxblur=20.0 / qblur=0.5 / ipratio=1.40 / pbratio=1.30 / aq-mode=3 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=0 / overscan=0 / videoformat=5 / range=0 / colorprim=2 / transfer=2 / colormatrix=2 / chromaloc=0 / display-window=0 / max-cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / analysis-reuse-level=5 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-mv-type=0 / copy-pic=1 Default : Yes Forced : No Audio #1 ID : 2 Format : AAC Format/Info : Advanced Audio Codec Format profile : LC Codec ID : A_AAC-2 Duration : 2 h 9 min Bit rate : 529 kb/s Channel(s) : 8 channels Channel positions : Front: L C R, Side: L R, Back: L R, LFE Sampling rate : 48.0 kHz Frame rate : 46.875 FPS (1024 SPF) Compression mode : Lossy Delay relative to video : 20 ms Stream size : 498 MiB (10%) Language : English Default : Yes Forced : No Encode #3: General Unique ID : 195990870729528674998145636207923906582 (0x937277FB2E14CA98AC05C62CF0D54816) Format : Matroska Format version : Version 4 / Version 2 File size : 1.03 GiB Duration : 48 min 14 s Overall bit rate : 3 051 kb/s Movie name : The X-Files, Season 1 Disc 1 Encoded date : UTC 2016-01-06 22:36:27 Writing application : mkvmerge v8.6.1 ('Flying') 64bit Writing library : libebml v1.3.3 + libmatroska v1.4.4 Video ID : 1 Format : HEVC Format/Info : High Efficiency Video Coding Format profile : Main 10@L4@Main Codec ID : V_MPEGH/ISO/HEVC Duration : 48 min 14 s Bit rate : 2 198 kb/s Width : 1 920 pixels Height : 1 080 pixels Display aspect ratio : 16:9 Frame rate mode : Constant Frame rate : 23.976 (24000/1001) FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 10 bits Bits/(Pixel*Frame) : 0.044 Stream size : 758 MiB (72%) Writing library : x265 1.8+188-1471e4e433cc:[Windows][GCC 4.8.2][64 bit] 10bit Encoding settings : wpp / ctu=64 / min-cu-size=8 / max-tu-size=32 / tu-intra-depth=1 / tu-inter-depth=1 / me=3 / subme=2 / merange=57 / no-rect / no-amp / max-merge=2 / temporal-mvp / no-early-skip / rdpenalty=0 / no-tskip / no-tskip-fast / no-strong-intra-smoothing / no-lossless / no-cu-lossless / no-constrained-intra / no-fast-intra / open-gop / no-temporal-layers / interlace=0 / keyint=250 / min-keyint=23 / scenecut=40 / rc-lookahead=20 / lookahead-slices=6 / bframes=4 / bframe-bias=0 / b-adapt=2 / ref=3 / limit-refs=3 / no-limit-modes / weightp / no-weightb / aq-mode=3 / qg-size=32 / aq-strength=1.00 / cbqpoffs=0 / crqpoffs=0 / rd=3 / psy-rd=0.35 / rdoq-level=1 / psy-rdoq=0.00 / signhide / deblock=-1:-1 / sao / no-sao-non-deblock / b-pyramid / cutree / no-intra-refresh / rc=crf / crf=24.0 / qcomp=0.60 / qpmin=0 / qpmax=51 / qpstep=4 / ipratio=1.40 / pbratio=1.30 Language : English Default : Yes Forced : No Audio #1 ID : 2 Format : AAC Format/Info : Advanced Audio Codec Format profile : LC Codec ID : A_AAC-2 Duration : 48 min 14 s Bit rate : 328 kb/s Channel(s) : 6 channels Channel positions : Front: L C R, Side: L R, LFE Sampling rate : 48.0 kHz Frame rate : 46.875 FPS (1024 SPF) Compression mode : Lossy Delay relative to video : 9 ms Stream size : 113 MiB (11%) Language : English Default : Yes Forced : No Edited April 27, 2018 by Devdroid
Luke 39685 Posted April 27, 2018 Posted April 27, 2018 Hi, yes there are some quicksync errors here. I would make sure that both windows and your graphics card drivers are fully up to date. If that doesn't help then i would try again with the next release of Emby Server. It will have an updated ffmpeg build and that may help. Thanks. 1
Devdroid 21 Posted April 27, 2018 Author Posted April 27, 2018 (edited) Hi, yes there are some quicksync errors here. I would make sure that both windows and your graphics card drivers are fully up to date. If that doesn't help then i would try again with the next release of Emby Server. It will have an updated ffmpeg build and that may help. Thanks. Cool. I'll go ahead and try with that. I'm using the currently most recent version of the Intel HD drivers and Windows 10 is up to date. Edited April 27, 2018 by Devdroid
Devdroid 21 Posted April 27, 2018 Author Posted April 27, 2018 (edited) Hi, yes there are some quicksync errors here. I would make sure that both windows and your graphics card drivers are fully up to date. If that doesn't help then i would try again with the next release of Emby Server. It will have an updated ffmpeg build and that may help. Thanks. Here's another attempt running the latest Emby beta with Encode #1: https://pastebin.com/dVW3GwC1 It says: Press [q] to stop, [?] for help [hevc_qsv @ 00000261b7691920] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000261b7691920] Error loading plugins [hevc_qsv @ 00000261b7691920] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented Encode #2 & #3 drops the same error. Edited April 27, 2018 by Devdroid
Luke 39685 Posted April 27, 2018 Posted April 27, 2018 Have you tried other files? Unfortunately this is something that always seems to vary from one environment to the next. It is hard to say what this might be. Perhaps we just shouldn't be using it at all for this particular file.
Devdroid 21 Posted April 27, 2018 Author Posted April 27, 2018 (edited) Have you tried other files? Unfortunately this is something that always seems to vary from one environment to the next. It is hard to say what this might be. Perhaps we just shouldn't be using it at all for this particular file. Would you like for me to send you a sample of a file, to check if it runs on your environment? I can drop you a PM with a link to something small with pretty much the same encode settings as the several encodes I'm trying to play above. Edited April 27, 2018 by Devdroid
Devdroid 21 Posted April 27, 2018 Author Posted April 27, 2018 (edited) I can't seem to get any of the jellyfish HEVC samples to work either: http://jell.yfish.us/ Does anyone else have any luck with these samples + Intel HD 6xx GPU with latest drivers (15.65) and Windows 10? I've tried with these Jellyfish samples: jellyfish-10-mbps-hd-hevc.mkv (won't play at all) jellyfish-10-mbps-hd-hevc-10bit.mkv (won't play at all) jellyfish-50-mbps-hd-hevc.mkv (does play, but no HW acceleration) jellyfish-120-mbps-4k-uhd-hevc-10bit.mkv (does play, but no HW acceleration) I also tried these samples from x265.com: x265 – Big Buck Bunny 4K @ 2 Mbps (won't play at all) x265 – Tears Of Steel 1080P @ 400kbps (won't play at all) Also tried some samples from HDRsamples.com Life of Pi – 4K UHD HDR SAMPLE FOOTAGE, 10bit, 45.1 Mb/s (does play, but no HW acceleration) Log keeps reporting: [hevc_qsv @ 00000203a20e86a0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000203a20e86a0] Error loading plugins [hevc_qsv @ 00000203a20e86a0] Error initializing an MFX session It does however work great as soon as I switch to x264/h.264 material. Everything I throw at it seems to be HW accelerated. Edit: I'm using the latest version of Chrome as a client by the way. Edit #2: Can someone point me to a HEVC sample that does work with HW transcoding? I wan't to make sure that it's not driver related/something on my end. Edited April 28, 2018 by Devdroid
Devdroid 21 Posted April 28, 2018 Author Posted April 28, 2018 (edited) Can anyone confirm if any of the samples above works with Quicksync HW transcoding? Would be much appreciated! Trying to figure out if there's something wrong with my setup or not Edited April 28, 2018 by Devdroid
Guest asrequested Posted April 28, 2018 Posted April 28, 2018 My beta server is running on a HD 530 GPU, I could try with that?
Guest asrequested Posted April 28, 2018 Posted April 28, 2018 Running beta 3.3.1.26 using QS with an Intel HD 530 GPU and HEVC decoding, on. I get the same error (log attached). Turning off decoding, transcoding and playback is successful. 1
Guest asrequested Posted April 28, 2018 Posted April 28, 2018 From the log of the successful transcode Input #0, matroska,webm, from 'file:D:\Library\jellyfish-10-mbps-hd-hevc.mkv': Metadata: COMPATIBLE_BRANDS: iso4hvc1iso6 MAJOR_BRAND : iso4 MINOR_VERSION : 1 ENCODER : Lavf56.3.100 Duration: 00:00:30.10, start: 0.067000, bitrate: 9978 kb/s Stream #0:0(und): Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 1k tbn, 29.97 tbc (default) Metadata: CREATION_TIME : 2016-02-04 22:41:00 LANGUAGE : und HANDLER_NAME : hevc@GPAC0.5.2-DEV-rev565-g71748d7-ab-suite Stream mapping: Stream #0:0 -> #0:0 (hevc (native) -> h264 (h264_qsv)) Press [q] to stop, [?] for help [h264_qsv @ 0000028cb11db740] No device available for encoder (device type qsv for codec h264_qsv). [segment @ 0000028cb11f8fe0] Opening 'C:\Users\Peter\AppData\Roaming\Emby-Server\programdata\transcoding-temp\3e50c0f9cd367c67b45315f5175f321d4.ts' for writing Output #0, segment, to 'C:\Users\Peter\AppData\Roaming\Emby-Server\programdata\transcoding-temp\3e50c0f9cd367c67b45315f5175f321d%d.ts': Metadata: encoder : Lavf57.83.100 Stream #0:0: Video: h264 (h264_qsv), nv12, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 19957 kb/s, 29.97 fps, 90k tbn, 29.97 tbc (default) Metadata: encoder : Lavc57.107.100 h264_qsv
Devdroid 21 Posted April 29, 2018 Author Posted April 29, 2018 (edited) @ thanks! I guess it's not my setup then. @@Luke Do you think it's Intel related and might be fixed with a future driver update? Or does it have to do with FFMPEG? In case you need any samples for trial and error, the x265.com samples above should do. I'm guessing that if the samples on x265.com won't run, few others will. Edit: I'll also try Plex and report back Edited April 29, 2018 by Devdroid
Guest asrequested Posted April 29, 2018 Posted April 29, 2018 You realize that it is working, it's just decoding isn't working. And it's due to ffmpeg. Your CPU should be able to decode the stream with no problems, then the GPU will do the re-encoding.
Luke 39685 Posted April 29, 2018 Posted April 29, 2018 Right you can turn off gpu decoding and still use gpu encoding. It's possible the competitor you mention might at be doing this which could unfortunately lead you into thinking that they're working and we're not. But that would not be a correct assessment.
Devdroid 21 Posted April 29, 2018 Author Posted April 29, 2018 (edited) You realize that it is working, it's just decoding isn't working. And it's due to ffmpeg. Your CPU should be able to decode the stream with no problems, then the GPU will do the re-encoding. Yes, SW works perfectly well! I get up to 80-90 FPS with the "veryfast" profile with this CPU and 1080p, UHD is a bit of a struggle though with around ~30-40FPS. I was just curious to know if it works or not with the most common x265 encoding profiles/encodes. The only place where HEVC direct play doesn't work for me is with Chrome. All of my Android devices gladly play all of my HEVC encodes via direct play (...even surprisingly old devices), and transcoding usually isn't necessary because of the low bitrate. It would just be neat to be able to use HW transcoding Right you can turn off gpu decoding and still use gpu encoding. It's possible the competitor you mention might at be doing this which could unfortunately lead you into thinking that they're working and we're not. But that would not be a correct assessment. I tried it, and it didn't work with them either. (Not that I would ever switch because of this - just curious about the state of HEVC HW transcoding ) Edited April 29, 2018 by Devdroid
aahmyu 9 Posted May 1, 2018 Posted May 1, 2018 (edited) Hello getting the same errors and HEVC HW transcoding is not working anymore. its running SW which usese 100% of the cpu which is not good for me on a fanless box. CPU is i57200u which is capable of hevc hw tranconding and it was working fine. Edit: i tested more hevc files and same result. [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Error while decoding stream #0:0: Function not implemented [hevc_qsv @ 00000292dc30f2c0] Could not load the requested plugin '15dd936825ad475ea34e35f3f54217a6': specified object was not found (-9) [hevc_qsv @ 00000292dc30f2c0] Error loading plugins [hevc_qsv @ 00000292dc30f2c0] Error initializing an MFX session Edited May 1, 2018 by aahmyu
Devdroid 21 Posted May 1, 2018 Author Posted May 1, 2018 (edited) Hello getting the same errors and HEVC HW transcoding is not working anymore. its running SW which usese 100% of the cpu which is good for me on a fanless box. CPU is i57200u which is capable of hevc hw tranconding and it was working fine. Edit: i tested more hevc files and same result. I've yet to find a single HEVC sample that does work with Quick Sync transcoding. If anyone can find a HEVC sample that works - please share! I would like to check the encoding settings. @Luke - it would be awesome if we could get our hands on a HEVC sample that does work, just for trial and error. Could you share a sample that works with your setup? Edited May 1, 2018 by Devdroid
aahmyu 9 Posted May 1, 2018 Posted May 1, 2018 Disable decoding, enable encoding. I just tried. its still using 100% cpu but im not getting that error anymore Stream mapping: Stream #0:0 -> #0:0 (hevc (native) -> h264 (h264_qsv)) Stream #0:1 -> #0:1 (ac3 (native) -> aac (native)) Press [q] to stop, [?] for help [h264_qsv @ 0000021c9f812dc0] No device available for encoder (device type qsv for codec h264_qsv). [h264_qsv @ 0000021c9f812dc0] Selected ratecontrol mode is not supported by the QSV runtime. Choose a different mode. Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height [aac @ 0000021c9f805ee0] Qavg: 25045.133 [aac @ 0000021c9f805ee0] 2 frames left in the queue on closing Conversion failed! Not sure if this error is relevant but ive seen in the logs
aahmyu 9 Posted May 1, 2018 Posted May 1, 2018 Default settings and I was just testing on chrome. All my devices support HEVC direct playback. The problem is when I want to force a smaller quality I don't want it to do SW transcoding.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now