s98player (CUI版)アップデート

前回の投稿でymfmを使ったs98playerを作りましたが、以下の部分が上手くいっていなかったので修正しました。

  • ADPCM音源が上手く再生できていなかった
  • S98V3の複数音源に対応していなかった

例によってフォークしたymfmリポジトリのサンプル部分を更新しています。

以下は、今回の修正で得た学びなど。今後実際にymfmを使ったプログラムを作るときに役に立つはず。

Continue reading “s98player (CUI版)アップデート”

ymfmを使ったs98player (CUI版)を作る

前回の投稿ではS98ファイルを一回VGMファイルに変換してymfmの再現度を確認しましたが、せっかくなので直接S98ファイルを読み込んでWAVファイルに変換するものを作りました。

実装する上で、fmgenとの違いも少しずつ分かってきました。

Continue reading “ymfmを使ったs98player (CUI版)を作る”

ymfmでのYM2608の再現性を確認する

S98Player for iPhoneではYM2608音源のエミュレーションにはfmgenを利用させていただいているのですが、それとは異なるMAMEベースのymfmというソフトウェアがgithubに登録されたということを知りました。

そこで、とりあえず簡易的にS98を再生させてその再現性を確認してみることにしました。結論としてはなかなかいいかも!です。

Continue reading “ymfmでのYM2608の再現性を確認する”

Faustで作成したFM音源を4オペ化&アルゴリズムの切替を可能にする

前回の記事でJUCEでFM音源をAudioUnit化してGarageBandで音が出ることを確認しましたが、やっぱり2オペレータじゃそれっぽい音が出ないよなー、ということで、今回は4オペレータにしてアルゴリズムも切り替えられるようにしていきます。

Continue reading “Faustで作成したFM音源を4オペ化&アルゴリズムの切替を可能にする”

Faustで作成したFM音源をJUCE経由でソフトシンセにする

以前の記事でFaustを使って2opのFM音源を作りましたが、周波数をスライダーを手でいじって音程が変わるというのはやっぱりちょっと寂しい…ということで、Audio Unitによるソフトウェア音源として利用できるようにします。MacであればGarageBandとかのDAWで読み込ませれば、鍵盤叩いて音を鳴らせるはず…。

Continue reading “Faustで作成したFM音源をJUCE経由でソフトシンセにする”

KORG opsixというFMシンセが発売されてた

Faustで音色をいじっていると、流石にMIDIキーボードが欲しくなってきたのでネットで調べていたのですが、KORGからopsixという名前のFMシンセが昨年発売されているのを知りました。DTMから遠ざかっているので全く気づかず。これ、調べてみたら面白そうなんです。

Continue reading “KORG opsixというFMシンセが発売されてた”

FaustでFM音源の実装を試す

Faustとは

Faust (Functional Audio Stream)は、サウンド合成とオーディオ処理のための関数型プログラミング言語です(サイトトップページの直訳)。ウェブ上のIDEで気楽に試せるほか、そのコードをC言語などに出力できるようです。

Qiitaのオーディオプログラミング言語Advent Calendar 2020という素晴らしい記事群を拝見し、何かいじってみたいなと思っていたのですが、ビジュアルプログラミング系のものよりはこういった言語の方が性に合ってそうなのと、環境構築せずにすぐにいじれそうなので、試してみることにしました。関数型言語はほとんど触ったことがないのですが。

Continue reading “FaustでFM音源の実装を試す”

S98Player for iPhone 1.2.2で追加された機能について

このブログへの投稿もかなり久しぶりですが、S98Player for iPhone 1.2.2の機能の一つがきちんとした説明が必要のため新記事を起こしました。

S98Player for iPhone 1.2.2含むバージョン1.2の主な新機能は以下のとおりです。

  • PMDファイルの再生に対応 (1.2)
  • iOS 7以降のUIに対応 (1.2)
  • フォルダごとの音量バランスと曲名の設定 (1.2.2)

最下段のフォルダごとの設定に関して、以下で説明します。

Continue reading “S98Player for iPhone 1.2.2で追加された機能について”

S98Player for iPhone 1.0.1 リリースされました

表題の通り、S98Player for iPhone 1.0.1のリリースです。今回は審査にちょっと時間がかかった感じです。

内容は主にバグフィックスです。

  • フェードアウト中に再生を止めて再び再生を開始すると一曲スキップされてしまう問題
  • 一部の曲が再生されずに再生画面のまま固まってしまう問題
  • 一部の曲が曲リストに出てきた瞬間にクラッシュしてしまう問題
  • 再生時間の計算がまれに誤る問題
  • イヤホンが再生中に抜けて自動停止する際に再生ヘッドだけカウントアップし続ける問題

などが修正されています。また、起動直後のスクロールが微妙に早くなっていたりしますが、気づく人はほとんどいないでしょう^^;

上記三番目のバグについては、S98ファイルの途中から再生開始されるように設定しているファイルなどが該当しますので、結構あるかもしれません。

どうぞよろしくお願いします。