« 落語はろー 祝!志ん生リスト | トップページ | 柳橋 (3) »

2012年6月 2日 (土)

Wサウンド再生ソフト 自動スピード調整

 DirectShowのルーチンを利用させてもらって、再生スピードを変えられるようになっていましたが、相変わらずmp3だけです。

 ところが、志ん生の未検査の音源の比較に手を染めると、ピッチの違いに悩まされ、まったく作業が進みません。スピードが同じならば、仕事をしながら流して聞いていても右と左の音が変わるのにすぐ気づきます。そこからちょっと戻してどこがどう変わっているか確かめられます。
 しかしピッチが違うと、音のずれが大きくなったとき、進んだほうを一時停止して追いつくのを待つのですが、ピッチ差が大きいとたびたびポーズすることになります。片手間の作業ではなくなります。

 そこで、とりあえずmp3だけでいいから、ピッチ差を吸収するのを優先することにしました。手動でちょうどいいスピードを探り出すのでなく、自動でやりたい。自動といっても音声を解析して…という芸当は無理です。二つの音源から2か所ずつ同じセリフのところにポイントを打って、その間の時間を単純に割り算してスピードを算出します。

Autospeed

 そのためにはクラス内の「ポイントを打ったイベント」を親フォーム渡してイベントプロシージャに制御を移す必要があります。初挑戦です。こうすると親フォームが両プレーヤークラスの時間を取得して計算できます。

 バグ出しをするのに、異なった出版社の同じ音源を比べてみます。計算は倍精度浮動小数でやっているのですが、ピタリとは合いません。中にはひどくずれてしまう音源があったりして、おかしいと思ってよくよく確認すると、2点の間にカットが何か所かあって、ずれるのが当たり前と判明することも。

 まあ、mp3だけではまともなソフトにならないので、DirechtShowも脱して、なんとかBass.dllを使えるようになりたいのです。ラッパーのBass.NETも落としたけれど、サンプルさえ動かすことができないでいます。

|

« 落語はろー 祝!志ん生リスト | トップページ | 柳橋 (3) »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: Wサウンド再生ソフト 自動スピード調整:

« 落語はろー 祝!志ん生リスト | トップページ | 柳橋 (3) »