Rozwiązanie społecznościowe

Jellyfin na GPU w ZimaOS: Intel Arc A310 kontra RX 6400

A user compared RX 6400 and Intel Arc A310 for Jellyfin, installed the A310, and worked through QSV/VA-API settings until transcoding showed real GPU activity.

W konkretnym wyborze między RX 6400 a Intel Arc A310 w tym wątku dotyczącym ZimaOS/Jellyfin Arc A310 lepiej nadaje się do transkodowania multimediów. Nie wynika to z tego, że karty AMD są ogólnie nieobsługiwane w ZimaOS — takie twierdzenie pojawiło się we wczesnej odpowiedzi i zostało zakwestionowane w tym samym wątku. Trwalsza różnica dotyczy możliwości kodeków oraz aktualnej obsługi akceleracji Jellyfin w systemie Linux.

Użytkownik ostatecznie zainstalował A310, skonfigurował VA-API/QSV, a później pokazał rzeczywistą intel_gpu_top aktywność silnika wideo podczas transkodowania przez FFmpeg. Jest to znacznie mocniejszy dowód niż informacja o tym, czy panel ZimaOS wyświetlał widżet GPU.

Dlaczego Arc A310 była lepszym wyborem niż RX 6400

Aktualny przewodnik Jellyfin dotyczący akceleracji GPU Intel wskazuje QSV jako preferowane rozwiązanie dla popularnych układów GPU Intel i wyraźnie obsługuje sprzęt Arc serii A w systemie Linux. Karty Arc serii A obsługują również kodowanie AV1, co jest cenną funkcją dedykowanej karty do transkodowania multimediów.

Aktualny przewodnik zgodności GPU w ZimaOS wymienia Intel A310, A380, A580, A750 i A770 w tabeli zgodności kart Intel serii A.

Bezpośrednie odtwarzanie może sprawić, że działające GPU wygląda na bezczynne

Panel Jellyfin 10.11.8 z opcją ponownego uruchomienia
Społeczność wielokrotnie podkreślała konieczność ponownego uruchomienia Jellyfin po zmianie ustawień akceleracji sprzętowej. Źródło: forum społeczności IceWhale.

Jedną z najbardziej przydatnych korekt w wątku było wskazanie, że podczas odtwarzania lokalnego źródłowy plik może być odtwarzany bezpośrednio. W takim przypadku Jellyfin ma niewielki powód, aby intensywnie korzystać z GPU. Aby zweryfikować transkodowanie sprzętowe, celowo wymuś niższy bitrate, niezgodny kodek, wypalanie napisów lub inny warunek wymagający konwersji.

Odtwarzanie w Jellyfin z nakładką z informacjami o transkodowaniu
Diagnostyka odtwarzania służyła do rozróżnienia bezpośredniego odtwarzania od rzeczywistego transkodowania. Źródło: forum społeczności IceWhale.

QSV i VA-API mają znaczenie w systemie Linux

Ustawienia transkodowania Jellyfin VA-API z opcjami enkodera Intel o niskim poborze mocy
Użytkownik początkowo przetestował VA-API z kartą Arc A310 i wybrał opcje enkodera Intel o niskim poborze mocy. Źródło: forum społeczności IceWhale.
Konfiguracja transkodowania Jellyfin Intel Quick Sync
Społeczność zaleciła Intel Quick Sync dla nowszego procesora graficznego Arc zamiast polegania wyłącznie na VA-API. Źródło: forum społeczności IceWhale.

Społeczność przeszła z VA-API na Intel Quick Sync. Jest to zgodne z aktualnymi zaleceniami Jellyfin: QSV jest ogólnie preferowane na obsługiwanym, współczesnym sprzęcie Intela, natomiast VA-API pozostaje dostępne i jest ważne w przypadku starszych konfiguracji oraz ścieżek nastawionych na zgodność.

Nie zaznaczaj bez namysłu pól wyboru wszystkich kodeków. Włączaj tylko formaty faktycznie udostępniane przez sprzęt i stos sterowników.

Uruchom ponownie Jellyfin po zmianie ustawień akceleracji

Wyróżniony przycisk ponownego uruchomienia Jellyfin
W jednej z odpowiedzi podkreślono konieczność ponownego uruchomienia Jellyfin po zmianie ustawień akceleracji. Źródło: forum społeczności IceWhale.
Ustawienia trickplay w Jellyfin z włączonym dekodowaniem sprzętowym
Akceleracja sprzętowa była również włączona dla generowania obrazów trickplay. Źródło: forum społeczności IceWhale.

Niektóre ustawienia w Jellyfin są stosowane dopiero po ponownym uruchomieniu procesu serwera. Użytkownik włączył również akcelerację sprzętową generowania obrazów trickplay, co może zmniejszyć obciążenie procesora podczas tworzenia obrazów podglądu, ale dodaje kolejne obciążenie procesora graficznego podczas przetwarzania biblioteki.

Panel Jellyfin generujący obrazy trickplay
Panel serwera pokazywał zadanie generowania obrazów trickplay po zmianach konfiguracji procesora graficznego. Źródło: forum społeczności IceWhale.

Puste pole urządzenia QSV nie dowodzi awarii

