タグ

ブックマーク / aike.hatenablog.com (10)

  • Webでポリシンセ作るときのテンプレ作った - aike’s blog

    もう半年以上前に作ったやつですけどせっかくなので解説。 JavaScriptでプログラミングをやっていると人は誰しもシンセを作りたくなるかと思います。僕も3年くらい前にWeb Audio Synthというのを作りました。 いまはウェブブラウザもオーディオやMIDIのAPIが充実してきてシンプルな単音のシンセを作るのは簡単になりました。でもちょっと和音を弾きたくなってポリシンセに拡張しようと思うとこれがけっこう大変だったりします。 同時発音数6ボイスのポリシンセを作るとなったら、ほんとうにモノシンセを6個分実装する必要があります。さらに、和音を弾いている最中に追加で音を重ねるときなど空いているボイスをさがして割り当てるといったオブジェクトプーリングの仕組みが必要になります。 また、いくつかシンセを作っていると、鍵盤のUIやMIDI入力の対応など定型的で毎回同じ作業があることに気づいてきます。

    Webでポリシンセ作るときのテンプレ作った - aike’s blog
  • Web Audio APIとWeb MIDI APIでパターンシーケンサー風楽器作った - aike’s blog

    Web Audio APIとWeb MIDI APIの応用例として楽器を作ってみました。 適当にボタンを押すだけでもそれっぽい曲になるので遊んでみてください。 http://aikelab.net/webrhy/ http://github.com/aike/webrhy 僕はYouTubeのDenkitribeさんやBakaOscillatorさんのパフォーマンスが大好きなんですが、あの域に達するにはそれなりの技術とアレンジ能力が必要でなかなか真似できるものではありません。 でも、このアプリをつかうと、わりとそれっぽい演奏が楽しめます。 それぞれのボタンにはパターンがわりあてられています。適当でかまわないのでリアルタイムにどんどん選んでいってください。なんとなく曲っぽくなるかと思います。慣れてきたら曲の展開や盛り上がりをつくったりもできます。ライブ演奏指向のアプリのため、パターンの並びを

    Web Audio APIとWeb MIDI APIでパターンシーケンサー風楽器作った - aike’s blog
    field_combat
    field_combat 2013/11/19
    この辺、水面下でスゴイ進化してる印象。
  • Web Audio APIでオシレーターの実装方式いろいろ試してみた - aike’s blog

    あなたの好きな波形は何ですか。人はだれしも思い入れのある波形があるかと思います。正弦波や矩形波が好きなかたもいるようですが僕はだんぜんノコギリ波派です。ノコギリ波の優しくて存在感のある音色につつまれているだけでしあわせな気持ちになります。 そんなわけでみなさんこれから多くのシンセをWeb Audio APIで作成するかと思いますが、いくつかあるノコギリ波のオシレーター実装方法について比較してみたいと思います。また、ソフトシンセを作るうえで避けて通れないエイリアスノイズについて方式ごとの差異を聴き比べてみます。 こちらのページで実際に聴きながら読んでください。(Chrome推奨) http://aikelab.net/sawwave/ ■ナイーブな実装 return 1.0 - (this.phase / Math.PI); こんな感じの処理を1サンプルごとに呼ぶとノコギリ波になります。高い

    Web Audio APIでオシレーターの実装方式いろいろ試してみた - aike’s blog
    field_combat
    field_combat 2013/05/24
    あとで読もう
  • Web Audio APIでファミコンノイズを鳴らしてみる - aike’s blog

    おっさんには懐かしいファミコンのノイズ音をWeb Audio APIを使ってウェブブラウザで再現してみます。今聴くとかなり表現力に乏しい感じのノイズですが、当時はこれで宇宙船の推進音や敵機の爆発音、レーザー光線やスネアドラムなど無限にイメージが膨らんだものです。 このファミコンの音源プロセッサRP2A03のノイズは、単純な乱数によるホワイトノイズなどでは再現できません。ノイズ生成のロジックをそのまま実装する必要があります。 RP2A03の詳細やノイズ生成ロジックはニコニコ大百科のFC音源の項に異常に詳しく書いてあります。内容も読み応えがありずっと読んでいられます。僕は何か嫌なことがあったりして気持ちを落ち着けたいときにはこのページをよく読むようにしています。嘘です。 これによるとノイズ生成は以下のC言語プログラムでできるとのこと。ノイズには音程感のほとんどない長周期ノイズと比較的音程感のあ

    Web Audio APIでファミコンノイズを鳴らしてみる - aike’s blog
  • JavaScriptで正規表現練習ゲーム作った - aike’s blog

    特に何か目的があるわけじゃないんですが、JavaScriptの練習のためにゲームを作ってみました。 Regex Of The Dead タイピングゲームのように正規表現を練習するためのシンプルなゲームです。ゾンビと一般人が迫ってくるのでゾンビの名前にだけマッチするように正規表現を入力して倒していきます。 HTML5の流れでオーディオ、グラフィック、フォントHTML/JavaScriptで簡単に扱えるようになり、さらにenchant.jsのようなゲームエンジンも充実してきて、ゲームJavaScriptだけで気軽に作れるようになってきたようです。 そんなわけで試しに書いてみたのがRegex Of The Deadです。プログラミングは長いことやっているもののゲームを作ったのは大学のとき以来かもしれません。 最初、何か良さそうなゲームエンジンがないものかいくつか調査しましたが、こういったタイ

    JavaScriptで正規表現練習ゲーム作った - aike’s blog
  • WebMidiLinkがわずか40行でなしとげたとてつもないブレイクスルー - aike’s blog

    3日前にg200kgさんが提案したWebMidiLinkという規格がすごすぎていまだに興奮がさめやらない感じ。DTMとWebの世界はいったいこれからどうなってしまうんだろうという気持ちです。 WebMidiLinkは、ひとことで言うと「MIDI over window.postMessage」というようなもので、とてもシンプルなアイデアながら、これまで多くの人が夢想してしかし誰もできなかったWeb楽器のアプリ間接続を実現してしまいました。 けっして複雑な手法ではなく、マスター側約20行、スレーブ側約20行の合計40行程度で誰でも実現できてしまいます。ブレイクスルーはすぐ目の前にあったのです。みんなが模索している中、とてもクレバーでクールな解決方法を提示しました。 Web楽器はまだ新しい技術です。これまでFlashベースやJava Appletベースの楽器アプリがそれなりの数ありましたが、去

    WebMidiLinkがわずか40行でなしとげたとてつもないブレイクスルー - aike’s blog
  • マルチトラックデータを公開してるアーティストまとめ - aike’s blog

    DTMのミックスは独学で技術を学ぼうとするとなかなかむずかしいです。プロが作った作品はやっぱりかっこよくて参考にしたいんだけど、そういうのはたいてい曲も良くて演奏も良くて録音も良くてミックスも良くてマスタリングも良いので参考にするにはいまいちとっかかりがみつからなかったりします。 そんなときにおすすめなのがクオリティの高いマルチトラックデータを入手すること。アーティストの中には、リミックスを推奨するなどの理由でマルチトラックを有償または無償で公開している人たちもいるので、そういった録音データを自分のDAWに読み込んでミックスしてみると技術的なことがわかりやすいです。なによりすごく楽しいし。 ■Space Oddity (40th Anniversary EP) [Remastered] / David Bowie http://itunes.apple.com/jp/album/space

    マルチトラックデータを公開してるアーティストまとめ - aike’s blog
  • 今、ギター音源が熱い! - aike’s blog

    えーと、すいません、半分宣伝です。 PG01というKONTAKTで動くギター音源を作ってまして昨日リリースしました。 それはともかく、ギターライブラリの打ち込みがこの1〜2週間で急に盛り上がったのでその流れをちょっと紹介します。もともとKONTAKT上のギターライブラリとしてはクロさんという方が作られたJunk Guitarというフリーライブラリがあり、けっこう前に公開されたもので一部の人には評価が高かったものの、これまで知る人ぞ知るという存在でした。 それが、先日ことりさんという方がJunk Guitarを使ってかなりリアルな打ち込みをした曲を公開してツイッターを中心に大きな話題になりました。 http://voon.jp/a/cast/?id=k1f957su9kx23o9v この曲をきっかけにJunk Guitarの評価が急上昇。誰でもダウンロードできるフリーライブラリ*1なのにこん

    今、ギター音源が熱い! - aike’s blog
    field_combat
    field_combat 2012/01/31
    KONTAKT用ギターライブラリJunk Guitarってのが流行ってるらしい。KONTAKT持ってない。EXS用に変換できないかな
  • ヤター!ウェブブラウザで動くシンセできたよー - aike’s blog

    最近のHTML5やWebブラウザのAPIの進化はけっこうすごくて、普通にサウンドプログラミングもできるようになってきました。そんなわけでシンセサイザーアプリを作ってみました。 サウンドを扱う方法はいくつかあるみたいですが、Google Chromeで使えるWeb Audio APIがEQやディレイなどあらかじめ用意されていて良さげなので使いました。 http://aikelab.net/websynth/ まだ、バグもけっこうあるのでじょじょにブラッシュアップしていきます。 Chrome以外では動かないと思うので試せない人はこちらの動画をどうぞ。 Google API Expertが解説するHTML5ガイドブック 作者: 羽田野太巳,白石俊平,古籏一浩,太田昌吾 出版社/メーカー: インプレスジャパン 発売日: 2010/09/16 メディア: 単行(ソフトカバー) この商品を含むブログ

    ヤター!ウェブブラウザで動くシンセできたよー - aike’s blog
    field_combat
    field_combat 2012/01/31
    ChromeのWeb AudioってEQとかディレイが付いてるらしい
  • JavaScriptでシンセとか作るとき用のGUIライブラリ作った - aike’s blog

    ブラウザ(JavaScript)で動くシンセ的なアプリを作ろうと思うとGUIコントロールの便利なライブラリがなくてけっこう困ります。jQuery UIはわりと良いんだけど肝心のノブとかスイッチとかがなかったりするし。そんなわけでウェブ楽器のGUI作成に便利なjQuery UIっぽいJavaScriptライブラリを作成しました。 こんな感じでGUIコントロールを生成できます。 // 背景パネルの表示 $('<img />').panel({ id: 'panel', image: 'images/panel.jpg', left: 20, top: 20 }).appendTo('#draw'); // ノブの表示 $('<img />').knob({ id: 'knob01', image: 'images/knob.png', left: 100, top: 80, width: 85

    JavaScriptでシンセとか作るとき用のGUIライブラリ作った - aike’s blog
  • 1