shingoushori's dialy

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

IEEE Xploreの検索結果を一気に表示

IEEE Xplore http://ieeexplore.ieee.org/Xplore/home.jsp の検索結果は,
一見すると最大100件しか1ページに表示できない.
Per Pageのプルダウンメニューが, 10, 25, 50, 75, 100 だけだからだ.

ところが, URLを直接いじることで, 任意の件数を表示できる.

Per Pageのデフォルトは25である. これを100に変更すると,
URLに↓こんなのが増える↓
&rowsPerPage=100&searchField=Search_All
このrowsPerPageの数字が, 実は任意の件数を受け付けてくれそうなのだ.

pitch markの検索結果を例として示します.
pitch markは話速変換やピッチ変換の要素技術です.
シンプルに検索すると, ↓ 393のうち, 1-25が表示されます ↓
http://ieeexplore.ieee.org/search/searchresult.jsp?queryText=pitch%20mark&newsearch=true
上述の通り数字を書き換えると ↓ 393全て表示できます ↓
http://ieeexplore.ieee.org/search/searchresult.jsp?queryText=pitch%20mark&rowsPerPage=400&searchField=Search_All

これができて一番喜ばしく思ったのが, 一気にcitationsを作れること.

Web Audio API で、Sidechain Compressor を試作

Web Audio API で, Sidechain Compressor を試してみました.

作ってみたのが↓こちら. 
File1についてcompressorの係数を算出し, File2の音量を操作します.
playで同時再生です.

ポイントであろう事柄が↓こちら.
・DynamicsCompressorから, 抑制係数のdB表現を.reduction.valueで取得
・抑制係数を, Gainの.gain.valueに書き込み
・ScriptProcessorに, 毎フレームで実行してほしい処理を記述
・処理させたいNodeは,音を出力させたくなくとも出力まで繋ぐ

<参考>
SideChaining with AudioParams

Web Audio API で、左右チャネルを入れ替えて再生

Web Audio API で, チャネルの抜き挿しを試してみました.
抜き挿しそれぞれ, 
抜き : ChannelSplitter
挿し : ChannelMerger
を.createXXXXすると,
.connect時の引数で抜き差しするチャネルを選択できるようだ.

作ってみたのが↓こちら.
File1はそのまま, File2は左右入れ替え, playで同時再生です.

JavaScript および Web Audio API のはてなブログへの埋め込み

前回、コードを地の文に貼っていたわけでして、
埋め込む方法を探してきました。

埋め込んだのが、こちら。

ローカルで動かした時より、再生にもたつきを感じます。
いたしかたなし也。

 

<参考>
みかづきブログ その3 はじめてのWebAudioAPI

jsdo.itなる、コードコミュニティだそうで。
JSFiddleなるサイトもあるようで...

ローカルの音データをWebAudio APIで開く

ローカルの音データをWebAudio APIで開いてみました.
二つの音データを一つのplayボタンで, 同時に再生開始します.
ブラウザは, Google Chromeで製作しています.

<input id="audio_file1" accept="audio/*" type="file" /> <audio id="audio_player1"></audio>
<input id="audio_file2" accept="audio/*" type="file" /> <audio id="audio_player2"></audio>
<button id="play">play</button>

<script type="text/javascript">
var context1 = new AudioContext();

var mediaSourceNode1 = context1.createMediaElementSource(document.getElementById("audio_player1"));
mediaSourceNode1.connect(context1.destination);

var mediaSourceNode2 = context1.createMediaElementSource(document.getElementById("audio_player2"));
mediaSourceNode2.connect(context1.destination);

audio_file1.onchange = function(){
var files = this.files;
var file = URL.createObjectURL(files[0]);
audio_player1.src = file;
};
audio_file2.onchange = function(){
var files = this.files;
var file = URL.createObjectURL(files[0]);
audio_player2.src = file;
};

function play(){
var files1 = audio_file1.files;
var file1 = URL.createObjectURL(files1[0]);
audio_player1.src = file1;
audio_player1.play();
var files2 = audio_file2.files;
var file2 = URL.createObjectURL(files2[0]);
audio_player2.src = file2;
audio_player2.play();

}

 

<参考にした記事>
Using local file for Web Audio API in Javascript
WebAudio APIによるWebブラウザ上のDJ Mixer

 

ローカルのファイルを開く例が意外にも少なかったのです...
このページ自体にどう実装できるかは、今のところ謎です...
ボタンは出ましたが、再生には至らないようで...

Simutransで, 特定の車種を一括変換

<欲望>
筆者は, 鉄道経営シミュレーションが好きである.
Simutrans(http://japanese.simutrans.com)は, 素晴らしい.

Simutransの保存データへの編集を試みる.

今回は, 特定の車種を一括変換する.

 

 

 

<Simutransのバージョン>
pak64のpak.japanで実験
Version 112.3 May 20 2013 r6520
OSは, Mac OS X Yosemite

 

<設定いじり>

セーブデータをxmlで書き出す設定にしておく.
simutrans/config/simuconf.tab の,
saveformat = bzip2

saveformat = xml
に書き換え

 

<例>

変換前の車種 : JNR_Class_DC_04(Diesel_Regular)
変換後の車種 : JNR_Class_DC_04(Original)

 

変換前のファイル名 : hoge.svg
変換後のファイル名 : fuga.svg
上書きしないよう, 変更前後のファイル名は異とするべき.

1. コンソールでセーブデータがあるディレクトリに移動

2. 以下のコマンドを実行

less hoge.sve | sed -e 's/<![CDATA[JNR\_Class\_DC\_04(Diesel\_Regular)]]>/<![CDATA[JNR\_Class\_DC\_04(Original)]]>/g' > fuga.sve

 コマンドであるから, 
・改行を入れず, 一続きで打ち込む
・エスケープ・シーケンスに気をつける

 

<問題点>

車種と連動して, 編成名も一括変換になる

 

ギターのエフェクタの自作に向けての、その参考Webページのメモ

ギターのエフェクタなりを自作しようとしている。

買い物の参考にした、Webページをメモ。

 

【武蔵野電波のプロトタイパーズ】mbedでデジタル・エフェクタを作ろう

 

ギター・エフェクターの自作改造【松美庵】
http://www.matsumin.net/cgi-bin/mtm_bbs/img/11992.gif

 

http://blog-imgs-21.fc2.com/l/u/c/lucythesoloist/sd1.jpg