やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

PythonでWAVをMP3に変換する方法を調べてみた

音声を扱うための環境構築が面倒すぎる。

音階(スケール)を算出し、wavファイルに出力する

メジャー、マイナーの各スケールにおける全キーのパターンを網羅した。

ブログで音声ファイルを再生する(github,HTML5)

ブラウザがHTML5に対応し、wavかoggファイルが再生できる環境なら可。

SoundConverterをインストールする

wavファイルを軽量形式に変換したいから。

音階(スケール)を算出する

任意のキーとメジャーorマイナーを指定して。

全音と半音について

音楽理論の基礎。絶望的にイミフ。

音階について

音楽理論の基礎。

音の読み方

音楽理論の基礎。

音楽理論について

音楽の構造や手法を理論立てて説明するもの。十二平均律もそのひとつ。

音名から周波数を算出する

C,D,E,F,G,A,B。♭,♯は-,+で代用。

サイン波、三角波、矩形波、ノコギリ波を実装した

別クラスとして。

サイン波をリアルタイム再生(十二平均律)4

Playerが無限ループになっていたのを修正。2回目のPlay()が実行され、プログラムが正常終了するようになった。

サイン波をリアルタイム再生(十二平均律)3

Player,Samplerを別クラス化。

サイン波をリアルタイム再生(十二平均律)2

全12音鳴らせた。全データを結合し、1回再生にした。

サイン波をリアルタイム再生(十二平均律)

ドレミファソラシドを鳴らそうとするも、最初の音しか鳴らない。

音階を算出する(平均律、純正律)

十二平均律が一般的かつ簡単そう。

matplotlibでのグラフ表示を諦めた

GUIライブラリの環境構築ができなかった……。

pycairoをインストールできなかった

全滅。

ImportError: Gtk3 backend requires pygobject to be installed.

matplotlibのグラフ描画のためにlibgtk-3-devをインストールするもエラー。

GTK3をインストールした(libgtk-3-dev)

あっさり成功。

wxpythonをインストールできなかった

方法が分からず。

TkをインストールするもPython3.6.1にインストールできず

Python3.4.3にインストールされてしまう。

matplotlibでグラフが表示されない

GUIバックエンドのインストールが必要らしい。

ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave

pyaudioを使ってサイン波をリアルタイム再生するもエラー。

サイン波をリアルタイム再生した

pyaudioを使って。

pyaudioをインストールする

リアルタイムに音を鳴らすライブラリ。

音の量子化について調べた

離散化のうち振幅方向で区切る部分。16bit。

音の標本化について調べた

離散化のうち時間方向で区切る部分。サンプリング周波数。

音の離散化について調べた

離散化とはアナログ→デジタル変換のことだと思う。離散化することでコンピュータで扱えるようになる。

音について調べた

コードを丸パクリしてサイン波のファイルを生成できた。しかし基礎を知らないため応用できないため調べた。