Come posso * cancellare completamente * i metadati di un MP3?


22

Sto usando "barbabietole" per organizzare i miei mp3. Un album che ho comprato da Amazon come mp3 è erroneamente contrassegnato come NON una compilation quando in realtà è una compilation. Organizzo i miei file in modo diverso a seconda che un album sia o meno una compilation. Indipendentemente da ciò che tento di fare di questi mp3, le modifiche che applico ai tag ID3 non si attaccano.

Per esempio:

mp3info -d ../amazon_album/*  # This WIPES the tags
mp3info ../amazon_album/01-01 - Track 1.mp3 
../amazon_album/01-01 - Track 1.mp3 does not have an ID3 1.x tag.

Ma poi quando apro il file in qualsiasi lettore multimediale, TUTTE le informazioni sono ancora lì!

Quindi ho provato:

mp3info -a "LOL" ../amazon_album/*
mp3info  ../amazon_album/01-01 - Track 1.mp3
File: ../amazon_album/01-01 - Track 1.mp3
Title:                                  Track: 
Artist:  LOL
Album:                                  Year:  
Comment:                                Genre:  [255]

Tuttavia, in qualsiasi lettore multimediale, conserva ancora tutte le informazioni originali. Per questo motivo, non sono in grado di cambiare l'album in una "Compilation", il che significa che non posso organizzarlo in Beets come voglio.

Ho confermato che non si tratta di un problema con le autorizzazioni dei file. Sto facendo qualcosa di sbagliato? C'è un altro modo per ottenere questo risultato in Linux? O c'è un modo in cui posso "ingannare" le barbabietole nel trattarle come una compilation (in modo che utilizzi il mio percorso di compilazione)?

Risposte:


9

mp3infomodifica solo i tag ID3v1 , è necessario utilizzare un programma come eyeD3 o id3v2 che supporti ID3v2

Più comodo è usare MusicBrainz Picard per taggare i tuoi file MP3 (usa la libreria mutagen sotto).

Poiché mp3info supporta solo ID3v1, non può eliminare / cancellare le informazioni ID3v2 incorporate negli stream MP3.


Sia le barbabietole che Picard usano la libreria mutagen per taggare i file e i dati dal sito Web MusicBrainz.org, quindi il passaggio da barbabietole a Picard non sarà di grande aiuto. La parte su ID3v1 è corretta, ovviamente.
Wieland,

Seleziona Opzioni-> Opzioni, quindi Tag in Picard e puoi scegliere di scrivere il tag ID3v1 (non sono sicuro che sia attivo per impostazione predefinita). Ciò eliminerà sicuramente le vecchie informazioni ID3v1.
Zelda,

C'è un flag in Barbabietole che ti consente di disabilitare la codifica automatica per un'importazione. In un altro caso dello stesso problema che descrivo, sono stato in grado di risolverlo modificando i tag ID3v1, quindi reimportandolo con la codifica automatica da MusicBrainz disabilitata. Ciò ha preservato le mie modifiche e mi ha permesso di importare l'album come volevo. Immagino che la differenza tra quel caso e questo caso sia ID3v2 (di cui non sapevo fino a questo post). Ora proverò alcune cose come eyeD3 e id3v2 per sbarazzarsi di quei tag in questo album di Amazon.
CptSupermrkt,

11

Per rimuovere tag id3 da un file mp3 è possibile utilizzare lo strumento id3convert. Ha un interruttore chiamato "strip", -so --strip.

-s --strip Rimuovi i tag invece del rendering (impostazione predefinita = opzione disattivata)

Esempio

NOTA: include entrambi i tag id3v1 e id3v2

prima

$ id3info a.mp3 

*** Tag information for a.mp3
=== TIT2 (Title/songname/content description): Feist - I Feel It All
=== COMM (Comments): (ID3v1 Comment)[XXX]: Music video by Feist performin
*** mp3 info
MPEG2/layer III
Bitrate: 8KBps
Frequency: 22KHz

striscia

$ id3convert -s a.mp3 
Converting a.mp3: attempting v1 and v2, stripped v1

dopo

$ id3info a.mp3 

*** Tag information for a.mp3
*** mp3 info
MPEG2/layer III
Bitrate: 8KBps
Frequency: 22KHz

Riferimenti


9

Un altro strumento che ha il vantaggio di esistere nei repository di Ubuntu è eyeD3. Ecco il comando:

eyeD3 --remove-all music.mp3

1

id3v2 -D foo.mp3

Su un Mac, installare con: brew install id3v2


0

La risposta di Zelda fornisce la risposta corretta alla mia domanda. Si scopre che stavo davvero facendo la domanda sbagliata, quindi ho pensato di aggiungere questa risposta per il futuro Googler che si imbatte in questo.

Anche se avessi cancellato i tag (sia ID3v1 che ID3v2) e poi li avessi nuovamente inseriti tutti manualmente, le barbabietole non li avrebbero importati come compilation.

Determinato, ho eliminato il codice sorgente delle barbabietole e ho trovato il mio problema --- sembra che se un nome appare X numero di volte come artista della canzone, si prende su di sé per dichiararlo non una compilation. Almeno, è quello che ho raccolto da questo frammento di codice in importer.py:

if task.choice_flag == action.ASIS:
    # Taking metadata "as-is". Guess whether this album is VA.
    plur_artist, freq = util.plurality([i.artist for i in task.items])
    if freq == len(task.items) or (freq > 1 and
            float(freq) / len(task.items) >= SINGLE_ARTIST_THRESH):
        # Single-artist album.
        changes['albumartist'] = plur_artist
        changes['comp'] = False
    else:
        # VA.
        changes['albumartist'] = VARIOUS_ARTISTS
        changes['comp'] = True

Non ho letto abbastanza del codice per scoprire più dettagli, perché non appena ho letto quella sezione, ho provato a rimuovere il nome dell'artista prevalente e voilà! Le barbabietole lo hanno importato come raccolta.

Questa non è una grande soluzione per me, perché considero personalmente un album una compilation anche se c'è anche un altro artista sul disco (e non è una "caratteristica"). Tutto quello che posso fare è eliminare il nome dell'artista prevalente, importarlo e quindi modificare manualmente l'artista di quei file per ripristinare l'artista corretto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.