def export_digital(item): if "std" in item.option: digital_track = AudioSegment.from_wav(item.path) digital_track_path = os.path.join(DIGITAL_FOLDER, item.name) + "." + item.digital_ext digital_track.export( out_f=digital_track_path, format=item.digital_ext, bitrate="192k", tags={"title": item.album, "artist": item.artist, "album": item.album}, ) # Add cover art if item.thumb and (item.digital_ext == "mp3"): mutagen_audio = MP3(digital_track_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime="image/jpeg", # image/jpeg or image/png type=3, # 3 is for the cover image desc=u"Cover", data=open(item.thumb_path, "rb").read(), ) ) mutagen_audio.save() elif item.thumb: raise Exception("Time to implement FLAC cover images!") else: logging.warning("No cover found for item {0}".format(item.name)) # Deluxe / 45 else: split.split_item(item, DIGITAL_FOLDER)
def export_digital(item): if 'std' in item.option: digital_track = AudioSegment.from_wav(item.path) digital_track_path = os.path.join(DIGITAL_FOLDER, item.name) + '.' + item.digital_ext digital_track.export(out_f=digital_track_path, format=item.digital_ext, bitrate='192k', tags={'title':item.album, 'artist':item.artist, 'album':item.album}) # Add cover art if item.thumb and item.digital_ext is 'mp3': mutagen_audio = MP3(digital_track_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime='image/jpeg', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open(item.thumb_path, 'rb').read() ) ) mutagen_audio.save() elif item.thumb: raise Exception('Time to implement FLAC cover images!') else: logging.warning('No cover found for item {0}'.format(item.name)) # Deluxe / 45 else: split.split_item(item, DIGITAL_FOLDER)
def export_digital(item): """ Export and/or split digital files for an item (parallelized) """ logging.warning('{0} -> {1}'.format(item.name, DIGITAL_FOLDER)) if 'std' in item.option: digital_file = AudioSegment.from_wav(item.path) digital_file.export(out_f=item.digital_file_path, format=item.digital_ext, bitrate='192k', tags={ 'title':item.album, 'artist':item.artist, 'album':item.album}) # Add cover art if item.thumb and (item.digital_ext == 'mp3'): mutagen_audio = MP3(item.digital_file_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime='image/jpeg', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open(item.thumb_path, 'rb').read() ) ) mutagen_audio.save() elif item.thumb: raise Exception('Time to implement FLAC cover images!') else: logging.warning('No cover found for item {0}'.format(item.name)) if DROPBOX_COPY: # Copy finished digital file to Dropbox order folder shutil.copy2(item.digital_file_path, item.dropbox_order_folder) # Deluxe / 45 else: split.split_item(item, DIGITAL_FOLDER)
def export_digital(item): """ Export and/or split digital files for an item (parallelized) """ logging.warning('{0} -> {1}'.format(item.name, DIGITAL_FOLDER)) if 'std' in item.option: if JUST_ADD_TAGS: if item.digital_ext == 'mp3': mutagen_audio = EasyID3(item.digital_file_path) elif item.digital_ext == 'flac': mutagen_audio = FLAC(item.digital_file_path) else: raise Exception('Format {0} not recognized for item {1}.'.format(item.digital_ext, item.name)) mutagen_audio['title'] = item.album mutagen_audio['artist'] = item.artist mutagen_audio['albumartist'] = item.artist mutagen_audio['album'] = item.album mutagen_audio.save() else: # Export audio file digital_file = AudioSegment.from_wav(item.path) digital_file.export(out_f=item.digital_file_path, format=item.digital_ext, bitrate='192k', tags={ 'title':(item.album or item.artist), 'artist':item.artist, 'albumartist':item.artist, 'album':(item.album or item.artist)}) # Add cover art if item.thumb and (item.digital_ext == 'mp3'): mutagen_audio = MP3(item.digital_file_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime='image/jpeg', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open(item.thumb_path, 'rb').read() ) ) mutagen_audio.save() elif item.thumb and (item.digital_ext == 'flac'): mutagen_audio = File(item.digital_file_path) flac_image = Picture() flac_image.type = 3 mime = 'image/jpeg' flac_image.desc = 'Cover' with open(item.thumb_path, 'rb') as f: flac_image.data = f.read() mutagen_audio.add_picture(flac_image) mutagen_audio.save() else: logging.warning('No cover found for item {0}'.format(item.name)) if JUST_ADD_TAGS: os.rename(item.digital_file_path, item.digital_rename_path) if DROPBOX_COPY: # Copy finished digital file to Dropbox order folder shutil.copy2(item.digital_file_path, item.dropbox_order_folder) # Deluxe / 45 else: split.split_item(item, DIGITAL_FOLDER, DROPBOX_COPY)
def export_digital(item): """ Export and/or split digital files for an item (parallelized) """ logging.info('{0} -> {1}'.format(item.name, config.digital_folder)) if 'std' in item.option: if config.just_add_tags: if item.digital_ext == 'mp3': mutagen_audio = ID3(item.digital_file_path) mutagen_audio.add(TIT2(encoding=3, text=item.album)) mutagen_audio.add(TOA(encoding=3, text=item.artist)) mutagen_audio.add(TP1(encoding=3, text=item.artist)) mutagen_audio.add(TP2(encoding=3, text=item.artist)) mutagen_audio.add(TP4(encoding=3, text=item.artist)) mutagen_audio.add(TAL(encoding=3, text=item.album)) mutagen_audio.save(v2_version=3) elif item.digital_ext == 'flac': mutagen_audio = FLAC(item.digital_file_path) mutagen_audio['title'] = item.album mutagen_audio['artist'] = item.artist mutagen_audio['albumartist'] = item.artist mutagen_audio['album'] = item.album mutagen_audio.save() else: raise Exception('Format {0} not recognized for item {1} tags.'.format(item.digital_ext, item.name)) else: # Export audio file digital_file = AudioSegment.from_wav(item.path) digital_file.export(out_f=item.digital_file_path, format=item.digital_ext, bitrate=item.bitrate, parameters=item.export_parameters, tags={'title':(item.album or item.artist), 'artist':item.artist, 'albumartist':item.artist, 'album':(item.album or item.artist)}, id3v2_version='3') # Add cover art if item.thumb and (item.digital_ext == 'mp3'): mutagen_audio = MP3(item.digital_file_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime='image/jpeg', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open(item.thumb_path, 'rb').read() ) ) mutagen_audio.save(v2_version=3) elif item.thumb and (item.digital_ext == 'flac'): mutagen_audio = File(item.digital_file_path) flac_image = Picture() flac_image.type = 3 mime = 'image/jpeg' flac_image.desc = 'Cover' with open(item.thumb_path, 'rb') as f: flac_image.data = f.read() mutagen_audio.add_picture(flac_image) mutagen_audio.save() elif item.image: logging.warning('No cover found for item {0}'.format(item.name)) if config.just_add_tags: os.rename(item.digital_file_path, item.digital_rename_path) # Deluxe / 45 else: split.split_item(item, config.digital_folder, config.dropbox_move)
def export_digital(item): """ Export and/or split digital files for an item (parallelized) """ logging.info("{0} -> {1}".format(item.name, config.digital_folder)) if "std" in item.option: if config.just_add_tags: if item.digital_ext == "mp3": mutagen_audio = ID3(item.digital_file_path) mutagen_audio.add(TIT2(encoding=3, text=item.album)) mutagen_audio.add(TOA(encoding=3, text=item.artist)) mutagen_audio.add(TP1(encoding=3, text=item.artist)) mutagen_audio.add(TP2(encoding=3, text=item.artist)) mutagen_audio.add(TP4(encoding=3, text=item.artist)) mutagen_audio.add(TAL(encoding=3, text=item.album)) mutagen_audio.save(v2_version=3) elif item.digital_ext == "flac": mutagen_audio = FLAC(item.digital_file_path) mutagen_audio["title"] = item.album mutagen_audio["artist"] = item.artist mutagen_audio["albumartist"] = item.artist mutagen_audio["album"] = item.album mutagen_audio.save() else: raise Exception("Format {0} not recognized for item {1} tags.".format(item.digital_ext, item.name)) else: # Export audio file digital_file = AudioSegment.from_wav(item.path) digital_file.export( out_f=item.digital_file_path, format=item.digital_ext, bitrate=item.bitrate, tags={ "title": (item.album or item.artist), "artist": item.artist, "albumartist": item.artist, "album": (item.album or item.artist), }, id3v2_version="3", ) # Add cover art if item.thumb and (item.digital_ext == "mp3"): mutagen_audio = MP3(item.digital_file_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime="image/jpeg", # image/jpeg or image/png type=3, # 3 is for the cover image desc=u"Cover", data=open(item.thumb_path, "rb").read(), ) ) mutagen_audio.save(v2_version=3) elif item.thumb and (item.digital_ext == "flac"): mutagen_audio = File(item.digital_file_path) flac_image = Picture() flac_image.type = 3 mime = "image/jpeg" flac_image.desc = "Cover" with open(item.thumb_path, "rb") as f: flac_image.data = f.read() mutagen_audio.add_picture(flac_image) mutagen_audio.save() elif item.image: logging.warning("No cover found for item {0}".format(item.name)) if config.just_add_tags: os.rename(item.digital_file_path, item.digital_rename_path) # Deluxe / 45 else: split.split_item(item, config.digital_folder, config.dropbox_move)
def export_digital(item): """ Export and/or split digital files for an item (parallelized) """ logging.info('{0} -> {1}'.format(item.name, digital_folder)) if 'std' in item.option: if just_add_tags: if item.digital_ext == 'mp3': mutagen_audio = EasyID3(item.digital_file_path) elif item.digital_ext == 'flac': mutagen_audio = FLAC(item.digital_file_path) else: raise Exception('Format {0} not recognized for item {1}.'.format(item.digital_ext, item.name)) mutagen_audio['title'] = item.album mutagen_audio['artist'] = item.artist mutagen_audio['albumartist'] = item.artist mutagen_audio['album'] = item.album mutagen_audio.save() else: # Export audio file digital_file = AudioSegment.from_wav(item.path) digital_file.export(out_f=item.digital_file_path, format=item.digital_ext, bitrate=item.bitrate, tags={ 'title':(item.album or item.artist), 'artist':item.artist, 'albumartist':item.artist, 'album':(item.album or item.artist)}) # Add cover art if item.thumb and (item.digital_ext == 'mp3'): mutagen_audio = MP3(item.digital_file_path, ID3=ID3) try: # Add ID3 tag if it doesn't exist mutagen_audio.add_tags() except error: pass mutagen_audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime='image/jpeg', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open(item.thumb_path, 'rb').read() ) ) mutagen_audio.save() elif item.thumb and (item.digital_ext == 'flac'): mutagen_audio = File(item.digital_file_path) flac_image = Picture() flac_image.type = 3 mime = 'image/jpeg' flac_image.desc = 'Cover' with open(item.thumb_path, 'rb') as f: flac_image.data = f.read() mutagen_audio.add_picture(flac_image) mutagen_audio.save() else: logging.warning('No cover found for item {0}'.format(item.name)) if just_add_tags: os.rename(item.digital_file_path, item.digital_rename_path) # Deluxe / 45 else: split.split_item(item, digital_folder, dropbox_move, item.bitrate) # Move original wave to mp3 folder, so we don't see it in the to-burn list if not 'cd' in item.format: shutil.move(item.path, os.path.join(digital_folder, item.filename)) try: shutil.move(os.path.splitext(item.path)[0] + '.pkf', os.path.join(digital_folder, os.path.splitext(item.filename)[0] + '.pkf')) except IOError: pass