<?xml version="1.0" ?> <!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [ <!ENTITY kid3 '<application>Kid3</application>'> <!ENTITY % addindex "IGNORE"> <!ENTITY % German "INCLUDE"><!-- change language only here --> ]> <book lang="&language;"> <bookinfo> <title>Das Kid3 Handbuch</title> <authorgroup> <author> <firstname>Urs</firstname> <surname>Fleisch</surname> <affiliation> <address><email>ufleisch@users.sourceforge.net</email></address> </affiliation> </author> </authorgroup> <copyright> <year>2011</year> <holder>Urs Fleisch</holder> </copyright> <legalnotice id="fdl-notice">&FDLNotice;</legalnotice> <date>2011-01-15</date> <releaseinfo>1.6</releaseinfo> <abstract> <para> &kid3; ist eine Anwendung zum effizienten Editieren von ID3v1 und ID3v2 Tags in MP3 Dateien. Auch die Tags in Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV und AIFF Dateien werden unterstützt. Es ist einfach, Tags in mehreren Dateien auf die gleichen Werte zu setzen (z.B. Album, Interpret, Jahr und Stil in allen Dateien eines Albums), Tags aus den Dateinamen zu generieren oder umgekehrt. </para> </abstract> <keywordset> <keyword>KDE</keyword> <keyword>kdemultimedia</keyword> <keyword>MP3</keyword> <keyword>ID3</keyword> <keyword>ID3v1</keyword> <keyword>ID3v2</keyword> <keyword>Ogg</keyword> <keyword>Vorbis</keyword> <keyword>FLAC</keyword> <keyword>MPC</keyword> <keyword>APE</keyword> <keyword>Musepack</keyword> <keyword>MP4</keyword> <keyword>M4A</keyword> <keyword>MP2</keyword> <keyword>Speex</keyword> <keyword>TrueAudio</keyword> <keyword>WavPack</keyword> <keyword>WMA</keyword> <keyword>WAV</keyword> <keyword>AIFF</keyword> </keywordset> </bookinfo> <chapter id="introduction"> <title>Einleitung</title> <para> &kid3; ist eine Anwendung zum effizienten Editieren von ID3v1 und ID3v2 Tags in MP3 Dateien. Diese Tags können zwar mit den meisten MP3 Player Programmen editiert werden, jedoch nicht auf eine sehr komfortable und effiziente Art. Darüber hinaus werden auch die Tags in Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV und AIFF Dateien unterstützt. </para> <para> &kid3; kann weder MP3 grabben noch codieren, es ist darauf ausgelegt, die ID3 Tags von allen Dateien eines Albums auf eine möglichst effiziente Art zu editieren, d.h. mit so wenig Mausklicks und Tastendrücken wie möglich. Während die meisten anderen Programme entweder ID3v1 oder ID3v2 Tags editieren können, hat &kid3; volle Kontrolle über die Tags beider Versionen, es kann zwischen den beiden Formaten konvertieren und hat Zugang zu allen ID3v2 Frames. Tags mehrerer Dateien können gleichzeitig auf dieselben Werte gesetzt werden, so beispielsweise Interpret, Album, Jahr und Stil aller Dateien eines Albums. Wenn die Information für die Tags schon im Dateinamen enthalten ist, können die Tags automatisch aus dem Dateinamen generiert werden. Es ist aus möglich, den Dateinamen in einem beliebigen Format aus den Werten in den Tags zu setzen. </para> <para> Das Editieren wird darüber hinaus durch automatische Ersetzung von Zeichenketten erleichtert, z.B. um ungültige Zeichen aus Dateinamen zu entfernen. Automatische Groß- und Kleinschreibung macht es einfach, eine konsistente Namensschreibweise in allen Tags zu verwenden. </para> <para> Die Tag-Information für ganze Alben kann über <ulink url="http://gnudb.org">gnudb.org</ulink>, <ulink url="http://tracktype.org">TrackType.org</ulink>, <ulink url="http://musicbrainz.org">MusicBrainz</ulink>, <ulink url="http://discogs.com">Discogs</ulink>, <ulink url="http://www.amazon.com">Amazon</ulink> oder von anderen Quellen mit Albuminformationen importiert werden. Das verwendete Format ist mit regulären Ausdrücken frei konfigurierbar. </para> <para> Probleme und Vorschläge für neue Funktionen können dem Autor gemeldet werden. </para> </chapter> <chapter id="using-kid3"> <title>Benutzen von Kid3</title> <sect1 id="kid3-features"> <title>Funktionsmerkmale von Kid3</title> <itemizedlist> <listitem><para>Editieren von ID3v1.1 Tags</para></listitem> <listitem><para>Editieren von allen ID3v2.3 und ID3v2.4 Frames</para></listitem> <listitem><para>Editieren der Tags von mehreren Dateien</para></listitem> <listitem><para>Konvertieren zwischen ID3v1 und ID3v2 Tags</para></listitem> <listitem><para>Editieren von MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV und AIFF Tags</para></listitem> <listitem><para>Generieren der Tags aus dem Dateinamen</para></listitem> <listitem><para>Generieren des Dateinamens aus den Tags</para></listitem> <listitem><para>Generieren und Ändern des Verzeichnisnamens aus den Tags</para></listitem> <listitem><para>Generieren von Stücklisten</para></listitem> <listitem><para>Automatische Groß-/Kleinschreibung und Zeichenersetzung</para></listitem> <listitem><para>Import von <ulink url="http://gnudb.org">gnudb.org</ulink>, <ulink url="http://tracktype.org">TrackType.org</ulink>, <ulink url="http://musicbrainz.org">MusicBrainz</ulink>, <ulink url="http://discogs.com">Discogs</ulink>, <ulink url="http://www.amazon.com">Amazon</ulink> und anderen Quellen</para></listitem> <listitem><para>Export als CSV, HTML, Stückliste, Kover XML oder in anderen Formaten. Exportierte CSV-Dateien können wieder importiert werden.</para></listitem> </itemizedlist> </sect1> <sect1 id="example-usage"> <title>Arbeiten anhand eines Beispiels</title> <para> Dieser Abschnitt beschreibt eine typische Sitzung mit &kid3;. Nehmen wir an, wir haben ein Verzeichnis mit MP3 Dateien der Stücke aus dem Album "Let's Tag" von der Gruppe "One Hit Wonder". Das Verzeichnis ist im "Interpret - Album" Format benannt, in unserem Fall also <filename>One Hit Wonder - Let's Tag</filename>. Das Verzeichnis enthält die Stücke im "Nummer Titel.mp3" Format, was auch Sinn macht, weil die Dateinamen kurz werden (wichtig bei den kleinen Anzeigen mobiler MP3 Player) und alphabetisch in der richtigen Reihenfolge geordnet werden (wichtig falls ein Hardware MP3 Player die Stücke in alphabetischer Reihenfolge abspielt oder in der Reihenfolge, wie sie auf CD gebrannt wurde - diese Reihenfolge ist bei <command>mkisofs</command> alphabetisch). Darüber hinaus sind Interpret und Album bereits im Verzeichnisnamen enthalten und brauchen nicht im Dateinamen wiederholt zu werden. Doch zurück zu unserem Beispiel - das Verzeichnis sieht folgendermaßen aus: </para> <para><filename>01 Intro.mp3</filename></para> <para><filename>02 We Only Got This One.mp3</filename></para> <para><filename>03 Outro.mp3</filename></para> <para> Diese Dateien haben noch keine Tags, wir werden diese mit &kid3; erzeugen. Wir benutzen <guimenuitem>Öffnen</guimenuitem> (<guimenu>Datei</guimenu> Menü oder Werkzeugleiste) und wählen eine der Dateien in diesem Verzeichnis. Alle Dateien werden im Dateilistenfeld angezeigt. Aus Bequemlichkeit wollen wir die Tags aus den Dateinamen erzeugen. Daher wählen wir alle Dateien im Listenfeld aus und klicken auf <guilabel>Nach:</guilabel> <guibutton>Tag 1</guibutton> in der <guilabel>Datei</guilabel> Sektion. Dadurch werden Titel, Interpret, Album und Nummer in allen Dateien gesetzt. Um die Werte für Jahr und Stil in allen Dateien zu setzen, lassen wir alle Dateien selektiert und tippen "2002" in das Feld <guilabel>Jahr</guilabel> und wählen "Pop" im <guilabel>Stil</guilabel> Auswahlfeld. Um einzig diese zwei Werte zu verändern, werden ihre Markierungsfelder aktiviert, und alle anderen Markierungsfelder bleiben leer. Wird nun durch Klick auf die erste Datei die Auswahl verändert, so sieht man, dass die Tags für die erste Datei die korrekten Werte enthalten. Die Tags der anderen Dateien können auch überprüft werden, indem eine nach der andern selektiert wird. Wenn wir mit den Tags zufrieden sind, können die Änderungen mit <guimenuitem>Speichern</guimenuitem> (<guimenu>Datei</guimenu> Menü oder Werkzeugleiste) übernommen werden. Wählen von <guimenuitem>Stückliste erstellen</guimenuitem> im <guimenu>Datei</guimenu> Menü erzeugt die Datei <filename>One Hit Wonder - Let's Tag.m3u</filename> im Verzeichnis. </para> </sect1> </chapter> <chapter id="commands"> <title>Menüeinträge</title> <sect1 id="kid3-window"> <title>Das Kid3 Fenster</title> <sect2 id="gui-elements"> <title>Die Elemente der Benutzeroberfläche</title> <para> Die &kid3; Benutzeroberfläche ist in fünf Sektionen aufgeteilt: Links finden sich das Dateilistenfeld und das Verzeichnislistenfeld, die rechte Seite enthält die <guilabel>Datei</guilabel>, <guilabel>Tag 1</guilabel> und <guilabel>Tag 2</guilabel> Sektionen. </para> <variablelist> <varlistentry><term>Dateiliste</term> <listitem> <para> Die Dateiliste enthält die Namen aller Dateien im geöffneten Verzeichnis, welche den gewählten Dateinamenfilter (typischerweise <filename>*.mp3 *.ogg *.flac *.mpc *.aac *.m4a *.m4b *.m4p *.mp4 *.mp2 *.spx *.tta *.wv *.wma *.wav *.aiff</filename>) erfüllen. Eine einzelne oder mehrere Dateien können ausgewählt werden. Um keine Datei auszuwählen, kann in den leeren Bereich unterhalb der Dateieinträge geklickt werden. Die Auswahl bestimmt die Dateien, welche durch die unten beschriebenen Operationen verändert werden. </para> <para> Links von den Namen kann ein Symbol dargestellt werden: eine Diskette, um zu zeigen, dass die Datei verändert wurde, oder Information über die Tags welche vorhanden sind (V1, V2, V1V2 oder NO TAG, wenn nichts dargestellt wird, wurde die Datei noch nicht eingelesen). </para> <para> Verzeichnisse werden mit Ordner-Symbolen gekennzeichnet. Wenn ein Verzeichnis geöffnet wird, so werden seine Dateien in einem hierarchischen Baum dargestellt. Operationen können auf Dateien aus verschiedenen Verzeichnissen angewendet werden, was nützlich ist, wenn die Musik-Dateien so organisiert werden, dass pro Interpret ein Ordner erstellt wird, der wiederum ein Verzeichnis für jedes Album enthält. </para> <para> Bei einem Rechtsklick in der Dateiliste öffnet sich ein Kontext-Menü mit folgenden Befehlen: <itemizedlist> <listitem><para> <guimenuitem>Unterbäume ausklappen</guimenuitem>: Klappt alle Verzeichnisbäume auf </para></listitem> <listitem><para> <guimenuitem>Unterbäume einklappen</guimenuitem>: Klappt alle Verzeichnisbäume ein </para></listitem> <listitem><para> <guimenuitem>Umbenennen</guimenuitem>: Ändert den Namen der Datei </para></listitem> <listitem><para> <guimenuitem>Löschen</guimenuitem>: Löscht die Datei </para></listitem> <listitem><para> <guimenuitem>Wiedergabe</guimenuitem>: Spielt die Datei ab, siehe <link linkend="play">Wiedergabe</link> </para></listitem> <listitem><para>Bei den weiteren Menüeinträgen handelt es sich um Benutzerbefehle, welche in <link linkend="configure-kid3">Kid3 einrichten</link> bei <guilabel>Benutzerbefehle</guilabel> definiert werden können. </para></listitem> </itemizedlist> </para> </listitem> </varlistentry> <varlistentry><term>Verzeichnisliste</term> <listitem> <para> Die Verzeichnisliste enthält die Verzeichnisse, welche das geöffnete Verzeichnis enthält, sowie das aktuelle (<filename>.</filename>) und das übergeordnete (<filename>..</filename>) Verzeichnis. Sie erlaubt den raschen Wechsel zwischen Verzeichnissen, ohne den Umweg über die <guimenuitem>Öffnen...</guimenuitem> Funktion oder "Drag and Drop". </para> </listitem> </varlistentry> <varlistentry> <term><guilabel>Datei</guilabel></term> <listitem> <para> Zeigt Informationen über Codierung (MP3, Ogg, FLAC, MPC, MP2, MP4, AAC, Speex, TrueAudio, WavPack, WMA, WAV, AIFF), Bit- und Samplerate, Kanäle und die Länge der Datei an. </para> <para> Das <guilabel>Name</guilabel> Editierfeld enthält den Dateiname wenn nur eine einzelne Datei ausgewählt ist. Wird dieses Feld verändert, so wird die Datei umbenannt, wenn <guimenuitem>Speichern</guimenuitem> ausgeführt wird. </para> <para> Das <guilabel>Format</guilabel> Auswahl- und Editierfeld enthält das Format, welches verwendet wird, wenn der Dateiname aus dem ersten oder zweiten Tag erzeugt wird. Der Dateiname kann beliebige Zeichen enthalten, es kann sogar ein Verzeichnisteil abgetrennt durch einen Schrägstrich angegeben werden, doch dieses Verzeichnis muss bereits existieren, damit das Umbenennen erfolgreich ist. Die folgenden Codes können verwendet werden, um Werte aus den Tags im Dateinamen einzusetzen: </para> <itemizedlist> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track, z.B. 01)</para></listitem> <listitem><para>%t %{track.n} Nummer mit Feldlänge n (z.B. 001 für %{track.3})</para></listitem> <listitem><para>%T %{tracknumber} Nummer (Track, z.B. 1)</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> <listitem><para>%g %{ignore} Wird ignoriert wenn Tags aus dem Dateinamen erzeugt werden</para></listitem> </itemizedlist> <para> Ein zweites <guilabel>Format</guilabel> Auswahlfeld (mit Pfeil runter) wird verwendet, um die Tags aus dem Dateinamen zu generieren. Falls der Dateinamen nicht diesem Format entspricht, werden noch einige andere, gängige Formate ausprobiert. </para> <para> Einige häufig verwendete Dateinamen-Formate sind bereits vordefiniert und über das Auswahlfeld verfügbar, aber es ist auch möglich, ein eigenes Format in das Eingabefeld einzutragen. </para> <para> <guilabel>Von:</guilabel> <guibutton>Tag 1</guibutton>, <guibutton>Tag 2</guibutton>: Setzt den Dateinamen gemäß dem ausgewählten Format und dem ersten Tag bzw. zweiten Tag. </para> <para> <guilabel>Nach:</guilabel> <guibutton>Tag 1</guibutton>, <guibutton>Tag 2</guibutton>: Die Tags werden anhand des Dateinamens gesetzt. Dabei wird zuerst das in <guilabel>Format</guilabel> ausgewählte Dateinamenformat probiert. Falls der vorhandene Dateinamen nicht diesem Format entspricht, werden noch folgende Formate versucht: <itemizedlist> <listitem><para><filename>Interpret - Album/Nummer Titel</filename></para></listitem> <listitem><para><filename>Album/Nummer - Interpret - Titel</filename></para></listitem> <listitem><para><filename>/Interpret - Album - Nummer - Titel</filename></para></listitem> <listitem><para><filename>Album/Interpret - Nummer - Titel</filename></para></listitem> <listitem><para><filename>Album/Interpret - Titel</filename></para></listitem> <listitem><para><filename>Artist/Album/Track Song</filename></para></listitem> </itemizedlist> Wenn eine einzelne Datei ausgewählt wurde, werden die Eingabefelder mit den aus dem Dateinamen extrahierten Werten gefüllt. Bei Mehrfachselektion werden die Werte direkt gemäß den Dateinamen gesetzt. </para> </listitem> </varlistentry> <varlistentry><term><guilabel>Tag 1</guilabel></term> <listitem> <para> Die Eingabefelder für <guilabel>Titel</guilabel>, <guilabel>Interpret</guilabel>, <guilabel>Album</guilabel>, <guilabel>Kommentar</guilabel>, <guilabel>Jahr</guilabel>, <guilabel>Nummer</guilabel> und <guilabel>Stil</guilabel> werden benutzt um die entsprechenden Werte im ersten Tag der ausgewählten Dateien zu editieren. Die Werte werden verändert, wenn die Dateiauswahl geändert wird oder vor Operationen wie <guimenuitem>Speichern</guimenuitem> und <guimenuitem>Beenden</guimenuitem> und wenn die entsprechenden Markierungsfelder links aktiviert sind. Dies ist nützlich, um nur bestimmte Werte zu verändern und die übrigen Werte nicht anzurühren. </para> <para> Wenn eine einzelne Datei ausgewählt ist, werden alle Markierungsfelder aktiviert und die Eingabefelder enthalten die Werte aus den Tags in der Datei. Wenn ein Tag nicht vorhanden ist, werden die leeren Werte angezeigt, d.h. eine leere Zeichenkette für die Felder <guilabel>Titel</guilabel>, <guilabel>Interpret</guilabel>, <guilabel>Album</guilabel> und <guilabel>Kommentar</guilabel>, 0 für <guilabel>Jahr</guilabel> und <guilabel>Nummer</guilabel> und ein leerer Auswahleintrag bei <guilabel>Stil</guilabel>. Die Werte können editiert werden und werden für die ausgewählte Datei beim Ändern der Auswahl gesetzt, sofern das entsprechende Markierungsfeld aktiviert ist. Die Datei wird dann durch ein Disketten-Symbol als modifiziert gekennzeichnet, doch die eigentliche Datei bleibt unverändert, bis <guimenuitem>Speichern</guimenuitem> ausgeführt wird. </para> <para> Wenn mehrere Dateien ausgewählt werden, dann werden nur diejenigen Werte angezeigt, welche bei allen ausgewählten Dateien identisch sind. In allen übrigen Editierfeldern werden die leeren Werte (siehe oben) angezeigt. Alle Markierungsfelder sind inaktiv, um ungewolltes Verändern mehrerer Dateien zu verhindern. Soll ein Wert für alle selektierten Dateien verändert werden, so kann er editiert werden, und das entsprechende Markierungsfeld wird gesetzt. Der Wert wird dann für alle ausgewählten Dateien verändert wenn die Auswahl geändert wird und kann mit <guimenuitem>Speichern</guimenuitem> gesichert werden. </para> <para> Die Markierungsfelder bestimmen auch, auf welche Felder die meisten anderen Befehle angewendet werden. So werden beim Kopieren, Einfügen und Transferieren zwischen Tags 1 und 2 nur markierte Felder verwendet. Um die Bedienung zu vereinfachen, wenn mehrere Dateien ausgewählt sind und daher alle Markierungsfelder inaktiv sind, verhalten sich diese Befehle wenn alle Markierungsfelder inaktiv sind gleich als wären alle markiert. </para> <para> <guibutton>Von Tag 2</guibutton>: Die Tag 1 Felder werden auf die gleichen Werte gesetzt wie die entsprechenden Tag 2 Werte. Bei Mehrfachselektion werden die Tags der Dateien direkt gesetzt. </para> <para> <guibutton>Kopieren</guibutton>: Die Kopierablage wird mit den Tag 1 Werten gefüllt. Bei folgenden Einfüge-Operationen werden nur solche Werte gesetzt, bei welchen hier das Markierungsfeld aktiviert war. </para> <para> <guibutton>Einfügen</guibutton>: Fügt die Werte aus der Kopierablage in die Eingabefelder ein. </para> <para> <guibutton>Löschen</guibutton>: Diese Funktion setzt alle Editierfelder auf die leeren Werte, entfernt also alle Werte. Die gespeicherte Datei enthält dann kein Tag 1 mehr. </para> </listitem> </varlistentry> <varlistentry><term><guilabel>Tag 2</guilabel></term> <listitem> <para> Die Eingabefelder funktionieren gleich wie bei <guilabel>Tag 1</guilabel> beschrieben, die Länge der Zeichenketten ist jedoch nicht begrenzt. </para> <para> Beim <guilabel>Stil</guilabel> können nebst den vorgegebenen auch eigene Namen verwendet werden - eine Eingabe ins Editierfeld genügt. </para> <para> Das Tag 2 kann nicht bloß dieselben Werte enthalten wie das Tag 1, das Format ist vielmehr auf flexible Art aus mehreren Elementen aufgebaut, welche wiederum aus verschiedenen Feldern bestehen. Die Tag 2 Tabelle zeigt alle Elemente an, welche in der ausgewählten Datei vorhanden sind. </para> <para> <guibutton>Editieren</guibutton>: Ein Fenster wird geöffnet, in welchem alle Felder des gewählten Elementes editiert werden können. Wenn mehrere Dateien ausgewählt sind, so werden die editierten Felder bei allen ausgewählten Dateien angewendet, welche solch ein Element enthalten. </para> <para> <guibutton>Hinzufügen</guibutton>: Ein Auswahlfenster mit allen unterstützten Elementtypen wird angezeigt und ein Element des gewählten Typs kann editiert und zu der Datei hinzugefügt werden. Dies funktioniert auch, wenn mehrere Dateien ausgewählt sind; das Element wird dann bei allen ausgewählten Dateien hinzugefügt. </para> <para> <guibutton>Löschen</guibutton>: Löscht das ausgewählte Element in den ausgewählten Dateien. </para> <para> <guilabel>Albumcover hierhin ziehen</guilabel> wird angezeigt wenn die Datei kein Album Cover Bild enthält. Bilder kann man mittels "Drag and Drop" vom Browser oder Dateimanager hinzufügen; sie werden dann hier angezeigt. Das Editieren oder Hinzufügen eines Bild-Elements kann mit einem Doppelklick ausgelöst werden. </para> </listitem> </varlistentry> </variablelist> </sect2> <sect2 id="file-menu"> <title>Das Menü Datei</title> <para> <variablelist> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>O</keycap></keycombo> </shortcut> <guimenu>Datei</guimenu> <guimenuitem>Öffnen...</guimenuitem> </menuchoice></term> <listitem><para><action>Ein Verzeichnis wird geöffnet</action>, und alle Dateien, welche den gewählten Dateinamenfilter erfüllen, werden im Dateilistenfeld angezeigt. Die gewählte Datei wird selektiert.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Zuletzt geöffnete Dateien</guimenuitem> </menuchoice></term> <listitem><para><action>Ein kürzlich geöffnetes Verzeichnis wird geöffnet. </action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>D</keycap></keycombo> </shortcut> <guimenu>Datei</guimenu> <guimenuitem>Verzeichnis öffnen...</guimenuitem> </menuchoice></term> <listitem><para><action>Ein Verzeichnis wird geöffnet</action>, und alle Dateien, welche den gewählten Dateinamenfilter erfüllen, werden im Dateilistenfeld angezeigt.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo> </shortcut> <guimenu>Datei</guimenu> <guimenuitem>Speichern</guimenuitem> </menuchoice></term> <listitem><para><action>Speichert alle veränderten Dateien im Verzeichnis.</action> Die veränderten Dateien sind durch ein Diskettensymbol gekennzeichnet. Wenn Dateinamen verändert wurden, so werden die entsprechenden Dateien umbenannt.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Zuletzt gespeicherte Fassung</guimenuitem> </menuchoice></term> <listitem><para><action>Macht die Änderungen an einer oder mehreren Dateien rückgängig.</action> Wenn keine Dateien im Dateilistenfeld selektiert sind, so werden die Änderungen an allen Dateien rückgängig gemacht, ansonsten nur an den ausgewählten Dateien.</para></listitem> </varlistentry> <varlistentry id="import"> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren...</guimenuitem> </menuchoice></term> <listitem><para>Der <action>Import Dialog</action> wird verwendet, um Daten direkt von einem freedb.org Server, von der Web-Schnittstelle von <ulink url="http://freedb.org">freedb.org</ulink>, von einem MusicBrainz Server, von Discogs, Amazon oder anderen Quellen mit Albumtitellisten zu importieren. </para> <para id="import-freedb"> Zum Importieren von einem freedb.org Server wird <guibutton>Von Server:</guibutton> <guibutton>gnudb.org</guibutton> oder <guibutton>TrackType.org</guibutton> gewählt. Der zu suchende Interpret und der Name des Albums können in den zwei oberen Feldern eingegeben werden, und die gefundenen Alben werden nach Klick auf <guibutton>Suchen</guibutton> dargestellt, sobald sie von <ulink url="http://www.gnudb.org">www.gnudb.org</ulink> empfangen werden. Die Track Daten eines Albums werden nach Auswahl geladen, der verwendete freedb.org Server kann gewählt werden, ebenso der CGI Pfad. Die importierten Daten werden in der Vorschau des Import Dialogfensters dargestellt. Um wieder in jenem Fenster zu arbeiten, muss der gnudb.org Dialog beendet werden - später kann er wieder mit <guibutton>Von gnudb.org</guibutton> geöffnet werden, und sein Inhalt wird wiederhergestellt. Wenn man mit den Daten in der Vorschau zufrieden ist, können sie mit <guibutton>OK</guibutton> importiert werden. </para> <para id="import-discogs"> Zum Importieren vom Discogs Server wird <guibutton>Discogs</guibutton> gewählt. Wie bei <guibutton>Von gnudb.org</guibutton> können auch hier Artist und Album eingegeben werden und es wird ebenfalls eine Liste mit Alben zur Auswahl gestellt. Wenn <guilabel>Zusätzliche Tags</guilabel> markiert ist, werden mehr verfügbare Informationen importiert, z.B. Interpreten, Arrangierer oder der Herausgeber. Wenn <guilabel>Cover-Bilder</guilabel> markiert ist, werden Cover-Bilder heruntergeladen, falls vorhanden. </para> <para id="import-amazon"> Zum Importieren von Amazon wird <guibutton>Amazon</guibutton> gewählt. Wie bei <guibutton>Von gnudb.org</guibutton> können auch hier Artist und Album eingegeben werden und es wird ebenfalls eine Liste mit Alben zur Auswahl gestellt. Wenn <guilabel>Zusätzliche Tags</guilabel> markiert ist, werden mehr verfügbare Informationen importiert, z.B. Interpreten, Arrangierer oder der Herausgeber. Wenn <guilabel>Cover-Bilder</guilabel> markiert ist, werden Cover-Bilder heruntergeladen, falls vorhanden. </para> <para id="import-musicbrainzrelease"> In der gleichen Art kann mit <guibutton>Von MusicBrainz Album</guibutton> auch in der Album-Datenbank von MusicBrainz gesucht werden. Die Bedienung ist wie bei <guibutton>gnudb.org</guibutton> beschrieben. </para> <para id="import-musicbrainz"> Zum Importieren von einem MusicBrainz Server dient der Dialog, der nach Klicken auf <guibutton>Von MusicBrainz Fingerprint</guibutton> erscheint. Wie bei freedb kann auch hier der Server ausgewählt werden. Unten ist eine Tabelle, welche die importierten Track Daten darstellt. Die rechte Spalte zeigt dabei den Zustand der MusicBrainz-Abfrage, welche gleich mit dem Öffnen des Dialogs mit "Suche läuft" beginnt. Es folgen dann ein Abfrage des Fingerprints und, falls diese kein Ergebnis liefert, eine Suche anhand der in der Datei vorhandenen Tags. Für eine erfolgreiche MusicBrainz-Suche kann es daher hilfreich sein, vorhandene Informationen (z.B. Interpret und Album) vorgängig in den Tags zu speichern. Wenn ein Resultat gefunden wurde, so endet die Suche im Zustand "Erkannt", andernfalls wurde nichts gefunden oder gleich mehrere mögliche Resultate, von den der Benutzer eines auswählen kann. <guibutton>OK</guibutton> und <guibutton>Anwenden</guibutton> übernehmen die importierten Daten, <guibutton>Abbrechen</guibutton> schließt den Dialog. Das Schließen des Dialogs kann eine Weile dauern, da noch die ganze MusicBrainz-Maschinerie runtergefahren werden muss. </para> <para> Zum Importieren von Albumdaten in Textform stehen mehrere vorkonfigurierte Formate zur Verfügung. Die ersten zwei, "CSV unquoted" und "CSV quoted", dienen dazu, Daten welche über die Export Funktion exportiert wurden, wieder zu importieren. Diese Daten können natürlich von einer Tabellenkalkulation bearbeitet werden. CSV-Daten aus einer Tabellenkalkulation müssen mit Tabulator als Trennzeichen geschrieben werden und sollten sich über "CSV quoted" einlesen lassen. Dieses ist flexibler als "CSV unquoted", dafür dürfen die enthaltenen Felder keine Anführungszeichen enthalten. Falls nur von &kid3; exportiert und wieder importiert wird, so sollte dies problemlos mit "CSV unquoted" möglich sein. </para> <para> Das nächste Format, "freedb HTML text", kann benutzt werden, um Informationen aus einer HTML-Seite von <ulink url="http://freedb.org">freedb.org</ulink> zu kopieren. Dazu sucht man sich in freedb das Album, und wenn die gewünschte Information im Browser angezeigt wird, kann sie selektiert und in die Zwischenablage kopiert werden. Nach einem Klick auf <guibutton>Von Zwischenablage</guibutton> werden die importierten Daten in der Tabelle angezeigt und können mit <guibutton>OK</guibutton> übernommen werden. Das Ziel (<guilabel>Tag 1</guilabel>, <guilabel>Tag 2</guilabel> oder <guilabel>Tag 1 und Tag 2</guilabel>) kann mit einem Auswahlfeld festgelegt werden. Die Titel in der Dateiliste sollten in der korrekten Reihenfolge angezeigt sein um die richtigen Tags zu kriegen. Dies ist kein Problem, wenn sie nummeriert sind. </para> <para> Das nächste vorkonfigurierte Format, "freedb HTML source", kann dann benutzt werden, wenn die Import-Daten als HTML-Dokument vorliegen. Solch eine Datei kann im Datei Dialog, welcher nach Klick auf <guibutton>Von Datei</guibutton> erscheint, ausgewählt werden. Natürlich können die Daten auch in einem Editor kopiert und dann über die Zwischenablage übernommen werden. Dieses Format kann für Offline Import nützlich sein, obschon die HTML-Datei auch von einem Browser angezeigt und im ersten Format über die Zwischenablage importiert werden kann. </para> <para> Weitere vorkonfigurierte Formate, z.B. "Track Title Time" stehen zur Verfügung. Das Format "Custom Format" ist leer gelassen und kann vom Benutzer gesetzt werden. Die zwei Zeilen unterhalb des Formatnamens können hierzu mit regulären Ausdrücken gefüllt werden. Der erste Ausdruck wird einmal angewendet, um albumspezifische Daten wie Interpret, Album, Jahr und Stil zu extrahieren. Die zweite Zeile wird vom Dokumentanfang bis zum Schluss für jeden Titel probiert, um Titeldaten zu kriegen, also Nummer und Titel. In den regulären Ausdrücken können alle von Qt unterstützten Funktionen eingesetzt werden; also das meiste von dem, was Perl bietet. Klammerkonstrukte "(..)" werden benützt, um Felddaten zu extrahieren und werden von einem &kid3;-spezifischen Feldcode eingeleitet. Die Codes sind dieselben wie beim Dateinamenformat: </para> <itemizedlist> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track)</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> <listitem><para>%d %{duration} Länge (Dauer)</para></listitem> </itemizedlist> <para> Beispiel: Ein regulärer Ausdruck für die zweite Zeile, um Titel aus einer .m3u Stückliste zu holen, könnte "%{track}(\d+)\s+%{title}(\S[^\r\n]*)\.mp3[\r\n]" sein. Alle Formate können geändert werden, indem der Name und die regulären Ausdrücke editiert werden und dann der Dialog mit <guibutton>OK</guibutton> beendet wird. Gespeichert werden sie in der Datei <filename>kid3rc</filename> im Konfigurationsverzeichnis. Diese Datei kann auch direkt verändert werden, um mehr Importformate zu haben, oder man kann sie löschen, um wieder zu den Standardeinstellungen zu kommen. </para> <para> Um zu prüfen, ob die importierten Stücke den vorhandenen Dateien entsprechen, können die Längen verglichen werden. Diese Option kann mit dem Markierungsfeld <guibutton>Teste maximal erlaubten Zeitunterschied</guibutton> eingeschaltet werden und der maximal erlaubten Zeitunterschied kann in Sekunden eingestellt werden. Wird eine Überschreitung dieser Toleranzschwelle festgestellt, so wird die entsprechende Länge in der Vorschau rot dargestellt. </para> <para> Falls nun die vorhandenen Dateien in einer anderen Reihenfolge als die importierten Stücke vorliegen, so sollte die Zuordnung korrigiert werden. Diese Arbeit wird durch die <guilabel>Zuordnen mit</guilabel> Knöpfe <guibutton>Länge</guibutton>, <guibutton>Nummer</guibutton> und <guibutton>Titel</guibutton> erleichtert, welche die Stücke dem jeweiligen Feld entsprechend zuordnen. Sollte die Zuordnung noch manuell korrigiert werden müssen, so kann ein Track nach Drücken der Steuerungs-Taste (<keycap>Ctrl</keycap>/<keycap>Strg</keycap>) mit der linken Maustaste gefasst und dann an die gewünschte Stelle gezogen werden. </para> <para> Wie in fast allen Dialogen dient der <guibutton>Einstellungen speichern</guibutton> Knopf dazu, die dialogspezifischen Optionen und die Fenstergröße persistent zu speichern. </para> </listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von gnudb.org...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren von einem freedb.org Server mit Album-Suche auf gnudb.org.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>gnudb.org</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von TrackType.org...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren vom TrackType.org Server.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>TrackType.org</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von Discogs...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren vom Discogs Server.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>Discogs</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von Amazon...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren von Amazon.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>Amazon</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von MusicBrainz Album...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren von der MusicBrainz Album Datenbank.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>Von MusicBrainz Album</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Importieren von MusicBrainz Fingerprint...</guimenuitem> </menuchoice></term> <listitem><para><action>Importieren von einem MusicBrainz Server.</action> Dieser Menüpunkt öffnet denselben Import Dialog wie <guimenuitem>Importieren...</guimenuitem>, öffnet jedoch direkt auch den <guibutton>Von MusicBrainz Fingerprint</guibutton> Dialog.</para></listitem> </varlistentry> <varlistentry id="browse_pictures"> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Nach Cover-Bildern suchen...</guimenuitem> </menuchoice></term> <listitem> <para> Der Dialog <action>Nach Cover-Bildern suchen</action> hilft bei der Suche nach Album Cover-Bildern. <guilabel>Interpret/Album</guilabel> werden wenn möglich aus den Tags übernommen. <guilabel>Quelle</guilabel> stellt eine Vielzahl von Websites mit Cover-Bildern zur Verfügung. Unter dem Namen ist die URL mit Interpret und Album als Parametern angegeben. Für URL-codierte Werte können dabei <userinput>%u{artist}</userinput> und <userinput>%u{album}</userinput> angegeben werden oder auch andere Werte aus den Tags, wie in <link linkend="configure-kid3">Kid3 einrichten</link> bei <guilabel>Benutzerbefehle</guilabel> beschrieben. Nach "Custom Source" können auch eigene Quellen hinzugefügt werden. Dazu wird "Custom Source" durch den Namen der Quelle ersetzt, dann Return gedrückt, die URL eingegeben und mit <guibutton>Einstellungen speichern</guibutton> gesichert. Das resultierende Browser-Kommando wird oben im Dialog dargestellt und nach Drücken des <guibutton>Browser</guibutton>-Knopfes ausgeführt. Der Browser, welcher in den Einstellungen konfiguriert werden kann, wird mit der gewählten Quelle gestartet. Das gewünschte Cover-Bild kann dann aus dem Browser in das &kid3; Fenster gezogen werden und wird im Bild-Feld von Tag 2 der selektierten Dateien gesetzt. </para> <para> Da nicht alle Browser Drag'n'Drop von Bildern unterstützen und häufig die Bilder auf Websites mit einer URL unterlegt sind, erhält &kid3; in solchen Fällen bloss die entsprechende URL und nicht das Bild. Wenn die URL auf ein Bild zeigt, wird dieses heruntergeladen. Falls die URL jedoch auf sonst eine Website hinweist, so muss von dieser auf das gewünschte Cover-Bild geschlossen werden. Dies ist die Aufgabe der Tabelle <guilabel>URL Ersetzung</guilabel>. Die linke Spalte <guilabel>Vergleich</guilabel> enthält einen regulären Ausdruck, welcher mit der URL verglichen wird. Wenn eine Übereinstimmung festgestellt wird, so werden die erhaltenen Klammer-Werte im Muster der Spalte <guilabel>URL des Bildes</guilabel> ersetzt (\1 usw.). Der ersetzte reguläre Ausdrucks enthält dann die URL des Bildes. Auf diese Weise können auch Bilder von Amazon, Google Images, usw. per Drag'n'Drop importiert werden. Natürlich können auch hier eigene Ersetzungen erfasst werden. </para> </listitem> </varlistentry> <varlistentry id="export"> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Exportieren...</guimenuitem> </menuchoice></term> <listitem><para> Der <action>Export Dialog</action> wird verwendet, um die Daten aus den Tags in einer Datei oder der Zwischenablage zu speichern. Das oberste Editierfeld stellt einen einfachen Editor zur Verfügung, welcher eine Vorschau der zu exportierenden Daten bietet. Zusätzlich lassen sich die Daten darin noch modifizieren, denn es wird der Inhalt dieses Editierfeldes gespeichert. Die Daten werden aus den Tags der Dateien im aktuellen Verzeichnis generiert, und zwar gemäß dem unten eingestellten Format. </para> <para> Diese Formateinstellung ist gleich aufgebaut wie im Import Dialog: Im obersten Feld ist der Titel (z.B. "CSV unquoted"), dann folgt der Header - dieser wird nur am Anfang der Datei generiert. Nun folgt das Track-Format, es wird für jeden Track angewendet. Schließlich gibt es noch einen Trailer, welcher die Datei noch abschließt. </para> <para> Die Formatfelder enthalten keine regulären Ausdrücke wie im Import Dialog, sondern bloß Ausgabeformate, bei denen spezielle %-Ausdrücke durch Werte aus den Tags ersetzt werden. Das ganze verhält sich also gleich wie beim Dateinamenformat, es werden auch dieselben Codes verwendet, plus ein paar zusätzliche. </para> <itemizedlist> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track)</para></listitem> <listitem><para>%t %{track.n} Nummer mit Feldlänge n (z.B. 001 für %{track.3})</para></listitem> <listitem><para>%T %{tracknumber} Nummer (Track), ohne führende Null</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> <listitem><para>%f %{file} Dateiname (File name)</para></listitem> <listitem><para>%p %{filepath} Pfadname</para></listitem> <listitem><para>%u %{url} URL</para></listitem> <listitem><para>%d %{duration} Dauer in Minuten:Sekunden</para></listitem> <listitem><para>%D %{seconds} Dauer in Sekunden</para></listitem> <listitem><para>%n %{tracks} Anzahl Tracks im Album</para></listitem> <listitem><para>%e %{extension} Dateiendung</para></listitem> <listitem><para>%O %{tag1} Das Format von Tag 1 (ID3v1.1 oder leer falls nicht vorhanden)</para></listitem> <listitem><para>%o %{tag2} Das Format von Tag 2 (ID3v2.3.0, ID3v2.4.0, ID3v2.2.0, ID3v2.2.1, Vorbis, APE, MP4, ASF oder leer falls nicht vorhanden)</para></listitem> <listitem><para>%b %{bitrate} Bitrate in kbit/s</para></listitem> <listitem><para>%v %{vbr} VBR oder leer (nur für ID3v2.3 mit id3lib)</para></listitem> <listitem><para>%r %{samplerate} Samplerate in Hz</para></listitem> <listitem><para>%m %{mode} Kanalmodus (Stereo oder Joint Stereo)</para></listitem> <listitem><para>%h %{channels} Anzahl Kanäle (1 oder 2)</para></listitem> <listitem><para>%k %{codec} Codec (z.B. MPEG 1 Layer 3, MP4, Ogg Vorbis, FLAC, MPC, ASF, AIFF, WAV)</para></listitem> </itemizedlist> <para> Mit diesen Formatcodes sind bereits einige Formate vordefiniert. "CSV unquoted" trennt die einzelnen Felder durch Tabulatoren. Daten in diesem Format können einfach wieder über das gleichnamige Importformat in &kid3; importiert werden. "CSV quoted" setzt die Felder zusätzlich noch in Anführungszeichen, was den Import in Tabellenkalkulationen erleichtert. Dafür sollten in den Feldern keine Anführungszeichen vorkommen. "Extended M3U" und "Extended PLS" erzeugen Stücklisten mit Zusatzinformationen und absoluten Pfadnamen. "HTML" dient dazu, eine HTML-Seite mit verlinkten Tracks zu erstellen. "Kover XML" generiert eine XML-Datei, welche vom Cover-Druck-Programm Kover gelesen werden kann. "Technical Details" liefert Informationen über Bitrate, Samplerate, Kanäle, usw. "Custom Format" schließlich ist frei für ein eigenes Format. Natürlich können auch die anderen Formate beliebig angepasst werden, oder es können noch mehr Formate in der Datei <filename>kid3rc</filename> im Konfigurationsverzeichnis hinzugefügt werden. </para> <para> Die Quelle der Daten (<guilabel>Tag 1</guilabel> oder <guilabel>Tag 2</guilabel>) kann mit einem Auswahlfeld festgelegt werden. Ein Klick auf <guibutton>In Datei</guibutton> bzw. <guibutton>In Zwischenablage</guibutton> speichert die Daten in einer Datei oder der Zwischenablage. <guibutton>OK</guibutton> und <guibutton>Abbrechen</guibutton> beenden den Dialog, wobei <guibutton>OK</guibutton> die aktuellen Einstellungen übernimmt. </para></listitem> </varlistentry> <varlistentry id="create-playlist"> <term><menuchoice> <guimenu>Datei</guimenu> <guimenuitem>Stückliste erstellen...</guimenuitem> </menuchoice></term> <listitem><para><action>Erzeugt eine Stückliste.</action> Das Format und der Inhalt der Stückliste können mit verschiedenen Optionen bestimmt werden. </para> <para> <guibutton>Wie Verzeichnisname</guibutton> generiert den Dateinamen der Wiedergabeliste aus dem Namen des Verzeichnisses. Es kann aber auch ein <guibutton>Format</guibutton> mit Werten aus den Tags benutzt werden, z.B. "%{artist} - %{album}", um die Namen von Interpret und Album im Dateinamen zu haben. Es können dieselben Format Codes wie bei <link linkend="export">Exportieren</link> verwendet werden. Die Dateierweiterung richtet sich nach dem Format der Stückliste. </para> <para> Wo die Wiedergabeliste erstellt wird, kann bestimmt werden mit der Auswahlliste <guilabel>Erstelle in</guilabel> <variablelist> <varlistentry><term>Aktuellem Verzeichnis</term> <listitem><para>Die Stückliste wird im aktuellen Verzeichnis erstellt und enthält nur Dateien aus diesem Verzeichnis.</para></listitem></varlistentry> <varlistentry><term>Jedem Ordner</term> <listitem><para>In jedem Verzeichnis, welches gelistete Dateien enthält, wird eine eigene Stückliste erstellt, welche die Dateien aus dem jeweiligen Verzeichnis enthält. </para></listitem></varlistentry> <varlistentry><term>Basisordner</term> <listitem><para>Nur eine einzige Stückliste wird im Basisverzeichnis (d.h. dem Verzeichnis der Dateiliste) erstellt, und sie enthält die gelisteten Dateien aus dem Basisverzeichnis und allen Unterverzeichnissen. </para></listitem></varlistentry> </variablelist> </para> <para> Das <guilabel>Format</guilabel> der Wiedergabeliste kann <guilabel>M3U</guilabel>, <guilabel>PLS</guilabel> oder <guilabel>XSPF</guilabel> sein. </para> <para> <guibutton>Nur ausgewählte Dateien einfügen</guibutton> führt dazu, dass nur ausgewählte Dateien in der Stückliste erscheinen. Wenn ein Verzeichnis ausgewählt ist, so gelten all seine Dateien ebenfalls als selektiert. Wenn diese Option nicht aktiviert ist, gelangen alle Audio-Dateien in die Stückliste. </para> <para> <guibutton>Sortiere nach Dateiname</guibutton> ordnet die Dateien wie üblich nach dem Dateinamen in der Wiedergabeliste an. Mit <guibutton>Sortiere nach Tag-Feld</guibutton> ist es möglich, eine Format-Zeichenkette mit Tag-Werten für die Sortierung zu verwenden. "%{track.3}" kann beispielsweise benutzt werden, um nach der Tracknummer zu sortieren (".3" wird verwendet, um 3 Stellen mit führenden Nullen zu kriegen, und somit korrekt nach der Nummer zu sortieren). Es ist auch möglich, mehrere Codes zu verwenden, z.B. "%{genre}%{year}", um nach einer Zeichenkette aus Stil und Jahr zu sortieren. </para> <para> Die Einträge in der Stückliste sind relative oder absolute Pfadangaben, je nachdem ob <guibutton>Benutze relativen Pfad für Dateien in der Wiedergabeliste</guibutton> oder <guibutton>Benutze vollen Pfad für Dateien in der Wiedergabeliste</guibutton> gesetzt ist. </para> <para> <guibutton>Nur Liste der Dateien schreiben</guibutton> führt dazu, dass die Stückliste nur die Pfade zu den Dateien enthält. Wünscht man zusätzliche Informationen, so steht <guibutton>Schreibe Informationen mit</guibutton> einer Format-Zeichenfolge zur Verfügung, und es wird eine erweiterte Stückliste generiert. </para> </listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>Q</keycap></keycombo> </shortcut> <guimenu>Datei</guimenu> <guimenuitem>Beenden</guimenuitem> </menuchoice></term> <listitem><para><action>Beendet die Anwendung.</action></para></listitem> </varlistentry> </variablelist> </para> </sect2> <sect2 id="edit-menu"> <title>Das Menü Bearbeiten</title> <para> <variablelist> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Alt</keycap><keycap>A</keycap></keycombo> </shortcut> <guimenu>Bearbeiten</guimenu> <guimenuitem>Alles auswählen</guimenuitem> </menuchoice></term> <listitem><para>Selektiert alle Dateien.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>Shift</keycap><keycap>A</keycap></keycombo> </shortcut> <guimenu>Bearbeiten</guimenu> <guimenuitem>Abwählen</guimenuitem> </menuchoice></term> <listitem><para>Deselektiert alle Dateien.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Alt</keycap><keycap>Up</keycap></keycombo> </shortcut> <guimenu>Bearbeiten</guimenu> <guimenuitem>Vorangehende Datei</guimenuitem> </menuchoice></term> <listitem><para>Selektiert die vorangehende Datei.</para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Alt</keycap><keycap>Down</keycap></keycombo> </shortcut> <guimenu>Bearbeiten</guimenu> <guimenuitem>Nächste Datei</guimenuitem> </menuchoice></term> <listitem><para>Selektiert die nächste Datei.</para></listitem> </varlistentry> </variablelist> </para> </sect2> <sect2 id="tools-menu"> <title>Das Menü Extras</title> <para> <variablelist> <varlistentry> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>Dateinamenformat anwenden</guimenuitem> </menuchoice></term> <listitem><para>Wenn <guilabel>Während des Editierens formatieren</guilabel> im Konfigurationsdialog beim Dateinamenformat deaktiviert ist, kann man mit diesem Menüpunkt <action>die Formatierung auf die Namen der ausgewählten Dateien anwenden</action>. Diese Funktion kann auch angewendet werden, um zu testen, ob die Dateinamen dem eingestellten Format entsprechen. Hierzu sollten alle Dateien gespeichert werden; nach Anwendung des Formates sind dann nur diejenigen Dateien verändert (in der Dateiliste mit einem Diskettensymbol versehen), welche nicht dem eingestellten Format entsprechen. Ungewollte Änderungen können mit <guilabel>Zuletzt gespeicherte Fassung</guilabel> rückgängig gemacht werden. </para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>ID3 Format anwenden</guimenuitem> </menuchoice></term> <listitem><para>Wenn <guilabel>Während des Editierens formatieren</guilabel> im Konfigurationsdialog beim ID3 Format deaktiviert ist, kann man mit diesem Menüpunkt <action>die Formatierung auf die Tags der ausgewählten Dateien anwenden</action>. Diese Funktion kann auch angewendet werden, um zu testen, ob die Tags dem eingestellten Format entsprechen. Hierzu sollten alle Dateien gespeichert werden; nach Anwendung des Formates sind dann nur diejenigen Dateien verändert (in der Dateiliste mit einem Diskettensymbol versehen), welche nicht dem eingestellten Format entsprechen. Ungewollte Änderungen können mit <guilabel>Zuletzt gespeicherte Fassung</guilabel> rückgängig gemacht werden. </para></listitem> </varlistentry> <varlistentry id="rename-directory"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>Verzeichnis umbenennen...</guimenuitem> </menuchoice></term> <listitem><para>Dieser Dialog bietet die Möglichkeit, automatisch das aktuelle Verzeichnis gemäß den Tags umzubenennen. Verschiedene Formate sind vordefiniert und Informationen über Interpret, Album und Jahr in den Verzeichnisnamen zu übernehmen. Es ist auch möglich, ein eigenes Format zu definieren, die folgenden Codes können verwendet werden, um Werte aus den Tags im Verzeichnisnamen einzusetzen: </para> <itemizedlist> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track))</para></listitem> <listitem><para>%t %{track.n} Nummer mit Feldlänge n (z.B. 001 für %{track.3})</para></listitem> <listitem><para>%T %{tracknumber} Nummer (Track), ohne führende Null</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> </itemizedlist> <para> Wenn ein Verzeichnis-Trennzeichen "/" im Format gefunden wird, werden mehrere Verzeichnisse erstellt. Will man ein neues Verzeichnis erstellen statt das aktuelle Verzeichnis umbenennen, so wählt man <guilabel>Verzeichnis erstellen</guilabel> statt <guilabel>Verzeichnis umbenennen</guilabel>. Die Quelle der Tag-Information kann zwischen <guilabel>Von Tag 1 und Tag 2</guilabel>, <guilabel>Von Tag 1</guilabel> und <guilabel>Von Tag 2</guilabel> ausgewählt werden. Die voraussichtliche Verzeichnisnamensänderung für die erste Datei kann in den Abschnitten <guilabel>Von</guilabel> und <guilabel>Nach</guilabel> des Dialogs gesehen werden. </para></listitem> </varlistentry> <varlistentry id="number-tracks"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>Tracks nummerieren...</guimenuitem> </menuchoice></term> <listitem><para> Falls die Track-Nummern in den Tags nicht vorhanden oder falsch sind, so lassen sich mit dieser Funktion <action>die Tracks automatisch aufsteigend nummerieren</action>. Im Dialog kann die <guilabel>Startnummer</guilabel> angegeben werden. Falls nur ein Teil der Tracks nummeriert werden soll, so sind diese vorgängig auszuwählen. </para><para> Wenn <guilabel>Anzahl Stücke</guilabel> markiert ist, wird auch die Anzahl Tracks in den Tags gesetzt. </para></listitem> </varlistentry> <varlistentry id="filter"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>Filter...</guimenuitem> </menuchoice></term> <listitem> <para> Der Filter kann dazu verwendet werden, nur diejenigen Dateien anzeigen, welche gewisse Eigenschaften erfüllen. Dies kann dann nützlich sein, wenn man die Tags oder Dateinamen in einer grösseren Sammlung bereinigen möchte, jedoch nur diejenigen Dateien bearbeiten möchte, welche nicht dem gewünschten Schema entsprechen. Der Ausdruck, der bestimmt, welche Dateien angezeigt werden, benutzt dieselben Formatcodes, welche auch beim Dateinamenformat, Importieren und Exportieren verwendet werden. </para> <itemizedlist> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track))</para></listitem> <listitem><para>%t %{track.n} Nummer mit Feldlänge n (z.B. 001 für %{track.3})</para></listitem> <listitem><para>%T %{tracknumber} Nummer (Track), ohne führende Null</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> <listitem><para>%f %{file} Dateiname (File name)</para></listitem> <listitem><para>%p %{filepath} Absoluter Pfadname</para></listitem> <listitem><para>%e %{extension} Dateiendung</para></listitem> <listitem><para>%O %{tag1} Das Format von Tag 1 (ID3v1.1 oder leer falls nicht vorhanden)</para></listitem> <listitem><para>%o %{tag2} Das Format von Tag 2 (ID3v2.3.0, ID3v2.4.0, ID3v2.2.0, ID3v2.2.1, Vorbis, APE, MP4, ASF oder leer falls nicht vorhanden)</para></listitem> <listitem><para>%b %{bitrate} Bitrate in kbit/s</para></listitem> <listitem><para>%v %{vbr} VBR oder leer (nur für ID3v2.3 mit id3lib)</para></listitem> <listitem><para>%r %{samplerate} Samplerate in Hz</para></listitem> <listitem><para>%m %{mode} Kanalmodus (Stereo oder Joint Stereo)</para></listitem> <listitem><para>%h %{channels} Anzahl Kanäle (1 oder 2)</para></listitem> <listitem><para>%k %{codec} Codec (z.B. MPEG 1 Layer 3, MP4, Ogg Vorbis, FLAC, MPC, ASF, AIFF, WAV)</para></listitem> <listitem><para>%1a %1{artist}, ... Der Präfix 1 wird benutzt, um Werte von Tag 1 zu erhalten</para></listitem> <listitem><para>%2a %2{artist}, ... Der Präfix 2 wird benutzt, um Werte von Tag 2 zu erhalten</para></listitem> </itemizedlist> <para> Diese Codes werden mit dem Wert für die Datei ersetzt und die resultierenden Zeichenketten können mit folgenden Operatoren verglichen werden: </para> <itemizedlist> <listitem><para>s1 equals s2: wahr wenn s1 und s2 gleich sind.</para></listitem> <listitem><para>s1 contains s2: wahr wenn s2 in s1 enthalten ist.</para></listitem> <listitem><para>s matches re: wahr wenn s den regulären Ausdruck re erfüllt.</para></listitem> </itemizedlist> <para> Wahre Ausdrücke werden durch 1 ersetzt, falsche durch 0. Wahre Werte repräsentieren nebst 1 auch true, on und yes, falsche Werte entsprechend 0, false, off und no. Diese Wahrheitwerte können durch die logischen Operatoren not, and und or verknüpft werden (die Priorität ist in dieser Reihenfolge), und mit Klammern gruppiert werden. </para> <para> Einige Filterregeln sind bereits vordefiniert und können als Beispiele für eigene Ausdrücke dienen: </para> <variablelist> <varlistentry><term>All</term><listitem> <para> Wenn die Dateiliste gefiltert ist - dies wird mit "[Gefiltert]" in der Titelzeile angezeigt - und man möchte wieder alle Dateien anzeigen, kann das Filtern mit diesem Filter rückgängig gemacht werden. Es wird ein leerer Ausdruck verwendet, ein Wahrheitswert wie true hätte aber denselben Effekt. </para> </listitem></varlistentry> <varlistentry><term>Filename Tag Mismatch</term><listitem> <para><userinput> not (%{filepath} contains "%{artist} - %{album}/%{track} %{title}") </userinput></para> <para> Testet, ob ein Dateipfad dem Dateinamenformat entspricht. Diese Regel wird automatisch angepasst, wenn sich das Dateinamenformat ändert. </para> </listitem></varlistentry> <varlistentry><term>No Tag 1</term><listitem> <para><userinput> %{tag1} equals "" </userinput></para> <para>Es werden nur Dateien ohne Tag 1 angezeigt.</para> </listitem></varlistentry> <varlistentry><term>No Tag 2</term><listitem> <para><userinput> %{tag2} equals "" </userinput></para> <para>Es werden nur Dateien ohne Tag 2 angezeigt.</para> </listitem></varlistentry> <varlistentry><term>ID3v2.3.0 Tag</term><listitem> <para><userinput> %{tag2} equals "ID3v2.3.0" </userinput></para> <para>Es werden nur Dateien mit ID3v2.3.0 Tag angezeigt.</para> </listitem></varlistentry> <varlistentry><term>ID3v2.4.0 Tag</term><listitem> <para><userinput> %{tag2} equals "ID3v2.4.0" </userinput></para> <para>Es werden nur Dateien mit ID3v2.4.0 Tag angezeigt.</para> </listitem></varlistentry> <varlistentry><term>Tag 1 != Tag 2</term><listitem> <para><userinput> not (%1{title} equals %2{title} and %1{album} equals %2{album} and %1{artist} equals %2{artist} and %1{comment} equals %2{comment} and %1{year} equals %2{year} and %1{track} equals %2{track} and %1{genre} equals %2{genre}) </userinput></para> <para>Es werden Dateien mit Unterschieden zwischen Tag 1 und Tag 2 angezeigt.</para> </listitem></varlistentry> <varlistentry><term>Tag 1 == Tag 2</term><listitem> <para><userinput> %1{title} equals %2{title} and %1{album} equals %2{album} and %1{artist} equals %2{artist} and %1{comment} equals %2{comment} and %1{year} equals %2{year} and %1{track} equals %2{track} and %1{genre} equals %2{genre} </userinput></para> <para>Es werden Dateien mit identischen Tag 1 und Tag 2 angezeigt.</para> </listitem></varlistentry> <varlistentry><term>No Picture</term><listitem> <para><userinput> %{picture} equals "" </userinput></para> <para>Es werden nur Dateien ohne Bild angezeigt.</para> </listitem></varlistentry> <varlistentry><term>Custom Filter</term><listitem> <para> Dieser Eintrag kann verwendet werden, um einen eigenen Filter hinzuzufügen. Um beispielsweise nur Dateien anzuzeigen, deren Interpret mit "The" beginnt, ersetzt man "Custom Filter" durch einen Namen wie "The Bands" und drückt die Enter Taste. Dann fügt man folgenden Ausdruck in das Eingabefeld ein: </para> <para><userinput> %{artist} matches "The.*" </userinput></para> <para> Gespeichert wird mit <guibutton>Einstellungen speichern</guibutton>. Die Dateien werden mit <guibutton>Anwenden</guibutton> gefiltert. Alle bearbeiteten Dateien werden im Textfeld angezeigt, mit einem "+" vor solchen, die den Filterausdruck erfüllen, und einem "-" vor den anderen. Wenn das Filtern fertig ist, werden nur noch diejenigen Dateien angezeigt, deren Interpret mit "The" beginnt, und in der Titelzeile wird "[Gefiltert]" angezeigt. </para> </listitem></varlistentry> </variablelist> </listitem> </varlistentry> <varlistentry id="convert-to-id3v24"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>ID3v2.3 nach ID3v2.4 konvertieren</guimenuitem> </menuchoice></term> <listitem><para> Wenn in den ausgewählten Dateien ID3v2.3 Tags vorhanden sind, so werden sie <action>zu ID3v2.4 Tags konvertiert</action>. Frames, welche von TagLib nicht unterstützt sind, werden verworfen. Nur Dateien ohne ungesicherte Änderungen werden konvertiert. </para></listitem> </varlistentry> <varlistentry id="convert-to-id3v23"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>ID3v2.4 nach ID3v2.3 konvertieren</guimenuitem> </menuchoice></term> <listitem><para> Wenn in den ausgewählten Dateien ID3v2.4 Tags vorhanden sind, so werden sie <action>zu ID3v2.3 Tags konvertiert</action>. Nur Dateien ohne ungesicherte Änderungen werden konvertiert. </para></listitem> </varlistentry> <varlistentry id="play"> <term><menuchoice> <guimenu>Extras</guimenu> <guimenuitem>Wiedergabe</guimenuitem> </menuchoice></term> <listitem><para> Damit öffnet sich eine einfache Werkzeugleiste zum Abspielen von Audio-Dateien. Sie enthält Knöpfe für die grundlegenden Operationen (<guibutton>Wiedergabe/Pause</guibutton>, <guibutton>Wiedergabe stoppen</guibutton>, <guibutton>Zurück</guibutton>, <guibutton>Vorwärts</guibutton>, <guibutton>Schließen</guibutton>), Regler für Position und Lautstärke und eine Anzeige der aktuellen Position. Abgespielt werden die selektierten Stücke bei Mehrfachselektion bzw. alle Stücke wenn eine oder keine Datei selektiert ist. </para></listitem> </varlistentry> </variablelist> </para> </sect2> <sect2 id="settings-menu"> <title>Das Menü Einstellungen</title> <para> <variablelist> <varlistentry> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Werkzeugleiste anzeigen</guimenuitem> </menuchoice></term> <listitem><para><action>Schaltet die Anzeige der Werkzeugleiste ein und aus. </action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Statusleiste anzeigen</guimenuitem> </menuchoice></term> <listitem><para><action>Schaltet die Anzeige der Statusleiste, welche längere Aktionen wie Öffnen und Speichern eines Verzeichnisses anzeigt, ein und aus.</action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Bild ausblenden</guimenuitem> </menuchoice></term> <listitem><para><action>Schaltet die Anzeige des Cover-Bildes ein und aus. </action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Tags automatisch ausblenden</guimenuitem> </menuchoice></term> <listitem><para> Wenn diese Option aktiv ist, werden leere Tags automatisch ausgeblendet. Manuell lassen sich die <guilabel>Datei</guilabel>, <guilabel>Tag 1</guilabel> und <guilabel>Tag 2</guilabel> Sektionen durch Druck auf die entsprechenden <guibutton>-</guibutton> bzw. <guibutton>+</guibutton> Schaltflächen zu- und aufklappen. </para></listitem> </varlistentry> <varlistentry id="configure-kid3"> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Kid3 einrichten...</guimenuitem> </menuchoice></term> <listitem><para>Öffnet den <action>Konfigurationsdialog</action>, der aus verschiedenen Seiten besteht, mit Optionen für Tags, Dateien, Benutzerbefehle und Netzwerk. </para> <para> Optionen für Tags sind auf der Seite <guilabel>Tags</guilabel> zu finden. </para> <para> Wenn <guilabel>Markiere abgeschnittene Felder</guilabel> aktiv ist, werden abgeschnittene ID3v1.1 Felder rot markiert. Die Textfelder in ID3v1.1 Tags haben bloß 30 Zeichen, der Kommentar nur 28 Zeichen. Auch Stil und Nummer sind Beschränkungen unterworfen, so dass Felder gekürzt werden können, wenn sie importiert oder von ID3v2 konvertiert werden. Abgeschnittene Felder und ihre Datei werden rot markiert; die Markierung wird entfernt, nachdem das Feld editiert worden ist. </para> <para> Mit <guilabel>Text Codierung</guilabel> für <guilabel>ID3v1</guilabel> kann die Codierung, welche für ID3v1 Tags verwendet wird, eingestellt werden. Standardmässig wird hier ISO-8859-1 erwartet, daher wird empfohlen, diese Einstellung so zu lassen. Da jedoch Tags mit anderer Codierung anzutreffen sind, kann hier eine andere Codierung gewählt werden, so dass dann die ID3v1 Tags nach ID3v2 transferiert werden können, welches Unicode Zeichen unterstüzt. </para> <para> Das Markierungsfeld <guilabel>Benutze Format Nummer/Anzahl Stücke</guilabel> bewirkt, dass im Tracknummer-Feld bei den ID3v2 Tags nicht bloß die Tracknummer gespeichert wird, sondern auch die Gesamtzahl der Stücke im Verzeichnis. </para> <para> Wenn <guilabel>Stil als Text statt als Nummer</guilabel> aktiviert ist, werden alle Stile als Text gespeichert, auch wenn ein ID3v1-Code für den Stil existiert. Ohne diese Einstellungen werden solche Stile als die Nummer des entsprechenden ID3v1-Codes gespeichert (in Klammern für ID3v2.3). Der Stil Metal wird also abhängig von dieser Option entweder als "Metal" oder als "(9)" gespeichert. Stile, für welche kein ID3v1-Code existiert, werden immer als Text gespeichert. Der Sinn dieser Option ist es, die Kompatibilität mit Geräten zu verbessern, welche die Codes nicht korrekt interpretieren. </para> <para> <guilabel>Text Codierung</guilabel> bestimmt die Codierung von ID3v2 Elementen und kann auf <guilabel>ISO-8859-1</guilabel>, <guilabel>UTF16</guilabel> oder <guilabel>UTF8</guilabel> gesetzt werden. <guilabel>UTF8</guilabel> ist für ID3v2.3.0 nicht gültig; wenn dieser Wert gesetzt ist, wird stattdessen <guilabel>UTF16</guilabel> verwendet. Für ID3v2.4.0 sind alle drei Codierungen möglich. </para> <para> <guilabel>Version für neue Tags</guilabel> legt fest, ob neue ID3v2 Tags mit der Version 2.3.0 oder 2.4.0 erzeugt werden. Im ersteren Fall wird id3lib verwendet, TagLib kommt nur dann zum Einsatz, wenn ein ID3v2.4.0 Tag bearbeitet werden muss. Mit der Einstellung <guilabel>ID3v2.4.0 (TagLib)</guilabel> wird für MP3-Dateien immer die TagLib verwendet; veränderte oder neu erstellte Tags werden dann als ID3v2.4.0 gespeichert. </para> <para> <guilabel>Anzahl der Stellen in Tracknummer</guilabel> bestimmt die Zahl der Dezimalstellen in den Tracknummer-Feldern. Die Nummern werden mit führenden Nullen auf die eingestellte Anzahl Stellen erweitert. Beispielsweise wird mit dem Wert 2 die Tracknummer 5 als "05" gesetzt. </para> <para> Das Auswahlfeld <guilabel>Name des Kommentar-Feldes</guilabel> ist für Ogg/Vorbis und FLAC-Dateien relevant und bestimmt den Namen des Feldes, welches für Kommentare verwendet wird. Hier scheinen verschiedene Anwendungen unterschiedliche Namen zu verwenden, "COMMENT" wird beispielsweise von xmms benutzt, während amaroK "DESCRIPTION" verwendet. </para> <para> Das Format von Bildern in Ogg/Vorbis-Dateien wird bestimmt durch <guilabel>Name des Bild-Feldes</guilabel> und kann <guilabel>METADATA_BLOCK_PICTURE</guilabel> oder <guilabel>COVERART</guilabel> sein. Das erstere ist der offizielle Standard und benutzt dasselbe Format wie Bilder in FLAC-Dateien. Bei COVERART handelt es sich um eine frühere, inoffizielle Methode, um Bilder in Vorbis-Tags zu codieren. Manche Player benutzen dieses Feld. </para> <para> <guilabel>Eigene Stile</guilabel> kann zur Definition von Stilen benutzt werden, welche nicht in der Standard-Liste enthalten sind, so z.B. "Gothic Metal". Solche Stile sind dann im <guilabel>Stil</guilabel> Auswahlfeld von <guilabel>Tag 2</guilabel> verfügbar. Für ID3v1.1 Tags können nur die vordefinierten Stile verwendet werden. </para> <para> Die Liste mit den eigenen Stilen kann auch dazu verwendet werden, die Anzahl der im <guilabel>Stil</guilabel> Auswahlfeld angebotenen Einträge auf diejenigen zu reduzieren, welche man braucht. Falls die Musiksammlung hauptsächlich aus Metal, Gothic Metal, Ancient und Hard Rock Nummern besteht, so kann man diese Stile eingeben und <guilabel>Nur eigene Stile anzeigen</guilabel> markieren. Das <guilabel>Tag 2</guilabel> <guilabel>Stil</guilabel> Auswahlfeld enthält dann nur noch diese vier Stile, und man braucht nicht mehr die ganze lange Liste nach ihnen zu durchsuchen. Bei dieser Beispielkonfiguration sind im <guilabel>Tag 1</guilabel> <guilabel>Stil</guilabel> Auswahlfeld nur noch Metal und Hard Rock verfügbar, denn diese zwei Einträge sind Standard Stile. Wenn <guilabel>Nur eigene Stile anzeigen</guilabel> nicht markiert ist, so werden die eigenen Stile am Ende der Auswahlliste aufgeführt. </para> <para> <guilabel>Tag Format</guilabel> enthält Einstellungen für das Format der Tags. Wenn <guilabel>Während dem Editieren formatieren</guilabel> aktiviert ist, wird die Eingabe während dem Editieren automatisch formatiert. <guilabel>Groß/Kleinschreibung</guilabel> kann auf <guilabel>Keine Änderungen</guilabel>, <guilabel>Alles Kleinbuchstaben</guilabel>, <guilabel>Alles Großbuchstaben</guilabel>, <guilabel>Den ersten Buchstaben groß</guilabel> oder <guilabel>Alle ersten Buchstaben groß</guilabel> gesetzt werden. Die <guilabel>Zeichen ersetzen</guilabel> Liste kann mit beliebigen Zuordnungen von Zeichenketten gefüllt werden. Eine neue Zuordnung kann hinzugefügt werden, indem in der <guilabel>Von</guilabel> Zelle einer Zeile der zu ersetzende Text eingegeben wird und dann in der <guilabel>Nach</guilabel> Spalte der Ersetzungstext. Zum Löschen einer Zuordnung wird die <guilabel>Von</guilabel> Zelle auf einen leeren Wert gesetzt (z.B. indem man zuerst einen Leerschlag eingibt und diesen dann wieder löscht). Einfügen und Löschen von Zeilen ist auch über das Kontext-Menü möglich, welches erscheint, wenn man die rechte Maustaste drückt. Ersetzungen werden nur durchgeführt, wenn das <guilabel>Zeichen ersetzen</guilabel> Markierungsfeld aktiviert ist. </para> <para> Auf der Seite <guilabel>Dateien</guilabel>, kann mit dem Markierungsfeld <guilabel>Datei-Zeitstempel nicht verändern</guilabel> eingestellt werden, dass die Modifikationszeit der Datei nicht verändert wird. </para> <para> Wenn <guilabel>Änderungen markieren</guilabel> aktiviert ist, werden veränderte Felder markiert, indem der Hintergrund des Namens grau gesetzt wird. </para> <para> <guilabel>Dateinamen Format</guilabel> enthält Einstellungen für das Format der Dateinamen. Dabei sind die selben Optionen wie bei <guilabel>Tag Format</guilabel> möglich. </para> <para> Die Seite <guilabel>Benutzerbefehle</guilabel> enthält eine Tabelle mit Befehlen, welche über das Kontext Menü der Dateiliste ausgewählt werden können. Bei kritischen Operationen, beispielsweise dem Löschen von Dateien, empfiehlt es sich, <guilabel>Nachfragen</guilabel> zu markieren, damit vor dem Ausführen des Befehls eine Bestätigung verlangt wird. <guilabel>Ausgabe</guilabel> kann markiert werden, um die Ausgabe von Konsolen-Applikationen zu sehen (Standard und Fehler-Ausgabe). <guilabel>Name</guilabel> ist der Text, welcher im Kontext Menü dargestellt wird. <guilabel>Befehl</guilabel> schließlich ist die auszuführende Kommandozeile. Argumente können mit den folgenden Codes übergeben werden: </para> <itemizedlist> <listitem><para>%F %{files} Dateipfad (eine Liste wenn mehrere Dateien selektiert sind)</para></listitem> <listitem><para>%f %{file} Pfad einer einzelnen Datei</para></listitem> <listitem><para>%uF %{urls} URLs (eine Liste wenn mehrere Dateien selektiert sind)</para></listitem> <listitem><para>%uf %{url} URL zu einer einzelnen Datei</para></listitem> <listitem><para>%d %{directory} Verzeichnis</para></listitem> <listitem><para>%s %{title} Titel (Song)</para></listitem> <listitem><para>%a %{artist} Interpret (Artist)</para></listitem> <listitem><para>%l %{album} Album</para></listitem> <listitem><para>%c %{comment} Kommentar (Comment)</para></listitem> <listitem><para>%y %{year} Jahr (Year)</para></listitem> <listitem><para>%t %{track} Nummer (Track)</para></listitem> <listitem><para>%t %{track.n} Nummer mit Feldlänge n (z.B. 001 für %{track.3})</para></listitem> <listitem><para>%T %{tracknumber} Nummer (Track), ohne führende Null</para></listitem> <listitem><para>%g %{genre} Stil (Genre)</para></listitem> <listitem><para>%b %{browser} Kommando zum Starten des Web Browsers</para></listitem> </itemizedlist> <para> Das Kommando, welches mit %{browser} eingefügt werden kann, wird oberhalb der Tabelle im Eingabefeld <guilabel>Web Browser</guilabel> definiert. Damit lassen sich leicht Webseiten mit Informationen zu den Audiodateien aufrufen. Zum Beispiel startet <screen width="40"> <userinput>%{browser} http://lyricwiki.org/%u{artist}:%u{title}</userinput> </screen> eine Anfrage in <ulink url="http://www.lyricwiki.org">LyricWiki</ulink> mit Interpret und Titel. Das "u" in %u{artist} und %u{title} bewirkt, dass Interpret %{artist} und Titel %{title} URL-codiert werden. In gleicher Weise lassen sich auch leicht andere Abfragen definieren, z.B. eine Bildsuche bei <ulink url="http://www.google.com">Google</ulink>: <screen width="40"> <userinput>%{browser} http://images.google.com/images?q=%u{artist}%20%u{album}</userinput> </screen> </para> <para> Um dem Tag 2 Album Cover Bilder hinzuzufügen, kann man mit den oben beschriebenen Benutzerbefehlen über Google Images oder Amazon nach Bildern suchen. Die Bilder können mit "Drag and Drop" hinzugefügt werden. Bilder können auch mit <guibutton>Hinzufügen</guibutton> eines Bild Elementes und Importieren einer Datei oder Einfügen aus der Zwischenablage in ein Tag gebracht werden. Unterstützt sind Bilder für ID3v2, MP4, FLAC, Ogg und ASF Tags. </para> <para> Zum Löschen und Hinzufügen von Einträgen steht in der Tabelle ein Kontext Menü zur Verfügung. </para> <para> Die <guilabel>Netzwerk</guilabel> Seite enthält bloß ein Textfeld für die Adresse des Netzwerk Proxys und optional der Portnummer, abgetrennt durch einen Doppelpunkt. Dieser Proxy wird für den Import von einem Internet Server verwendet, wenn das Kästchen davor markiert ist. </para> </listitem> </varlistentry> <varlistentry id="configure-shortcuts"> <term><menuchoice> <guimenu>Einstellungen</guimenu> <guimenuitem>Kurzbefehle festlegen...</guimenuitem> </menuchoice></term> <listitem><para>Öffnet einen Dialog, um den meisten Programm-Funktionen ein Tastatur-Kürzel zuzuordnen. Es gibt sogar einige Funktionen ohne entsprechenden Menüpunkt oder Knopf, z.B. nächste Datei, vorangehende Datei, alles auswählen. </para> <para> </para> </listitem> </varlistentry> </variablelist> </para> </sect2> <sect2 id="help-menu"> <title>Das Menü Hilfe</title> <para> <variablelist> <varlistentry> <term><menuchoice> <guimenu>Hilfe</guimenu> <guimenuitem>Handbuch zu Kid3</guimenuitem> </menuchoice></term> <listitem><para><action>Öffnet dieses Handbuch.</action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <guimenu>Hilfe</guimenu> <guimenuitem>Über Kid3</guimenuitem> </menuchoice></term> <listitem><para><action>Zeigt eine kurze Information über Kid3 an. </action></para></listitem> </varlistentry> </variablelist> </para> </sect2> </sect1> </chapter> <chapter id="credits"> <title>Danksagungen und Lizenz</title> <para> &kid3; </para> <para> Programmiert von Urs Fleisch <email>ufleisch@users.sourceforge.net</email> </para> &underFDL; &underGPL; </chapter> <appendix id="installation"> <title>Installation</title> <sect1 id="getting-kid3"> <title>Bezugsquellen</title> <para> &kid3; ist zu finden unter <ulink url="http://kid3.sourceforge.net">http://kid3.sourceforge.net</ulink>. </para> </sect1> <sect1 id="requirements"> <title>Anforderungen</title> <para> &kid3; braucht <ulink url="http://www.trolltech.com/qt/">Qt</ulink>. <ulink url="http://www.kde.org">KDE</ulink> ist empfohlen aber nicht notwendig, denn &kid3; kann auch als reine Qt Applikation kompiliert werden. &kid3; läuft auf Systemen, wo diese Programmbibliotheken vorhanden sind, z.B. auf GNU/Linux, Windows und Mac OS X. Um Ogg/Vorbis Dateien zu taggen werden <ulink url="http://xiph.org/ogg/">libogg</ulink>, <ulink url="http://xiph.org/vorbis/">libvorbis und libvorbisfile</ulink> benötigt, für FLAC Dateien <ulink url="http://flac.sourceforge.net">libFLAC++ und libFLAC</ulink>. Für MP3 Dateien wird die <ulink url="http://id3lib.sourceforge.net">id3lib</ulink> verwendet. Für MP4 Dateien wird <ulink url="http://code.google.com/p/mp4v2">mp4v2</ulink> benötigt. Für diese vier Formate kann auch durch die <ulink url="http://developer.kde.org/~wheeler/taglib.html">TagLib</ulink> verwendet werden, welche zudem auch MPC, MP2, Speex, TrueAudio, WavPack, WMA, WAV und AIFF Dateien unterstützt. Für MusicBrainz Unterstützung wird <ulink url="http://musicbrainz.org/doc/libtunepimp">libtunepimp</ulink> verwendet. Da momentan kein Tunepimp SDK für Windows existiert, wurde die Windows Version ohne MusicBrainz Import kompiliert. </para> <para> &kid3; ist für die meisten Linux-Distributionen, Windows und Mac OS X erhältlich. Links finden sich auf <ulink url="http://kid3.sourceforge.net"> http://kid3.sourceforge.net</ulink>. </para> </sect1> <sect1 id="compilation"> <title>Kompilieren und Installation</title> <para> Man kann &kid3; mit oder ohne KDE kompilieren. Ohne KDE ist &kid3; eine reine Qt Applikation und es fehlen einige Konfigurations- und Session-Funktionen. </para> <para> Für die KDE 4 Version wird im obersten Verzeichnis getippt: <screen width="40"> <prompt>%</prompt> <userinput>cmake .</userinput> <prompt>%</prompt> <userinput>make</userinput> <prompt>%</prompt> <userinput>make install</userinput> </screen> </para> <para> Falls nicht alle Programmbibliotheken vorhanden sind, so wird &kid3; mit reduzierter Funktionalität kompiliert. Es sollte also darauf geachtet werden, dass die Entwicklungspakete aller gewünschten Bibliotheken auch installiert sind. Andererseits kann mit <userinput>cmake</userinput>-Optionen bestimmt werden, was verwendet werden soll. Die Voreinstellung ist <userinput>-D WITH_TAGLIB:BOOL=ON -D WITH_MP4V2:BOOL=ON -D WITH_ID3LIB:BOOL=ON -D WITH_TUNEPIMP:BOOL=ON -D WITH_VORBIS:BOOL=ON -D WITH_FLAC:BOOL=ON </userinput>. Entsprechend kann auch <userinput>OFF</userinput> gesetzt werden. </para> <para> Um &kid3; als Qt Applikation ohne KDE zu kompilieren, werden <userinput>configure</userinput> und <userinput>make</userinput> aus dem <filename>kid3-qt</filename> Verzeichnis benutzt. Das <userinput>configure</userinput> Skript kann mit <userinput>autoconf</userinput> erstellt werden. <screen width="40"> <prompt>%</prompt> <userinput>cd kid3-qt</userinput> <prompt>%</prompt> <userinput>./configure</userinput> <prompt>%</prompt> <userinput>make</userinput> <prompt>%</prompt> <userinput>make install</userinput> </screen> </para> <para> Die Optionen sind hier <userinput>--with-kde --with-id3lib --with-vorbis --with-flac --with-taglib --with-musicbrainz</userinput> und können mit <userinput>--without-</userinput> deaktiviert werden. Wenn verschiedene Versionen von Qt vorhanden sind, kann die Version z.B. über <userinput>--with-qmake=qmake-qt4</userinput> angegeben werden. </para> <para> Für die Erzeugung von RPM-Paketen ist die Datei <filename>kid3.spec</filename> vorhanden, für Debian-Pakete steht das Skript <filename>build-deb.sh</filename> zur Verfügung. </para> <para> Um &kid3; mit KDE 3 zu kompilieren, wird <command>configure</command> verwendet: <screen width="40"> <prompt>%</prompt> <userinput>./configure</userinput> <prompt>%</prompt> <userinput>make</userinput> <prompt>%</prompt> <userinput>make install</userinput> </screen> </para> <para> Wenn der Quellcode über Subversion geholt wird, kann das <userinput>configure</userinput> Skript erstellt werden mit <screen width="40"> <prompt>%</prompt> <userinput>make -f Makefile.cvs</userinput> </screen> </para> <para> Um die Kompilation etwas zu beschleunigen, kann &kid3; ab GCC 3.4 eine vorkompilierte Include-Datei verwenden. Dazu wird <userinput>configure</userinput> mit der Option <userinput>--enable-gcc-pch</userinput> (und Zuweisen von gcc und g++ von GCC 3.4 zu CC und CXX falls GCC 3.4 nicht der Default Compiler ist) gestartet. Das vorkompilierte System-Include wird dann mit <userinput>make pch</userinput> generiert. </para> <para> Die Qt Anwendung kann auch unter Windows und Mac OS X kompiliert werden. Die Verzeichnisse <filename>win32</filename> und <filename>macosx</filename> beinhalten Skripte zum Kompilieren und Erzeugen von Paketen. Das Skript <filename>buildlibs.sh</filename> erstellt die notwendigen Programmbibliotheken. </para> </sect1> <sect1 id="configuration"> <title>Konfiguration</title> <para>Mit KDE werden der Dateinamenfilter, das Dateinamenformat, die Importformate, die Dateinamen- und ID3-Formate, die Einstellungen für die Werkzeug- und Statusleiste sowie die Fenstergröße im Standardverzeichnis in der Datei <filename>kid3rc</filename> gespeichert. Als Qt-Anwendung liegt diese Datei im Verzeichnis <filename>.qt</filename>, bei Qt 4 in <filename>.config/kid3.sourceforge.net/Kid3.conf</filename>, bei älteren Qt-Versionen wird eine Datei <filename>kid3.cfg</filename> erstellt. Unter Windows wird die Konfiguration in der Registry gespeichert. </para> </sect1> </appendix> <appendix id="dbus-interface"> <title>D-Bus Schnittstelle</title> <sect1 id="dbus-examples"> <title>D-Bus Beispiele</title> <para> Die Qt 4 und KDE 4 Versionen unter Linux bieten eine D-Bus Schnittstelle, mit welcher Kid3 über Skripte gesteuert werden kann. Skripte können in jeder Sprache, für die D-Bus-Anbindungen existieren, geschrieben werden (z.B. in Python) und können über die <guilabel>Benutzerbefehle</guilabel> die Funktionalität von &kid3; erweitern. </para> <para> Mit folgenden Befehlen kann der Interpret im Tag 2 auf den Wert "One Hit Wonder" gesetzt werden: </para> <variablelist> <varlistentry><term>Shell</term> <listitem> <programlisting> dbus-send --dest=net.sourceforge.kid3 --print-reply=literal \ /Kid3 net.sourceforge.Kid3.setFrame int32:2 string:'Artist' \ string:'One Hit Wonder' </programlisting> <para> oder einfacher mit <command>qdbus</command> von Qt (<command>qdbusviewer</command> kann benutzt werden, um die D-Bus Schnittstelle über eine grafische Benutzeroberfläche zu erkunden): </para> <programlisting> qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Artist \ 'One Hit Wonder' </programlisting> </listitem> </varlistentry> <varlistentry><term>Python</term> <listitem> <programlisting> import dbus kid3 = dbus.SessionBus().get_object( 'net.sourceforge.kid3', '/Kid3') kid3.setFrame(2, 'Artist', 'One Hit Wonder') </programlisting> </listitem> </varlistentry> <varlistentry><term>Perl</term> <listitem> <programlisting> use Net::DBus; $kid3 = Net::DBus->session->get_service( "net.sourceforge.kid3")->get_object( "/Kid3", "net.sourceforge.Kid3"); $kid3->setFrame(2, "Artist", "One Hit Wonder"); </programlisting> </listitem> </varlistentry> </variablelist> </sect1> <sect1 id="dbus-api"> <title>D-Bus API</title> <para> Das D-Bus API ist in <filename>net.sourceforge.Kid3.xml</filename> spezifiziert. Die Kid3 Schnittstelle hat die folgenden Methoden: </para> <sect2 id="dbus-openDirectory"> <title>Öffne Datei oder Verzeichnis</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>openDirectory</function></funcdef> <paramdef>string <parameter>path</parameter> Pfad zu Datei oder Verzeichnis</paramdef> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-save"> <title>Speichere alle veränderten Dateien</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>save</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-getErrorMessage"> <title>Detailierte Fehlermeldung für einige Methoden</title> <funcsynopsis> <funcprototype> <funcdef>string <function>getErrorMessage</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt eine detailierte Fehlermeldung zurück.</para> </sect2> <sect2 id="dbus-revert"> <title>Änderungen an Dateien rückgängig machen</title> <funcsynopsis> <funcprototype> <funcdef><function>revert</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-importFromFile"> <title>Tags von Datei importieren</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>importFromFile</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> <paramdef>string <parameter>path</parameter> Pfad zu Datei</paramdef> <paramdef>int32 <parameter>fmtIdx</parameter> Format Index</paramdef> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-downloadAlbumArt"> <title>Cover-Bild herunterladen</title> <funcsynopsis> <funcprototype> <funcdef><function>downloadAlbumArt</function></funcdef> <paramdef>string <parameter>url</parameter> URL des Bildes oder einer dazugehörigen Website</paramdef> <paramdef>boolean <parameter>allFilesInDir</parameter> falls true, wird das Bild in allen Dateien des Verzeichnisses hinzugefügt</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-exportToFile"> <title>Tags in Datei exportieren</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>exportToFile</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> <paramdef>string <parameter>path</parameter> Pfad zu Datei</paramdef> <paramdef>int32 <parameter>fmtIdx</parameter> Format Index</paramdef> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-createPlaylist"> <title>Stückliste erstellen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>createPlaylist</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-quit"> <title>Anwendung beenden</title> <funcsynopsis> <funcprototype> <funcdef><function>quit</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-selectAll"> <title>Alles auswählen</title> <funcsynopsis> <funcprototype> <funcdef><function>selectAll</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-deselectAll"> <title>Gesamte Auswahl aufheben</title> <funcsynopsis> <funcprototype> <funcdef><function>deselectAll</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-firstFile"> <title>Erste Datei auswählen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>firstFile</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt true zurück, wenn eine Datei existiert.</para> </sect2> <sect2 id="dbus-previousFile"> <title>Vorangehende Datei auswählen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>previousFile</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt true zurück, wenn eine vorangehende Datei existiert.</para> </sect2> <sect2 id="dbus-nextFile"> <title>Nächste Datei auswählen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>nextFile</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt true zurück, wenn eine nächste Datei existiert.</para> </sect2> <sect2 id="dbus-expandDirectory"> <title>Aktuelles Verzeichnis auf- oder zuklappen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>expandDirectory</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Ein Dateilistenelement ist ein Verzeichnis, wenn getFileName() einen Namen mit '/' als letztem Zeichen zurückgibt.</para> <para>Gibt true zurück, wenn das aktuelle Dateilistenelement ein Verzeichnis ist.</para> </sect2> <sect2 id="dbus-applyFilenameFormat"> <title>Dateinamenformat anwenden</title> <funcsynopsis> <funcprototype> <funcdef><function>applyFilenameFormat</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-applyTagFormat"> <title>Tag Format anwenden</title> <funcsynopsis> <funcprototype> <funcdef><function>applyTagFormat</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-setDirNameFromTag"> <title>Verzeichnisname von Tags setzen</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>setDirNameFromTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Maske (Bit 0 für Tag 1, Bit 1 für Tag 2)</paramdef> <paramdef>string <parameter>format</parameter> Verzeichnisformat</paramdef> <paramdef>boolean <parameter>create</parameter> true zum Erstellen, false zum Umbenennen</paramdef> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben, sonst ist eine Fehlermeldung mit getErrorMessage() abrufbar.</para> </sect2> <sect2 id="dbus-numberTracks"> <title>Nummeriere Tracks in ausgewählten Dateien</title> <funcsynopsis> <funcprototype> <funcdef><function>numberTracks</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Maske (Bit 0 für Tag 1, Bit 1 für Tag 2)</paramdef> <paramdef>int32 <parameter>firstTrackNr</parameter> Nummer für erste Datei</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-filter"> <title>Dateien filtern</title> <funcsynopsis> <funcprototype> <funcdef><function>filter</function></funcdef> <paramdef>string <parameter>expression</parameter> Filter Ausdruck</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-convertToId3v24"> <title>ID3v2.3 nach ID3v2.4 konvertieren</title> <funcsynopsis> <funcprototype> <funcdef><function>convertToId3v24</function></funcdef> <void/> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-convertToId3v23"> <title>ID3v2.4 nach ID3v2.3 konvertieren</title> <funcsynopsis> <funcprototype> <funcdef><function>convertToId3v23</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-getDirectoryName"> <title>Verzeichnispfad</title> <funcsynopsis> <funcprototype> <funcdef>string <function>getDirectoryName</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt den aboluten Verzeichnispfad zurück.</para> </sect2> <sect2 id="dbus-getFileName"> <title>Dateiname</title> <funcsynopsis> <funcprototype> <funcdef>string <function>getFileName</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Gibt den aboluten Dateinamen zurück, wenn es ein Verzeichnis ist, endet er mit "/".</para> </sect2> <sect2 id="dbus-setFileName"> <title>Setze Dateinamen</title> <funcsynopsis> <funcprototype> <funcdef><function>setFileName</function></funcdef> <paramdef>string <parameter>name</parameter> Dateiname</paramdef> </funcprototype> </funcsynopsis> <para>Die Datei wird umbenannt, wenn das Verzeichnis gespeichert wird.</para> </sect2> <sect2 id="dbus-setFileNameFormat"> <title>Setze Format für Dateiname aus Tags</title> <funcsynopsis> <funcprototype> <funcdef><function>setFileNameFormat</function></funcdef> <paramdef>string <parameter>format</parameter> Dateinamenformat</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-setFileNameFromTag"> <title>Generiere den Dateinamen aus den Tags</title> <funcsynopsis> <funcprototype> <funcdef><function>setFileNameFromTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-getFrame"> <title>Wert eines Elementes</title> <funcsynopsis> <funcprototype> <funcdef>string <function>getFrame</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> <paramdef>string <parameter>name</parameter> Elementname (z.B. "artist")</paramdef> </funcprototype> </funcsynopsis> <para>Um binäre Daten wie ein Bild von einem Element in einer Datei zu speichern, kann der Dateiname dem Elementnamen hinzugefügt werden, z.B. "Picture:/Pfad/zu/Datei".</para> <para>Gibt Wert des Elementes zurück.</para> </sect2> <sect2 id="dbus-setFrame"> <title>Setze Wert eines Elementes</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>setFrame</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> <paramdef>string <parameter>name</parameter> Elementname (z.B. "artist")</paramdef> <paramdef>string <parameter>value</parameter> Wert des Elementes</paramdef> </funcprototype> </funcsynopsis> <para>Für Tag 2 (<parameter>tagMask</parameter> 2) gilt: Wenn kein Element mit <parameter>name</parameter> existiert, so wird ein neues Element hinzugefügt, wenn <parameter>value</parameter> leer ist, so wird das Element gelöscht. Um binäre Daten wie ein Bild einem Element hinzuzufügen, kann der Dateiname dem Elementnamen hinzugefügt werden, z.B. "Picture:/Pfad/zu/Datei".</para> <para>Wenn OK wird true zurückgegeben.</para> </sect2> <sect2 id="dbus-getTag"> <title>Alle Elemente eines Tags</title> <funcsynopsis> <funcprototype> <funcdef>array of string <function>getTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> <para>Gibt eine Liste mit abwechselnd Elementnamen und -werten zurück.</para> </sect2> <sect2 id="dbus-getInformation"> <title>Technische Informationen über Datei</title> <funcsynopsis> <funcprototype> <funcdef>array of string <function>getInformation</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Eigenschaften sind Format, Bitrate, Samplerate, Channels, Duration, Channel Mode, VBR, Tag 1, Tag 2. Eigenschaften, welche nicht vorhanden sind, werden ausgelassen.</para> <para>Gibt eine Liste mit abwechselnd Eigenschaftsnamen und -werten zurück.</para> </sect2> <sect2 id="dbus-setTagFromFileName"> <title>Setze Tag aus Dateinamen</title> <funcsynopsis> <funcprototype> <funcdef><function>setTagFromFileName</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-setTagFromOtherTag"> <title>Setze Tag aus anderem Tag</title> <funcsynopsis> <funcprototype> <funcdef><function>setTagFromOtherTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-copyTag"> <title>Kopiere Tag</title> <funcsynopsis> <funcprototype> <funcdef><function>copyTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-pasteTag"> <title>Füge Tag ein</title> <funcsynopsis> <funcprototype> <funcdef><function>pasteTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-removeTag"> <title>Entferne Tag</title> <funcsynopsis> <funcprototype> <funcdef><function>removeTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-hideTag"> <title>Blende Tag im GUI aus oder zeige es an</title> <funcsynopsis> <funcprototype> <funcdef><function>hideTag</function></funcdef> <paramdef>int32 <parameter>tagMask</parameter> Tag Bit (1 für Tag 1, 2 für Tag 2)</paramdef> <paramdef>boolean <parameter>hide</parameter> true um Tag auszublenden</paramdef> </funcprototype> </funcsynopsis> </sect2> <sect2 id="dbus-reparseConfiguration"> <title>Lese die Konfiguration neu ein</title> <funcsynopsis> <funcprototype> <funcdef><function>reparseConfiguration</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para>Automatisierte Konfigurationsänderungen sind durch direktes Modifizieren der Konfigurationsdatei und anschliessendes Einlesen möglich.</para> </sect2> </sect1> </appendix> &documentation.index; </book> <!-- Local Variables: mode: sgml sgml-minimize-attributes:nil sgml-general-insert-case:lower sgml-indent-step:0 sgml-indent-data:nil End: -->