Mediainfo

LaGGGer

Cadet 4th Year
Registriert
Feb. 2014
Beiträge
71
Hallo
Ich bekomme es nicht hin, mediainfo im Terminal zu einer von mir bestimmten Ausgabe zu überreden. Ich habe keine richtige Anleitung dazu gefunden.
Ich möchte zum Beispiel aus einem Video nur einige für mich wichtigen Daten auslesen. Das sollte mit --inform funktionieren:
Code:
mediainfo --Inform="Video;%DisplayAspectRatio%" file.mp4

1.778
Das ist unzumutbar, was soll ich damit anfangen? Es gibt noch inform=file, hierbei werden mehrere Begriffe in ein Textfile geschrieben und aufgerufen. Ich erspare mir das jetzt hier, die Ausgabe kommt in eine Zeile, kein Umbruch, keine Beschreibung, damit kann kein Mensch was anfangen.
Dann habe ich an greb gedacht, die Ausgabe damit filtern:
Code:
mediainfo file.mp4|grep Format|grep -v profile|grep -v 'Reference frames'|grep -v CABAC
Format                                   : MPEG-4
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Hinweis: Mit -v werden die Begriffe ignoriert. Für mehrere Begriffe braucht man den Parameter -E.
Das könnte so stehenbleiben, allerdings wenn ich noch einen Suchbegriff hinzufüge, funktioniert das nicht. Hier im Beispiel soll Complete name hinzugefügt werden. Da ein leerzeichen vorhanden ist muss das in Anführungszeichen gesetzt werden
Code:
mediainfo ggg.mp4|grep -E Format|"Complete name"|grep -v profile|grep -v 'Reference frames'|grep -v CABAC
So sieht das aus, keine Ausgabe erscheint.

Was mache ich falsch?

Es soll auch angeblich mit der Gui funktionieren, das man nur einzelne Begriffe abfragt, aber die richtigen Parameter fehlen. Es gibt auch keine Konfigurationsdatei. Habs nicht hinbekommen.

Oder möglicherweise gehts auch anders, ich brauche diese Daten von der Videodatei.
Name er Videodatei
Videocodec
Audiocodec
Wenn möglich sollte das auch erweiterbar sein. Vielleicht auch ein anderes Programm?
 
Nach dem ersten grep ist alles andere weg, daher ist die Ausgabe leer.
 
  • Gefällt mir
Reaktionen: Donnerkind
@Amaoto Aber grep -v also ausschließen, funktioniert doch auch, mit mehreren Begriffen.
Habe ich da einen Denkfehler?
 
Ja, hast du. Das arbeitet seriell.
Wenn du bereits mit einem grep befehl alles weg haust außer x, dann wird nur x an den nächsten grep befehl übergeben. Wenn dort nicht nach x gesucht wird, dann ist nun mal nix mehr da.

Grep -v gibt alles weiter, außer x. Natürlich kann man dann im nächsten Schritt auch grep -v y machen um y auszuschließen.

Edit: dein lerzter Befehl kann nicht klappen. Die pipest die Ausgabe von grep in einen string und dann wieder in ein grep. Das geht so nicht.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: LaGGGer
LaGGGer schrieb:
Aber grep -v also ausschließen, funktioniert doch auch, mit mehreren Begriffen.
Ja, aber du musst bedenken, dass alles, was ein grep wegfiltert, das nächste grep nicht mehr finden kann.
Deine letzte Codezeile ist unter Bash in Linux ein Syntaxfehler. Wenn unter Windows nicht, dann wird "Complete name" dort evtl. zu einem Boolean ausgewertet (keine Ahnung). In beiden Fällen wäre es sehr wahrscheinlich nicht das, was du willst.
 
Danke euch, das muss ich erstmal verarbeiten, ist schon (fast) etwas zu hoch für mich. Mir fehlt die Logic oder ich bin da schon zu alt für.
Wo bin ich hier schrieb:
Also etwas wie "mediainfo --Output="General;File Name: %FileName%\r\nDuration: %Duration/String3%\r\nSize: %FileSize/String%" video.mkv" sollte doch deinem Vorhaben entsprechen?
Ok das habe ich getestet, mit meinem File, das kommt dabei raus.:
Code:
mediainfo --Output="General;File Name: %FileName%\r\nDuration: %Duration/String3%\r\nSize: %FileSize/String% file.mp4
> 
>
Kein Ergebnis.
Wo bin ich hier schrieb:
Edit: Scheint als kann man --Inform auch komplett formatieren und/oder ein externes Template angeben. Siehe hier: https://github.com/rodrigopolo/cheatsheets/blob/master/mediainfo.md
Ja, scheint doch so was ähnliches zu sein was ich möchte. Dem geh ich nach.
 
Naja, du musst am Ende das file.mp4 schon durch den Dateinamen ersetzen von der Datei, von der du das wissen willst?!
 
@scooter010 Habe ich doch... Der Dateiname ist file.mp4
Ups, die Anführungszeichen habe ich beim markieren nicht mitgenommen:
Code:
mediainfo "--Output=General;File Name: %FileName%\r\nDuration: %Duration/String3%\r\nSize: %FileSize/String%" file.mp4
File Name: file
Duration: 00:06:03.509
Size: 86.2 MiB
Ergänzung ()

Wo bin ich hier schrieb:
Scheint als kann man --Inform auch komplett formatieren und/oder ein externes Template angeben. Siehe hier: https://github.com/rodrigopolo/cheatsheets/blob/master/mediainfo.md
Ja, das ist es! Habe das Template erstellt und es funktioniert, genau wie ich es gerne hätte. Das hätte ich nie mit diesen Strings so hinbekommen.
Danke dir.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Wo bin ich hier
Zurück
Oben