पाइथनमा mp3 र अन्य ID3 ट्यागहरू सम्पादन गर्न mutagen कसरी प्रयोग गर्ने

व्यापार

पाइथन ट्याग सम्पादन लाइब्रेरी,mutagen

पाइथन लाइब्रेरी 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 को ’boutमा थप जानकारीको लागि, निम्न लिङ्क हेर्नुहोस्। मानक मूल रूपमा 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()

लेख्नको लागि, तल देखाइएको ट्याग आईडी निर्दिष्ट गर्नुहोस्।

  • गीत शीर्षकहरू(TIT2)
  • एल्बम नाम(TALB)

ट्याग ID हरू निम्न लिङ्कमा आधिकारिक कागजातमा संक्षेपित छन्, तर तिनीहरूले कुन प्रकारको जानकारी प्रतिनिधित्व गर्छन् भनेर बुझ्न गाह्रो छ।

पत्राचार जाँच गर्न अवस्थित फाइलको ID3 ट्यागहरू प्रदर्शन गर्न pprint() विधि प्रयोग गर्न सजिलो हुन सक्छ।

Copied title and URL