[gelöst] "Smoothe" Video-Wiedergabe

Sound, Digitalkameras, TV+Video und Spiele.
Antworten
RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

[gelöst] "Smoothe" Video-Wiedergabe

Beitrag von RobertDebiannutzer » 01.08.2018 11:44:44

Problem:
Nehmen wir als Beispiel die erste gute halbe Minute von "Despacito". Auf YouTube zu finden: https://www.youtube.com/watch?v=kJQP7kiw5Fk. Ich habe das nicht wegen der Musik als Beispiel gewählt, sondern weil es da am Anfang anspruchsvoll wiederzugebende Video-Aufnahmen gibt, z.B. die Flugszenen über das Meer.
Ich lade mir das also mit youtube-dl herunter und schaue es dann mit mpv. (Man kann es auch mit mpv/vlc/sonstwas direkt übers Internet schauen, aber dann kann die Internet-Verbindung mit reinfunken.)
Nun ruckelt die Wiedergabe leider an manchen Stellen etwas, z.B. bei den Flügen oder wenn sich in Sekunde 9/10 dieses kleine Heiligenhäuschen (oder wie man das nennt) aus dem Bild bewegt.
Es ist nicht so, dass es ganz mies wäre, aber die Bewegungen sind auch nicht schön smooth. Mit vlc ist es das Gleiche.

Daten:
#Hardware
CPU: Intel i5-8250U
GraKa: Intel UHD 620
Festplatte: Samsung Pro SSD
Display-Auflösung: 1920x1080 (Full-HD)
#Software
aktuelles stretch mit stable-Kernel
firmware-linux-free 3.4
firmware-misc-nonfree 20170823-1~bpo9+1
intel-microcode 3.20180703.2~bpo9+1
Datei /etc/modprobe.d/i915.conf enthält: "options i915 enable_guc_loading=1 enable_guc_submission=1"

Was habe ich bisher noch so probiert?
In der X-Umgebung bin ich in Abstufungen bis zu diesem Befehlswurm vorgestoßen:

Code: Alles auswählen

mpv --vo=opengl --profile=opengl-hq --video-sync=${hier habe ich einiges probiert} --interpolation --scale=oversample --tscale=oversample
In tty bin ich in Abstufungen bis zu folgendem vorgestoßen:

Code: Alles auswählen

mpv --vo=opengl --profile=opengl-hq --opengl-backend=drm --video-sync=${hier habe ich einiges probiert} --interpolation --scale=oversample --tscale=oversample
Hat leider alles nix gebracht bzw. das video-sync-Zeug hat die Wiedergabe verschlechtert.

Frage:
Weiß jemand, ob mit meiner Hardware eine bessere Wiedergabe möglich ist? Und wenn ja - wie?

Vielen Dank!
Zuletzt geändert von RobertDebiannutzer am 06.08.2018 08:43:59, insgesamt 1-mal geändert.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: "Smoothe" Video-Wiedergabe

Beitrag von Lord_Carlos » 01.08.2018 12:29:49

Ich wuerde es mit Hardwarebeschleunigung wiedergeben. Spart auch strom :)
https://wiki.archlinux.org/index.php/mp ... e_decoding

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: "Smoothe" Video-Wiedergabe

Beitrag von hikaru » 01.08.2018 12:46:34

Das ist ein 264-Video mit 1920x1080 Pixeln bei 24 fps.
Selbst ein über 10 Jahre alter mobil-Core2Duo sollte das in Software schaffen. Zumindest mache ich sowas regelmäßig mit meinem alten Subnotebook.

Was sagt denn mpv im Terminal beim Abspielen des Videos? Siehst du da Framedrops oder eine nennenswerte A-V-Asynchronität?

DeletedUserReAsG

Re: "Smoothe" Video-Wiedergabe

Beitrag von DeletedUserReAsG » 01.08.2018 12:53:09

Sicher, dass es nicht am Video selbst liegt? So richtig „smooth“ ist’s hier nicht mal, wenn ich auf 144p runterskaliere. Genauer gesagt, nehme ich das Ruckeln an genau den gleichen Stellen wahr, wie bei 1080p. Anders gefragt: hast du ein System, bei dem es wunschgemäß smooth wiedergegeben wird?

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

Re: "Smoothe" Video-Wiedergabe

Beitrag von RobertDebiannutzer » 01.08.2018 13:05:02

Vielen Dank für eure Antworten.

Ich habe es mal mit Hardware-Decoding probiert:

Code: Alles auswählen

:~/Videos$ mpv --hwdec=auto Despacito
Playing: Despacito
 (+) Video --vid=1 (*) (h264)
 (+) Audio --aid=1 --alang=eng (*) (opus)
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
Failed to open VDPAU backend libvdpau_i965.so: cannot open shared object file: No such file or directory
AO: [pulse] 48000Hz stereo 2ch float
Using hardware decoding (vaapi).
VO: [opengl] 1920x1080 vaapi
(Paused) AV: 00:00:34 / 00:04:41 (12%) A-V:  0.000


Exiting... (Quit)
Ist das Gleiche wie ohne.
Es ist nicht so, dass das ganze Video in Sekunde 9-10 z.B. ruckeln würde. Aber wenn ich mich auf die Kante des Heiligenhäuschens konzentriert, sehe ich deutlich, wie es aus dem Bild zuckelt.

