SONARオーディオエクスポート時のディザリング効果

SONARでオーディオエクスポート時のディザリングの効果を実験してみたので、公開しておく。

実験の方法は以下のとおり。

  1. Cakewalk TTS-1のSine WaveでA4 (440Hz) 単音のトラックを作成 (プロジェクトA)。
  2. プロジェクトAを16ビットディザリングなしでエクスポート (サンプル0)。
  3. サンプル0を新規プロジェクトにインポートして、レベルを-48dBに設定 (プロジェクトB)。
  4. プロジェクトBを以下の4つの方法でエクスポート。
    1. 24ビットディザリングなし (サンプル1)
    2. 16ビットディザリングなし (サンプル2)
    3. 16ビットディザリングあり: rectangular (サンプル3)
    4. 16ビットディザリングあり: triangular (サンプル4)
  5. この4つを新規プロジェクトに順にインポートして、聞きやすい音量にするため、すべて-10dBにノーマライズ (プロジェクトC)。

実験結果 (プロジェクトC)

  • サンプル1は24ビットエクスポートなので、特に異常はなし
  • サンプル2はビット数不足で異音が混じって聞こえる
  • サンプル3と4は、ノーマライズにより大きくなった高音のノイズが聞こえるが、Sine Waveとしては自然に聞こえる (これは個人差によるかも)

試聴ファイルをダウンロード (アップロードサイズ制限のため192kbps Mono MP3形式で掲載。オーディオエクスポートは16ビットディザリングなし)

JavaのSSL鍵ペアをOpenSSLで使う方法

Java用に生成したSSL鍵ペア (証明書を含む) をOpenSSLでも使う方法が判明したので、メモしておく。

  1. keytool-importkeystoreコマンドで、新しいPKCS12キーストアに単一エントリをコピーする。
    keytool -importkeystore -srckeystore keystore -destkeystore key.p12 -deststoretype pkcs12 -srcalias alias
  2. openssl pkcs12コマンドでPEM形式で出力する。
    openssl pkcs12 -in key.p12 -out key.pem

リンク: keytool – 鍵と証明書の管理ツール.

訛りのない Java 言語を話す

ここんとこ嘘だと思うんだけどなあ。釣り?

リンク: 訛りのない Java 言語を話す.

C++   では private のスコープをクラスではなくオブジェクトに設定しなければならないため、こうする必要があります。それはすなわち、C++   では、同じクラスのオブジェクトは互いの private メンバー変数を見られないということです。

続きを読む →

KORG nanoシリーズのMIDIインプリメンテーションチャート

どこかでダウンロードできないかと探してみたら、KORG UKからダウンロードできることがわかった。

下のリンク先を開いて、右側「nano Support」というところをクリックすると、Zipファイルが取れる。大したことができないのがわかっただけだけど。

リンク: KORG nano Controllers.

HTML5 videoタグとH.264コーデック

特許使用料がかかるから、YouTubeで使っているH.264ビデオコーデック (というかそのデコーダー) を、Mozilla Firefox組み込んでのリリースができないというのは別にそれでもいいんだけど、プラグインのようにユーザー側で組み込むことができるようにはならないもんだろうかねえ―という軽い愚痴をこぼしてみる。

それができるんなら、GoogleみたいにH.264でサービスを提供したい会社は、自社でコーデックを作って配布すればいいんだし。

純粋主義者には気に入らない方法だろうけど、他の選択肢を排除するのも大人気ない気がする。

リンク: shaver � HTML5 video and codecs.