フォト
サイト内検索
ココログ最強検索 by 暴想
2025年10月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
無料ブログはココログ

最近のトラックバック

にほんブログ村

  • にほんブログ村

« 2021年3月 | トップページ | 2021年5月 »

2021年4月

2021年4月17日 (土)

Pythonのpydubライブラリでmp3ファイルの低音強化(shelving filter)

 なんとか、Pythonでmp3ファイルの低音強化(低域増幅)ができないものかと思いWebで探していると、PydubライブラリやPysndfxライブラリを見つけることが出来ました。Pysndfxライブラリではmp3ファイルを扱っていないことやファイルから直接再生するコマンドが無いようでしたのでPydubライブラリでshelving filterを作ってみましたので備忘録です。
 まず、Pydubライブラリの導入です。RaspbianのPython3.7には上手く導入できなかったので以下の通り3.6に導入しました。

$ pip3.6 install pydub

 次に、ダウンロード - shelving_filter01.pyの説明ですが、まずmp3ファイルを変数sound1に代入し、Pydubでカットオフ周波数(だと思う)100Hzのローパスフィルター(LPF)に通し低音抽出音声変数sound2を作成します。次に通常音声(sound1)と低音抽出音声(sound2)を重ね合わせsound3を作成するとshelving filter(棚型フィルター)を通った音声となります。最後にsound3を再生をします。各処理はファイル単位の処理となります。特にsound2の作成に時間がかかります。本当は連続処理をしたかったのですが今回はここまでです。
 以下にtest01.mp3の再生例を示します。shelving_filter01.pyとtest01.mp3は同じディレクトリにあるものとします。

$ python3.6 shelving_filter01.py test01.mp3
--- 準備中(mp3ファイルの変数化) ---
--- 準備中(LPFによる低音抽出) ---
--- 準備中(通常音声と低音抽出音声の統合) ---
--- 再生開始 ---
Input #0, wav, from '/tmp/tmptprl2bx2.wav': 0KB sq= 0B f=0/0
Duration: 00:05:14.73, bitrate: 1411 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s
314.66 M-A: -0.000 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0
--- 終了 ---

参考Webページ
音声分析ド素人が逆位相ミュージックを聞いたら、そこに訪れたのは混乱とそして静寂だった
PythonのPydubを利用して音声ファイルを処理する方法を現役エンジニアが解説【初心者向け】
Python: pydub の使い方 (再生)
pythonとpydubでハイパスフィルター・ローパスフィルターを使用する

2021年4月 6日 (火)

RaspbianへのPythonライブラリの導入(上手く行っていません)

 当ブログ「RaspberryPi 4にUbuntu 20.04 LTS Serverをインストール後GUI化してみた」や「Raspberry Pi 4でpython3へpipによるライブラリの導入」でも書きましたが、雑誌「Interface3月号」の「Pythonで信号処理 時系列データ解析編」に掲載されているソースコードが動かせないものかと思いUbuntuには導入出来たところです。しかしながら、RaspberryPi 4にUbuntu 20.04 LTSでVLCメディアプレイヤーやMOC(CUIベースの音楽プレイヤー)を視聴したところ映像や音飛びが激しくチョット利用するには気がなえてしまうところです。やはり、RaspbianのカスタマイズのほうがUbuntuよりも上手く行っているようです。
 そこで、Raspbianでも雑誌「Interface3月号」のソースコードが動かせるようになればと思い色々試行錯誤したところです。結果、どれも上手くゆきませんでしたが備忘録として掲載しておきます。
 まず、Berry Condaの導入を図りまた。最新版をWebページからダウンロードし

$ wget https://github.com/jjhelmus/berryconda/releases/download/v2.0.0/Berryconda3-2.0.0-Linux-armv7l.sh
$ chmod +x Berryconda3-2.0.0-Linux-armv7l.sh
$ ./Berryconda3-2.0.0-Linux-armv7l.sh

