UTAUの周波数表ファイルをPythonで読む

UTAU音源にくっついてくる.frqファイルのデータをPythonで読むコードです。

.frqのフォーマットが書かれたツイートを見つけたので,それをそのまま実装しました。形式が解析済みって嬉しいですよね。これが無かったら労力が桁違い。

何となく分かるものについて各データの説明をすると,

  • key_frequency: 平均のピッチ的なもの(恐らく外れ値は除外されているだろう)175くらいだったらF3かなーとか分かる
  • datacount: frequencyおよびamplitudeの配列の長さ
  • frequency: 周波数

あとはよくわかりません。

structモジュールの仕様でchar[]は文字列ではなくバイト列として返ってくるので,必要に応じてdecodeしてください。