表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
2/9

PydubでMP3ファイルの音楽の曲の音量アップ

 外部ライブラリのPydubを利用させてもらって、MP3ファイルの音楽の曲の音量をアップします。


 音量を上げたいと感じる曲の場合は、10デシベルくらいで十分だと思います。


 音量を少しだけ上げたいと感じる曲の場合は、5デシベルくらいで十分だと思います。


 GithubでPythonのソース コードをパブリック ドメインで公開しております。

 マイクロソフトのBing検索エンジンで「github eliphas1810-tools」などで検索してみてください。

 残念ながらグーグル検索エンジンでは検索できません。


 コピペする場合は2文字の全角空白を4文字の半角空白に置換してください。

 UTF-8という文字コードで、Pythonの.pyファイルを保存してください。


 Linux Mintの場合は、Python3-pydubが無い場合は、Python3-pydubをインストールする必要が有ります。

 ちなみに、Python3-pydubをインストールすると、Python3-pydubが利用している、Ffmpegというアプリケーションもインストールされます。


 tkinterはPythonに標準で含まれているはずですが、Linux Mintに無い場合は、ソフトウェアマネージャでPython3-tkをインストールする必要が有ります。

import tkinter

from tkinter import filedialog

import re

from pydub import AudioSegment


root = tkinter.Tk()

root.geometry("700x300")

root.title("MP3音量アップ")


file_string_var = tkinter.StringVar()

file_string_var.set("")


file_label = tkinter.Label(root, textvariable=file_string_var)

file_label.place(x=10, y=40)


# MP3ファイル選択ボタンが押された時の処理

def select_file():

  file_path = filedialog.askopenfilename(title="MP3ファイル選択", multiple=False, filetypes=[("MP3", ".mp3")])

  file_string_var.set(file_path)


file_select_button = tkinter.Button(root, text="MP3ファイル選択", command=select_file)

file_select_button.place(x=10, y=10)


decibel_label = tkinter.Label(text="デシベル")

decibel_label.place(x=10, y=70)


decibel_textbox = tkinter.Entry(width=10)

decibel_textbox.insert(tkinter.END, "10")

decibel_textbox.place(x=90, y=70)


message_string_var = tkinter.StringVar()

message_string_var.set("")


message_label = tkinter.Label(root, textvariable=message_string_var)

message_label.place(x=10, y=150)


# 音量アップボタンが押された時の処理

def up_volume():


  message_string_var.set("")


  file_path = file_string_var.get()

  if file_path == "":

    message_string_var.set("MP3ファイルを選択してください")

    return


  decibel = decibel_textbox.get()

  if decibel == "":

    message_string_var.set("デシベルを入力してください")

    return


  if re.match("^[0-9]+$", decibel) == None:

    message_string_var.set("半角数字でデシベルを入力してください")

    return


  audioSegment = AudioSegment.from_file(file_path, format="mp3")

  audioSegment = audioSegment + int(decibel)

  audioSegment.export(re.sub("\\.[mM][pP]3$", "", file_path) + " VolumeUp.mp3", format="mp3")


  message_string_var.set("音量をアップしたMP3を保存しました。" + re.sub("\\.[mM][pP]3$", "", file_path) + " VolumeUp.mp3")


volume_up_button = tkinter.Button(root, text="音量アップ", command=up_volume)

volume_up_button.place(x=10, y=110)



root.mainloop()


評価をするにはログインしてください。
この作品をシェア
Twitter LINEで送る
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