複数のMP3ファイルを結合するpythonコード例
・各ファイル間に無音時間を設定できる
・ディレクトリ内のすべてのMP3ファイルを結合
・ファイル名(concatenate_mp3_files.py)
----
import os
・各ファイル間に無音時間を設定できる
・ディレクトリ内のすべてのMP3ファイルを結合
・ファイル名(concatenate_mp3_files.py)
----
import os
from pydub import AudioSegment
# 複数のMP3ファイルを結合する関数
def concatenate_mp3_files(directory, output_file, silence_duration=1):
# 無音時間の設定(ミリ秒単位)
silence = AudioSegment.silent(duration=silence_duration * 1000) # 秒単位をミリ秒に変換
# ディレクトリ内のすべてのMP3ファイルを取得
mp3_files = [f for f in os.listdir(directory) if f.endswith('.mp3')]
# MP3ファイルをロードして結合
combined = AudioSegment.empty()
for mp3_file in mp3_files:
mp3_path = os.path.join(directory, mp3_file)
audio = AudioSegment.from_mp3(mp3_path)
combined += audio + silence # 音声ファイルに無音時間を追加して結合
# 最後に追加された無音時間を削除
combined = combined[:-silence.duration_seconds * 1000]
# 出力ファイルとして保存
combined.export(output_file, format="mp3")
print(f"MP3ファイルが結合されました。出力ファイル: {output_file}")
# 使用例
directory = "lesson" # MP3ファイルが置かれているディレクトリ
output_file = "combined_lessonn.mp3" # 結合後の出力ファイル名
silence_duration = 1 # 無音時間の設定(秒単位)ファイル間の無音時間(この場合は1秒)
concatenate_mp3_files(directory, output_file, silence_duration)
----
----