Ich habe kein anderes Test-System. Dann müsste ich vielleicht mal ein anderes Video probieren. Ich dachte halt, dass Despacito eine gute Referenz ist - weil es da halt auch ziemlich auffällt, wenn die Wiedergabe nicht perfekt smooth ist.

P.S.:
@hikaru: Nein, solche Meldungen hat mpv mir nie angezeigt.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: "Smoothe" Video-Wiedergabe

Beitrag von Lord_Carlos » 01.08.2018 13:31:34

Hier gibt es ein OpenSource video zum testen in verschiedenen formaten: http://download.blender.org/peach/bigbuckbunny_movies/

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: "Smoothe" Video-Wiedergabe

Beitrag von hikaru » 01.08.2018 13:33:20

RobertDebiannutzer hat geschrieben: ↑ zum Beitrag ↑
01.08.2018 13:05:02
Ich dachte halt, dass Despacito eine gute Referenz ist - weil es da halt auch ziemlich auffällt, wenn die Wiedergabe nicht perfekt smooth ist.
Ich benutze als Referenz gern Big Buck Bunny [1] (h264 & Ton; aber kein h265 & UHD) oder die Jellyfish-Demo [2] (h264, h265 & UHD; aber kein Ton).
Zumindest BBB war vor einigen Jahren auch sowas wie die Quasi-Referenz. Zu Jellyfish hatte ich anfangs sowas gehört, dass es sich wohl als "neue" Referenz etablieren würde, aber darum wurde es dann eher still.

Mit deiner Hardware sollten alle BBB-Videos problemlos laufen, sowohl mit Software- als auch Hardwaredecodierung.
Von den Jellyfish-Videos sollten im Prinzip alle in Hardware decodiert laufen, aber ich würde nicht ausschließen, dass sie bei höheren Bitraten in uhd-hevc-10bit an ihre Grenzen stößt. In Software dürftest du keines der UHD-Videos schaffen und auch bei den hd-hevc-Videos reicht vielleicht irgendwann die Leistung nicht mehr.


[1] http://download.blender.org/peach/bigbuckbunny_movies/
[2] http://jell.yfish.us/

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

Re: "Smoothe" Video-Wiedergabe

Beitrag von RobertDebiannutzer » 02.08.2018 08:20:13

Vielen Dank, ich habe mal ein bisschen getestet. Bei so fließenden/gleitenden Bewegungen des Bildes sehe ich immer noch (auch mit hwdec) ein klein bisschen Ruckeln, z.B. bei http://download.blender.org/peach/bigbu ... p_h264.mov wenn sich in den Anfangssekunden die Bäume rechts ins Bild schieben. Schaue ich da auf den Baum ganz rechts, ist dessen Bewegung nicht perfekt fließend, sondern ein klein wenig ruckelig.
Aber vielleicht bin ich da auch nur zu empfindlich und das ist normal so...?

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: "Smoothe" Video-Wiedergabe

Beitrag von MSfree » 02.08.2018 08:47:37

RobertDebiannutzer hat geschrieben: ↑ zum Beitrag ↑
02.08.2018 08:20:13
Aber vielleicht bin ich da auch nur zu empfindlich und das ist normal so...?
Wenn du diese hochaufgelösten Filme mal mit ffmpeg nach z.B. 1024x576 Pixel Auflösung transkodierst, dann spielt die Geschwindigkeit der Hardware beim Abspielen so gut wie keine Rolle mehr, das packt sogar ein altes Netbook mit 1.6GHz Single-Core Atom.

Wenn du dann immer noch ruckeln siehst, ist es also kein Hardwareproblem.

Die hochefffizienten Kompressionsverfahren H.264 und H.265 sind zum Einen verlustbehaftet. und sie nutzen zum Anderen Methoden, die die Kompressionsrate steigern. Z.B. wird Motiondetection eingesetzt, ein durch das Bild wanderndes Objekt ändert sich ja nur in der Position, muß also nur einmal komprimiert werden mit der Zusatzinformation, um wie viele Pixel es sich bewegt hat. Ändert sich aber die Perspektive zu so einem Objekt, entscheidet der Algorythmus, ob die perspektive Änderung eventuell vernachlässigt werden kann oder ob das Objekt erneut komprimiert werden muß. Würde der Algorythmus z.B. bei 4 aufeinander folgenden Bildern sich dafür entscheiden, bei den ersten drei die perspektive Änderung zu vernachlässigen und im 4. Bild die Scene komplett neu komprimieren, gibt es zwischen dem 3. und dem 4. Bild einen leichten Bruch, den man als Ruckeln empfinden kann.

Filme unkomprimiert zu verteilen, um negativen Kompressionsartefakte zu vermeiden, ist aber keine Lösung. Ein 90min Kinofilm mit 24 Bildern pro Sekunde in 4K Auflösung würde rund 3TiB Platz benötigen.

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

[gelöst] Re: "Smoothe" Video-Wiedergabe

Beitrag von RobertDebiannutzer » 06.08.2018 08:43:46

Danke für die Erklärung. Dann habe ich wohl einfach zu kritisch hingeschaut. Liegt sicher daran, dass ich mein neues Notebook testen wollte und somit genauer hingeschaut habe als üblich.

Antworten