--portable
FILE
--help
--author
--version
--license
--desktopfile FILE
Opzioni Qt
--dbus
-c
-h|--help
Kid3 è un'applicazione per modificare i tag ID3v1 e ID3v2 nei file MP3 in modo efficiente. Questi tag possono essere modificati dalla maggior parte dei lettori MP3, ma in modo non proprio comodo ed efficiente. Inoltre, sono supportati anche i tag nei file Ogg/Vorbis, Opus, DSF, FLAC, MPC, APE, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV, AIFF e nei moduli dei tracker (MOD, S3M, IT, XM).
Kid3 non acquisisce né codifica i file MP3, ma ha lo scopo di modificare i tag ID3 di tutti i file di un album in modo efficiente, cioè con il minor numero possibile di clic del mouse e di tasti. Dove la maggior parte degli altri programmi può modificare i tag ID3v1 o ID3v2, Kid3 ha il pieno controllo su entrambe le versioni, può convertire i tag tra i due formati e ha accesso a tutti i tag ID3v2. I tag di più file possono essere impostati sullo stesso valore, ad es. l'artista, l'album, l'anno e il genere di tutti i file di un album hanno generalmente gli stessi valori e possono essere impostati insieme. Se le informazioni per i tag sono contenute nel nome del file, i tag possono essere impostati automaticamente dal nome del file. È anche possibile impostare il nome del file in base ai tag trovati nel file in formati arbitrari.
L'attività di modifica è ulteriormente supportata dalla sostituzione automatica di caratteri o sotto-stringhe, ad esempio per rimuovere caratteri illegali dai nomi dei file. Il controllo automatico dei caratteri maiuscoli e minuscoli semplifica l'utilizzo di uno schema di denominazione coerente in tutti i tag.
Le informazioni dei tag per interi album possono essere recuperate da m[blue]gnudb.orgm[][1], m[blue]TrackType.orgm[][2], m[blue]MusicBrainzm[][3], m[blue]Discogsm[][4], m[blue]Amazonm[][5] o altre fonti di elenchi di tracce. Il formato di importazione è liberamente configurabile tramite espressioni regolari.
Segnalare qualsiasi problema o richiesta di funzionalità all'autore.
Questa sezione descrive una sessione tipica con Kid3. Supponiamo di avere una cartella contenente file MP3 con i brani dell'album «Let's Tag» del gruppo «One Hit Wonder». La cartella è denominata nel formato «artista - album», nel nostro caso One Hit Wonder - Let's Tag. La cartella contiene le tracce nel formato «traccia titolo.mp3», che si pensa sia utile perché i nomi dei file sono brevi (importante quando si usano lettori MP3 mobili con schermi piccoli) e nell'ordine corretto se ordinati alfabeticamente (importante quando si usano lettori MP3 hardware che riproducono i brani in ordine alfabetico o nell'ordine in cui vengono masterizzati su CD e quell'ordine è alfabetico quando si usa mkisofs). Oltre a ciò, le informazioni sull'artista e sull'album sono già nel nome della cartella e non devono essere ripetute nel nome file. Ma torniamo al nostro esempio, l'elenco delle cartelle è simile al seguente:
01 Intro.mp3
02 We Only Got This One.mp3
03 Outro.mp3
Questi file non hanno ancora tag e vogliamo generarli utilizzando Kid3. Usiamo la voce di menu File → Apri (o il pulsante della barra degli strumenti) e selezioniamo uno dei file in questa cartella. Tutti i file saranno visualizzati nell'elenco dei file. Data la nostra pigrizia, vogliamo utilizzare le informazioni nella cartella e i nomi dei file per generare i tag. Pertanto selezioniamo tutti i file, quindi facciamo clic sul pulsante A: Tag 1 nella sezione File. Questo imposterà i valori di titolo, artista, album e traccia in tutti i file. Per impostare i valori di anno e genere di tutti i file, manteniamo tutti i file selezionati e digitiamo «2002» per Data e selezioniamo «Pop» dalla casella combinata Genere. Per impostare solo questi due valori, le loro caselle di controllo vengono automaticamente selezionate e tutti le altre caselle rimangono deselezionate. Ora cambiamo la selezione selezionando solo il primo file e vediamo che tutti i tag contengono i valori corretti. I tag degli altri file possono essere verificati anche selezionandoli uno ad uno. Quando siamo soddisfatti dei tag, utilizziamo la voce di menu File → Salva (o il pulsante della barra degli strumenti). La selezione della voce di menu File → Crea scaletta (o il pulsante della barra degli strumenti) genererà un file One Hit Wonder - Let's Tag.m3u nella cartella.
La GUI di Kid3 è separata in sei sezioni. A sinistra ci sono gli elenchi dei file e delle cartelle, a destra le sezioni File, Tag 1, Tag 2 e Tag 3.
Per navigare tra le diverse sezioni utilizzando la tastiera, sono supportate diverse scorciatoie da tastiera. Nelle sezioni dei tag, le scorciatoie sono attive quando non si modifica il testo o quando si è nella prima colonna.
L'elenco dei file contiene i nomi di tutti i file nella cartella aperta che corrispondono al filtro del nome file selezionato (in genere
*.mp3 *.ogg *.opus *.dsf *.flac *.mpc *.aac *.m4a *.m4b *.m4p *.mp4 *.mp2 *.spx *.tta *.wv *.wma *.wav *.aiff *.ape). È possibile selezionare uno o più file. Per non selezionare alcun file, fare clic nell'area vuota dopo le voci dell'elenco. La selezione determina i file interessati dalle operazioni disponibili utilizzando i pulsanti descritti di seguito.
Oltre a
Nome, è possibile visualizzare anche altre colonne
Dimensioni,
Tipo,
Data modifica
con i dettagli del file. Le colonne possono essere nascoste deselezionandone il nome nel menu contestuale dell'intestazione dell'elenco. L'ordine delle colonne può essere modificato tramite trascinamento e rilascio. L'ordinamento può essere attivato facendo clic sull'intestazione della colonna.
A sinistra dei nomi può essere visualizzata un'icona: un disco per mostrare che il file è stato modificato o informazioni su quali tag sono presenti (V1, V2, V1V2 o NO TAG, nessuna icona è visualizzata se il file non è ancora stato letto).
Le cartelle sono visualizzate con un'icona a forma di cartella. Se si apre una cartella, i suoi file vengono visualizzati in un albero gerarchico. Selezionando i file dalle sottocartelle, le operazioni possono essere eseguite su file in cartelle diverse, il che è utile se la raccolta musicale è organizzata con una cartella per ciascun artista contenente cartelle per album di questo artista.
Il clic del tasto
destro
del mouse all'interno dell'elenco dei file apre un menu contestuale con i seguenti comandi:
Una scaletta può essere creata vuota o contenente le tracce di una cartella, vedere
Creare una scaletta. Il file della scaletta creato in questo modo può essere modificato facendo doppio clic o utilizzando
Modifica
dal menu contestuale dell'elenco dei file. Viene visualizzata una finestra con le voci della scaletta. È possibile aprire più scalette contemporaneamente.
È possibile aggiungere nuove voci trascinandole dall'elenco dei file, da un gestore file o da un'altra scaletta. Se una voce viene trascinata da un'altra scaletta, sarà spostata o copiata in base al sistema. Per invocare l'altra operazione, rispettivamente, il tasto
Maiusc,
Ctrl
o
Alt
(per copiare invece che spostare su
macOS®) deve essere premuto. Il riordino delle voci all'interno della scaletta è possibile anche tramite il trascinamento della selezione. In alternativa, le voci possono essere spostate utilizzando le scorciatoie da tastiera
Ctrl+Maiusc+Su
e
Ctrl+Maiusc+Giù
(su
macOS®
Command
deve essere premuto invece di
Ctrl). Una voce può essere rimossa utilizzando il tasto
Elimina.
Notare quanto segue: per trascinare le voci dall'elenco dei file, devono essere tenute sul lato sinistro (vicino alle icone), lo stesso gesto sul lato destro eseguirà una selezione multipla, tale azione è ancora facilmente possibile.
Quando una scaletta è stata modificata, le modifiche possono essere archiviate utilizzando
Salva
o scartate utilizzando
Annulla. Quando la finestra è chiusa, viene visualizzato un messaggio di conferma in caso di modifiche non salvate.
Le tracce selezionate in una scaletta saranno selezionate automaticamente nell'elenco dei file, rendendo così possibile modificare i loro tag.
Per eseguire azioni su una scaletta, è necessario selezionare il relativo file nell'elenco dei file.
Modifica
dal menu contestuale porta alla finestra descritta in questa sezione e
Riproduci
avvia il lettore multimediale con i brani della scaletta. Le azioni dell'utente possono agire sulle scalette, ad
esempio
Esporta cartella della scaletta, che copia i file da una scaletta in una cartella.
L'elenco delle cartelle contiene i nomi delle cartelle nella cartella aperta, nonché l'attuale (.) e la cartella superiore (..). Permette di cambiare rapidamente la cartella senza utilizzare il comando
Apri
o trascinare e rilasciare.
La visibilità, l'ordine e l'ordinamento delle colonne possono essere configurati come descritto nella sezione relativa all'elenco dei file.
Mostra le informazioni sulla codifica (MP3, Ogg, Opus, DSF, FLAC, MPC, APE, MP2, MP4, AAC, Speex, TrueAudio, WavPack, WMA, WAV, AIFF), bit rate, frequenza di campionamento, canali e la lunghezza di il file.
Il campo di testo
Nome
contiene il nome del file (se viene selezionato un solo file). Se questo nome viene modificato, il file sarà rinominato quando viene utilizzato il comando Salva.
La casella combinata
Formato
e il campo di testo contengono il formato da utilizzare quando il nome file viene generato dal primo o dal secondo tag. Il nome file può contenere caratteri arbitrari, anche una parte di cartella separata da una barra dal nome del file, ma quella cartella deve già esistere affinché la rinomina abbia esito positivo. I seguenti codici speciali vengono utilizzati per inserire i valori dei tag nel nome file:
I codici di formato non sono limitati agli esempi sopra riportati. È possibile utilizzare qualsiasi nome di frame, ad esempio nomi di frame unificati come
%{albumartist},
%{discnumber.1},
%{bpm}
o formattare nomi specifici come
%{popm}.
È possibile anteporre e aggiungere stringhe alla sostituzione per un codice di formato aggiungendole tra virgolette doppie tra le parentesi graffe di un codice di formato. Queste stringhe saranno inserite nella stringa risultante solo se il codice del formato restituisce un valore non vuoto. Ad esempio, se il nome del file deve contenere sia il titolo che il sottotitolo, è possibile utilizzare
%{title} [%{subtitle}]
nella stringa di formato. Ciò produrrebbe una stringa che termina con
[]
se non esiste un frame di sottotitoli per un file. Al fine di omettere le parentesi se non è presente alcun sottotitolo, al suo posto deve essere utilizzato
%{title}%{"["subtitle"]"}. Questo ometterà le parentesi, lo spazio iniziale e il sottotitolo se non esistono i sottotitoli.
L'elenco dei formati disponibili può essere modificato nella finestra di dialogo che appare quando si fa clic sul pulsante
Nome file dal tag
nella scheda
File
delle
impostazioni.
Una seconda casella combinata
Formato
(con la freccia in giù) viene utilizzata per generare i tag dal nome file. Se il formato del nome file non corrisponde a questo modello, vengono provati alcuni altri formati comunemente utilizzati.
Alcuni formati di file comunemente utilizzati sono già disponibili nella casella combinata, ma è anche possibile digitare un formato speciale nell campo di testo.
L'elenco dei formati disponibili può essere modificato nella finestra che appare quando si fa clic sul pulsante
Tag dal nome file
nella scheda
File
delle
impostazioni.
Internamente, un'espressione regolare viene creata dai codici di formato. Se sono richieste espressioni regolari avanzate, il formato per generare i tag dai nomi dei file può essere fornito come un'espressione regolare completa con catture precedute dai codici di formato,
ad es.
per estrarre i numeri di traccia senza rimuovere zeri iniziali, potrebbe essere utilizzato un formato come «/%{track}(\d+)%{title}(.*)»
Da:
Tag 1,
Tag 2: imposta il nome file utilizzando il formato selezionato e il primo tag o il secondo tag, rispettivamente.
A:
Tag 1,
Tag 2: i tag sono impostati dal nome file. Primo, è utilizzato il formato specificato in
Formato. Se il nome file esistente non verifica questo formato, saranno provati i seguenti formati:
Se viene selezionato un singolo file, i controlli della
GUI
sono riempiti con i valori estratti dal nome file. Se vengono selezionati più file, i tag dei file sono impostati direttamente in base ai nomi dei file.
I campi di testo per
Titolo,
Artista,
Album,
Commento,
Data,
Numero traccia
e
Genere
sono utilizzati per modificare il valore corrispondente nel primo tag dei file selezionati. Il valore sarà modificato quando viene modificata la selezione del file o prima di operazioni come
Salva
ed
Esci
e quando viene selezionata la casella di controllo corrispondente a sinistra del nome del campo. Ciò è utile per modificare solo alcuni valori e lasciare invariati gli altri valori.
Se si seleziona un singolo file, tutte le caselle di controllo sono selezionate e i widget di modifica della riga contengono i valori trovati nei tag di questo file. Se non viene trovato un tag nel file, viene visualizzato il valore vuoto corrispondente, che è una stringa vuota per i campi di testo
Titolo,
Artista,
Album
e
Commento, 0 per le modifiche numeriche
Data
e
Numero traccia
e un valore selezionato vuoto per la casella combinata
Genere. I valori possono essere modificati e se la casella di controllo corrispondente è selezionata, saranno impostati per il file selezionato dopo la modifica della selezione. Il file viene quindi marcato come modificato dal simbolo di un disco nell'elenco, ma rimane invariato fino a quando non viene utilizzato il comando
Salva.
Se si selezionano più file, sono visualizzati solo i valori identici in tutti i file selezionati. In tutti gli altri controlli, sono visualizzati i valori vuoti come sopra descritto. Tutte le caselle di controllo sono deselezionate per evitare modifiche indesiderate. Se un valore deve essere impostato per tutti i file selezionati, può essere modificato e la casella di controllo deve essere impostata. I valori saranno impostati per tutti i file selezionati quando la selezione viene modificata e possono essere salvati utilizzando il comando
Salva.
Le caselle di selezione controllano anche il funzionamento della maggior parte dei comandi che influiscono sui tag, come copia, incolla e trasferimento tra i tag 1 e 2. Per semplificare l'utilizzo con più file in cui tutte le caselle di controllo sono deselezionate, questi comandi si comportano allo stesso modo quando tutte le caselle di controllo sono selezionate e quando tutte le caselle di controllo sono deselezionate.
Da tag 2: i campi del tag 1 sono impostati dai valori corrispondenti nel tag 2. Se è selezionato un singolo file, i controlli della
GUI
sono riempiti con i valori del tag 2. Se sono selezionati più file, i tag dei file sono impostati direttamente.
Copia: il buffer di copia è riempito con i valori di Tag 1. Solo i valori con la casella marcata saranno utilizzati nei seguenti comandi Incolla.
Incolla. incolla i valori dal buffer di copia nei controlli della
GUI.
Rimuovi: questo imposterà tutti i controlli della
GUI
a un valore vuoto che si traduce nella rimozione di tutti i valori. Il file salvato non conterrà tag 1.
I controlli della
GUI
funzionano nello stesso modo a quanto descritto per la sezione
Tag 1, ma la dimensione delle stringhe non è limitata.
Per il tag 2
Genere
è possibile utilizzare anche i proprio nomi oltre ai generi elencati nella casella combinata, basta digitare il nome nella riga di modifica.
Il tag 2 non può contenere solo gli stessi valori del tag 1, il formato è costruito in modo flessibile da più frame che sono essi stessi composti da più campi. La tabella tag 2 mostra tutti i frame disponibili nel file selezionato.
Modifica: questo aprirà una finestra che consente di modificare tutti i campi del frame selezionato. Se più file sono selezionati, i campi modificati sono applicati a tutti i file selezionati che contengono tale frame.
Aggiungi: apparirà un richiedente per selezionare il tipo di frame e un frame del tipo selezionato può essere modificato e aggiunto al file. Questo funziona anche per aggiungere un frame a più file selezionati.
Elimina: elimina il frame selezionato nei file selezionati.
Trascina qui la copertina dell'album
viene visualizzato se il file non contiene una copertina incorporata. Un'immagine può essere aggiunta utilizzando il trascinamento della selezione da un browser o da un file manager e sarà visualizzata qui. Le cornici possono essere modificate o aggiunte facendo doppio clic su questo controllo.
Alcuni file possono avere più di due tag ed è visibile una terza sezione di tag. I seguenti tipi di file possono avere una sezione
Tag 3:
I controlli della
GUI
funzionano come nella sezione
Tag 2.
Per sincronizzare le informazioni con i dati audio, è disponibile un editor specifico. Questi frame sono supportati per i tag ID3v2.3.0 e ID3v2.4.0. Per aggiungere un frame del genere, il nome specifico del frame deve essere selezionato nell'elenco che appare quando si fa clic sul pulsante
Aggiungi
-
Testi sincronizzati
o
Codici di temporizzazione evento, rispettivamente. L'editor è lo stesso per entrambi i tipi, per i codici di temporizzazione degli eventi è disponibile solo un insieme predefinito di eventi mentre per i testi sincronizzati è necessario inserire del testo. Di seguito, viene spiegata la modifica dei testi sincronizzati.
Viene selezionato un file con un tag ID3v2, si accede all'editor dei testi utilizzando
Aggiungi
e selezionando
Testi sincronizzati. Per un frame di testi sincronizzati esistente, viene selezionato e si fa clic su
Modifica. Il lettore viene aperto automaticamente con il file attuale in modo che il file possa essere riprodotto e messo in pausa per sincronizzare i testi.
Le impostazioni nella parte superiore dell'editor SYLT normalmente non devono essere modificate. Se il testo contiene caratteri che non sono presenti nell'insieme di caratteri Latin 1, è consigliabile modificare la codifica del testo in UTF16 (o UTF8 per ID3v2.4.0). Per i testi in inglese e la massima compatibilità, utilizzare ISO-8859-1.
La sezione
Testi
ha cinque pulsanti in alto.
Aggiungi
aggiungerà un nuovo evento temporale nella tabella. Il tempo è preso dalla posizione del lettore, quindi l'aggiunta di una voce durante la riproduzione della traccia aggiungerà una linea per la posizione attualmente riprodotta. Gli eventi nella tabella devono essere ordinati cronologicamente, pertanto la riga sarà inserita di conseguenza. Le voci con un orario non valido sono trattate in modo speciale: se la riga attualmente selezionata ha un orario non valido, la marca temporale relativa sarà sostituita dall'ora attuale invece di aggiungere una nuova riga. Se l'ora corrente non è valida, sarà utilizzata la prima riga con un'ora non valida. Questo comportamento dovrebbe facilitare l'aggiunta di marche temporali se il testo è già nella tabella, ma mancano le marche temporali (come nel caso dell'importazione di testi non sincronizzati). Si noti che il tempo non valido è rappresentato come 00:00.00, cioè uguale al tempo all'inizio assoluto della traccia, che non è valido. Per rendere un tempo non valido, premere il tasto
Elimina
o utilizzare
Cancella
dal menu contestuale. Le nuove righe inserite utilizzando
Inserisci riga
dal menu di scelta rapida o create durante l'importazione di testi non sincronizzati con
Dagli appunti
o
Importa
contengono anche marche temporali non valide. Le righe nella tabella possono essere eliminate facendo clic sul pulsante
Elimina
o utilizzando
Elimina righe
dal menu di scelta rapida.
I testi sincronizzati possono essere importati da un file utilizzando
Importa. Il formato previsto è LRC semplice o avanzato. Se il file selezionato non contiene una parentesi quadra nella prima riga, si suppone che sia un semplice file di testo con testi non sincronizzati. Le righe di tale file sono quindi importate con marche temporali non valide. Le informazioni sull'ora possono essere aggiunte utilizzando il pulsante
Aggiungi
o tramite inserimento manuale. È anche possibile importare testi tramite copia e incolla utilizzando
Dagli appunti. I testi sincronizzati possono essere scritti in file LRC utilizzando
Esporta. Si noti che saranno esportate solo le voci con marche temporali valide e che le voci saranno ordinate per ora. Le voci con tempo non valido non saranno memorizzate nemmeno nel frame SYLT, assicurarsi quindi di includere tutte le informazioni di temporizzazione prima di uscire dalla finestra.
La
m[blue]specifica ID3m[]
Durante la riproduzione della traccia, viene evidenziata la riga associata alla posizione di riproduzione attuale, in modo da poter verificare la correttezza delle informazioni di sincronizzazione. Se è necessario aggiungere uno scostamento a uno o più marche temporali, questo può essere realizzato con il menu contestuale
Aggiungi scostamento. I valori negativi possono essere utilizzati per ridurre il tempo. Utilizzando
Scorri alla posizione
nel menu contestuale, è possibile impostare la posizione di riproduzione sull'orario della riga selezionata.
Procedura consigliata per aggiungere i nuovi testi sincronizzati
Elenco dei file
[6]
suggerisce una marca temporale ogni sillaba. Tuttavia la maggior parte dei lettori supporta solo la granularità di una riga o frase. Per supportare entrambi i casi d'uso,
Kid3
segue le stesse convenzioni dell'm[blue]Editor SYLTm[][7]. Si presume che il testo immesso nella tabella inizi una nuova riga a meno che non inizi con uno spazio o un trattino. Eccezioni a questa regola sono possibili iniziando una riga con un trattino basso ('_') per forzare la continuazione o un cancelletto ('#') per forzare una nuova linea. Questi caratteri di escape non sono memorizzati nel frame SYLT. All'interno del frame SYLT, le nuove righe iniziano con un carattere di avanzamento di riga (esadecimale 0A) mentre le continuazioni no. Durante la lettura di frame SYLT,
Kid3
controlla se la prima voce inizia con un avanzamento di riga. In caso contrario, si presume che tutte le voci siano nuove righe e che non vengano utilizzate continuazioni di sillabe.
File → Apri... (Ctrl+O)
File → Apri recente
File → Apri cartella... (Ctrl+D)
File → Ricarica (F5)
File → Salva (Ctrl+S)
File → Scarta modifiche
File → Importa...
L'importazione da un server freedb.org è possibile utilizzando una finestra che appare quando è selezionato Dal server: gnudb.org o TrackType.org. L'artista e il nome dell'album da cercare possono essere inseriti nei due campi più in alto, gli album che corrispondono alla query saranno visualizzati quando si fa clic su Trova e i risultati da m[blue]www.gnudb.orgm[][8] sono ricevuti. L'importazione dei dati della traccia per un album viene eseguita facendo doppio clic sull'album nell'elenco. È possibile selezionare sia il server freedb.org da cui importare sia il percorso CGI. I dati importati sono visualizzati nella tabella di anteprima della finestra di importazione. Se soddisfatti delle tracce visualizzate, possono essere importati chiudendo la finestra di importazione con OK.
Una ricerca sul server di Discogs può essere eseguita utilizzando Discogs. Come nella finestra di gnudb.org, è possibile inserire artista e album e quindi scegliere da un elenco di versioni. Se Tag standard è marcata, le informazioni standard vengono importate, ad es. artista, album e titolo. Se Tag aggiuntivi è marcata, vengono importate ulteriori informazioni se disponibili, ad es. interpreti, arrangiatori o editore. Se Copertina è marcata, la copertina sarà scaricata se disponibile.
Una ricerca su Amazon può essere eseguita utilizzando Amazon. Come nella finestra di gnudb.org, è possibile inserire artista e album e quindi scegliere da un elenco di versioni. Se Tag aggiuntivi è marcata, vengono importate ulteriori informazioni se disponibili, ad es. interpreti, arrangiatori o editore. Se Copertina è marcata, la copertina sarà scaricata se disponibile.
È possibile cercare nello stesso modo nella banca dati delle uscite di MusicBrainz utilizzando Da MusicBrainz Release. Il flusso è lo stesso descritto per Da gnudb.org.
L'importazione da un server MusicBrainz è possibile utilizzando la finestra che appare quando è selezionato Da MusicBrainz Fingerprint. Il server può essere selezionato come nella finestra di importazione freedb. Segue una tabella che mostra i dati delle tracce importate. La colonna di destra mostra lo stato della query MusicBrainz, che inizia con «In sospeso» quando viene aperta la finestra. Quindi viene cercata l'impronta digitale e se non produce un risultato, viene tentata un'altra ricerca utilizzando i tag nel file. Pertanto, può essere utile che una query MusicBrainz riuscita memorizzi informazioni note (ad es. artista e album) nei tag prima dell'importazione. Se è stato trovato un risultato, la ricerca termina nello stato «Riconosciuto», altrimenti non è stato trovato nulla o più risultati ambigui e uno di essi deve essere selezionato dall'utente. OK e Applica utilizzano i dati importati, Annulla chiude la finestra. La chiusura può richiedere del tempo poiché tutto il meccanismo di MusicBrainz deve essere spento.
Per l'importazione di dati testuali, Da file/appunti apre una sotto-finestra, in cui sono disponibili diversi formati di importazione preconfigurati. I primi due, «CSV non quotato» e «CSV quotato» possono essere utilizzati per importare dati esportati dalla finestra Esporta. I dati CSV possono essere modificati con un foglio di calcolo e devono essere scritti utilizzando le tabulazioni come delimitatori. L'importazione dovrebbe quindi essere possibile utilizzando «CSV quotato», che è più flessibile di «CSV non quotato». Tuttavia, i suoi campi non possono contenere virgolette doppie. Se si esporta solo da Kid3 e si importa in seguito, «CSV non quotato» può essere utilizzato come formato semplice per questo scopo. Si noti che ci sono anche i comandi «Esporta CSV» e «Importa CSV» nel menu contestuale dell'elenco dei file, che utilizzano gli script per esportare e importare i dati CSV in un modo più completo, potente e flessibile.
Il formato successivo, «testo HTML di freedb», può essere usato per copiare informazioni da un pagina HTML di m[blue]freedb.orgm[][9]. Cercare un album in freedb e se le informazioni desiderate sono visualizzate nel browser web, copiare il contenuto negli appunti. Quindi fare clic sul pulsante Dagli appunti e le tracce importate saranno visualizzate nella tabella di anteprima nella parte superiore della finestra. Se si è soddisfatti dei dati importati, chiudere la finestra con OK, che inserirà i dati nei tag della cartella attuale. La destinazione (Tag 1, Tag 2 o Tag 1 e tag 2) può essere selezionata con una casella combinata. I file nella cartella attuale devono essere nell'ordine di traccia corretto per ottenere i tag assegnati. Questo è il caso se sono numerati.
Il formato successivo di importazione preconfigurato, «codice HTML di freedb», può essere utilizzato, se i dati sono disponibili come documento HTML. L'importazione è possibile utilizzando il pulsante Da file, che apre un selettore di file o ne copia il contenuto da un editor e quindi importa dagli appunti. Questo formato può essere utile per l'importazione non in linea, sebbene il documento HTML può anche essere aperto in un browser e quindi importato nel primo formato tramite gli appunti.
Sono disponibili altri formati preconfigurati, ad es. «Titolo traccia Tempo». Un formato personalizzato vuoto può essere creato con Aggiungi per essere impostato dall'utente. Due righe sotto il nome del formato possono essere impostate con un'espressione regolare per acquisire i campi dal testo di importazione. La prima espressione regolare sarà analizzata una volta per ogni documento per raccogliere dati per album come artista, album, anno e genere. Si tenta di far corrispondere la seconda riga dall'inizio del documento alla fine per ottenere i dati della traccia, generalmente numero e titolo. Le espressioni regolari includono tutte le funzionalità offerte da Qt(TM) che è la maggior parte di ciò che Perl offre. I costrutti con parentesi «(..)» creano buffer di acquisizione per i campi da importare e sono preceduti da codici specifici di Kid3 per specificare quale campo acquisire. I codici sono gli stessi utilizzati per il formato del nome file, oltre ai codici elencati di seguito, è possibile qualsiasi nome di frame:
Ad esempio, un'espressione regolare della traccia (seconda riga) da importare da una scaletta .m3u potrebbe essere «%{track}(\d+) \s +%{title}(\S [^\r\n]*)\.mp3[\r\n] ». Tutti i formati possono essere cambiati modificando le espressioni regolari e il nome e quindi facendo clic su Salva impostazioni. Saranno memorizzati nel file kid3rc nella cartella di configurazione. Questo file può essere direttamente modificato per avere più formati di importazione o può essere eliminato per ripristinare i formati predefiniti. I formati possono essere eliminati utilizzando Rimuovi.
Precisione mostra una stima della corrispondenza tra le informazioni importate e le tracce fornite. Utilizza la durata delle tracce o i nomi dei file per calcolare il livello di somiglianza in percentuale. Copertina mostra l'URL dell'immagine di copertina dell'album che sarà scaricata.
Per verificare se le tracce importate corrispondono all'insieme attuale di file, è possibile confrontare la durata delle tracce importate con la durata dei file. Questa opzione può essere abilitata con la casella di selezione Controlla la differenza di tempo massima consentita (sec): e la differenza massima tollerata nel tempo può essere impostata in secondi. Se viene rilevata una mancata corrispondenza in una lunghezza, la lunghezza viene visualizzata con uno sfondo rosso nella tabella di anteprima.
Se i file sono ordinati in modo diverso rispetto alle tracce importate, è necessario modificare le tracce assegnate. Questa attività può essere facilitata utilizzando l'opzione Corrisponde a con i pulsanti Lunghezza, Traccia e Titolo, che riordinare le tracce in base al campo corrispondente. Per correggere manualmente le assegnazioni, è possibile trascinare una traccia con il pulsante sinistro e il tasto Ctrl premuto, quindi rilasciare nella nuova posizione.
Quando si apre la finestra di importazione, essa contiene il contenuto attuale dei tag. Il tipo di tag (Tag 1, Tag 2, Tag 1 e Tag 2) può essere selezionato utilizzando la casella combinata Destinazione. Il pulsante a destra di questa casella combinata può essere utilizzato per ripristinare la tabella al contenuto attuale dei tag. Le caselle di controllo nella prima colonna della tabella possono essere utilizzate per selezionare le tracce che vengono importate. Questo può essere utile se una cartella contiene le tracce di entrambi i CD di un doppio CD e solo le tracce del secondo CD devono essere importate.
Per identificare le tracce importate, è possibile visualizzare i nomi dei file o i percorsi completi dei file utilizzando il menu di contestuale dell'intestazione della tabella. I valori nella tabella di importazione possono essere modificati. Il pulsante Ripristina a destra della casella combinata Destinazione può essere utilizzato per ripristinare il contenuto dei tag, che può essere utile anche dopo aver modificato la Destinazione.
Quasi tutte le finestre dispongono di un pulsante Salva impostazioni, che può essere utilizzato per memorizzare in modo persistente le impostazioni specifiche e le dimensioni della finestra.
Da tag porta a una sotto-finestra per impostare i frame dei tag dal contenuto di altri frame dei tag. Questo può essere usato per copiare semplicemente informazioni tra tag o estrarre una parte da un frame e inserirla in un altro.
Come nella finestra importa da file/appunti, ci sono formati liberamente configurabili per eseguire diverse operazioni. Sono già preconfigurati formati per copiare il valore dell'album in Artista dell'album, Compositore o Direttore ed estrarre il numero di traccia dai campi del titolo che contengono un numero. Esiste anche un formato per estrarre un sottotitolo da un campo Titolo.
L'esempio seguente spiega come aggiungere un formato personalizzato, che imposta le informazioni dal campo Sottotitoli anche nel campo Commento. Crea un nuovo formato utilizzando il pulsante Aggiungi e imposta un nuovo nome, ad es. «Sottotitolo su commento». Quindi inserire «%{subtitle}» in Fonte e «%{comment}(.*)» per Estrazione e fare clic su Salva impostazioni.
L'espressione in Fonte può contenere codici di formato per frame di tag arbitrari, è possibile utilizzare più codici per combinare i contenuti di frame diversi. Per ogni traccia, un testo viene generato dai suoi tag utilizzando il formato Fonte e l'espressione regolare da Estrazione viene applicata a questo testo per impostare nuovi valori per i tag. I codici di formato sono utilizzati prima delle parentesi di acquisizione per specificare il frame del tag in cui deve essere memorizzato il testo acquisito. Funziona come per importa da file/appunti.
Importa da tag... è anche disponibile direttamente dal menu File. La differenza tra queste due funzioni è che la finestra di importazione opera su tutti i file della cartella attuale mentre la funzione di menu opera sui file selezionati (che possono trovarsi in cartelle diverse). La funzione di menu supporta un codice aggiuntivo «%{__return}» per restituire il valore estratto, che può essere utile con le interfacce CLI e QML.
File → Importa da gnudb.org...
File → Importa da TrackType.org...
File → Importa da Discogs...
File → Importa da Amazon...
File → Importa da MusicBrainz Release...
File → Importa da MusicBrainz Fingerprint...
File → Importa da tag...
File → Importazione automatica...
Il tipo di tag (tag 1, tag 2, tag 1 e tag 2) può essere selezionato utilizzando la casella combinata Destinazione.
I profili determinano quali server saranno contattati per recuperare le informazioni sull'album. Alcuni profili sono predefiniti (Tutti, MusicBrainz, Discogs, Copertina), i profili personalizzati possono essere aggiunti utilizzando il pulsante Aggiungi a destra della casella combinata Profilo.
La tabella seguente mostra i server che saranno utilizzati durante l'importazione delle informazioni sull'album utilizzando il profilo selezionato. Il processo di importazione di un album è terminato se sono state trovate tutte le informazioni richieste, quindi l'ordine delle righe nella tabella è importante. Può essere modificato utilizzando i pulsanti Sposta su e Sposta giù. Modifica può essere utilizzato per modificare una voce esistente. La selezione Server offre gli stessi server che possono essere utilizzati nelle funzioni di importazione. Tag standard, Tag aggiuntivi, Copertina determinano le informazioni che devono essere recuperate dal server. Infine, Precisione è l'accuratezza minima che deve essere raggiunta per accettare i dati importati. Se la precisione non è sufficiente, sarà tentato il server successivo nell'elenco. La stessa finestra contenente le proprietà del server appare quando si fa clic su Aggiungi per aggiungere una nuova voce dei server. Le voci esistenti possono essere eliminate utilizzando Rimuovi.
Per avviare un'importazione in serie automatica con il profilo selezionato, fare clic su Avvia. I dettagli sull'importazione in esecuzione sono visualizzati nella parte superiore della finestra. Il processo può essere interrotto con il pulsante Interrompi.
File → Preleva copertina...
Poiché non tutti i browser supportano il trascinamento della selezione delle immagini e le immagini sui siti web spesso hanno un URL, in questi casi Kid3 riceverà l'URL e non l'immagine. Se l'URL punta a un'immagine, essa sarà scaricata. Tuttavia, se l'URL si riferisce ad altre risorse web, deve essere tradotto nell'immagine corrispondente. Tali associazioni sono definite nella tabella Estrazione URL. La colonna di sinistra Corrispondenza contiene un'espressione regolare che viene confrontata con l'URL. Se corrisponde, le espressioni catturate tra parentesi sono inserite nel modello della colonna destra Immagine e URL (nelle posizioni marcate con \1 ecc.). L'espressione regolare sostituita contiene l'URL della foto. In questo modo la copertina può essere importata da Amazon, Google Immagini, ecc. utilizzando il trascinamento della selezione. È anche possibile definire le proprie associazioni.
File → Esporta...
Le impostazioni del formato sono simili a quelle della finestra Importa: il campo più in alto contiene il titolo (ad es. «CSV non quotato»), seguito dall'intestazione, che sarà generata all'inizio del file. Di seguito sono riportati i dati della traccia; è usato per ogni traccia. Infine, il trailer può essere utilizzato per generare del testo finale.
I campi del formato non contengono espressioni regolari come nella finestra Importa, ma solo espressioni di formato del risultato con speciali espressioni che iniziano con il carattere %, che saranno sostituite dai valori dei tag. Il tutto funziona come il formato del nome file e gli stessi codici sono utilizzati più alcuni codici aggiuntivi. È possibile utilizzare non solo i codici elencati di seguito, ma tutti i nomi dei frame dei tag.
Alcuni formati sono predefiniti. «CSV non quotato» separa i campi in schede. I dati in questo formato possono essere nuovamente importati in Kid3 utilizzando il formato di importazione con lo stesso nome. «CSV quotato» racchiude inoltre i campi tra virgolette doppie, facilitando l'importazione in applicazioni per fogli di calcolo. Tuttavia, i campi non devono contenere virgolette doppie quando si utilizza questo formato. «M3U esteso» e «PLS esteso» generano scalette con attributi estesi e nomi di percorso assoluti. «HTML» può essere utilizzato per generare una pagina HTML con collegamenti ipertestuali alle tracce. «Kover XML» crea un file che può essere importato dal programma di stampa di copertine Kover. «Dettagli tecnici» fornisce informazioni su bit rate, frequenza di campionamento, canali, ecc. Infine, «Formato personalizzato» viene lasciato vuoto per la definizione di un formato personalizzato. È possibile definire più formati personalizzati aggiungendo righe nel file kid3rc nella cartella di configurazione. Gli altri formati possono essere adattati alle proprie esigenze.
La Fonte dei tag per generare i dati dell'esportazione (Tag 1 o Tag 2) può essere selezionata con una casella combinata. Premendo Su file o Negli appunti sono archiviati i dati in un file o negli appunti. OK e Annulla chiudono la finestra, mentre OK accetta le impostazioni della finestra attuale.
File → Crea scaletta...
Il nome della scaletta può essere Come il nome della cartella oppure utilizzare un Formato con i valori dei tag, ad es. «%{artist} - %{album}» per avere l'artista e il nome dell'album nel nome del file della scaletta. I codici di formato sono gli stessi di Esporta. Crea nuova scaletta vuota crea una scaletta vuota con il nome indicato. L'estensione dipende dal formato della scaletta.
La posizione della scaletta generata è determinata dalla selezione della casella combinata Crea in.
Cartella attuale
Tutte le cartelle
Cartella principale
Il Formato della scaletta può essere M3U, PLS o XSPF.
Se è selezionato Includi solo i file selezionati, nella scaletta saranno inclusi solo i file selezionati. Se viene selezionata una cartella, saranno selezionati tutti i suoi file. Se questa casella di controllo non è attivata, tutti i file audio saranno inclusi nella scaletta.
Ordina per nome file seleziona il solito caso in cui i file sono ordinati per nome file. Con Ordina per campo tag, è possibile ordinare in base a una stringa di formato con valori dai campi tag. Ad esempio, «%{track.3}» può essere utilizzato per ordinare in base al numero di traccia («.3» viene utilizzato per ottenere tre cifre con zeri iniziali poiché le stringhe sono utilizzate per l'ordinamento). È anche possibile utilizzare più campi, ad es. «%{genre}%{year}» per ordinare utilizzando una stringa composta da genere e anno.
Le voci della scaletta avranno percorsi di file relativi o assoluti a seconda che sia impostato Usa percorso relativo per i file nella scaletta o Usa percorso completo per i file nella scaletta.
Quando è impostato Scrivi solo un elenco di file, la scaletta conterrà solo i percorsi dei file. Per generare una scaletta estesa con informazioni aggiuntive, è possibile impostare una stringa di formato utilizzando il controllo Scrivi informazioni usando.
File → Esci (Ctrl+Q)
Modifica → Seleziona tutto (Alt+A)
Modifica → Deseleziona (Ctrl+Maiusc+A)
Modifica → Seleziona tutti i file nella cartella
Modifica → File precedente (Alt+Su)
Modifica → File successivo (Alt+Giù)
Modifica → Trova... (Ctrl+F)
Modifica → Sostituisci... (Ctrl+R)
In base al numero di file, la ricerca potrebbe richiedere del tempo, perciò può essere interrotta chiudendo la finestra.
Strumenti → Applica formato nome file
Strumenti → Applica formato tag
Strumenti → Applica codifica del testo
Strumenti → Rinomina cartella...
Se viene individuato un separatore di cartelle «/» nel formato, saranno create più cartelle. Se si desidera creare una nuova cartella anziché rinominare la cartella attuale, nella casella combinata Azione selezionare Crea cartella anziché Rinomina cartella. La Fonte delle informazioni sui tag può essere scelta tra Tag 1 e tag 2, Tag 1 e Tag 2. Un'anteprima dell'operazione di rinomina eseguita sul primo file è disponibile nelle sezioni Da e A della finestra.
Più cartelle possono essere rinominate selezionandole
Tools → Numero tracce...
Quando si seleziona Numero totale di tracce, nei tag sarà impostato anche il numero di tracce.
È possibile numerare le tracce in più cartelle. Le cartelle devono essere espanse e selezionate.
Se è selezionato Reimposta contatore per ciascuna cartella, la numerazione delle tracce viene riavviata con il numero indicato per ciascuna cartella quando vengono selezionate più cartelle.
La finestra di numerazione delle tracce può anche essere utilizzata per formattare i numeri di traccia esistenti senza modificare i valori quando la casella di controllo lasciata su Numero iniziale è disattivata. Il numero totale di tracce sarà aggiunto se la casella di controllo corrispondente è attiva, che può essere utilizzata per impostare il totale per tutte le tracce selezionate. Se si desidera solo la formattazione dei numeri esistenti, anche questa casella di controllo deve essere disattivata.
Strumenti → Filtro...
Questi codici sono sostituiti con i valori per il file e le stringhe risultanti possono essere confrontate con le seguenti operazioni:
Le espressioni vere sono sostituite da 1, false da 0. I valori veri sono rappresentati da 1, true, on e yes, i valori falsi da 0, false, off e no. Le operazioni booleane sono not, and, or (in questo ordine di precedenza) e possono essere raggruppate tra parentesi.
Alcune regole di filtro sono predefinite e possono servire da esempio per le proprie espressioni:
Tutto
Mancata corrispondenza tra nome file e tag
Verifica se il percorso del file è conforme al formato del nome file. Questa regola viene adattata automaticamente se cambia il formato del nome file.
Nessun tag 1
Visualizza solo i file che non hanno un tag 1.
Nessun tag 2
Visualizza solo i file che non hanno un tag 2.
Tag ID3v2.3.0
Visualizza solo i file che non hanno un tag ID3v2.3.0.
Tag ID3v2.4.0
Visualizza solo i file che non hanno un tag ID3v2.4.0.
Tag 1 != Tag 2
Visualizza i file con differenze tra tag 1 e tag 2.
Tag 1 == Tag 2
Visualizza i file con tag 1 e tag 2 identici.
Incompleto
Visualizza i file con valori vuoti nei tag standard (titolo, artista, album, data, numero traccia, genere).
Nessuna immagine
Visualizza solo i file che non hanno un'immagine.
Marcato
Visualizza solo i file che sono marcati perché violano lo standard ID3, sono troncati o l'immagine è troppo grande.
Filtro personalizzato
%{artist} matches "The.*"
Quindi fare clic su Salva impostazioni. Fare clic su Applica per filtrare i file. Tutti i file elaborati sono visualizzati nella vista di testo, con un «+» per quelli che corrispondono al filtro e un «-» per gli altri. Al termine, sono visualizzati solo i file con un artista il cui nome inizia con «The» e il titolo della finestra è marcato con «[filtrato]».
Strumenti → Converti ID3v2.3 in ID3v2.4
Strumenti → Converti ID3v2.4 in ID3v2.3
Strumenti → Riproduci
Impostazioni → Mostra la barra degli strumenti
Impostazioni → Mostra la barra di stato
Impostazioni → Mostra immagine
Impostazioni → Nascondi automaticamente i tag
Impostazioni → Configurare scorciatoie da tastiera...
Impostazioni → Configura Kid3...
Le opzioni specifiche dei tag sono disponibili nella pagina Tag, che è essa stessa suddivisa in quattro schede per Tag 1, Tag 2, Tag 3 e Tutti i tag.
Se Evidenzia i campi troncati è selezionata, i campi troncati ID3v1.1 saranno marcati in rosso. I campi di testo dei tag ID3v1.1 possono contenere solo 30 caratteri, il commento solo 28 caratteri. Anche i numeri di genere e traccia sono limitati, in modo che i campi possano essere troncati quando importati o trasferiti da ID3v2. I campi troncati e il file saranno marcati in rosso e il segno sarà rimosso dopo la modifica del campo.
Con Codifica del testo per ID3v1 è possibile impostare l'insieme di caratteri utilizzato nei tag ID3v1. Questa codifica dovrebbe essere ISO-8859-1, quindi si consiglia di mantenere questo valore predefinito. Tuttavia, ci sono tag in giro con codifica diversa, quindi può essere impostato qui e i tag ID3v1 possono essere copiati in ID3v2 che supporta Unicode.
La casella di selezione Utilizza il formato traccia/numero totale delle tracce controlla se il campo del numero di traccia dei tag ID3v2 contiene semplicemente il numero di traccia o in aggiunta il numero totale di tracce nella cartella.
Quando si seleziona Genere come testo anziché stringa numerica, tutti i generi ID3v2 saranno archiviati come stringa di testo anche se esiste un codice corrispondente per i generi ID3v1. Se questa opzione non è impostata, i generi per i quali esiste un codice ID3v1 vengono memorizzati come numero del codice del genere (tra parentesi per ID3v2.3). Pertanto, il genere Metal viene memorizzato come «Metal» o «(9)» a seconda di questa opzione. I generi che non sono nell'elenco dei generi ID3v1 sono sempre memorizzati come stringa di testo. Lo scopo di questa opzione è una migliore compatibilità con i dispositivi che non interpretano correttamente i codici di genere.
Quando si seleziona File WAV con blocco ID3 minuscolo, il blocco RIFF utilizzato per archiviare i tag ID3v2 nei file WAV sarà chiamato «id3» anziché «ID3». Per impostazione predefinita, Kid3 e altre applicazioni che utilizzano TagLib accettano sia la variante minuscola sia quella maiuscola durante la lettura di file WAV, ma utilizzano «ID3» quando scrivono tag ID3v2 su file WAV. Poiché esistono altre applicazioni che accettano solo «id3» (ad es. JRiver Media Center e foobar2000), questa opzione può essere utilizzata per creare tag che possono essere letti da tali applicazioni.
Quando si seleziona Evidenzia le violazioni dello standard, i campi ID3v2 che violano lo standard saranno marcati in rosso. I dettagli sulla violazione sono mostrati in una descrizione:
I documenti degli standard ID3 sono disponibili in linea:
Codifica del testo definisce la codifica predefinita utilizzata per i frame ID3v2 e può essere impostata su ISO-8859-1, UTF16 o UTF8. UTF8 non è valido per i frame ID3v2.3.0; se impostato, sarà utilizzato UTF16. Per i frame ID3v2.4.0, sono possibili tutte e tre le codifiche.
Versione usata per i nuovi tag determina se i nuovi tag ID3v2 sono creati come versione 2.3.0 o 2.4.0.
Cifre del numero di traccia è il numero di cifre nei campi Numero traccia. Gli zeri iniziali sono utilizzati per la spaziatura. Ad esempio, con un valore di 2 il numero di traccia 5 è impostato come «05».
La casella combinata Nome campo commento è rilevante solo per i file Ogg/Vorbis e FLAC e imposta il nome del campo utilizzato per i commenti. Applicazioni diverse sembrano usare nomi diversi, «COMMENT» ad esempio è utilizzato da XMMS, mentre Amarok utilizza «DESCRIPTION».
Il formato delle immagini nei file Ogg/Vorbis è determinato da Nome campo immagine, che può essere «METADATA_BLOCK_PICTURE» o «COVERART». Il primo è lo standard ufficiale e utilizza lo stesso formato delle immagini nei tag FLAC. «COVERART» è un modo non ufficiale precedente di includere immagini nei commenti di Vorbis. Può essere utilizzato per la compatibilità con lettori datati.
Se la casella di selezione Se più grande di (byte) è attivata, i file contenenti copertine degli album incorporate che superano la dimensione data in byte sono marcati in rosso. Questo può essere usato per trovare file contenenti immagini di grandi dimensioni che non sono accettate da alcune applicazioni e lettori. Il valore predefinito è 131072 byte (128 KB).
Generi personalizzati può essere utilizzato per definire i generi che non sono disponibili nell'elenco dei generi standard, ad es. «Gothic Metal». Tali generi personalizzati appariranno nella casella combinata Genere di Tag 2. Per i tag ID3v1.1, è possibile utilizzare solo i generi predefiniti.
L'elenco di generi personalizzati può anche essere utilizzato per ridurre il numero di generi disponibili nella casella combinata Genere a quelli normalmente utilizzati. Se la propria raccolta contiene principalmente musica nei generi Metal, Gothic Metal, Ancient e Hard Rock, è possibile inserire quei generi e marcare Mostra solo generi personalizzati. La casella combinata Tag 2 Genere conterrà quindi solo quei quattro generi e non sarà necessario cercarli nell'elenco completo dei generi. In questo esempio, solo Metal e Hard Rock saranno elencati nell'elenco dei generi di tag 1, poiché queste due voci di generi personalizzati sono generi standard. Se Mostra solo generi personalizzati non è attiva, i generi personalizzati possono essere trovati alla fine dell'elenco dei generi.
Frame di accesso rapido definisce quali tipi di frame sono mostrati sempre nella sezione Tag 2. Tali frame possono quindi essere aggiunti senza prima utilizzare il pulsante Aggiungi. L'ordine di questi frame di accesso rapido può essere modificato trascinando gli elementi.
La casella combinata Nome campo numero traccia è rilevante solo per RIFF INFO e imposta il nome del campo utilizzato per i numeri di traccia. I numeri di traccia non sono specificati nello standard RIFF originale, ci sono applicazioni che utilizzano «ITRK», altri utilizzano «IPRT».
Formato tag contiene opzioni per il formato dei tag. Quando è selezionato Applica automaticamente il formato, la configurazione del formato viene utilizzata automaticamente durante la modifica del testo nei campi di testo. Convalida abilita validatori nei controlli con i valori di traccia/totale e data/ora. Maiuscole/minuscole può essere impostato su Nessuna modifica, Tutte minuscole, Tutte maiuscole, Prima lettera maiuscola o Tutte le prime lettere maiuscole. Per utilizzare una conversione basata sulla localizzazione tra caratteri minuscoli e maiuscoli, è possibile selezionare una localizzazione nella casella combinata di seguito. L'elenco di sostituzione delle stringhe può essere impostato su associazioni di stringhe arbitrarie. Per aggiungere una nuova associazione, selezionare la cella Da di una riga e inserire il testo da sostituire, quindi portarsi sulla colonna A e inserire il testo sostitutivo. Quando il testo da sostituire inizia e termina con una barra ("/"), viene utilizzata un'espressione regolare. Per le espressioni regolari contenenti gruppi di acquisizione, le occorrenze di \1, \2, ... in A vengono sostituite con la stringa acquisita dal gruppo di acquisizione corrispondente. Per rimuovere un'associazione impostare la cella Da su un valore vuoto (ad es. digitando prima lo spazio e poi il backspace). L'inserimento e l'eliminazione di righe è anche possibile utilizzando un menu di scelta rapida che viene visualizzato quando si fa clic sul pulsante destro. La sostituzione è attiva solo se la casella di selezione Sostituzione stringa è marcata.
La tabella in Valutazione contiene l'associazione delle valutazioni in stelle ai valori effettivi memorizzati nel tag. I frame con informazioni di valutazione sono elencati nella riga Valutazione dell'elenco dei frame. Per questi frame, la valutazione può essere impostata assegnando un numero di stelle su cinque. Diversi formati di tag e diverse applicazioni utilizzano valori diversi per associare la valutazione in stelle al valore memorizzato nel tag. Per visualizzare il numero corretto di stelle, Kid3 cercherà una mappa in questa tabella. La chiave per cercare l'associazione è il nome del frame, ad esempio «RATING» utilizzato per i commenti di Vorbis o «IRTD» per RIFF INFO. Per i tag ID3v2, viene utilizzata una chiave combinata costituita dal frame ID «POPM» del frame Popularimeter e dal suo campo «Email», separati da un punto. Pertanto, esistono diverse chiavi per ID3v2, ad es. «POPM.Windows Media Player 9 Series» per l'associazione utilizzata da Windows Media Player ed Explorer, e semplicemente «POPM» per i frame POPM con un campo «Email» vuoto. Poiché possono esistere più voci per «POPM», il loro ordine è importante. Quando Kid3 aggiunge un nuovo frame Popularimeter, utilizzerà la prima voce «POPM» per determinare il valore da scrivere nel campo «Email». Questo valore specificherà quindi l'associazione da utilizzare per le stelle. La prima voce viene utilizzata anche se non viene trovata alcuna chiave, pertanto è la voce predefinita.
Oltre alla colonna Nome contenente le chiavi, la tabella ha le colonne da 1 a 5 per i valori da memorizzare quando viene dato il numero di stelle corrispondente . Al contrario, i valori determinano il numero di stelle visualizzate per il valore memorizzato nel frame. Ad esempio, la riga nella tabella seguente contiene i valori 1, 64, 128, 196, 255. Le soglie per il numero di stelle da visualizzare si trovano tra questi valori e sono compatibili con ciò che Windows® Explorer utilizza.
Tabella 1. Voce nella tabella di valutazione
Nome | 1 | 2 | 3 | 4 |
5
|
POPM | 1 | 64 | 128 | 196 |
255
|
Intervallo | 1-31 | 32-95 | 96-159 | 160-223 |
224-255
|
Nella pagina File la casella di selezione Carica gli ultimi file aperti può essere contrassegnata in modo che Kid3 si aprirà e selezionerà l'ultimo file selezionato al successivo avvio. Mantieni data/ora del file può essere marcata per conservare la marca temporale di modifica del file. Nome file per copertina imposta il nome suggerito quando un'immagine incorporata viene esportata in un file. Con Codifica del testo (esportazione, scaletta) è possibile impostare la codifica utilizzata durante la scrittura dei file. Il Sistema predefinito può essere modificato, ad esempio, se le scalette devono essere utilizzate su un dispositivo diverso.
Se Marca le modifiche è attiva, i campi modificati sono marcati con uno sfondo grigio chiaro.
La sezione Elenco file determina quali file vengono visualizzati nell'elenco dei file. Un Filtro può essere utilizzato per limitare gli elementi in questo elenco ai file con estensioni supportate. Per specificare esplicitamente quali cartelle visualizzare nell'elenco dei file o escludere determinate cartelle, è possibile utilizzare le opzioni Includi cartelle e Escludi cartelle. Possono contenere espressioni con metacaratteri, ad esempio */Musica/* per includere solo la cartella Musica o */iTunes/* per escludere la cartella iTunes dall'elenco dei file. Se devono essere utilizzate più espressioni di questo tipo, possono essere separate da spazi o punti e virgola.
I pulsanti Nome file dal tag e Tag dal nome file nella sezione Formato aprono le finestre per modificare i formati disponibili nelle caselle combinate Formato (con le frecce su e giù), che si trovano nella sezione File della finestra principale.
Formato nome file contiene opzioni per il formato dei nomi dei file. Sono disponibili le stesse opzioni di Formato tag.
La pagina Azioni dell'utente contiene una tabella con i comandi disponibili nel menu contestuale dell'elenco dei file. Per operazioni critiche come l'eliminazione di file, è consigliabile marcare Conferma per visualizzare una finestra di conferma prima di eseguire il comando. Risultato può essere contrassegnato per vedere il risultato scritto dei comandi della console (standard output e standard error). Nome è il nome visualizzato nel menu contestuale. Comando è la riga di comando da eseguire. Gli argomenti possono essere passati utilizzando i seguenti codici:
Il codice speciale @separator può essere impostato come comando per inserire un separatore nel menu contestuale delle azioni dell'utente. Le voci di menu possono essere inserite in un sottomenu racchiudendole con i comandi @beginmenu e @endmenu. Il nome del sottomenu è determinato dalla colonna Nome del comando @beginmenu.
Per eseguire gli script QML, @qml viene utilizzato come nome di comando. Il percorso dello script QML viene passato come parametro. Gli script forniti sono disponibili nella cartella %{qmlpath}/script/ (su Linux® in genere /usr/share/kid3/qml/script/, su Windows qml/script/ all'interno della cartella di installazione e su macOS® nella cartella dell'applicazione kid3.app/Contents/Resources/qml/script/). Gli script personalizzati possono essere archiviati in qualsiasi cartella. Se il codice QML utilizza componenti della GUI, @qmlview sarà utilizzato al posto di @qml. Ulteriori parametri vengono passati allo script QML dove saranno disponibili tramite la funzione getArguments(). Una panoramica di alcune funzioni e proprietà disponibili in QML è disponibile nell'appendice Interfaccia QML.
Il comando che sarà inserito con %{browser} può essere definito nella riga Browser web sopra. I comandi che iniziano con %{browser} possono essere utilizzati per recuperare informazioni sui file audio dal web, ad esempio
%{browser} http://lyricwiki.org/%u{artist}:%u{title}
interrogherà i testi del brano attuale in m[blue]LyricWikim[][12]. La «u» in %u{artist} e %u{title} viene utilizzata per la codifica come URL delle informazioni relative all'artista %{artist} e al brano %{title}. È facile definire le proprie query allo stesso modo, ad es. una ricerca di immagini con m[blue]Googlem[][13]:
Per aggiungere la copertina dell'album al tag 2, è possibile cercare immagini con Google o Amazon utilizzando i comandi descritti sopra. L'immagine può essere aggiunta al tag con il trascinamento della selezione. È possibile aggiungere un'immagine anche con Aggiungi, quindi selezionare il frame Immagine e importare un file di immagine o incollarlo dagli appunti. I frame sono supportati per i tag ID3v2, MP4, FLAC, Ogg e ASF.
Per aggiungere ed eliminare voci nella tabella, può essere utilizzato un menu contestuale.
La pagina Rete contiene solo un campo per inserire l'indirizzo proxy e facoltativamente la porta, separati da due punti. Il proxy sarà utilizzato durante l'importazione da un server Internet quando la casella di selezionate è marcata.
Nella pagina Estensioni, le estensioni disponibili possono essere abilitate o disabilitate. Le estensioni sono divise in due sezioni. L'elenco Estensioni metadati e priorità contiene estensioni che supportano i formati di file audio. L'ordine delle estensioni è importante perché vengono provate dall'alto verso il basso. Alcuni formati sono supportati da più estensioni, quindi i file saranno aperti con la prima estensione che li supporta. TaglibMetadata supporta la maggior parte dei formati, se si trova in cima all'elenco, aprirà la maggior parte dei file. Se si desidera utilizzare un'estensione diversa per un formato di file, assicurarsi che sia elencata prima dell'estensione TaglibMetadata. I dettagli sull'estensione dei metadati e sul motivo per cui si potrebbe volerla utilizzare al posto di TagLib sono elencati di seguito.
La sezione Estensioni disponibili elenca le estensioni rimanenti. Il loro ordine non è importante, ma possono essere abilitate o disabilitate utilizzando le caselle di controllo.
Le estensioni disabilitate non saranno caricate. Questo può essere utilizzato per ottimizzare l'utilizzo delle risorse e i tempi di avvio. Le impostazioni in questa pagina hanno effetto solo dopo il riavvio di Kid3.
Aiuto → Manuale di Kid3
Aiuto → Informazioni su Kid3
kid3-cli offre un'interfaccia a riga di comando per Kid3. Se si utilizza il percorso di una cartella, la cartella viene aperta. Se si forniscono uno o più percorsi di file, sarà aperta la cartella comune e i file saranno selezionati. I comandi successivi funzioneranno quindi su questi file. I comandi sono specificati utilizzando le opzioni -c. Se vengono passati più comandi, saranno eseguiti nell'ordine indicato. Se i file vengono modificati dai comandi, saranno salvati alla fine. Se non vengono passate opzioni di comando, kid3-cli si avvia in modalità interattiva. I comandi possono essere inseriti e opereranno sulla selezione attuale. Le seguenti sezioni elencano tutti i comandi disponibili.
Aiuto
kid3-cli> ls 1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3 *1-- 03 Outro.mp3
In questo esempio, tutti i file hanno un tag 1, il secondo file ha anche un tag 2 ed è selezionato. Il terzo file è modificato.
Salvare i file modificati
kid3-cli> select first kid3-cli> ls > 1-- 01 Intro.mp3 12- 02 We Only Got This One.mp3 *1-- 03 Outro.mp3 kid3-cli> select next kid3-cli> ls 1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3 *1-- 03 Outro.mp3 kid3-cli> select *.mp3 kid3-cli> ls > 1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3 >*1-- 03 Outro.mp3
Selezionare i tag
kid3-cli> get File: MPEG 1 Layer 3 192 kbps 44100 Hz Joint Stereo Name: 01 Intro.mp3 Tag 1: ID3v1.1 Title Intro Artist One Hit Wonder Album Let's Tag Date 2013 Track Number 1 Genre Pop kid3-cli> get title Intro
Per salvare il contenuto del frame di un'immagine in un file, utilizzare
get picture:'/percorso/a/folder.jpg'
Per salvare i testi sincronizzati in un file LRC, utilizzare
get SYLT:'/percorso/a/testo.lrc'
È possibile ottenere solo un campo specifico da un frame, ad esempio get POPM.Email per il campo Email di un frame Popularimeter. Se un file ha più frame dello stesso tipo, i diversi frame possono essere indicizzati con parentesi, ad esempio il primo interprete da un commento di Vorbis può essere recuperato utilizzando get performer [0], il secondo utilizzando get performer [1].
Il nome dello pseudo-campo «selected» può essere utilizzato per verificare se è selezionata un frame, ad esempio get artist.selected restituirà 1 se è selezionato il frame dell'artista, altrimenti 0.
Impostare il frame del tag
kid3-cli> set remixer 'O.H. Wonder'
Per impostare il contenuto di un frame da un file, utilizzare
set picture:'/percorso/a/folder.jpg' 'Descrizione immagine'
Per impostare i testi sincronizzati da un file LRC, utilizzare
set SYLT:'/percorso/a/testo.lrc' 'Descrizione del testo'
Per impostare un campo specifico di un frame, il nome del campo può essere dato dopo un punto, ad es. per impostare il campo Contatore di un frame Popularimeter, utilizzare
set POPM.Counter 5
Un'applicazione per le specifiche del campo è il caso in cui si desidera un frame TXXX personalizzato con descrizione «rating» anziché un frame Popularimeter standard (questo sembra essere utilizzato da alcune estensioni). È possibile creare un frame di classificazione TXXX con kid3-cli, tuttavia è necessario prima creare un frame TXXX con la descrizione «rating» e quindi impostare il valore di questo frame sul valore di rating.
kid3-cli> set rating "" kid3-cli> set TXXX.Description rating kid3-cli> set rating 5
Il primo comando eliminerà un frame POPM esistente, perché se esiste un frame del genere, set rating 5 imposterà il frame POPM e non il frame TXXX. Un'altra possibilità sarebbe quella di utilizzare set TXXX.Text 5, ma funzionerebbe solo se non fosse presente nessun altro frame TXXX.
Per impostare più frame dello stesso tipo, è possibile indicare un indice tra parentesi, ad es. per impostare più performer in un commento di Vorbis, utilizzare
kid3-cli> set performer[0] 'Liza don Getti (soprano)' kid3-cli> set performer[1] 'Joe Barr (piano)'
Per selezionare determinati frame prima di copiare, incollare o rimuovere un'azione, è possibile utilizzare il nome dello pseudo-campo «selected». Normalmente, tutti i frame sono selezionati, per deselezionare tutto, utilizzare set '*.selected' 0, quindi ad esempio set artist.selected 1 per selezionare il frame dell'artista.
Se
tags
viene fornito per
FILE, i tag sono importati da altri tag. Invece di
FORMAT-NAME
sono richiesti i parametri
SOURCE
e
EXTRACTION, vedere
Importa da tag. Per applicare l'importazione dai tag sui file selezionati, utilizzare
tagsel
invece di
tag. Questa funzione supporta anche il risultato del valore estratto utilizzando un
EXTRACTION
con il valore
%{__return}(.+).
Ripristinare
kid3-cli> albumart http://www.amazon.com/Versus-World-Amon-Amarth/dp/B000078DOC
Esporta su file
kid3-cli> filter '%{title} contains "tro"' Started /home/urs/One Hit Wonder - Let's Tag + 01 Intro.mp3 - 02 We Only Got This One.mp3 + 03 Outro.mp3 Finished kid3-cli> ls 1-- 01 Intro.mp3 1-- 03 Outro.mp3 kid3-cli> filter All Started /home/urs/One Hit Wonder - Let's Tag + 01 Intro.mp3 + 02 We Only Got This One.mp3 + 03 Outro.mp3 Finished kid3-cli> ls 1-- 01 Intro.mp3 12- 02 We Only Got This One.mp3 1-- 03 Outro.mp3
Per copiare solo un sottoinsieme dei frame, utilizzare lo pseudo-campo «selected» con il comando
set. Ad esempio, per copiare solo il numero del disco e i frame del copyright, utilizzare
Convertire ID3v2.3 in ID3v2.4
set '*.selected' 0 set discnumber.selected 1 set copyright.selected 1 copy
È possibile rimuovere solo un sottoinsieme dei frame selezionandoli come descritto nel comando
copy.
Incolla
Imposta il titolo contenente un apostrofo. I comandi passati a kid3-cli con -c devono essere tra virgolette se non consistono in una sola parola. Se un comando di questo tipo ha un argomento contenente spazi, anche quell'argomento deve essere citato. Nelle shell UNIX® possono essere utilizzate virgolette singole o doppie, ma nel prompt dei comandi di Windows è importante che le virgolette esterne vengano eseguite utilizzando virgolette doppie e all'interno di queste virgolette vengano utilizzate virgolette singole. Se il testo all'interno delle virgolette singole contiene una virgoletta singola, è necessario eseguirne l'escape utilizzando un carattere di barra rovesciata, come mostrato nell'esempio seguente:
kid3-cli -c "set title 'I\'ll be there for you'" percorso/a/cartella
Impostare la copertina dell'album in tutti i file di una cartella utilizzando la funzione di importazione in serie:
kid3-cli -c "autoimport 'Cover Art'" /percorso/a/cartella
Rimuovere i frame dei commenti e applicare il formato dei tag in entrambi i tag di tutti i file MP3 di una cartella:
kid3-cli -c "set comment '' 1" -c "set comment '' 2" \ -c "tagformat 1" -c "tagformat 2" /percorso/a/cartella/*.mp3
Importare automaticamente tag 2, sincronizzare con tag 1, impostare i nomi dei file da tag 2 e alla fine creare una scaletta:
kid3-cli -c autoimport -c "syncto 1" -c fromtag -c playlist \ /percorso/a/cartella/*.mp3
Per tutti i file con un tag ID3v2.4.0, convertire in ID3v2.3.0 e rimuovere il frame dell'arrangiatore:
kid3-cli -c "filter 'ID3v2.4.0 Tag'" -c "select all" -c to23 \ -c "set arranger ''" /percorso/a/cartella
Questo script Python utilizza kid3-cli per generare frame iTunes Sound Check iTunNORM dalle informazioni di guadagno di riproduzione.
#!/usr/bin/env python3 # Genera iTunes Sound Check dal guadagno di riproduzione. import os, sys, subprocess def rg2sc(dirpath): for root, dirs, files in os.walk(dirpath): for name in files: if name.endswith(('.mp3', '.m4a', '.aiff', '.aif')): fn = os.path.join(root, name) rg = subprocess.check_output([ 'kid3-cli', '-c', 'get "replaygain_track_gain"', fn]).strip() if rg.endswith(b' dB'): rg = rg[:-3] try: rg = float(rg) except ValueError: print('Value %s of %s in not a float' % (rg, fn)) continue sc = (' ' + ('%08X' % int((10 ** (-rg / 10)) * 1000) )) * 10 subprocess.call([ 'kid3-cli', '-c', 'set iTunNORM "%s"' % sc, fn]) if __name__ == '__main__': rg2sc(sys.argv[1])
Per facilitare l'analisi dei risultati da kid3-cli, è possibile ottenere l'output in formato JSON. Quando la richiesta è in formato JSON, la risposta sarà anche JSON. Un formato compatto della richiesta fornirà anche una rappresentazione compatta della risposta. Se la richiesta contiene un campo «id», si presume che sia una richiesta JSON-RPC e la risposta conterrà un campo «jsonrpc» e «id» della richiesta. Il formato della richiesta utilizza gli stessi comandi della CLI standard, il campo «method» contiene il comando e i parametri (se presenti) sono indicati nell'elenco «params». La risposta contiene un oggetto «result», che può anche essere nullo se il comando kid3-cli non restituisce un risultato. In caso di errore, viene restituito un oggetto «error» con i campi «code» e «message» come usato in JSON-RPC.
kid3-cli> {"method":"set","params":["artist","Un artista"]} {"result":null} kid3-cli> {"method":"get","params":["artist",2]} {"result":"An Artist"} kid3-cli> {"method": "get", "params": ["artist"]} { "result": "Un artista" } kid3-cli> {"jsonrpc":"2.0","id":"123","method":"get","params":["artist"]} {"id":"123","jsonrpc":"2.0","result":"Un artista"}
Kid3
Programma scritto da Urs Fleisch <ufleisch at users.sourceforge.net>
Traduzione: Vincenzo Reale <smart2128@baslug.org>
m[blue]FDLm[][22]
Kid3 è disponibile su m[blue]https://kid3.kde.orgm[].
Kid3 necessita di m[blue]Qt(TM)m[][24]. m[blue]KDEm[][25] è consigliato, ma non necessario, poiché Kid3 può anche essere compilato come applicazione Qt(TM). Kid3 può essere compilato per sistemi in cui sono disponibili queste librerie, ad es. per GNU/Linux®, Windows® e macOS®. Per applicare tag ai file Ogg/Vorbis, m[blue]liboggm[][15], m[blue]libvorbis e libvorbisfilem[][16] sono necessarie, per i file FLAC m[blue]libFLAC ++ e libFLACm[][17]. m[blue]id3libm[][14] è utilizzata per i file MP3. Questi quattro formati sono supportati anche da m[blue]TagLibm[][18], che può gestire anche Opus, MPC, APE, MP2, Speex, TrueAudio, WavPack, WMA, WAV, file AIFF e moduli tracker. Per importare da impronte digitali acustiche, sono utilizzate m[blue]Chromaprintm[][20] e m[blue]libavm[][21] .
Kid3 è disponibile per la maggior parte delle distribuzioni Linux®, Windows® e macOS®. I collegamenti sono disponibili su m[blue]https://kid3.kde.orgm[].
È possibile compilare Kid3 con o senza KDE. Senza KDE, Kid3 è una semplice applicazione Qt(TM) e manca di alcune funzionalità di configurazione e sessione.
Per una versione di KDE, spostarsi nella cartella principale e digitare
% cmake . % make % make install
Compilare per diverse versioni di Qt(TM) oppure KDE, impostare le corrispondenti opzioni di cmake.
Se non sono presenti tutte le librerie, Kid3 è compilato con funzionalità ridotta. Quindi è necessario aver cura di avere tutti i pacchetti di sviluppo desiderati installati. Dall'altro lato, le opzioni di cmake controllano quali librerie sono compilate. L'impostazione predefinita è -DWITH_TAGLIB:BOOL=ON -DWITH_MP4V2:BOOL=OFF -DWITH_ID3LIB:BOOL=ON -DWITH_CHROMAPRINT:BOOL=ON -DWITH_VORBIS:BOOL=ON -DWITH_FLAC:BOOL=ON. Queste opzioni possono essere disabilitate utilizzando OFF.
Per compilare Kid3 come un'applicazione Qt(TM) senza KDE, utilizzare l'opzione -DWITH_APPS=Qt di cmake. Per compilare sia un'applicazione KDE che una Qt(TM),impostare -DWITH_APPS="Qt;KDE".
Per utilizzare un'installazione specifica di Qt(TM), impostare -DQT_QMAKE_EXECUTABLE=/percorso/a/qmake.
La generazione di pacchetti RPM è supportata dal file kid3.spec, per i pacchetti Debian®, è disponibile lo script build-deb.sh.
L'applicazione Qt(TM) può essere compilata anche per Windows® e macOS®. Lo script buildlibs.sh può essere utilizzato per scaricare e compilare tutte le librerie necessarie e crea un pacchetto di Kid3.
Con KDE, le impostazioni sono archiviate in .config/kid3rc. Come applicazione Qt(TM), questo file è in .config/Kid3/Kid3.conf. Su Windows®. la configurazione è archiviata nel registro, su macOS® in un file plist.
La variabile di ambiente KID3_CONFIG_FILE può essere utilizzata per impostare il percorso del file di configurazione.
Su Linux®. un'interfaccia D-Bus può essere utilizzata per controllare Kid3 tramite script. Gli script possono essere scritti in qualsiasi linguaggio con associazioni D-Bus (ad es. in Python) e possono essere aggiunti alle Azioni dell'utente per estendere le funzionalità di Kid3.
L'artista nel tag 2 del file attuale può essere impostato sul valore «One Hit Wonder» con il seguente codice:
Shell
dbus-send --dest=org.kde.kid3 --print-reply=literal \ /Kid3 org.kde.Kid3.setFrame int32:2 string:'Artist' \ string:'One Hit Wonder'
o più semplicemente con qdbus di Qt(TM) (qdbusviewer può essere utilizzato per esplorare l'interfaccia in una GUI):
qdbus org.kde.kid3 /Kid3 setFrame 2 Artist \ 'One Hit Wonder'
Python
import dbus kid3 = dbus.SessionBus().get_object( 'org.kde.kid3', '/Kid3') kid3.setFrame(2, 'Artist', 'One Hit Wonder')
Perl
use Net::DBus; $kid3 = Net::DBus->session->get_service( "org.kde.kid3")->get_object( "/Kid3", "org.kde.Kid3"); $kid3->setFrame(2, "Artist", "One Hit Wonder");
Le API D-Bus è specificata in org.kde.Kid3.xml. L'interfaccia di Kid3 ha i seguenti metodi:
percorso
Restituisce vero se OK.
tagMask
profileName
tagMask
percorso
fmtIdx
Restituisce vero se OK.
tagMask
origine
estrazione
tagMask
origine
estrazione
returnValues
url
allFilesInDir
tagMask
percorso
fmtIdx
Restituisce vero se OK.
percorso
Restituisce un elenco di percorsi assoluti agli elementi della scaletta.
percorso
elementi
Restituisce vero se OK, falso se non tutti gli elementi sono stati trovati e aggiunti o il salvataggio non è riuscito.
Restituisce vero se l'elemento attuale è una cartella.
tagMask
formato
creare
Restituisce vero se OK, altrimenti il messaggio di errore è disponibile utilizzando getErrorMessage().
tagMask
firstTrackNr
espressione
nome
Il file sarà rinominato al salvataggio della cartella.
formato
tagMask
tagMask
nome
Per ottenere dati binari come un'immagine, il nome di un file da scrivere può essere aggiunto dopo il
nome,
ad es.
«Picture:/percorso/a/file». Allo stesso modo, i testi sincronizzati possono essere esportati,
ad es.
«SYLT:/percorso/a/file».
Restituisce il valore del frame.
tagMask
nome
valore
Per il tag 2 (tagMask
2), se non esiste un frame con
nome, viene aggiunto un nuovo frame, se il
valore
è vuoto, il frame è eliminato. Per aggiungere dati binari come un'immagine, è possibile aggiungere un file dopo il
nome,
ad es.
«Picture:/percorso/a/file». «SYLT:/percorso/a/file» può essere usato per importare testi sincronizzati.
Restituisce vero se OK.
tagMask
Restituisce un elenco con nomi e valori di frame alternati.
Restituisce un elenco con nomi e valori di proprietà alternati.
tagMask
tagMask
tagMask
tagMask
tagMask
Aprire un file o una cartella
Scaricare la copertina dell'album
Esportare tag in un file
Creare una scaletta
Ottenere gli elementi di una scaletta
Impostare gli elementi di una scaletta
Uscire dall'applicazione
Impostare il file precedente come file attuale
Impostare il file successivo come file attuale
Selezionare il primo file
Selezionare il file precedente
Selezionare il file successivo
Selezionare il file attuale
Espandere o contrarre l'elemento attuale se è una cartella
Applicare il formato del nome del file
Impostare i numeri di traccia successivi nei file selezionati
Filtrare i file
Convertire i tag ID3v2.3 in ID3v2.4
Ottenere il percorso della cartella
Ottenere il nome del file attuale
Impostare il nome del file selezionato
Impostare il formato da utilizzare quando si imposta il nome file dai tag
Impostare i nomi dei file selezionati dai tag
Ottenere il valore del frame
Impostare il valore del frame
Ottenere tutti i frame da un tag
Ottenere informazioni tecniche sul file
Impostare un tag dal nome del file
Impostare un tag da un altro tag
Copiare un tag
Incollare un tag
Rimuovere un tag
Elaborare nuovamente la configurazione
Riproduce i file selezionati
import Kid3 1.0 Kid3Script { onRun: { console.log("Ciao mondo, la cartella è", app.dirName) Qt.quit() } }
Se questo script viene salvato come /percorso/a/Esempio.qml, il comando utente può essere definito come @qml/percorso/a/Esempio.qml con nome Test QML e Risultato selezionati. Può quindi essere avviato utilizzando l'elemento Test QML nel menu contestuale dell'elenco dei file e il risultato sarà visibile nella finestra.
In alternativa, lo script può essere avviato anche indipendentemente da Kid3 utilizzando gli strumenti QML.
qml -apptype widget -I /usr/lib/kid3/plugins/imports/percorso/a/Esempio.qml
o
qmlscene -I /usr/lib/kid3/plugins/imports/percorso/a/Esempio.qml
Su Windows® e macOS® il percorso di importazione deve essere adattato alla cartella imports all'interno della cartella di installazione. Gli script avviati al di fuori di Kid3 utilizzeranno la cartella attuale, quindi dovrebbe essere cambiata in anticipo.
Per elencare i titoli nei tag 2 di tutti i file nella cartella attuale, è possibile utilizzare il seguente script:
import Kid3 1.0 Kid3Script { onRun: { app.firstFile() do { if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) { console.log(app.getFrame(tagv2, "titolo")) } } while (app.nextFile()) } }
Se la cartella contiene molti file, uno script del genere potrebbe bloccare l'interfaccia utente per qualche tempo. Per operazioni più lunghe, dovrebbe quindi avere una pausa di tanto in tanto. L'implementazione alternativa di seguito ha il compito per un singolo file spostato in una funzione. Questa funzione si richiama alla fine con un timeout di 1 ms, dato che è necessario elaborare più file. Questo assicurerà che la GUI rimanga reattiva mentre lo script è in esecuzione.
import Kid3 1.0 Kid3Script { onRun: { function doWork() { if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) { console.log(app.getFrame(tagv2, "titolo")) } if (!app.nextFile()) { Qt.quit() } else { setTimeout(doWork, 1) } } app.firstFile() doWork() } }
Quando si utilizza app.firstFile() con app.nextFile(), saranno elaborati tutti i file della cartella attuale. Se sono interessati solo i file selezionati, utilizzare invece firstFile() e nextFile(), queste sono funzioni utili del componente Kid3Script. L'esempio seguente è uno script che copia solo il numero del disco e i frame del copyright del file selezionato.
import Kid3 1.1 Kid3Script { onRun: { function doWork() { if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) { app.setFrame(tagv2, "*.selected", false) app.setFrame(tagv2, "discnumber.selected", true) app.setFrame(tagv2, "copyright.selected", true) app.copyTags(tagv2) } if (!nextFile()) { Qt.quit() } else { setTimeout(doWork, 1) } } firstFile() doWork() } }
Altri script di esempio sono forniti da Kid3 e sono già registrati come comandi dell'utente.
L'API può essere facilmente esplorata utilizzando la console QML, disponibile come script di esempio con un'interfaccia utente.
Kid3Script
è un normale componente QML situato nella cartella delle estensioni. È possibile utilizzare anche un altro componente QML. L'uso di
Kid3Script
semplifica l'avvio della funzione di script utilizzando il gestore di segnali
onRun. Inoltre offre alcune funzioni:
Kid3Script
onRun: gestore dei segnali che è invocato quando lo script è avviato tagv1, tagv2, tagv2v1: costanti per i parametri dei tag script: accesso alle funzioni di scripting configs: accesso agli oggetti di configurazione getArguments(): elenco degli argomenti degli script isStandalone(): vero se lo script non era stato avviato dall'interno di Kid3 setTimeout(callback, ritardo): avvia callback dopo ms di ritardo firstFile(): al primo file selezionato nextFile(): al successivo file selezionato
Come
JavaScript
e quindi anche QML ha solo un insieme limitato di funzioni per gli script, l'oggetto
script
ha alcuni metodi aggiuntivi, ad esempio:
Funzioni per creare script
script.properties (oggetto): stringa con proprietà Qt script.writeFile (percorsoFile, dati): scrivere i dati nel file, vero se OK script.readFile (percorsoFile): leggere i dati dal file script.removeFile (percorsoFile): eliminare il file, vero se OK script.fileExists (percorsoFile): vero se il file esiste script.fileIsWritable (percorsoFile): vero se il file è scrivibile script.getFilePermissions (percorsoFile): ottenere bit dei permessi del file script.setFilePermissions (percorsoFile, bitModalità): impostare i bit dei permessi del file script.classifyFile (percorsoFile): ottenere la classe del file (cartella "/", collegamento simbolico "@", exe "*", file " ") script.renameFile (vecchioNome, nuovoNome): rinominare il file, vero se OK script.copyFile (origine, destinazione): copiare il file, vero se OK script.makeDir (percorso): creare la cartella, vero se OK script.removeDir (percorso): rimuovere la cartella, vero se OK script.tempPath (): percorso della cartella temporanea script.musicPath (): percorso della cartella musicale script.listDir (percorso, [filtriNome], [classificare]): elencare le voci della cartella script.system (programma, [arg], [msec]): avviare un comando di sistema in modo sincrono, [codice di uscita, standard output, standard error] se non scade il tempo limite script.systemAsync (programma, [arg], [callback]): avviare un comando di sistema in modo comando asincrono, la callback sarà invocata con [codice di uscita, standard output, standard error] script.getEnv (nomeVar): ottenere il valore della variabile d'ambiente script.setEnv (nomeVar, valore): impostare il valore della variabile d'ambiente script.getQtVersion (): stringa versione Qt, ad es. "5.4.1" script.getDataMd5 (dati): ottenere la stringa esadecimale dell'hash MD5 dei dati script.getDataSize (dati): ottenere la dimensione dell'array di byte script.dataToImage (dati, [formato]): creare un'immagine da byte di dati script.dataFromImage (img, [formato]): ottenere byte di dati dall'immagine script.loadImage (percorsoFile): caricare un'immagine da un file script.saveImage (img, percorsoFile, [formato]): salvare un'immagine in un file, vero se OK script.imageProperties (img): ottenere le proprietà di un'immagine, una mappa contenente "larghezza", "altezza", "profondità" e "colorCount", vuoto se l'immagini non è valida script.scaleImage (img, larghezza, [altezza]): ridimensionare un'immagine, restituisce un'immagine ridimensionata
Utilizzando QML, gran parte delle funzioni di
Kid3
sono accessibili. L'API è simile a quella utilizzata per
D-Bus. Per i dettagli, consultare le rispettive note.
Contesto dell'applicazione
app.openDirectory(percorso): aprire una cartella app.unloadAllTags(): scaricare tutti i tag app.saveDirectory(): salvare una cartella app.revertFileModifications(): ripristinare app.importTags(tag, percorso, fmtIdx): importare i file app.importFromTags(tag, origine, estrazione): importare dai tag app.importFromTagsToSelection(tag, origine, estrazione): importare dai tag dei file selezionati app.downloadImage(url, allFilesInDir): scaricare un'immagine app.exportTags(tag, percorso, fmtIdx): esportare i file app.writePlaylist(): scaricare una scaletta app.getPlaylistItems(percorso): ottenere gli elementi di una scaletta app.setPlaylistItems(percorso, elementi): impostare gli elementi id una scaletta app.selectAllFiles(): selezionare tutto app.deselectAllFiles(): deselezionare app.firstFile([selezione], [soloFileConTag]): al primo file app.nextFile([selezione], [soloFileConTag]): al file successivo app.previousFile([selezione], [soloFileConTag]): al file precedente app.selectCurrentFile([selezione]): selezionare un file attuale app.selectFile(path, [selezione]): selezionare un file specifico app.getSelectedFilePaths([soloFileConTag]): ottenere i percorsi dei file selezionati app.requestExpandFileList(): espandere tutto app.applyFilenameFormat(): applicare il formato ai nomi dei file app.applyTagFormat(): applicare il formato al tag app.applyTextEncoding(): applicare la codifica del testo app.numberTracks(nr, totale, tag, [opzioni]): Numerare le tracce app.applyFilter(espressione): filtro app.convertToId3v23(): convertire ID3v2.4.0 in ID3v2.3.0 app.convertToId3v24(): convertire ID3v2.3.0 in ID3v2.4.0 app.getFilenameFromTags(tag): nomi dei file dai tag app.getTagsFromFilename(tag): nomi dei file ai tag app.getAllFrames(tag): ottenere oggetti con tutti i frame app.getFrame(tag, nome): ottenere un frame app.setFrame(tag, nome, valore): impostare un frame app.getPictureData(): ottenere i dati da un frame di immagine app.setPictureData(dati): impostare i dati in un frame di immagine app.copyToOtherTag(tag): tag ad altri tag app.copyTags(tag): copiare app.pasteTags(tag): incollare app.removeTags(tag): Rimuovere app.playAudio(): Riprodurre app.readConfig(): Leggere la configurazione app.applyChangedConfiguration(): Applicare la configurazione app.dirName: Nome della cartella app.selectionInfo.fileName: Nome del file app.selectionInfo.filePath: Percorso assoluto del file app.selectionInfo.detailInfo: Dettagli di formato app.selectionInfo.tag(Frame.Tag_1).tagFormat: Formato tag 1 app.selectionInfo.tag(Frame.Tag_2).tagFormat: Formato tag 2 app.selectionInfo.formatString(tag, formato): Sostituire i codici nella stringa di formato app.selectFileName(titolo, cartella, filtro, saveFile): Aprire la finestra per selezionare un file app.selectDirName(titolo, cartella): Aprire la finestra per selezionare una cartella
Per operazioni asincrone, le callback possono essere collegate ai segnali.
function automaticImport(profile) { function onAutomaticImportFinished() { app.batchImporter.finished.disconnect(onAutomaticImportFinished) } app.batchImporter.finished.connect(onAutomaticImportFinished) app.batchImport(profile, tagv2) } function renameDirectory(format) { function onRenameActionsScheduled() { app.renameActionsScheduled.disconnect(onRenameActionsScheduled) app.performRenameActions() } app.renameActionsScheduled.connect(onRenameActionsScheduled) app.renameDirectory(tagv2v1, format, false) }
Le diverse sezioni di configurazione sono accessibili tramite i metodi di
configs. Le loro proprietà possono essere elencate nella console QML.
Oggetti di configurazione
script.properties (configs.networkConfig())
È possibile impostare le proprietà:
configs.networkConfig().useProxy = false
configs.batchImportConfig() configs.exportConfig() configs.fileConfig() configs.filenameFormatConfig() configs.filterConfig() configs.findReplaceConfig() configs.guiConfig() configs.importConfig() configs.mainWindowConfig() configs.networkConfig() configs.numberTracksConfig() configs.playlistConfig() configs.renDirConfig() configs.tagConfig() configs.tagFormatConfig() configs.userActionsConfig()
Urs Fleisch <ufleisch at users.sourceforge.net>
Vincenzo Reale <smart2128@baslug.org>
m[blue]FDLm[]