• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

mplayer Interface

Themenstarter #1
Hallo,
kann mir wer ein Interface für den mplayer empfehlen? Je simpler, desto besser, am liebsten ein sh, csh oder ksh script, Python wäre notfalls auch okay
 

Kamikaze

Warrior of Sunlight
Mitarbeiter
#2
Irgendwie ist Deine Frage nicht klar. Über das CLI kann man mplayer so bedienen. Wenn es graphisch sein soll ist es natürlich kein sh/csh/ksh script. Meinst Du eine Programmierinterface? Wenn ja für welche Sprache?
 
Themenstarter #3
Irgendwie ist Deine Frage nicht klar. Über das CLI kann man mplayer so bedienen.
Ich hätte gerne ein möglichst simples Script aka:

Code:
#!/bin/csh
echo "1.) Gängigste Option 1"
echo "2.) Gängigste Option 2"
echo "3.) Gängigste Option 3"

set inputline = $<

if [inputline == 1] then
...
....
else ...

fi
Der Syntax hat keine Hand und keinen Fuß, sollte nur als Bsp dienen :ugly:

Quasi für die gängigsten Funktionen eine Abhandlung in einem Script, so lesbar wie möglich. Würds ja selber machen, aber für mplayer hätte ich da locker ne Woche Arbeit


EDIT:
Ach okay jetzt kapier ich auch das Missverständnis, hätte gerne ein textbasiertes Interface innerhalb einer Shell, brauch da keine Köpfe, damit ich die Maus draufschieben kann :)
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#5
Ich würde gar keinen mplayer mehr nehmen. Das Programm war mal genial - da stecken vielleicht sogar noch Reste von vor langer Zeit von mir eingereichten Beiträgen drin - aber es hat seine besten Zeiten hinter sich. Der Code ist vermüllt, wirr und buggy, viele Features funktionieren nur so lala und spielen nicht sauber zusammen. Viele neuere Dinge wie hardwareunterstütztes Dekodieren sind auch nur so lala unterstützt. Der Fork mpv (https://mpv.io/) ist inzwischen ein wesentlich bessere Wahl. Er hat ein deutlich durchdachtes CLI-Interface, bringt ein rudimentäres aber gutes GUI mit, ist wesentlich sauberer implementiert und bekommt auch neuere Sachen vernünftig hin. Zum Beispiel hardwareunterstützte Decodierung per VDPAU oder VAAPI, Framerate-Scaling um 24p Filme ruckelfrei auf 60hz Monitoren schauen zu können, etc. Er hat auch eine API, über die er sich in Lua komplett verscripten lässt.

Statt einem Wrapperscript kannst du auch Profile nutzen. Die werden bei beiden Playern in der Config definiert und können dann einfach per '-profile $name' (mplayer) oder '--profile=$name' (mpv) aufgerufen werden. Meine Config für mpv definiert z.B. ein Profil um die Audiokanäle fehlencodeter Vorbis-Tracks zu reparieren:
Code:
# Always stay on top.
ontop

# Place ASS subtitles in the black borders at
# the bottom and top of the screen when they
# available.
sub-use-margins

# Script to override missing parts of ASS
# subtitle definitions.
sub-ass-styles=/home/yamagi/.mpv/styles.ass

# Override only missing definitions.
sub-ass-style-override=no

# Save position on exit.
save-position-on-quit=yes

# Cache 32MB. The SMR harddrive is slow and I
# don't trust Linux prefetching algorithm. ;)
cache=32768

# OpenGL output.
vo=opengl

# High quality OpenGL rendering as standard.
profile=opengl-hq

# And VAAPI for acceleration.
hwdec=vaapi

# Never call glFlush() before displaying a
# frame. It leads to subtile stuttering on
# our GPU when VAAPI is used.
opengl-early-flush=no

# Start in fullscreen.
fullscreen

# Framerate interpolation, how to to match
# X video frames with Y display frames. The
# picture stream is resampled onto an over-
# sampled, linear timescale.
video-sync=display-resample
tscale=oversample
interpolation

# -------------------------------------------------------------------- #

# Reroutes (broken) Vorbis channel mappings.
[vorbissurround]
af=channels=6:[1-2,2-1,3-5,4-3,5-4]

# -------------------------------------------------------------------- #
mpv bietet übrigens auch eine umfassende Vervollständigung für die zsh. Als echtes GUI ist smplayer zu empfehlen.
 
Themenstarter #6
Was sind diese gängigsten Funktionen, von denen Du sprichst? Etwas abspielen?
Ja
Code:
mplayer [options] [file|URL|playlist|−]
Mehr oder weniger diese Zeile aufgesplittet

Hat sich mit dem Post von Yamagi aber für mich erledigt, dachte eig. mplayer wäre die sauberste Wahl.


Danke euch beiden für die Hilfe und sorry für meine magere Erklärung was ich suche. Bin ein Fan davon alles in Scripte zu packen um mir den Syntax nicht merken zu müssen, blos bei manchen Manpages wie zB mplayer fehlt mir die nötige Lust selbst Hand anzulegen :)

Werde mir mpv später mal ansehen!
 
#8
Ich würde gar keinen mplayer mehr nehmen. Das Programm war mal genial - da stecken vielleicht sogar noch Reste von vor langer Zeit von mir eingereichten Beiträgen drin - aber es hat seine besten Zeiten hinter sich. Der Code ist vermüllt, wirr und buggy, viele Features funktionieren nur so lala und spielen nicht sauber zusammen. Viele neuere Dinge wie hardwareunterstütztes Dekodieren sind auch nur so lala unterstützt. Der Fork mpv (https://mpv.io/) ist inzwischen ein wesentlich bessere Wahl. Er hat ein deutlich durchdachtes CLI-Interface, bringt ein rudimentäres aber gutes GUI mit, ist wesentlich sauberer implementiert und bekommt auch neuere Sachen vernünftig hin. Zum Beispiel hardwareunterstützte Decodierung per VDPAU oder VAAPI, Framerate-Scaling um 24p Filme ruckelfrei auf 60hz Monitoren schauen zu können, etc. Er hat auch eine API, über die er sich in Lua komplett verscripten lässt.

mpv bietet übrigens auch eine umfassende Vervollständigung für die zsh. Als echtes GUI ist smplayer zu empfehlen.
Wow, sehr guter Tip, auch für meine Windows-Büchse! Vielen Dank!
 
Themenstarter #11
Der Fork mpv (https://mpv.io/) ist inzwischen ein wesentlich bessere Wahl.
Nochmals vielen Dank für den Tipp, hast mich bestimmt vor negativen Erfahrungen mit dem mplayer bewahrt :ugly:

Statt einem Wrapperscript kannst du auch Profile nutzen. Die werden bei beiden Playern in der Config definiert und können dann einfach per '-profile $name' (mplayer) oder '--profile=$name' (mpv) aufgerufen werden.
Perfekte Lösung, auch wenns doch bissl mehr Aufwand, als Copy+Paste ist :)