Jump to content

Hardware Acceleration hangs after a few minutes


bigalpha
Go to solution Solved by bigalpha,

Recommended Posts

bigalpha

I'm experiencing an issue similar to the OP in THIS THREAD.  HWA seems to only work once per boot, and fails after a few minutes then falls back to software encoding.  I managed to watch the video at the moment it crashes - the video essentially glitches out for a spit-second and then continues playing. The 'play back info' tab says that it is "recovering from playback error".  I'm a linux novice, having only recently dived in.  Attached are the complete log files, with the names annotated.

  • I'm running Proxmox with emby in an LXC.  I've tried both a Debian and Ubuntu OS with no change. 
  • Installed using this: bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/emby.sh)"
  • CPU:  11th Gen Intel(R) Core(TM) i5-11320H
  • Privileged container 
  • I have HWA set up in a separate Plex container and it works with no issues
  • Tried VAAPI and Quicksync codec in the Transcoding tab with no change

On a fresh boot:

Running vainfo in the host:

root@Shipyard:~# vainfo
error: can't connect to X server!
libva info: VA-API version 1.10.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_10
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.10 (libva 2.15.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 21.1.1 ()
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSliceLP
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

Running vainfo in the lxc:

root@emby:~# vainfo
error: can't connect to X server!
libva info: VA-API version 1.14.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_14
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.14 (libva 2.12.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.3.1 ()
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSliceLP
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

Running journalctl -b -o short-monotonic -k | egrep -i "i915|dmr|dmc|guc|huc"

root@Shipyard:~# journalctl -b -o short-monotonic -k | egrep -i "i915|dmr|dmc|guc|huc"
[    1.709506] Shipyard kernel: i915 0000:00:02.0: vgaarb: deactivate vga console
[    1.710775] Shipyard kernel: i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    1.711357] Shipyard kernel: i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/tgl_dmc_ver2_12.bin (v2.12)
[    1.718076] Shipyard kernel: [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[    3.082530] Shipyard kernel: fbcon: i915drmfb (fb0) is primary device
[    3.140438] Shipyard kernel: i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[    6.254226] Shipyard kernel: snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    6.280305] Shipyard kernel: mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])

 

After playing a video and forcing transcoding
Running vainfo in the host:

root@Shipyard:~# vainfo
error: can't connect to X server!
libva info: VA-API version 1.10.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_10
Segmentation fault

Running vainfo in the lxc:

root@emby:~# vainfo
error: can't connect to X server!
libva info: VA-API version 1.14.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_14
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.14 (libva 2.12.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.3.1 ()
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSliceLP
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

Running journalctl -b -o short-monotonic -k | egrep -i "i915|dmr|dmc|guc|huc"

root@Shipyard:~# journalctl -b -o short-monotonic -k | egrep -i "i915|dmr|dmc|guc|huc"
[    1.709506] Shipyard kernel: i915 0000:00:02.0: vgaarb: deactivate vga console
[    1.710775] Shipyard kernel: i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    1.711357] Shipyard kernel: i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/tgl_dmc_ver2_12.bin (v2.12)
[    1.718076] Shipyard kernel: [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[    3.082530] Shipyard kernel: fbcon: i915drmfb (fb0) is primary device
[    3.140438] Shipyard kernel: i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[    6.254226] Shipyard kernel: snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    6.280305] Shipyard kernel: mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])
[  800.927888] Shipyard kernel: i915 0000:00:02.0: [drm] Resetting vcs0 for preemption time out
[  800.930868] Shipyard kernel: i915 0000:00:02.0: [drm] GPU HANG: ecode 12:4:28fffffd, in ffmpeg [4964]
[  809.315602] Shipyard kernel: i915 0000:00:02.0: [drm] GPU HANG: ecode 12:4:28fffffd, in ffmpeg [4964]
[  809.316626] Shipyard kernel: i915 0000:00:02.0: [drm] Resetting vcs0 for stopped heartbeat on vcs0
[  809.318742] Shipyard kernel: i915 0000:00:02.0: [drm] Resetting chip for stopped heartbeat on vcs0
[  809.423202] Shipyard kernel: [drm:__uc_sanitize [i915]] *ERROR* Failed to reset GuC, ret = -110
[  809.532861] Shipyard kernel: i915 0000:00:02.0: [drm] *ERROR* Failed to reset chip
[  809.532885] Shipyard kernel: i915 0000:00:02.0: [drm:add_taint_for_CI [i915]] CI tainted:0x9 by intel_gt_reset+0x2f9/0x340 [i915]
[  809.636624] Shipyard kernel: [drm:__uc_sanitize [i915]] *ERROR* Failed to reset GuC, ret = -110
[  809.642933] Shipyard kernel: i915 0000:00:02.0: [drm] ffmpeg[4964] context reset due to GPU hang
[  814.401837] Shipyard kernel: Fence expiration time out i915-0000:00:02.0:ffmpeg[4964]:162e!

 

embyserver_after transcode crash.txt ffmpeg-transcode-fcd5deca-4aa6-4464-87ec-8404ae0239d7_1_after transcode crash.txt ffmpeg-transcode-632f9424-cbac-4643-a38e-c5f87dee3cb6_1_while transcoding.txt hardware_detection-63818060321.txt hardware_detection-63818060321_fresh boot.txt embyserver_fresh boot.txt

Link to comment
Share on other sites

Hi, for comparison purposes are you able to try installing directly onto the host machine?

Link to comment
Share on other sites

bigalpha

Hi - and sorry for this potentially really dumb question... 

But since I'm using Proxmox I'm not sure what you mean by install it directly onto the host machine - I have everything in a VM or LXC container at the moment. 

Link to comment
Share on other sites

bigalpha

I'm wondering what drivers come in the emby package that are related to hardware acceleration.  I'm wondering if they conflict somehow with the usage of quicksync.  

Link to comment
Share on other sites

  • Solution
bigalpha

Well I managed to resolve this issue.  My Proxmox instance was on PVE kernel 5.15 which apparently has some kind of weird bug that can cause these symptoms.  I upgraded the kernel to 6.1 and the i915 driver crash issue doesn't happen anymore.  I ran two transcode streams simultaneously for quite a while with no issues.

Link to comment
Share on other sites

10 hours ago, bigalpha said:

Well I managed to resolve this issue.  My Proxmox instance was on PVE kernel 5.15 which apparently has some kind of weird bug that can cause these symptoms.  I upgraded the kernel to 6.1 and the i915 driver crash issue doesn't happen anymore.  I ran two transcode streams simultaneously for quite a while with no issues.

Thanks for following up !

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...