pythonを使って音声「MP3」形式ファイルを流してみよう

今回はpythonを使ってmp3を再生しようと思います。プログラムを作っていく中で「音ってどうやって出すんだっけ?」と思うこともあるはずなので是非参考にしていただければと思います。


目次

  1. 準備するもの
  2. 音を流してみる
  3. さらに流してみる
  4. まとめ

1. 準備するもの

まず音を鳴らすうえで、以下ライブラリのインストールと音ファイルを用意します。

  ・ライブラリ:playsound , pygame
  ・音ファイル:ここから好きなものをダウンロード(音声のフリー素材サイト)

最初にライブラリをインストールするので、Windowsのコマンドプロンプトを起動し、以下コマンドでplaysound、pygameをインストールします。

pip install playsound
pip install pygame

音ファイルのダウンロードは好きなセリフの右にある「DL」を選択して保存しておきます。

音ファイルのダウンロードは好きなセリフの右にある「DL」を選択するだけでダウンロードが始まります。

ここまでで準備は完了です。次は実際に音を出すための設定を実行していきましょう。


2. 音を流してみる

では早速音を再生しましょう。以下コードを実行します。実行方法はWindowsのコマンドプロンプト上でpythonを実行するか、.pyファイルとして以下を保存するか、jupyter notebookで実行するかいずれでも結果は同じとなるので、自身の環境に合わせて実施をお願いします。

from playsound import playsound

playsound("音声ファイルをフルパスで指定")

単純な再生であればこれで十分です。ですが、再生回数や再生する長さなど調整する必要がある場合にはちょっとやりかたを変える必要がありそうです。


3. さらに流してみる

では少し調整をしながら関数として音声を再生してみます。以下コードを実行しましょう。

#coding:utf-8
import pygame.mixer
import time

def sound(f,i,n):
    pygame.mixer.init() #初期化します
    pygame.mixer.music.load(f) #音声ファイルを読み込みます
    pygame.mixer.music.play(i) #再生します
    time.sleep(n) #再生時間を指定します
    pygame.mixer.music.stop() #終了します

sound("音声ファイルをフルパスで指定",2,3)

作成した「sound」関数の第一引数に再生したいファイルをフルパスで指定します。第二引数に再生したい回数を指定、第三引数に再生したい時間の長さ(秒)を指定します。ここで再生する長さを極端に短くすると音声がほぼ再生されず終わってしまうので気を付けてください。また再生する回数分、長さの調整が必要なのでこちらも注意が必要です。(このへんは実際に再生してみるとわかると思います)

上記の場合、指定した音声ファイルを3秒の長さで2回再生します。値を変更してどのような動きになるのか試してみると感覚をつかみやすいと思います。


4. まとめ

いかがだったでしょうか。pythonを使って音声を再生させることはそんなに難しいものではないと思います。

また、フリー素材を駆使していたずらにも最適かと思います。(なかなかいたずらしにくいかな。。。)

最後まで読んでいただき、ありがとうございました。


返信を残す

メールアドレスが公開されることはありません。

CAPTCHA