staging.inyokaproject.org

Kid3-cli

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

kid3-cli 🇬🇧 ist ein Shell-Programm zum bearbeiten der Tags (Metadaten) von zahlreichen Audioformaten. Es handelt sich um die Shell-Variante von Kid3, stammt vom gleichen Entwickler und basiert auf der gleichen Kernkomponente kid3-core.

Installation

  • kid3-cli (universe)

Befehl zum Installieren der Pakete:

sudo apt-get install kid3-cli 

Oder mit apturl installieren, Link: apt://kid3-cli

Überblick

kid3-cli verfügt über einen interaktiven Modus der bei einem einfachen Programm aufruf verwendet wird:

kid3-cli 

Ferner können auch wie gewohnt Optionen und Zieldateien direkt übergeben werden. Hierfür muss die Option -c zuerst angegeben werden:

kid3-cli -c [Optionen] [Befehle] [Dateien] 

Interaktiver Modus

Hierbei übernimmt kid3-cli das Terminal und wird mit seinen eigenen Befehlen gesteuert:

Befehle

Befehl Beschreibung
pwd Den aktuellen Pfad anzeigen
cd PFAD In PFAD wechseln
ls Dateien auflisten und zeigen Welche ausgewählt, sowie verändert wurden
select NAME Die Datei NAME auswählen
select first Die alphanumerisch erste Datei im Verzeichnis auswählen
select next Nächste Datei auswählen
select previous Vorige Datei wählen
select all Alle Dateien auswählen
select none Alle gewählten Dateien abwählen- Nötig bevor Alle ausgewählt werden können
save Die Änderungen für die ausgewählte(!) Datei abspeichern
revert Alle Änderungen für die ausgewählte Datei verwerfen
exit Interaktiven Modus verlassen. Gesperrt falls nicht-gespeicherte Änderungen vorhanden sind
exit force Interaktiven Modus verlassen, alle Änderungen verwerfen

Ausgabe von ls:

kid3-cli> ls
  1-- 01. Irgend ein Lied.mp3
> 12- 02. Noch ein Lied.mp3
 *1-- 03. Und wieder eins.mp3 
  • > signalisiert ausgewählte Dateien

  • * signalisiert geänderte, aber noch nicht gespeicherte Tags

  • 1-- zeigt das nur ein Tag mit der Nummer 1 vorhanden ist (siehe unten) während bei der zweiten Datei 12- zeigt, das auch ein Tag Nummer 2 existiert.

Tags

Es können je Datei bis zu drei Tags gespeichert werden, die allesamt ihre eigenen Elemente beinhalten. Tag 2 ist bei allen Audioformaten der Standard. Bei MP3 wird zusätzlichen zwischen den ID3-Tag-Versionen 1 und 2 unterschieden. Sind beide vorhanden sieht dies bei der Abfrage (z.B. mit kid-3cli -c "get" Datei.mp3) so aus:

Tag 1: 
  Titel        Ein langer Titel der von id3-V
  Interpret    Sonstwer
  ...
Tag 2: 
  Titel        Ein langer Titel der von id3-Version 1 nicht komplett angezeigt werden kann.
  Interpret    Sonstwer
  ... 

Die Versionen werden Tag 1 respektive 2 zugeordnet.

Befehl Beschreibung
tag NUMMER Tag auswählen. Ist er nicht vorhanden, wird er angelegt.
remove NUMMER Tag entfernen
syncto NUMMER Ausgewählten Tag zu Tag NUMMER kopieren

Elemente

Die Elemente befinden sich innerhalb der Tags, sie beschreiben die eigentlichen Informationen wie Liedtitel, Interpret etc.

Befehl Beschreibung
get Alle Elemente des Tags anzeigen
get ELEMENT Nur das beschriebene Element anzeigen
set ELEMENT "INHALT" Dem Element diesen Inhalt zuweisen
set ELEMENT "" Element entfernen indem es mit "Nichts" überschrieben wird

Die gebräuchlichsten Elemente:

Element Beschreibung
title Liedtitel
album Albumtitel
artist Interpret
date Erscheinungsjahr
track Liednummer
genre Musikalisches Genre
discnumber CD-Nummer für Alben mit mehreren CDs
albumartist Haupt-Interpret vom Album
performer Ausführender Interpret z.B. Orchester
composer Komponist
picture:'/pfad/zu/bilddatei.jpg' 'Bildbeschreibung' Cover in Tag einbetten

Besondere Befehle

Titel nummerieren

Mit dem Befehl numbertracks zählt kid3-cli die Dateien alphanumerisch und setzt die Stücknummer in jedem Tag:

select all
numbertracks 

Tags von/zu Dateinamen

Tags werden von Dateinamen mit totag übernommen gefolgt von Variablen welche die Struktur beschreiben. Die Variablen benutzen die Namen der Elemente:

select "Toller Interpret - Tolles Album - 01. Tolles Lied.flac"
## Dateiname wird beschrieben mit:
totag %{artist} - %{album} - %{track}. %{title} 

Dateiendung wird immer ignoriert.

fromtag bewirkt das Gegenteil:

select Irgendwas.flac
fromtag "%{artist} - %{album} - %{track}. %{title}"
## Ergibt wieder Dateiname:
Toller Interpret - Tolles Album - 01. Tolles Lied.flac 

Tags ex-/importieren

Mittels export können Tags in andere Dateiformate exportiert werden. Zur Wahl stehen: CSV unquoted, CSV quoted, Extended PLS, Extended M3U, HTML. Am Ende die Nummer des gewünschten Tags:

select 01. Tolles Lied.flac
export Zieldatei.csv "CSV unquoted" 2 

Umgekehrt zum importieren:

select 01. Tolles Lied.flac
import Zieldatei.csv "CSV unquoted" 2 

Nicht-interaktiver Modus

Mit der Option -c werden die obigen Befehle kid3-cli übergeben und auf Dateien angewandt. Das Programm lässt sich so auch in Skripten verwenden. Spätestens hier wird man wahrscheinlich etwas Wissen über die Maskierung von Anführungszeichen und Apostrophen benötigen:

kid3-cli -c "set album 'Tolles Album'" tolles_lied.flac 

Mehrere Elemente gleichzeitig setzen:

kid3-cli -c "set album 'Tolles Album'" -c "set title 'Tolles Lied'" -c "set date '2022'" tolles_lied.flac 

get gibt den Inhalt eines Elements aus:

kid3-cli -c "get date" tolles_lied.flac
## Gibt das Jahr aus:
2022 

Diese Revision wurde am 16. Mai 2023 09:37 von DJKUhpisse erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: ID3-Tag, MP3-Tag, Metadaten, Shell, Multimedia