2010-10-28 88 views
9

正如問題所問 - 有沒有人有使用Mutagen python ID3庫來編寫mp3文件的好例子?有沒有人有使用誘變劑寫文件的好例子?

我正在尋找特別添加光盤/曲目號碼的信息,但編輯標題和藝術家的例子也會有所幫助。

乾杯, /YGA

+1

是否存在Mutagen教程的某些問題? http://code.google.com/p/mutagen/wiki/Tutorial – pafcu 2010-10-28 07:16:37

回答

5

你看看在網絡上的例子。其中一些應該可以幫助你。

[編輯:]

誘變教程是相當不錯的,因此沒有添加更多的信息。 dir()提供了大部分細節。

對於使用專輯封面設置成MP3誘變劑

嵌入歌詞使用誘變劑

一個例子

from mutagen.mp3 import MP3 
from mutagen.easyid3 import EasyID3 
import mutagen.id3 

filename = 'xxx.mp3' 

# Example which shows how to automatically add tags to an MP3 using EasyID3 

mp3file = MP3(filename, ID3=EasyID3) 

try: 
    mp3file.add_tags(ID3=EasyID3) 
except mutagen.id3.error: 
    print("has tags") 

mp3file['title'] = 'Newly tagged' 
mp3file.save() 
print(mp3file.pprint()) 
+0

...但這個例子只有閱讀。 – YGA 2010-10-28 20:19:31

11

從腳本我做了一個前一陣子嵌入歌詞到MP3文件摘自:

http://code.activestate.com/recipes/577138-embed-lyrics-into-mp3-files-using-mutagen-uslt-tag/

相關部分是:

from mutagen.mp3 import MP3 
from mutagen.id3 import ID3NoHeaderError 
from mutagen.id3 import ID3, TIT2, TALB, TPE1, TPE2, COMM, USLT, TCOM, TCON, TDRC 

# create ID3 tag if not present 
try: 
    tags = ID3(fname) 
except ID3NoHeaderError: 
    print "Adding ID3 header;", 
    tags = ID3() 

tags["TIT2"] = TIT2(encoding=3, text=title) 
tags["TALB"] = TALB(encoding=3, text=u'mutagen Album Name') 
tags["TPE2"] = TPE2(encoding=3, text=u'mutagen Band') 
tags["COMM"] = COMM(encoding=3, lang=u'eng', desc='desc', text=u'mutagen comment') 
tags["TPE1"] = TPE1(encoding=3, text=u'mutagen Artist') 
tags["TCOM"] = TCOM(encoding=3, text=u'mutagen Composer') 
tags["TCON"] = TCON(encoding=3, text=u'mutagen Genre') 
tags["TDRC"] = TDRC(encoding=3, text=u'2010') 
tags["TRCK"] = TRCK(encoding=3, text=u'track_number') 

tags.save(fname) 
3

一個簡單的方法來做到這一點:

from mutagen.easyid3 import EasyID3 
audio = EasyID3(mp3_filename_import) 
audio['title'] = "Title" 
audio['artist'] = "Artist" 
audio['album'] = "Album" 
audio['composer'] = "" # empty 
audio.save() 

如果標籤沒有出現,則將最後一行更改爲:

audio.save(v2_version=3) 
相關問題