Günstige Grafik für H.265 4K Playback

LukeLR101

Cadet 4th Year
Registriert
Okt. 2015
Beiträge
72
Hallo liebe Community,

Für einen neuen CPU-fokussierten PC-Build ist die einzige Anforderung an die GPU, 4K H.265-Videos hardwarebeschleunigt abspielen zu können. Da keine weiteren Anforderungen an die GPU gestellt sind, will ich natürlich eine kostengünstige Lösung wählen. Momentan habe ich drei Lösungen im Kopf:

  • Oberklasse-Intel-CPU mit integrierter HD 630 (i9-9900K)
  • Prozessor ohne iGPU (z.B. Ryzen Threadripper 2920X) mit dedizierter low-end-GPU von AMD (z.B. Radeon RX 560)
  • Prozessor ohne iGPU mit dedizierter low-end-GPU von NVidia (z.B. GTX 1050).
Meine Fragen dazu:
  • Welche Lösung ist am besten für den Anwendungszeck geeignet, oder gehts mit allen dreien?
  • Gibt es irgendwo genauere Herstellerangaben zur Unterstützung von Video-decoding auf den verschiedenen Chips (bisher hab ich maximal die Angabe „HEVC: Yes“ gefunden, das sagt aber natürlich nichts über unterstützte Auflösungen / Profile)
Und eine weitere, fortgeschrittenere Frage, falls sich jemand hier damit auskennt:
  • Welche der möglichen Lösungen hat den besten Support unter Linux (durch VA-API, VDPAU)?
Da es ein ausschließliches Linux-System wird, tendiere ich im Moment entweder zur iGPU von Intel oder der AMD-GPU, wegen der Quelloffenheit. Wenn eine NVIDIA-Lösung allerdings Vorteile hätte, wäre ich auch dazu bereit.

Vielen Dank schonmal für jegliche Rückmeldungen! Viele Grüße,

Lukas
 
Ganz klar, die Lösung mit Intel und iGPU. Wozu eine dezidierte GPU bei diesem Anwendungsfall. Das können die Intel iGPUs auch.
 
Eine Oberklasse Intel CPU muss es ja auch nicht sein nur für Playback, also ein 9900K wäre für den Anwendungsfall weit übers Ziel hinaus geschossen.
Es würde grundsätzlich schon eine aktuelle Intel Atom CPU reichen, je nachdem was Du eben sonst noch brauchst an reiner roher Leistung, dann natürlich auch stärkere Modelle (hast Du ja nicht weiter ausgeführt was das ist).
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Chillaholic und K3ks
Da es um Linux geht würde ich die Nvidia-Lösung ausschließen. Bei den anderen ist es egal - würde ich von der gewünschten CPU bzw. Plattform abhängig machen - persönlich würde ich da AM4 vorziehen, da du dort mehr CPU-Leistung bekommst und noch bekommen wirst - für 1151v2 wird nichts mehr kommen.

Es gibt unter der RX560 ja auch noch die RX550, die reicht auch.
 
Tut mir Leid, vielleicht war die Formulierung da etwas Missverständlich: Das Decodieren von H.265-Video ist die einzige Anforderung, die die GPU erfüllen muss. Der Rechner wird natürlich nicht nur zum Anschauen von Videos genutzt, nur sind der Rest eben ausschließlich CPU-intensive Aufgaben, sodass die Grafik für sonst nichts genutzt wird. Deshalb soll es schon eine leistungsstarke CPU werden.

Der Vorteil von einer dedizierten GPU ist halt, dass man in der Kombi mit z.B. Ryzen Threadripper 2920 doch nochmal ein wenig mehr Leistung erhält, zum gleichen Preis. Wenn sich also damit auch eine gute Videolösung finden ließe, wäre das natürlich interessant.

Netflix ist jedenfalls nicht relevant, ich nutze keine Streaming-Dienste. Trotzdem danke für den Hinweis!
Ergänzung ()

ghecko schrieb:

Danke für den Hinweis! Hab auch schon im Wikipedia-Artikel zum UVD6.3 den Hinweis auf H.265-Video gesehen. Nur konnte ich keine genaueren Spezifikationen dazu finden, also welche Auflösung / welches Profil unterstützt wird. Und, ob auch die Unterstützung durch VA-API für diesen Chip gegeben ist. Hast du / jemand anderes Infos, oder Ahnung, wie ich das herausfinden könnte? :)
 
