Failed to wrapper hybrid_drv_video.so on Synology DS216+II

Server Version#: 1.14.1.5488
Player Version#: 1.14.1.5488

Error in log:
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-79dcc0f/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so

CPU: Intel Celeron N3060 (https://ark.intel.com/content/www/us/en/ark/products/91832/intel-celeron-processor-n3060-2m-cache-up-to-2-48-ghz.html -> with Quick Sync)
RAM: 8GB.
Synology version: DSM 6.2.1-23824 Update 6

So I had hardware transcoding working for the past year or so but recently I noticed my transcoded streams were not running fast enough. While looking through the logs I found the above.
I’m 100% sure plex can access /dev/dri/* as I have chmodded them with 777 and I am running the container as root.
I also tried installing the synology package but the HW transcoding fails there as well. What gives? This used to work very well in the past.

I’m 100% sure plex can access /dev/dri/* as I have chmodded them with 777 and I am running the container as root.

Container?

I was running plex as a docker container. Currently trying the Synology Plex spk package (as I read loads of problems may occur with the docker container on a Synology) but with no improvement as of now.

I am 100% sure these kind of HW transcoding worked before as I am re-watching a series I have seen before using this NAS.

Containers with PMS, by default, don’t allow HW transcoding because the container is in a chroot and abstracted from the real /dev/dri directory unless manually mapped in the container’s config.

When running native, I make certain to establish the udev rules as the package installs so it can run as user plex:users

Your NAS does have native support for QSV so this should be working.

Would you do the following please?

  1. Verify DEBUG logging (VERBOSE off)
  2. Verify HW acceleration on (settings - server - transcoder - show advaned)
  3. Verify server signed into correct plex account (with Plex Pass active)
  4. Start playback
  5. play for 15 seconds
  6. Stop
  7. wait 30 seconds
  8. Settings - Server - Troubleshooting - Download Logs
  9. Attach the ZIP

We can see what PMS found and decided to do.
I can also see if there are other errors

Thanks for the quick response. This is my current docker log. I have /dev/dri mapped using --device as well.
Plex Media Server Logs_2019-03-12_23-17-05.zip (2.4 MB)

I will have to reinstall my Plex installation tomorrow as a package for those logs, otherwise my wife will kill me if I don’t go to bed right now. :stuck_out_tongue:

Mar 12, 2019 23:14:43.821 [0x7f8b8b7f6700] DEBUG - Streaming Resource: Determining preferred transcode encoders through transcode only decision.
Mar 12, 2019 23:14:43.822 [0x7f8b8b7f6700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Mar 12, 2019 23:14:43.823 [0x7f8b8b7f6700] DEBUG - Scaled up video bitrate to 49036Kbps based on 4.500000x fudge factor.
Mar 12, 2019 23:14:43.824 [0x7f8b8b7f6700] DEBUG - Codecs: testing hevc_qsv (encoder)
Mar 12, 2019 23:14:43.824 [0x7f8b8b7f6700] WARN - Failed to find encoder 'hevc_qsv'
Mar 12, 2019 23:14:43.824 [0x7f8b8b7f6700] DEBUG - Codecs: testing hevc_vaapi (encoder)
Mar 12, 2019 23:14:43.824 [0x7f8b8b7f6700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Mar 12, 2019 23:14:43.831 [0x7f8b8b7f6700] ERROR - [FFMPEG] - Encoding entrypoint not found (17 / 6).
Mar 12, 2019 23:14:43.833 [0x7f8b8b7f6700] WARN - avcodec_open2 returned -38 for encoder 'hevc_vaapi'
Mar 12, 2019 23:14:43.834 [0x7f8b8b7f6700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Mar 12, 2019 23:14:43.835 [0x7f8b8b7f6700] DEBUG - Scaled up video bitrate to 49036Kbps based on 4.500000x fudge factor.
Mar 12, 2019 23:14:43.836 [0x7f8b8b7f6700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Mar 12, 2019 23:14:43.837 [0x7f8b8b7f6700] DEBUG - Scaled up video bitrate to 49036Kbps based on 4.500000x fudge factor.
Mar 12, 2019 23:14:43.838 [0x7f8b8b7f6700] DEBUG - Streaming Resource: Reducing playback quality for 1904kbps stream bitrate: video resolution to 720x406, audio channels to 2, quality to 41, disable video DS as 2147483647kbps is > the 1724kbps available

Did you try to transcode HEVC? It won’t do that. You need the J3355 or above processor to do that. The N series are good for H.264 only.

Hmm I think my source file(s) unintentionally got updated. I downloaded the previous source (h264 main 10) again and tried again.
Plex Media Server Logs_2019-03-13_15-11-25.zip (2.6 MB)

Thanks for your help so far, sorry for the wasted time.

I tried multiple streams. It seems that h264 on main works fine and the high 10 falls back to software decoding. (see log) According to the documentation that I can find here: (Braswell) https://en.wikipedia.org/wiki/Intel_Graphics_Technology#Intel_Pentium_and_Celeron_family
and here:
https://github.com/intel/intel-vaapi-driver/blob/master/README
It should be supported but Plex still falls back to software decoding.

You are correct; H.264 will be fine. HEVC will fall back because the N3060 CPU does not have that capability in hardware. The next generation CPU (Jxxx - ApolloLake) does have it.

Mar 12, 2019 23:12:57.041 [0x7f8bddf38700] INFO - Processor       Intel(R) Celeron(R) CPU  N3060  @ 1.60GHz

Whoops, I meant that in my second log h264 using high10 profile also fails. And high 10 (x264) should be supported. :slight_smile:

No. it’s not supported in the HW. That predates any HDR (10 bit) content.
The first HEVC 8-bit was the SkyLake (decoding)
The first HEVC 10-bit was the KabyLake
The first H.264 10-bit is SkyLake/ApolloLake (next ASIC generation after the N3060/3070)

Aaaaah now I get it. Thanks for the fast support and clearing this up.
Time to upgrade it seems. :smiley:

Yes. it would seem so.

For reference, ApolloLake are the J3355 and J3455 processors. The J3455 (DSx18 series or better) will give you HEVC HDR (main 10) decoding you want.

The DSx16 series were the tail end of the 8-bit only ASICS.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.