Ustawienia QSV w Jellyfin z pustym polem urządzenia QSV
Pole urządzenia QSV pozostało puste, mimo że późniejsze testy sugerowały, iż transkodowanie działało. Źródło: forum społeczności IceWhale.
Opcje sprzętowego kodowania Intel i mapowania tonów VPP w Jellyfin
Użytkownik udostępnił dolną sekcję konfiguracji sprzętowego kodowania firmy Intel. Źródło: forum społeczności IceWhale.
Ustawienia mapowania tonów Jellyfin dla Intel QSV
Opcje mapowania tonów były częścią zestawu narzędzi do rozwiązywania problemów, a nie dowodem, że każdy format był akcelerowany. Źródło: forum społeczności IceWhale.

Użytkownik obawiał się, ponieważ Jellyfin nie wyświetlał nazwy urządzenia QSV w taki sam sposób jak inny system. Odpowiedzi społeczności sugerowały pozostawienie tego pola pustego i przetestowanie rzeczywistego działania transkodowania zamiast diagnozowania problemu wyłącznie na podstawie etykiety interfejsu.

Weryfikacja procesora graficznego na hoście i podczas rzeczywistego transkodowania

Dane wyjściowe terminala zawierające listę możliwości akceleracji wideo procesora graficznego Intela
Dane wyjściowe wiersza poleceń posłużyły do zweryfikowania, że stos graficzny Intela udostępniał profile wideo. Źródło: forum społeczności IceWhale.
intel_gpu_top pokazujący aktywność silnika wideo podczas transkodowania w Jellyfin
To był najmocniejszy dowód aktywności w czasie działania: intel_gpu_top pokazywał znaczną aktywność silnika wideo pochodzącą z ffmpeg. Źródło: forum społeczności IceWhale.

Najmocniejszym dowodem w wątku była aktywność w czasie działania: intel_gpu_top pokazywał zajętość silnika wideo podczas działania procesu FFmpeg. Dowodzi to więcej niż statyczna lista urządzeń, ponieważ pokazuje, że silnik multimedialny faktycznie pracował w momencie transkodowania.

Przewodnik po akceleracji sprzętowej wyjaśnia tę samą granicę między bezpośrednim odtwarzaniem a transkodowaniem, natomiast przewodnik po wymaganiach sprzętowych Jellyfin pomaga zdecydować, czy dedykowany GPU jest w ogóle potrzebny.

Źródło aplikacji i wersja nadal mają znaczenie

Filtr Sklepu z aplikacjami ZimaOS pokazujący oficjalne i zatwierdzone certyfikowane aplikacje
Dyskusja rozróżniała także wbudowane lub zatwierdzone definicje aplikacji od repozytoriów zewnętrznych. Źródło: forum społeczności IceWhale.

Wątek dotyczył również kategorii źródeł Sklepu z aplikacjami i nowszych wersji Jellyfin. Sprawna karta GPU w hoście nie gwarantuje, że każdy obraz kontenera udostępnia /dev/dri lub zawiera te same biblioteki FFmpeg/mediów. Gdy akceleracja przestaje działać po aktualizacji aplikacji, przed obwinieniem karty porównaj definicję kontenera i mapowania urządzeń.

Odtwarzanie w przeglądarce to osobna warstwa zgodności

Informacje o multimediach w Jellyfin pokazujące dźwięk DTS-HD MA
W wątku zauważono, że odtwarzanie w przeglądarce i w dedykowanych klientach Jellyfin może różnić się w przypadku zaawansowanych formatów audio. Źródło: forum społeczności IceWhale.

Dyskusja o dźwięku DTS i Dolby jest niezależna od wykrywania GPU. Przeglądarka może wymuszać transkodowanie albo nie przekazywać formatu audio, który dedykowany klient Jellyfin potrafi obsłużyć bezpośrednio. Przy ocenie, czy „problem z GPU” jest w rzeczywistości problemem zgodności klienta multimedialnego, należy uwzględnić typ klienta i informacje o odtwarzaniu.

Co ostatecznie udało się osiągnąć użytkownikowi

Strona serialu w Jellyfin po skonfigurowaniu GPU
Po zmianach dotyczących akceleracji użytkownik nadal sprawdzał prawidłowe działanie biblioteki i odtwarzania. Źródło: forum społeczności IceWhale.
Pulpit Jellyfin w wersji 10.11.8 z aktywnością i ścieżkami przechowywania
Na późniejszym pulpicie Jellyfin 10.11.8 działał normalnie po rozwiązaniu głównych problemów z konfiguracją transkodowania. Źródło: forum społeczności IceWhale.

Pod koniec wątku użytkownik poinformował, że transkodowanie ogólnie działało dobrze. Proces konfiguracji ujawnił jednak pewne niedopracowania — brakujące etykiety w interfejsie, inne zachowanie starszych multimediów i pewną niepewność co do ustawień — ale A310 faktycznie wykonywał pracę związaną z wideo.

Podsumowanie

W przypadku kompaktowej karty do transkodowania Jellyfin w aktualnym systemie Linux/ZimaOS Intel Arc A310 to uzasadniony wybór, ponieważ Jellyfin obsługuje QSV/VA-API na kartach Arc, a ZimaOS obecnie wymienia A310 w tabeli zgodności urządzeń Intel. Skuteczność należy zweryfikować, wymuszając rzeczywiste transkodowanie i sprawdzając aktywność silnika GPU, a nie polegając wyłącznie na widżecie pulpitu ZimaOS.