2019-01-01から1年間の記事一覧

2019年の仕事振り返り

仕事と言っても無職だけどな…! 2019年は、1年半前に始まった大無職時代をどのように生きるか、という問題に立ち向かった長い1年でした(こう書くと物は言いようっぽい)。音楽ソフトウェア開発者として、何もなかった頃の1年前と比べると、割といろいろ勉強…

libinstpatchとは

音楽技術etc. Advent Calendar 2019の…うーん…とりあえず21日目くらいにしようかな…のエントリーです。残りは上手く埋まったら埋めていきます。とりあえず今回はlibinstpatchについてです。短めに。 github.com libinstpatchはswami projectの一環として公開…

Xamarin/binding-tools-for-swiftについて

Xamarin Advent Calendar 2019 24日目のエントリーです。えっオマエ生きてたの?って感じですが、軽めのネタ・調べ物で参戦です。 目次 what is it? 今使えるの? どんなバインディングが出来るの? swiftライブラリのメタデータ構築 独自swiftc拡張 ラッパーsw…

LV2の概要

音楽技術Advent Calendar 2019の11日目のエントリーです。(まあだいぶ穴が開いているのですが、マイペースに埋めていきます。) What is LV2? LV2は主にLinux環境で利用できる、クロスプラットフォームのオーディオプラグインの仕様です。 オーディオプラグ…

JUCEにおけるz-orderの扱い

また音楽技術Advent Calendar 2019とJUCE Advent Calendar 2019のcross postingです。(現状どっちもとても埋まる気がしない) JUCE GUIのComponentには、その内容としてchild componentsをaddAndMakeVisible()関数を使って載せることができます。これはやや…

オーディオプラグインの理想的なGUIフレームワークを模索する

音楽ツール・ライブラリ・技術 Advent Calendar 20197日目のエントリーです。今日はポエムに近いです。 オーディオプラグインのGUIの要求事項 オーディオプラグインフレームワークというソフトウェアはやや特殊な世界で、歴史的な経緯を脇に置いて2019年現在…

MIDI 2.0の時代に備えて「FPGAとARMで作る自作 USBオーディオインターフェース」(同人誌)を読み解く

これは【推し祭り】技術書典で出会った良書 Advent Calendar 2019とhttps://adventar.org/calendars/3997のクロスポスティングです。 目次 音楽技術書をもっと増やしたい…! 本書の内容 MIDIの基礎知識 MIDI回路(FPGA) USB USB-MIDIの仕様 USB-MIDIの実装 MID…

JUCEモジュールを作って外部ライブラリを参照する

これは音楽技術Advent Calendar 2019の3日目(まあ2本目ですが…)とJUCE Advent Calendar 20193日目のクロスポストエントリーです。 長い前書き JUCEのビルドシステムは、アプリケーションやオーディオプラグインのビルドに必要なコードを原則として全てソー…

【音楽技術AC12/1】 ソフトウェアMIDI入力デバイスを作ろう

音楽技術Advent Calendar 2019の1日目エントリーです。今年はちょっと手が回らなそうなので「たまに書く」くらいのノリで進めていきたいと思います。かなり空き枠があるので、もし書けそうな話題がありましたらぜひご参加ください。2018年版を見るとわかりま…

DAW・シーケンサーエンジンを支える技術@M3 2019秋

前日の晩になって書いて公開するというのは何とも手遅れ感があるわけですが、明日10/27のM3 2019秋でおよそ1年半ぶりくらいに同人誌をまとめました。サークルはサ-22x (ginga)です。参加する予定のある人・音楽同人イベントに興味がある人は、ぜひ遊びに来て…

augene: MML compiler for sequencer engine

MMLコンパイラからオーディオプラグイン中心の楽曲を生成できるようなツールを作れないものか…と思っていたのですが、ある程度技術的に実現の目処が立ったので、とりあえず限りなく構想段階に近いですが出してみます。コードは現状ntractiveプロジェクトの下…

juicysfpluginをUbuntuデスクトップ環境で使うためのまとめ

小ネタ。 サウンドフォントにはなかなかいい音をもっているものが多く、また統合音源として各種サンプルをバンドルしているものはMIDI楽器として楽に使いやすいので、それなりに活用したい。 juicysfpluginはfluidsynthを利用してサウンドフォントをVSTiにし…

Xamarin.AndroidXMigrationについて

今回はコレに関連して少し詳しく書く。 devblogs.microsoft.com 目次 Xamarin.Androidは時代遅れ androidx (a.k.a Jetpack) androidxへの移行の課題 Jetifier Xamarin.AndroidのJetpack移行戦略 Xamarin.AndroidXMigrationの仕組み Xamarin.AndroidXMigratio…

JUCEでエラーを黙殺しないテストの構築