Ich kanns dir als Linux-Nutzer mit einer RX560 auch garantieren ;)
Code:
vainfo
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_1
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.1 (libva 2.1.0)
vainfo: Driver version: Mesa Gallium driver 19.2.0-devel for Radeon RX 560 Series (POLARIS11, DRM 3.23.0, 4.15.0-54-generic, LLVM 8.0.1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :    VAEntrypointVLD
      VAProfileMPEG2Main              :    VAEntrypointVLD
      VAProfileVC1Simple              :    VAEntrypointVLD
      VAProfileVC1Main                :    VAEntrypointVLD
      VAProfileVC1Advanced            :    VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:    VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:    VAEntrypointEncSlice
      VAProfileH264Main               :    VAEntrypointVLD
      VAProfileH264Main               :    VAEntrypointEncSlice
      VAProfileH264High               :    VAEntrypointVLD
      VAProfileH264High               :    VAEntrypointEncSlice
      VAProfileHEVCMain               :    VAEntrypointVLD
      VAProfileHEVCMain               :    VAEntrypointEncSlice
      VAProfileHEVCMain10             :    VAEntrypointVLD
      VAProfileJPEGBaseline           :    VAEntrypointVLD
      VAProfileNone                   :    VAEntrypointVideoProc

VAAPI unterstützt in den oben genannten Profilen die maximalen Auflösungen der Hardware. Also kannst du dich diesbezüglich an der UVD-Wiki orientieren. (4k 60Hz H265, 10-Bit)

Ich nutze über mpv aber vo=gpu statt hwdec=vaapi.
Leicht bessere Bildqualität und die CPU-Auslastung hält sich in Grenzen. Mit einem R7 2700 merkt man davon nix.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: LukeLR101 und TheDev
Cool! Das hilft mir sehr weiter. Musst du dazu closed-Source Treiber nutzen? Läuft es flüssig, und wie sieht die CPU-Auslastung aus? Hast du mal 4K probiert?
 
Ne, läuft alles mit dem freien amdgpu-treiber, der Teil jedes aktuellen Kernels ist. libva liefern die meisten distros ebenfalls schon im Installationsimage mit aus.

Ich habs getestet, 4k H265 60fps läuft. CPU Auslastung bei VAAPI so bei 2%, bei vo=gpu mit mpv je nach Material bei 8-20%. Bei 4k VP9 von Youtube über mpv sind es zb 10%. VP9 gibts leider erst in den neuen Karten oder den APUs.

Hab ein Dualmonitor Setup und für die RX560 eine GTX950 entsorgt. Videodecoding läuft besser (trotz selbstgebautem ffmpeg für nvdec) und auf dem Desktop ist alles flüssiger. Frag nicht nach dem Verschieben eines Fensters mit aktivem Videodecoding bei einer Nvidia-GPU, das macht keinen Spaß.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: LukeLR101
Das klingt doch echt überzeugend! Also die 2% hast du bei Verwendung von hwdec=vaapi? Und du kannst nicht zufällig was über den Stromverbrauch von der RX560 sagen, oder?
 
Ja, ~2% bei VAAPI.
Zum Stromverbrauch kann ich nichts sagen, allerdings gibt es dazu sicher Benchmarks im Internet, was die ensprechenden Karten in den Szenarien verbrauchen. Die Zeiten in denen die unter Linux mehr verbraucht haben als unter Windows sind vorbei. Aber es kann nicht viel sein, meine schmeißt für 4k VAAPI nicht mal die Lüfter an.
 
Die RX560 ist da sehr genügsam, es gibt Modelle ohne PCIe-Stromanschluss die maximal 75W brauchen. Der selbe Chip wird ja auch in Notebooks verwendet. Meine RX460 Nitro OC von Sapphire hat zwar einen, aber das ist halt auch ein OC Modell. Ich habe das zwar nie gemessen, aber sie lässt sie an einem R5 1600 auch mit einem 300W-Netzteil unter GPU-Volllast betreiben. Das ist natürlich keine Empfehlung - aber es zeigt, dass die Karte wirklich sehr genügsam ist (schon mit einer RX570 ginge das nicht).
 
Eine kleine AMD Grafikkarte reicht da völlig aus, eine RX550 wäre völlig ausreichend.
Selbst die Radeon Pro 455 in meinem MacBook Pro beschleunigt H265 vollständig und ohne die Notebooklüfter aufdrehen zu lassen und die ist noch ein ganzes Stück langsamer als die hier genannten RX550 oder RX560.
 
Die Radeon Pro 455 müsste stärker als eine RX550 sein, die RX550 basiert auf Polaris 12 (12 CUs), welcher kleiner ist als Polaris 11 (16 CUs, bei der 455 sind 14 aktiv). Trotzdem reicht die RX550.
 
Zurück
Oben