2021-09

Python

Pythonで再生速度変更(今度は音の高さを変えずに)

さて今回は、動画サイトやDVDデッキの機能としてよく見かける『音の高さを変えずに再生速度を変える』ことに挑戦してみましょう。再生速度を変える(音の高さは変えない)再生速度を変えると、波形はどうなるか前回のような『テープやアナログレコードの回...
Python

Pythonで倍速再生・スロー再生(波形補間をしてみる)

せっかくwavファイルの読み書きができるようになったので、Pythonで音声処理のマネゴトをいろいろやってみようと思います。まずは再生速度の変更です。ただし、最近の動画サイトやDVDデッキでやるような『音の高さを変えずに早くしたり遅くしたり...
Python

WAVファイルの読み書き

次のネタのため、ここらでwavファイルの読み書きについてまとめておきます。WAVファイルの構造全体の構造WAVファイルは、RIFFとよばれる型式のファイルの一種です。RIFFとはResourceInterchangeFileFormatの略...
Python

Python でモジュールを作る(CUIでもリバーシ…)

PythonモジュールPythonのプログラムは、特別なことを何もしなくてもモジュールとして使用することができます。モジュールを使用する場合は、モジュールを使用したいプログラム側で、importモジュール名(ファイル名から拡張子.pyは省い...
Python

pygameでリバーシを作ってみた

GUIリバーシ今回はPython+pygameでリバーシを作ってみました。実は『リバーシの盤って8×8だっけ?』というレベルでルールうろ覚えなんですが(そして確認もしてないw)、まぁそれっぽいものが数時間でも作れました。いきなり全ソースコー...
Python

pygameでマウス・キーボードを使う

今回は、pygameでマウスやキーボードを使う『イベント処理』をいろいろ試してみます。イベント処理おさらいpygameでイベントを処理する基本パターンは、以下の通りでした。whileTrue:#メッセージループforeventinpygam...
Python

pygameことはじめ

PythonでGUIゲームを作るためのモジュール、pygameを使ってみました。インストールpygameは標準ではインストールされないので、例によってまずはモジュールのインストールです。Windows環境では、例によってpy-mpipins...
Python

PythonでFFT その2

前回で一段落ついたことにして、タイトルから『短期集中』を取りました。今後は何か思いついたときに不定期に書いていきます。前回の補足(位相の取得)フーリエ変換によって求める式を、少し修正します。\\(+\phi_k\)という項を増やしました。実...
Python

短期集中:PythonでFFT

FFTフーリエ変換フーリエ変換について数学的にちゃんと説明するのは難しいのですが(というかブログ主が判ってません)、思いっきり大雑把にいえば、周期関数(一定のパターンの繰り返し)を、いくつかのsin関数やcos関数をつかって表すというもので...
Python

短期集中:Pythonの配列でいろいろ遊ぶ(numpy続き)

numpyには便利な関数があります。配列対応の数学関数numpyでは、\(\sinx\)、\(\cosx\)などの三角関数や、\(\logx\)、\(e^x\)などの指数・対数関数など、便利な数学関数がいろいろあります。いやそんなものmat...