目次 Introduction JUCEのテストはどうやって書くのか 先例1: JUCE 先例2: tracktion_engine JUCEのテストコードをCIサーバー上で実行する jassertfalseを退治する (1) jassertfalseの出力するメッセージをLoggerで捕捉して、最後に発生していたjassertfalse…

安定的で合理的なデバッグ作業を実現するApply Changes @ C96

ひさしぶりに技術同人誌に寄稿しました。TechBoosterのC96(夏コミ)新刊です。4日目南ナ49abのようです。boothで予約も出来るようです。 techbooster.booth.pm 今回はAndroid Studio 3.5でInstant Runの代替機能のように紹介されて登場したApply Changesと呼…

CircleCI(など)でJUCEアプリケーションをビルドする

JUCE GUIアプリケーションをCircleCIでビルドしてテスト実行するにはいろいろ面倒事を解決しないといけないのでまとめておく。CircleCIでやっているのはたまたまなので、他にも任意のDocker Imageを使用してビルドできるCI環境があれば応用がきくはず。実行…

6月のmusic tools hacks, あるいはLV2 for Android

もっと早くに実現していたはずだったのですが、体調不良などに引きずられて今頃になって台湾に渡ってフラフラ過ごしています。人に会う用事が毎日のようにあって、日本の引きこもり生活とは雲泥の差が… 無駄話はさておき、5月にAndroid Native MIDI APIにつ…

オーディオプラグインとプロセス分離に関する覚書

ここ数日ばかり、DAWのオーディオエンジンがあまりプラグインをプロセス分離でロードしていないのは何でだろう?というのが気になっていて、いろいろ調べていたので、覚書としてまとめてみる。 目次 プロセス分離モデル リアルタイム制約 アプリケーションの…

5月のmusic tooling hacks

あたし5月って苦手なのよね…無駄に爽やかだから…あと天気が変わりすぎて肌荒れしちゃうし。 戯言はさておき、5月に読み書きしていたコードの話を雑に書きます。 JUCE/VST3 VST3まわりをいじって音が出せるようになっていたJUCEですが、とりあえず試しにtrack…

Android AMidi (Native MIDI) APIについて

概要 Android MIDI API (Java) のおさらい 機能 Javaコードとの棲み分け 実用未遂: fluidsynth mdriverのAMidiサポート 潜在的な需要: オーディオプラグイン機構のサポート 既存プラットフォームをサポートしつつamidiサポートを追加する 概要 Android Qで新…

4月のmusic tooling hacks

4月というか平成も終わろうとしている今日この頃ですが、相変わらず時代をまたぐ無職生活エンジョイ勢です。相変わらず謎の方向性でコードを書いています。そんなわけでこのひと月くらい?のコーディング活動を雑にまとめます。 JUCE/VST3/Linuxの高い壁 flui…

最近のOSS contribution活動

2月までずっと音楽制作…というしかないやつ…にかかりきりでだいぶフラストレーションがたまっていたのですが、それがひと区切りついたこともあって、3月は主にプログラムを書いて過ごしていました。長い間取り掛かっていたのが昨日終わったので、軽い気持ち…

幻想音楽祭サークル参加のKPT

幻想音楽祭の出展は無事終了しました。音楽サークルとして創作したのもイベント参加も初めて、他サークルの人々も一般参加者も知り合いがほぼ皆無、しかも単独サークルという99.9%アウェイな状況でしたが(!)、ブースでは多くの方に興味をもって音楽を聞いて…

"幻想音楽祭" 出展のお知らせ (+ MMLによる音楽制作の実践)

gensouongaku.info 3/2に川崎市産業振興会館で行われる同人音楽の即売会「幻想音楽祭」に個人サークルとして出展します。オリジナル楽曲のアルバムCD・音楽データDLカード等を販売する予定です*1。サークル配置番号はA-4 "ginga" です。*2 ここを見ている人…

Tracktion/Waveformに変拍子の含まれるMIDIファイルをインポートして加工する

わたしが最近ひいき目に(?)しているDAWとして、Tracktion社のWaveformを使っているのですが、今日はこのTracktionまわりのhackを紹介します。*1 他所で作ったMIDIファイルをTracktionに取り込む時*2、たまにTracktionの挙動が不審で、予期しない謎の音楽が生…

MIDIプレイヤーにおけるマーカージャンプの実装

これは個人的にまとめている開発メモから「公開したほうが役に立ちそうだな」という感じのエントリを取り出してきたものなので、書いた当時は微妙に現状とは違うのだけど、とりあえず補足は後で追加する。 DAWで便利な機能のひとつにマーカーがあるのだけど…

ここ2ヶ月ばかりのコーディング活動

近況報告ネタ(?) 毎日仕事もせずにのんべんだらりと暮らしています。ではなくて。前回の音楽技術アドベントカレンダーの後、特に表に出せるアウトプットがあったわけではないのですが、ここ1.5ヶ月くらいの間(履歴上は2ヶ月追ってるけど12月は旅行とACに吸…