Skip to content

Latest commit

 

History

History
104 lines (72 loc) · 4.05 KB

READMEde.md

File metadata and controls

104 lines (72 loc) · 4.05 KB

mpvMatroska

mpvMatroska ist ein Lua script für mpv wodurch mpv nahezu in einen vollständigen Matroska Player verwandelt wird.

Das Projekt befindet sich im Aufbau und es funktioniert auch noch nicht viel und vieles wird sich ändern mit der Zeit. Dennoch gibt es auch schon einige funktionierende Matroska Features.

mpvMatroska Entwicklung

Zum Testen der Matroska Features nutze ich mein Matroska-Playback Repo.

Installation

mpvMatroska benutzt einige andere Lua Module.

Damit aber alles einfach bleibt nutzt mpvMatroska das mpv Ordner System für Scripte die aus mehreren Modulen bestehen.

Alles was man tun muss, ist den mpvMatroska Ordner in den mpv Scripte Ordner kopieren.

Die aktuelle Version von mpvMatroska kann in den Releases heruntergeladen werden.

uosc

mpvMatroska nutzt die GUI von uosc für die Darstellung von Listen und Buttons. mpvMatroska funktioniert auch weiterhin ohne uosc, allerdings hat man dann keine Auswahllisten.

funktionierende Matroska Features

  • Hard-Linking
  • Verschachtelte Kapitel
  • Reihenfolgentreue Kapitel
  • Verschachtelte-Reihenfolgentreue Kapitel
  • Verknüpfende Kapitel (mit Kapitel Dauer)
  • Verknüpfte-Version Kapitel
  • Multiple Kapitelnamen
  • Multiple Versionsnamen
  • Video Rotation (mit ProjectionPoseRoll Element)
  • MatroskaScript Menü

mpvMatroska Features

  • Automatisches Umschalten der Versions- und Kapitel Namen wenn die Audio- oder Untertitelspur gewechselt wird
  • Verbesserte Titel Anzeige: der aktuelle Versionsname wird an den Dateinamen oder den Datei Titel(wenn vorhanden) angehängt
  • Korrekte Versionen Liste: der Standard Short-Cut "E" wird intern mit einer eigenen Durchschalt-Methode verarbeitet
  • Video Rotation: mit den Matroska Tags (nicht offiziell in den Matroska Spezifikationen)
  • Matroska Inhaltsgruppierung: noch nicht offiziell in den Matroska Spezifikationen enthalten

Matroska Inhaltsgruppierung

Bei dieser Matroska Eigenschaft geht es darum den Inhalt in einer Matroska Datei sinnvoll zu gruppieren. Der Inhalt sind alle Spurtypen sowie die Versionen/Kapitel. Dies ist die Grundbasis von Haali TRACKSETEX. Als weiterer Inhalt könnten noch die Matroska Anhänge verwendet werden, um zum Beispiel gezielt eine Schriftart für einen Untertitel zu laden.

Für das Durchschalten vorhandener Inhaltsgruppen ist der Hotkey g verfügbar. Weiterhin kann in der mpv input.conf ein frei wählbarer Hotkey eingerichtet werden mittels dem script-message-to System.

Um die Inhaltsgruppen mit der Taste "k" umzuschalten wird folgende Zeile verwendet.

k script-message-to mpvMatroska cycle-contentgroups

Wenn uosc installiert ist kann man mit dem Hotkey ALT+g das Auswahlmenü öffnen. Ebenso kann ein eigener Hotkey vergeben werden um das Auswahlmenü zu öffnen.

G script-message-to mpvMatroska open-contentgroups

Weiterhin kann man in uosc einen eigenen Button im Kontrollmenü einbauen. Dazu muss man in der uosc.conf die Zeile controls= anpassen. Ich nutze dazu folgenden code.

command:hub:script-binding mpvMatroska/open-contentgroups?Content-Groups

Matroska Versionen

Momentan verarbeitet mpv multiple Versionen nicht korrekt und erstellt sogar eine falsche Liste wenn verknüpfende Kapitel ins Spiel kommen. Daher sollte zum Umschaten der Versionen nicht die mpv interne Methode genutzt werden.

Für das Durchschalten der Versionen kann ebenfalls ein eigener Hotkey vergeben werden.

your-key script-message-to mpvMatroska cycle-editions

Im uosc Kontrollmenü kann (und sollte) ein eigener Versionen Button erstellt werden. Dazu muss man in der uosc.conf die Zeile controls= anpassen. Der vordefiniert Standard Eintrag muss ersetzt werden.

// originaler Eintrag:
<has_many_edition>editions

// zu ersetzen mit:
command:bookmarks:script-binding mpvMatroska/open-editions?Editions