shingoushori's dialy

音信号処理を専ら研究していた元博士後期課程の学生によるメモ

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

Simutrans 2019年の取り組み

本記事は、Simutrans Advent Calendar 2019 〜 12/23 本家フォーラムに投げてみて です Simutrans っていう、最高なフリーでオープンソースな交通シミュレーションそれについての、2019年の私のたぶん独自な取り組みについて書きます今年は1イシュー、本家フ…

2本の直線セグメントを2次Bezierで繋いでみる ~ ただしJSON手書き

2本の直線セグメントを2次Bezierで繋いでみます。制御点は2つの直線セグメントがそれぞれのる2つの直線の交点としています。2本の直線セグメントを1セット(セグメント対)として、任意個数のセグメント対を配列として、JSONで手書きできます。とりあえず J…

真ん中に文字入れただけの画像を作ってみた

音をアップロードしようとすると、画像ファイルが必要になることがあります。とりあえず作品名の文字が入っただけのものだけでも、手軽に欲しいものです。地味に面倒です。ということで、作りました。 text font // psd で使っていた Century っていうフォン…

画像ファイルをありがちなサイズで表示させるのを作ってみた

音をアップロードしようとすると、画像ファイルが必要になることがあります。しかもサイズ規定があったりします。複数のサイトにアップロードしようとすると、サイト間の仕様差があったりします。地味に面倒です。↓ ドロップ ↓ したら、ありがちなサイズで表…

ギターで押さえているフレットのMIDIファイルを出力

MIDIファイルをいじるWebコンテンツ on はてなブログ 〜 の検討今回は、ギターで押さえているフレットのMIDIファイルを出力します。MIDIファイル生成は、 jazz-softさん作の JZZ.js を使っています。 左側の音名がそのチューニング。右側の数字がフレット番…

VRM を読み込んで ~ zangyouをチョップさせてみた

VRM - VR向け3Dアバターフォーマット - を読み込んでみます。VRMのページ : https://vrm.dev/今回は zangyou をチョップです。フォントは helvetiker 。Helvetica じゃないの?と思いつつ、threejs搭載のTextGeometryを使ってみました。 音量部分はいつぞや…

pixiv three-vrm のサンプルをコピペしてみた

VRM - VR向け3Dアバターフォーマット - を読み込みます。VRMのページ : https://vrm.dev/今回は『pixiv three-vrm』です。blendshapesのサンプルをコピペしてみました。 Webアプリケーションで3Dアバターモデルを簡単に扱える『pixiv three-vrm』をOSSとして…

VRM を読み込んで ~ 音量に合わせてチョップさせてみた

VRM - VR向け3Dアバターフォーマット - を読み込んでみます。VRMのページ : https://vrm.dev/今回は 音量に合わせてチョップです。 音量部分はいつぞやのWebAudioAPIのサンプルからコピペ、無駄にミキシング & 1 kHz に反応です。もっとミニマムなサンプルも…

VRM を読み込んでみた ~ Three.js で表示

VRM - VR向け3Dアバターフォーマット - を読み込んでみます。VRMのページ : https://vrm.dev/今回は Three.js で表示するところまで。 Drop files here // ' + strVRMmeta + ''; var strConfirm = 'モデルの利用規約をご確認の上でのご活用をお願いいたしま…

VRM を読み込んでみた ~ meta 情報の取得

VRM - VR向け3Dアバターフォーマット - を読み込んでみます。VRMのページ : https://vrm.dev/ざっくり、glTF2.0ベースで人体モデル + ライセンスデータ (meta情報?) らしい。とりあえず。今回は meta 情報が取得できました。Three.js で表示するところまでい…

"簡単なThree.jsのサンプルを試そう" してみた

"簡単なThree.jsのサンプルを試そう" してみました。 そのままなのもなんなので、回転をちょっとランダムにしてみました。楽しい。 // はてなブログだと意味がなさそうなので、コメントアウト //window.addEventListener('resize', onResize); function onRe…

Simutransのセーブデータ (非圧縮xml のみ) を読み込み->書き出し ~ 線路 ⇄ 道路

[趣旨]Simutransのセーブデータ弄り 〜 をします。Simutransのセーブデータ (非圧縮xml のみ) をパースしてエディットして、また書き出しです。 今回は、線路と道路を置き換えてみます。頑張って作った高架の線路網が、細かすぎてバスにしたくなってしまった…

Simutransのセーブデータ (非圧縮xml のみ) を読み込み->書き出し ~ 特定領域のレベル下げ

[趣旨]Simutransのセーブデータ弄り 〜 をします。Simutransのセーブデータ (非圧縮xml のみ) をパースしてエディットして、また書き出しです。 今回は、特定領域のレベルを特定レベルまで下げます。ついでに、平坦化しちゃいます。シンプルに地平だけを下げ…

A-Frame + Web Audio API で ランダムに箱がでるプレイヤー/ミキサーのテスト

xRしたい! VTuberしたい! ということで、A-Frame。 VTuberするのにアバターの必要性を感じなくなってきたので、A-Frame であれこれやってみています。今回はとりあえず Web_Audio_API と繋いでみました。File0とFile1に音楽データがセットできて、両方にセ…

JZZ.js で 特定 ch を削除

MIDIファイルをいじるWebコンテンツ on はてなブログ 〜 の検討今回は、jazz-softさん作の、 JZZ.jsで特定チャンネルの情報を削除してみました. チェックボックスを off にした ch の情報を削除して出力します。 // // = 0; n--) { var check = smf[ch][n][0…

A-Frame でランダムに箱を配置してみるテスト

