Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

AMD GPU Transcoding für Jellyfin/Emby

Featured Replies

Was sind das eigendlich für "nicht unterstützte Codecs"? Und welche Hardware ist überhaupt verbaut?

  • Replies 80
  • Views 15.1k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Momentan nicht, ich versuche im moment irgendwo ein günstiges Ryzen system zu ergattern oder eins für Testzwecke zu bekommen nur leider sieht das aufgrund der Hardwareverfügbarkeit im moment nicht so

  • Es geht eher darum eben nicht 4k oder fhd am Handy zu gucken sondern nur 720p. Oder anstatt eines 30mbit Streams einer blu ray auf unter 10mbit zu transcoden. Dadurch wird Dein Server zum on

  • Ganz einfach, fürs streamen wenn man nicht daheim ist, ist es einfach besser. Außerdem ist das für die CPU deutlich weniger Belastung und kann mehr parallele Streams ausführen. Wenn ich z.B. von der A

Posted Images

7 hours ago, Cannon said:

Im Log zeigt er das an.

 

Du musst in den Docker .. in die Konsole .. und dort mal checken was wirklich angeboten wird. 

In der Logfile schreibt er dir nur rein, was du angeklickt hast, was du alles könntest. 

https://jellyfin.org/docs/general/administration/hardware-acceleration/amd

 

Die Ausgabe könnte dann so ähnlich aussehen (hier im Beispiel ner Intel Arc). 

# /usr/lib/jellyfin-ffmpeg/vainfo             
Trying display: drm
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 25.1.0 (aa5ca48)
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile0            : VAEntrypointEncSliceLP
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointEncSliceLP
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointEncSliceLP
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointEncSliceLP
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointEncSliceLP
      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
      VAProfileAV1Profile0            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

 

Dadurch weiß ich, welche HW Encodings die GPU anbietet. 

Passend dazu muss man dann unter "Hardware-Dekodierung aktivieren für" die Codecs auswählen. 

In meinem Fall H264, HEVC, MPEG2, VC1, VP9, AV1, HEVC 10bit, VP9 10bit.

Erst wenn das zusammen passt, kann Jellyfin den richtigen Encoder auswählen. 

 

7 hours ago, Cannon said:

Ich habe ja nicht umsonst nen recht flotten Prozessor und ne flotte GPU drin, damit das auch flüssig läuft.

Ich muss ehrlich sein .. Transkodierung sah bei mir bisher immer mies aus. 
Wenn hab ich das lieber per CPU Transkodierung gemacht, da man die Qualität der GPU Transkodierung nicht groß verstellen kann. 
Und am Ende des Tages hab ich einfach alles passend mit AV1 codiert, sodass Jellyfin einfach nie nen Reencoding machen muss. 

1 hour ago, Sacred said:

Wenn hab ich das lieber per CPU Transkodierung gemacht, da man die Qualität der GPU Transkodierung nicht groß verstellen kann. 

naja, was kann man nicht in hardware encode umsetzen ... ?

 

und ja, CPU Encoding ist nochmals effektiver, aber der Abstand ist mittlerweile so gering ...

am Ende kommt es darauf an was dir wichtiger ist ...

 

Effizienz beim encoding, dafür 10 % größere Dateien oder maximale Kompression, dafür aber mit großem Energieaufwand, bei gleichem sichtbaren Ergebnis ... wenn du in Hardware auf gleiche Zielgröße setzt wie Software, sieht Hardware etwas schlechter aus ... aber einen Ticken hoch in den Quality Settings, dafer etwas größere Dateien, dafür aber x mal schneller und x mal weniger Aufwand.

 

1 minute ago, alturismo said:

naja, was kann man nicht in hardware encode umsetzen ... ?

Schreibt Jellyfin selbst:

"Der Constant Rate Factor (CRF) bezeichnet die Einstellung für die Standardqualität des x264 und x265 Software-Encoders. Setze einen Wert zwischen 0 und 51. Ein niedriger Wert resultiert in besserer Qualität (auf Kosten einer größeren Datei). Gängige Werte sind 18-28. Der Standard für x264 ist 23 und 28 für x265, diese sollten als Referenzen verwendet werden. Hardware-Encoder verwenden diese Einstellung nicht."

 

Man kann zwar die Kodierungsvorstellung ändern aber CRF wird nicht verwendet. Auch kann man keine Zielbitrate angeben. 

Fehlt mir beides so ein bisschen - die Qualität beim Transkoding sieht auch mit veryslow bei mir echt mies aus. 

Möglich wärs .. Jellyfin bietet es einfach nur nicht an. 

 

Die kleine Intel Arc rennt zwar mit 200-400fps voraus .. aber die Qualität is mies. 

Wär mir in der ersten Minute evtl. noch okay, aber dann kann se ruhig mit höherer Qualität durchgehen. 

1 hour ago, Sacred said:

Schreibt Jellyfin selbst:

 

ok, dann ging es in deiner Aussage nur um das Live Transcoding mit Jellyfin, sorry .... dachte wäre allgemein gemeint gewesen.

 

ich bin jetzt Plex User, hab aber auch Jelly getestet ...

 

aber @home nutze ich eh keine transcoding (da sinnfrei) und remote hier die Bitrate das Ziel (flüssiges Playback je nach Empfang), ansonsten nutze ich ja eh kein transcode ;) ich encode nur meine Lib.

On 3/31/2025 at 5:08 PM, Sacred said:

Du musst in den Docker .. in die Konsole .. und dort mal checken was wirklich angeboten wird. 

In der Logfile schreibt er dir nur rein, was du angeklickt hast, was du alles könntest. 

 

Danke. Das war der entscheidende Hinweis. Ich hatte mich auf die Flags in den Jellyfin-Docs verlassen. Aber offensichtlich unterstützt jede iGPU andere Codecs. Das waren bei meinem AMD Ryzen 7 8700G auch gar nicht so viele. Nachdem ich die falschen Haken entfernt habe, liefen die problematischen Videos auch.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.