Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import re
- ### before run
- # make sure the metafile name is correct, and the file is in the same location
- # run with python3
- # check if timebase position is right
- ### after run (in output.cue)
- # insert title name
- # change new.flac to a correct flac file name
- def main():
- try: # exception when there is no such file
- f = open('part_A_FFMETADATAFILE')
- data = f.read()
- f.close()
- # print(data)
- split_data = re.split(r"\s*\n", data)
- timebase_index = split_data.index('TIMEBASE=1/1000000000')
- timebase = split_data[timebase_index].replace('TIMEBASE=1/', '')
- # timebase = split_data[3].replace('TIMEBASE=1/', '')
- # print(timebase)
- # create cue file
- f = open('output.cue', 'a')
- f.write('TITLE ""')
- f.write('\n')
- f.write('PERFORMER "fripSide"')
- f.write('\n')
- f.write('FILE "new.flac" WAVE')
- f.write('\n')
- f.close()
- count = 0
- track_number = 0
- for element in split_data:
- # print(element)
- if element == '[CHAPTER]':
- track_number += 1
- start = count + 2
- title = count + 4
- print(split_data[start].replace('START=', ''))
- print(split_data[title].replace('title=', ''))
- print('---------------------------------------------------------')
- f = open('output.cue', 'a')
- if track_number < 10:
- f.write(' TRACK 0' + str(track_number) + ' AUDIO\n')
- else:
- f.write(' TRACK ' + str(track_number) + ' AUDIO\n')
- f.write(' TITLE "')
- f.write(split_data[title].replace('title=', ''))
- f.write('"')
- f.write('\n')
- f.write(' PERFORMER "fripSide"')
- f.write('\n')
- index_sec = float(split_data[start].replace('START=', '')) / float(timebase)
- index_sec_str = str("{0:.0f}".format(index_sec % 60))
- print(index_sec_str)
- index_msec = index_sec % 1
- index_msec_str = str("{0:.2f}".format(index_msec)).replace('0.', '')
- print(index_msec_str)
- index_min = index_sec // 60
- index_min_str = str(index_min).replace('.0', '')
- print(index_min_str)
- f.write(' INDEX 01 ' + index_min_str + ':' + index_sec_str + ':' + index_msec_str)
- # f.write()
- f.write('\n')
- f.close()
- count += 1
- else:
- count += 1
- except FileNotFoundError:
- print('FileNotFoundError')
- if __name__ == "__main__":
- main()
Add Comment
Please, Sign In to add comment