xRしたい! VTuberしたい! ということで、A-Frame。 VTuberするのにアバターの必要性を感じなくなってきたので、A-Frame での基本形状の追加/削除をやってみました。 div a-frame // に追加する box0.appendChild(box); scene.appendChild(box0); } // func…

Simutrans の Pakset づくりへの準備

Simutrans(http://japanese.simutrans.com)は, 素晴らしい.Pakset というので景観や機能、シナリオ?まで置き換えられます. Pakセット - Simutrans日本語化・解説 Simutrans - Paksetsそんな Pakset を自作すべく、準備。 <makeobj の仕様確認> Simutrans Tikiwiki | en_doPak Siz</makeobj>…

Simutrans の Pakset の最小構成

Simutrans(http://japanese.simutrans.com)は, 素晴らしい.Pakset というので景観や機能、シナリオ?まで置き換えられます. Pakセット - Simutrans日本語化・解説 Simutrans - Paksets 有志がアドオンを乱開発なされているので、新作の告知だけ眺めていても楽…

A-Frame を埋め込んでみるテスト

xRしたい! VTuberしたい! ということで、A-Frame 。 まず、A-Frame を埋め込んでみるテスト。A-Frame も今 (2019/05) や0.9.0。ほう? div a-frame A-Frameのページにあるイントロダクションのサンプルを埋め込んでみた。簡単。 いいえ、A-Frameのサンプル…

Web Audio API を使用した音声を埋もれさせない音信号混合法の簡易実装

Web Audio API をはてなブログに埋め込むテスト Web Audio API を使用した 音声を埋もれさせない音信号混合法の簡易実装 です。 WAV+WAV or WAV+マイク を、WAVに書き出します。マイクはFirefoxのみ。 前回からの進展として、"音声を埋もれさせない音信号混…

Web Audio API で内蔵マイクで録音+ミキシングに、大事そうな周波数帯域推定を追加

Web Audio API をはてなブログに埋め込むテスト WAV+WAV or WAV+マイク を、WAVに書き出します。マイクはFirefoxのみ。 前回からの進展として、スペクトログラムを加工しました。 スペクトルは ↓こちら↓ を元に作理ました。 Web Audio API 解説 - 12.アナラ…

Web Audio API で内蔵マイクで録音+ミキシングに、スペクトログラムを追加

Web Audio API をはてなブログに埋め込むテスト WAV+WAV or WAV+マイク を、WAVに書き出します。マイクはFirefoxのみ。 前回からの進展として、スペクトログラムを追加しました。 ↓こちら↓ を元に、1 kHz と 4 kHz ? あたりに線を入れてみたりしました。 Web…

Web Audio API で、内蔵マイクで録音+ミキシングを、はてなブログ埋め込み

Web Audio API をはてなブログに埋め込むテスト WAV+WAV or WAV+マイク を、WAVに書き出します。マイクはFirefoxのみ。 前回からの進展として、stopするまでの入力信号もそれぞれDLできるようにしました。検討用にはミキシング前の入力信号も、出力信号と同…

Web Audio API で、内蔵マイクで録音を、はてなブログ埋め込み

Web Audio API をはてなブログに埋め込むテスト WAV+WAV or WAV+マイク を、WAVに書き出します。マイクはFirefoxのみ。 File1 File2 mixing result : // その実、↓の記事のはてなブログ埋め込みバージョン になります。 これらの記事ではjsdo.itさんでした。…

Simutransで, 信号場アドオン作成 / 駅アドオンの信号場アドオン化

Simutrans(http://japanese.simutrans.com)は, 素晴らしい. 駅は3タイプの積荷の取扱可否があります。・旅客・郵便・貨物で、何も取扱できなければ信号場になるはずです。 pak64では Signal Stop / 信号所セット アドオン/railtool - Simutrans日本語化・解…

Simutrans本体改造で学ぶC/C++ 〜 全駅強制旅客郵便貨物駅化

以下のような簡単な改造で、全駅強制旅客郵便貨物駅化できます! Visual Studio Code での改造例 このように、enum は同じ数字に複数の愛称を持たせることができます。 同じセーブデータを改造前後のビルドで読み込ませると、こんな感じになります。 改造前…

ピカブイ/ポケモンGO、xR

バーチャルであっても、いやバーチャル故に、肉体感覚どうしようもなく、生身の身体的にもキャラクターにもバイタリティ的にも肉体的なそれらでコントロール、それらがコンテンツかされている感じがヒシヒシとする ポケモンレッツゴー ピカブイ で辛いのが、…

Simutransのセーブデータ (非圧縮xml のみ) を読み込み->書き出し ~ 「passenger_factor」を設定

[趣旨]Simutransのセーブデータ弄りであるとか、もちろん信号処理のなにやらづくりに向けて、デスクトップからファイルをドラッグする処理 〜 を準備します。 今回は、Simutransのセーブデータ (非圧縮xml のみ) をパースしてエディットして、また書き出しで…

JZZ.js

MIDIファイルをいじるWebコンテンツ on はてなブログ 〜 の検討今回は、jazz-softさん作の、 JZZ.jsでやってみました // Drop files here // いろいろと多機能そう。とりあえず、MIDIファイルのblobでの読み込み/書き出しはそれなりに簡単にできた。ノートの…

MidiPlayerJS + MidiWriterJS

MIDIファイルをいじるWebコンテンツ on はてなブログ 〜 の検討今回は、grimmdude (Garrett Grimm) さん作の、 MidiPlayerJS MidiWriterJSでやってみました // Drop files here // MidiWriterJSの機能が最小限しかできていなさそう同じ方が作ったものながら…