Selur's Little Message Board

Full Version: VAAPI-Encoding (Linux/Arch)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Quote:Klappt natürlich nur mit INTEL-Device.
Laut https://trac.ffmpeg.org/wiki/Hardware/VAAPI hört sich das so an als ob es für vor allem für AMD gedacht ist,... Bei Intel wird auf QSV verwiesen.
-> verwirrt
Probleme die ich aktuell sehe:
  • Keine Ahnung was mir 'profile and level set the values of general_profile_idc and general_level_idc respectively.' sagen in bezug darauf was für Level und Profiles unterstützt werden.
  • Keine Ahnung was in Bezug auf vp8 und vp9 encoding unterstützt wird.
  • Keine Ahnung welche Farbräume unterstützt werden.
-> brauch ne bessere Dokumentation von VAAPI um da was zu unterstützen.

Cu Selur
Schreibfehler: ich meinte "/dev/dri/renderD128" und "/dev/dri/renderD129".

GENAU DAS IST DAS PROBLEM !

vaapi, vdpau usw. sind einfach be***issen dokumentiert. Das ist einfach so und muß auch so deutlich ausgesprochen werden.

Die Infos überholen sich ständig selber, die Optionen ändern sich usw, weil ffmpeg auch ständig weiterentwicklet wird. Deswegen traut sich scheinbar auch keiner an die Unterstützung von vaapi ran.
Darauf bezog sich eigentlich auch der Vorschlag mit den "custom-encoder".
Eigentlich mach ich momentan nix anderes mit meinem ffmpeg-script. Und DAS funktioniert auch. Mir fehlen leider die Kenntnisse das so umzusetzen wie ich es gerne hätte. Der Kalk rieselt halt im Alter Smile

Ich hab seit kurzem eine GTX1070 im Rechner und teste gerade "Nvidia Decoding" via "-hwaccel cuvid" mit "Intel vaapi Encoding. Das ist noch mal schneller mit maximalen Quality-settings. Ich schau mir das Resultat immer aus kurzer Entfernung auf meinem Flachbild-TV ... und das sieht gut aus.  Und das bei einer Bitrate von 8M VBR.
Es ist einfach ein Jammer das vaapi so bescheiden unterstützt wird. Immer nur Windows ... Dodgy

Ok, lassen wir das Thema ruhen. 

Vielleicht kannst du mir bei meinem bash Script helfen.

Ich demuxe mit mkvextract nur die subtitel. Audio/Videoencoding laufen direkt über ffmpeg. Gemuxt wird dann wieder mit mkvmerge. Ohne das du jetzt mein Script kennst, hast du eine Idee wie das Audio-Delay, automatisch wenn vorhanden, mit berücksichtigt wird ?

War das nicht mal so, wenn das Delay im Dateinamen steht (Audio), wird es beim muxen berücksichtigt ? Ich muß halt selber einen Weg finden vaapi zu nutzen.

Quote:denn dann kommt wieder User XY der aus einem YouTube Video oder sonst wo ne Command line hat und rumstänkert warum es denn nicht geht.
Nee, eben nicht. Dieses Feature wird ja dann offiziell gar nicht unterstützt, erscheint dann auch nur in Hybrid wenn es z.B. in der misc.ini oder sonst wo eingeschaltet wird. So war das von mir eigentlich gedacht. Aber egal ...
  • ffmpeg liest keine delay aus Dateinamen
  • Wenn Audio&Video aus der gleichen Quelle kommen und nicht vorher demuxed wurden, berücksichtigt FFmpeg den delay automatisch
  • Wenn Du mkvmerge eine Datei mit Audio&Video gibst wird der delay übernommen und sollte nicht mehr angepasst werden müsse.
Wenn Du Audio&Video separat abarbeitest und in MKVMerge raw streams verwendest musst Du berücksichtigen, dass:
a. der Delay bei eventuellem reencoding geändert wird
b. der Delay in unterschiedlichen Containern unterschiedlich ist
und Du musst im mkvmerge Aufruf den Delay automatisch mit übergeben.
-> wird wohl ein komplizierteres Skript.

Cu Selur
Ja, das wird für mich heftig .... aber muß sein. Ich will "vaapi" und "vdpau" nutzen.

Wie sieht bei Dir die mplayer config aus ? Ich meine die key-bindings (change_rectangle). Bei mir funktionieren die angegebenen Tasten nicht.
Meine MplayerConfig sieht so aus:
Code:
## MPlayer Windows configuration - last rev. 20100716

## It's better to leave this enabled on Windows, since the console is slow.
quiet=yes

## Fancy Color Messages
#msgcolor=yes

## Frame dropping
#framedrop=yes

## drive letter of your DVD
#dvd-device=d:

## Uncomment this for AC-3 passthrough.
#afm=hwac3

## Multithreaded decoding on supported codec
#lavdopts=threads=2

## You can use the DirectX or OpenGL video output, default is directx.
## For Vista or later you should avoid using directx vo, it will
## disable Aero
#vo=directx
vo=direct3d

## video filtering and postprocessing
## eq is useful if your video card does not support video overlay.
#vf=pp,eq
#vf=eq,pp=lb/hb/vb

## Fontconfig
fontconfig=yes
font=Arial
die Tastenkürzel werden von Hybrid abgefangen nicht MPlayer, sprich die config sollte eigentlich egal sein. Smile

Brauch nen Debug Output Level 6+ um zu sehen was da passiert.

Cu Selur
Pages: 1 2