1 / 19

History of Xylph

History of Xylph. dendai sie ; Talk Live! 七瀬 2013/12/14. 自己紹介. 七瀬 朋奈 ( Tomona Nanase ) @ nanasetomona @ nanase_coder 長野県北部 に生息 信州大学工学部情報工学科 B4 ( 信大 JK) 来年度から同大大学院. 自己紹介. 使用言語 は 主に C# たまに PHP, JavaScript Minecraft の Bukkit プラグイン 制作で Java nanase_t http://nanase.cc /

alain
Download Presentation

History of Xylph

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. History of Xylph dendaisie; Talk Live! 七瀬 2013/12/14

  2. 自己紹介 • 七瀬朋奈(TomonaNanase) • @nanasetomona@nanase_coder • 長野県北部に生息 • 信州大学工学部情報工学科B4(信大JK) • 来年度から同大大学院

  3. 自己紹介 • 使用言語は主に C# • たまに PHP, JavaScript • MinecraftのBukkitプラグイン制作で Java • nanase_t • http://nanase.cc/ • https://github.com/nanase

  4. 自己紹介 自宅から18kmほど。火山と硫黄で不毛地帯が続く

  5. 自己紹介 グンマー国境から車で約1時間、これが長野県の一般的な風景である

  6. きっかけ • 音楽には興味があった • YMOからの強い影響 • B1の夏頃から C# で音が鳴らせないか格闘 • 2010年年末、C# から OpenAL を使って音を鳴らした • それよりも前からシンセサイザを作りたいと思っていた

  7. Pyxy (ピクシー) • 2011年6月ごろ完成 • 完全プロトタイプ、超スパゲッティコード • 独自のバイナリフォーマット • シンセサイザ (波形合成) 部分とシーケンサ (自動演奏) 部分が同一機構 • モノフォニック (1パート1音) • ADSR, LFO • 現在に通じる基礎概念が完成していた • Xylphにソースは後継

  8. Xylph (シルフ) • 2011年8月完成 • バイナリフォーマットを廃止 • テキストファイルで音色と楽曲を記述 • 一種の言語処理系を持っていた。闇の始まり • U-20プロコンに出品「直ちに影響はない」大臣より賞をもらう

  9. Xylphv2.0 • 2011年11月完成 • 言語文法をさらに強化。闇++ • 初めてポリフォニックに対応 • C# の性能の限界が露見 • Xylphからソースを引き継いだため超スパゲッティ化

  10. Xylphv3.0 • 2013年2月ごろ • 概念としての構想が中心 • 言語文法をさらにさらに強化。闇# • コード内に初めて「Compiler」、リファレンスに「MIDI」の単語が出現 • 実際のコードは制作されず

  11. Xylphv3.0

  12. 初代 ux (マイクロシルフ) • 2012年9月ごろ • Xylphの内部構成を再構成 • 言語文法の見直し、中間表現の導入。闇+++ • FM音源の実装によりそれまでの波形生成を劇的に変化 • シンセサイザ部とシーケンサ部の一部分離 • MIDI規格への合致 • 動作性能重視のためモノフォニック

  13. そして ux • 2013年5月 • 言語処理系を廃止。闇からの解放 • シンセサイザ部とシーケンサ部の完全分離 • MIDIやSMFの読み込みは外部ライブラリが担当本体はシーケンサ部のみ実装 • 比較的軽い動作 • シーケンサによってポリフォニック対応済 • 最初からMIDI指向MIDIデータがあれば演奏可能

  14. ux • あえて C# で制作する • 非常に整頓されている言語 • 使う側にとっては他に何も必要としない→ すぐに使い始められる • パフォーマンスを出すために少なからず滅茶苦茶なことをしている • 特に FM 音源部分 • まだまだ更新中 (現在 v0.2-dev 開発中)https://github.com/nanase/ux

  15. ux ux.Utils ux 入力 送出 テキスト(ハンドル列の羅列) コンバータ エンベロープ FM音源 送出 SMF(MIDI ファイル) シーケンサ step音源 予約 送出 コンプレッサ MIDI-IN セレクタ 入力

  16. 注: これはラズウサギーパイです

  17. ux++ • Raspberry Pi で動作する uxを作ろう • C++で移植実装 (闇の再来) • 言語習得のため • 動作速度を最優先 • 安定化した uxをベースに制作 • RasPi持ってる奴ならコンパイルの仕方くらいわかるだろう (利用者は上級者) • まだまだ制作途中https://github.com/nanase/uxpp

  18. Xylphの未来 • 未定 • 音源定義XMLファイルが手書きだからエディタがほしい • Web上でMIDIを送ったらMP3で返してくれるようなサービス(それを共有できたら楽しそう) • もっと簡単に「軽い音楽」を楽しみたい • RubyとかPythonとかRubyとかやりたい • 速度を優先しない移植なら面白そう

  19. OSS • このプレゼン資料と紹介したプログラムのソースコードhttp://nanase.cc/bin/hox • 最新の uxと uxppはGitHubを見てねhttps://github.com/nanase

More Related