ازگر ٹیگ ایڈیٹنگ لائبریری,mutagen
Python لائبریری mutagen کو ملٹی میڈیا فائلوں جیسے mp3 کے ٹیگز (میٹا ڈیٹا) میں ترمیم کرنے کے لیے استعمال کیا جا سکتا ہے۔
Mutagen is a Python module to handle audio metadata. It supports ASF, FLAC, MP4, Monkey’s Audio, MP3, Musepack, Ogg Opus, Ogg FLAC, Ogg Speex, Ogg Theora, Ogg Vorbis, True Audio, WavPack, OptimFROG, and AIFF audio files.
آپ اسے پائپ کے ساتھ انسٹال کر سکتے ہیں۔
$ pip install mutagen
ID3 ٹیگ میں ترمیم کرنے کی ایک مثال یہ ہے۔
ID3 کے بارے میں مزید معلومات کے لیے، درج ذیل لنک دیکھیں۔ معیار اصل میں mp3 کے لیے بنایا گیا تھا، لیکن اب یہ mp4 (m4a) اور دیگر نان mp3 فائلوں پر بھی لاگو ہوتا ہے۔
mutagen.easyid3
اگر آپ صرف فنکاروں کے نام، البم کے نام، ٹریک نمبر وغیرہ پڑھنا یا لکھنا چاہتے ہیں، تو EasyID3 ماڈیول استعمال کرنا آسان ہے۔
from mutagen.easyid3 import EasyID3
گانے کا عنوان لکھنے کے لیے درج ذیل کام کریں۔
path = 'example.mp3'
tags = EasyID3(path)
tags['title'] = 'new_title'
tags.save()
ایک سادہ انٹرفیس حاصل کرنے کے لیے صرف ایک محدود تعداد میں ٹیگز میں ترمیم کی جا سکتی ہے، لیکن یہ بنیادی استعمال کے لیے کافی ہے۔ جن ٹیگز میں ترمیم کی جا سکتی ہے وہ نیچے دیکھے جا سکتے ہیں۔EasyID3.valid_keys.keys()
for key in EasyID3.valid_keys.keys():
print(key)
# album
# bpm
# compilation
# composer
# copyright
# encodedby
# lyricist
# length
# media
# mood
# title
# version
# artist
# albumartist
# conductor
# arranger
# discnumber
# organization
# tracknumber
# author
# albumartistsort
# albumsort
# composersort
# artistsort
# titlesort
# isrc
# discsubtitle
# language
# genre
# date
# originaldate
# performer:*
# musicbrainz_trackid
# website
# replaygain_*_gain
# replaygain_*_peak
# musicbrainz_artistid
# musicbrainz_albumid
# musicbrainz_albumartistid
# musicbrainz_trmid
# musicip_puid
# musicip_fingerprint
# musicbrainz_albumstatus
# musicbrainz_albumtype
# releasecountry
# musicbrainz_discid
# asin
# performer
# barcode
# catalognumber
# musicbrainz_releasetrackid
# musicbrainz_releasegroupid
# musicbrainz_workid
# acoustid_fingerprint
# acoustid_id
فنکشن کی وضاحت کرنا مفید ہے۔
ٹیگز درج ذیل ہیں۔ ٹریکس کی کل تعداد (گانوں کی تعداد) کو ‘ٹریک نمبر’ کے ڈینومینیٹر سے ظاہر کیا جاتا ہے۔ ڈسکس کی تعداد کے لیے بھی یہی بات ہے۔
def set_id3_tag(file_path, title=None, artist=None, albumartist=None, album=None, genre=None,
track_num=None, total_track_num=None, disc_num=None, total_disc_num=None):
tags = EasyID3(file_path)
if title:
tags['title'] = title
if artist:
tags['artist'] = artist
if albumartist:
tags['albumartist'] = albumartist
if album:
tags['album'] = album
if genre:
tags['genre'] = genre
if total_track_num:
if track_num:
tags['tracknumber'] = '{}/{}'.format(track_num, total_track_num)
else:
tags['tracknumber'] = '/{}'.format(total_track_num)
else:
if track_num:
tags['tracknumber'] = '{}'.format(track_num)
if total_disc_num:
if disc_num:
tags['discnumber'] = '{}/{}'.format(disc_num, total_disc_num)
else:
tags['discnumber'] = '/{}'.format(total_disc_num)
else:
if track_num:
tags['discnumber'] = '{}'.format(disc_num)
tags.save()
ٹیگ ریڈ آؤٹ (ڈسپلے) مندرجہ ذیل ہے۔
def show_id3_tags(file_path):
tags = EasyID3(file_path)
print(tags.pprint())
مندرجہ ذیل ٹیگز کو ہٹا دیا گیا ہے۔
def delete_id3_tag(file_path, target_tag):
tags = EasyID3(file_path)
tags.pop(target_tag, None)
tags.save()
def delete_all_id3_tag(file_path):
tags = EasyID3(file_path)
tags.delete()
tags.save()
حسب ذیل استعمال کریں۔
set_id3_tag(path, albumartist='new_artist')
delete_id3_tag(path, 'discnumber')
show_id3_tags(path)
mutagen.id3
ID3 ٹیگز میں براہ راست ترمیم کرنے کے لیے، ID3 ماڈیول استعمال کریں۔
from mutagen.id3 import ID3, TIT2
path = 'example.mp3'
tags = ID3(path)
print(tags.pprint())
tags.add(TIT2(encoding=3, text="new_title"))
tags.save()
لکھنے کے لیے، ٹیگ ID کی وضاحت کریں جیسا کہ نیچے دکھایا گیا ہے۔
- گانے کے عنوانات(
TIT2) - البم کا نام(
TALB)
ٹیگ IDs کا خلاصہ درج ذیل لنک پر سرکاری دستاویزات میں کیا گیا ہے، لیکن یہ سمجھنا مشکل ہے کہ وہ کس قسم کی معلومات کی نمائندگی کرتے ہیں۔
خط و کتابت کی جانچ کرنے کے لیے موجودہ فائل کے ID3 ٹیگز کو ظاہر کرنے کے لیے pprint() طریقہ استعمال کرنا آسان ہو سکتا ہے۔