とBerry Condaを導入して、

$ conda list

でライブラリを確認したところ
Python 3.6.1でNumpy 1.19.5、Pandas 1.1.5は確認できたもののSciPy、Matplotlibが導入されていませんのでソースコードは動作しません。
そこで次に、Pythonのライブラリをそれぞれ、pipで導入を試みましたが上手くゆかず。

$ sudo apt install python3-pip
$ python3 -m pip install numpy
$ python3 -m pip install scipy
$ python3 -m pip install pandas
$ python3 -m pip install matplotlib

以下のコマンドでライブラリを確認しましたが、

$ python3.6 -m pip list

SciPy、Matplotlibが導入されませんでした。
そこで、Python3.9.2を導入し

$ wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz(ダウンロード)
$ sudo apt install libffi-dev libssl-dev openssl(なんで必要なのかチョットわかりません)
$ tar zxvf Python-3.9.2.tgz(解凍)
$ cd Python-3.9.2/(ディレクトリの移動)
$ sudo ./configure(インストールの実行)
$ sudo make(インストールの実行)
$ sudo make install(インストールの実行)
$ python3.9 -V(インストール出来ているかの確認)

その後pipでライブラリの導入をしました。
一見成功したように見えたのですが、

$ python3.9 -m pip list

では、SciPy、Matplotlibが導入されていませんでした。
 最後に、仕方がないのでPython3.7.2にバージョンを下げて3.9.2同様にインストールとライブラリの導入をしたところ、今度はNumpy 1.20.2、Scipy 1.6.2、Pandas 1.2.3、Matplotlib 3.4.0が導入されているのが確認できました。しかし、ソースコードを動作させても動きません。

$ python3.7

として、Pythonのコンソールから各ライブラリのimportを行ったところ上手くゆかないようです。
と、言うわけでRaspbianから最新のライブラリを用いて雑誌「Interface3月号」のソースコードを動かすことを試みましたが現在のところ上手くゆきませんでした。


当ブログ参考
Raspbianでアップグレード等の後HDMIの音が出なくなった(一応の解決)
Raspberry Pi 4のUbuntu 20.04 LTS Server で解像度の変更
Raspberry Pi 4でpython3へpipによるライブラリの導入
Raspberry Pi 4に導入したUbuntu 20.04 LTS Server を日本語化
RaspberryPi 4にUbuntu 20.04 LTS Serverをインストール後GUI化してみた

2021年4月 2日 (金)

Raspbianでアップグレード等の後HDMIの音が出なくなった(一応の解決)

 Berry Condaを試してみようと3月24日にRaspbianをアップデート、アップグレードしたところテレビにつないでいたHDMIから音声が出なくなりました。「HDMIの音が出なくなった(Raspberry Pi OS システムアップデート後。2021-01-13)」にある「PluseAudioを削除して復活?」を試してみたところ一応テレビから音が出るようになったので報告します。端末で以下の通りPluseAudioを削除し再起動しました。

$ sudo apt-get remove pulseaudio
$ sudo apt-get autoremove
$ sudo shutdown -r

 チョット原理はよくわかりませんがPluseAudioが不完全であったのではと推察。
 Raspbery Pi 4のヘッドホン(イヤホン)ジャックからは音が出ていたのですが、マウスを動かしたりするとノイズが発生していたので助かりました。他のWebページもいろいろ試してみたのですがかんばしくありませんでしたが、これで解決しました。
 
当ブログ参考
RaspbianへのPythonライブラリの導入(上手く行っていません)
Raspberry Pi 4のUbuntu 20.04 LTS Server で解像度の変更
Raspberry Pi 4でpython3へpipによるライブラリの導入
Raspberry Pi 4に導入したUbuntu 20.04 LTS Server を日本語化
RaspberryPi 4にUbuntu 20.04 LTS Serverをインストール後GUI化してみた

« 2021年3月 | トップページ | 2021年5月 »