2011-08-28 79 views
1

我有一個很大的MP3目錄,並且不知何故album標籤(或者album names)的值(對於所有這些文件,數百個)的值實際上是值的artist標籤(或artist names),反之亦然。將mp3標籤的值複製到另一個批量MP3文件的標籤

現在我必須複製對方的值,以便它們交換目錄中的每個文件。或者,也許我可以交換標籤名稱。我只想要artist標籤顯示藝術家姓名和album標籤以顯示專輯名稱。

應該如何進行批量編輯?

+0

我需要爲ogg和flac做這個,分別交換藝術家和標題。在linux上。 – kaleissin

回答

1

不幸的是標籤爲MP3是相當棘手,但下面的python腳本(需要庫誘變劑)確實爲OGG和FLAC的工作,至少解決我自己的問題。

#! /usr/bin/env python 
# Copyright (c) 2011 kaleissin 
# MIT License, see http://www.opensource.org/licenses/mit-license.php 

import mutagen 
import os 
import os.path 

if len(sys.argv[1:]) < 1: 
    print "Usage: %s <file> [file..]" % os.path.basename(__file__) 

for filename in sys.argv[1:]: 
    audio = mutagen.File(filename) 
    audio['artist'], audio['title'] = audio['title'], audio['artist'] 
    audio.save() 
+0

我試過了,但沒有奏效。如果有效,我會嘗試一些修改並更新。 – amar

0

ID3質量標註器https://github.com/squell/id3)應該有所幫助。適用於Windows和Linux。

交換所有mp3文件中的藝術家和專輯字段。

id3 -a %l -l %a "*.mp3" 

Sets keys: 
-a sets the artist key 
-l sets the album key 

Substitutes of current key values: 
%t title 
%a artist 
%l album title 
%n track number 
%y year 
%g genre 
%c comment field 
%f file name (without path) 
%p path to filename 

先在樣品上使用。