Skip to content

trickplay hardware accelartion / decoding issue #13468

Description

@eshirvana

Description of the bug

actually there are 2 issues that I encountered

  1. hardware decoding for trickplay fails for some files and I get below error message

  2. when hardware decoding is enabled and it can't use hardware acceleration and falls back to software decosing , the cpu usage goes to %100 and I think it doesn't respect process priority ( set to below normal)
    while hardware decoding is not selected cpu usage is at about steady %20 .

hardware acceleration works both for playing media and trickplay except for above cases.

jellyfin settings :
Transcoding : VA-API
VA-API Device: /dev/dri/renderD128
Enable hardware decoding for:

  • H264

  • MPEG2

  • VC1

  • VP8

  • Enable VPP Tone mapping

  • Enable Tone mapping

Reproduction steps

  1. enable hardware accelaration
  2. enable hardware decoding for trickplay
  3. run scheduled task generate trickplay images

What is the current bug behavior?

  1. fails on some files with hardware decoding enabled
  2. cpu usage goes to 100% when it falls back to software decoding

What is the expected correct behavior?

No failures and cpu should respect the below normal priority

Jellyfin Server version

10.10.0+

Specify commit id

No response

Specify unstable release number

No response

Specify version number

10.10.5

Specify the build version

10.10.5 (e8e4ff0ca)

Environment

- OS: rocky linux 9.5
- Linux Kernel:  Linux 5.14.0-503.22.1.el9_5.x86_64
- Virtualization: docker  (linuxserver.io container)
- Clients: web
- Browser: Firefox
- FFmpeg Version: 7.0.2-Jellyfin 
- Playback Method:
- Hardware Acceleration: VA-API
- GPU Model: Intel core i5-4590S
- Plugins:
- Reverse Proxy:
- Base URL:
- Networking:
- Storage:

Jellyfin logs

[2025-01-31 03:00:06.138 +00:00] [INF] [32] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Creating trickplay files at 320 width, for "/media/movie Bluray-720p.mkv" [ID: e59b72fb-0501-e8c3-af28-abf2699e69a1]
[2025-01-31 03:00:06.138 +00:00] [INF] [32] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Trickplay generation: "/usr/lib/jellyfin-ffmpeg/ffmpeg -loglevel error -init_hw_device vaapi=va:/dev/dri/renderD128,driver=i965 -hwaccel vaapi -hwaccel_output_format vaapi -noautorotate -i file:\"/media/movie Bluray-720p.mkv\" -noautoscale -an -sn -vf \"fps=0.10000000149011612,setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale_vaapi=w=320:h=180:format=nv12:out_range=pc:mode=hq:extra_hw_frames=24\" -threads 1 -c:v mjpeg_vaapi -global_quality:v 91 -fps_mode passthrough -f image2 \"/tmp/jellyfin/1bbe502a201e4a60a934d05d12104170/%08d.jpg\""
[2025-01-31 03:00:06.772 +00:00] [ERR] [29] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Error creating trickplay images.
System.ArgumentException: Can't create trickplay from 0 images.
   at Jellyfin.Server.Implementations.Trickplay.TrickplayManager.CreateTiles(IReadOnlyList`1 images, Int32 width, TrickplayOptions options, String outputDir)
   at Jellyfin.Server.Implementations.Trickplay.TrickplayManager.RefreshTrickplayDataInternal(Video video, Boolean replace, Int32 width, TrickplayOptions options, LibraryOptions libraryOptions, CancellationToken cancellationToken)

FFmpeg logs

Client / Browser logs

No response

Relevant screenshots or videos

No response

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    Status
    Not A Bug

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions