CDをmp3一覧に変換し、1つのmp3に連結する by ffmpeg

1

Windows Media Player10で音楽CDをMP3に変換する http://www.xucker.jpn.org/pc/wmp10_mp3.html

2

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# このスクリプトはmp3と同位置にあるとする

import glob
import os
from mutagen.mp3 import MP3 #mp3の長さ取得

# ディレクトリ なければ作る
if not os.path.exists('output'):
  os.system("output")

# 掃除
os.system("rm output/*.mp3")

# タイムテーブル用 (ファイル名によって適宜書き換えてください)
def path_to_title(path):
  return path

# 秒を分:秒に変換
def time_to_min_sec(t):
  t = int(t)
  minute = t//60
  sec = t%60
  return str(minute) + ':' + str(sec).zfill(2)

f = open("for_ffmpeg.txt", 'w')
g = open("timetable.txt", 'w')
lis = glob.glob("./*.mp3")
t = 0
for path in lis:
  f.write("file " + "'" + path + "'" + '\n')
  audio = MP3(path)
  g.write(time_to_min_sec(t) + ' ' + path_to_title(path) + '\n')
  t += audio.info.length

print("position " + os.getcwd())
command = "ffmpeg -f concat -i for_ffmpeg.txt -c copy output/concatenated.mp3"
print(command)
print("上記コマンドをcmdで直接実行してください")
#os.system(command)

3. 生成物

  • 連結されたmp3
  • タイムテーブル (どの時刻にどのファイルがあるかの表)
0:00 .\01.mp3
1:28 .\02.mp3
2:19 .\03.mp3

用途

  • mp3でそのまま使うもよし、mp4にして動画にするもよし
  • ディスクからフリーになろう