問題タブ [decibel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
462 参照

android - デシベル メーターの作成 (最初の Android アプリ)、振幅をデシベルに変換する際の問題

より大きなアプリケーションの一部として、私は現在、10 秒のタイムスパンの平均サウンド レベルを取るデシベル メーターに取り組んでいます。

これを実現するために、100 ミリ秒ごとに刻む 10,000 ミリ秒の CountDownTimer を作成しました。

各 onTick イベントで、残り時間を表示するテキスト フィールドを更新し、リアルタイムのデシベル値も更新します。

ただし、私の問題は最大振幅をデシベルに変換することです。「power_db = 20 * log10(amp / amp_ref);」を見つけました。ここで StackOverflow の式を調べて、それがどのように機能するかを理解していますが、常に負のデシベル値になってしまうようです。

これは間違った amp_ref 値が原因であることは理解していますが、どちらを使用すればよいか完全に困惑しています。私はウェブ上でさまざまな値をたくさん見つけましたが、どれもうまくいかないようです。

メーターで正しいデシベルの読み取り値を取得するためにどの基準振幅を使用すればよいか、誰にもわかりませんか? これをテストしている電話は Google Nexus 5 です。今のところ、この電話で本当に正確な値が得られれば十分です。

私の onTick イベントにあるコードは次のとおりです (とにかく間違っているように見えたので、今のところ式を削除しました):

ヒントや詳細情報が必要な場合は、お知らせください。

前もって感謝します!:)

0 投票する
1 に答える
3033 参照

android - Androidデシベルを見つける方法

私はマイクからデシベルを取得しようとしていますが、どこでも正しく行う方法を見てきましたが、うまくいかないようです。

私はこのような振幅を取得します

}

次に、他のアクティビティで getAmplitude メソッドを呼び出し、振幅を返します。これをデシベルに変換するには、次を使用します。

32767 のさまざまな値を試してみましたが、どれも現実的なデシベルの答えを与えてくれないようです。通常は負で、無限大の場合もあります。デシベルを正しい方法で見つける方法を知っている場合は、助けてください。

0 投票する
3 に答える
3284 参照

android - getMaxAmplitude() は常に 0 を返します

私はSound Level Pressure表現されdecibelたを取得しようとしていますが、常に取得し0ます。(の出力TextView-Infinityですが、log(0) = -infinityであるためです。

の許可Manifest.xml:

私を手伝ってくれますか?

アップデート

私もこれで試しました:

しかし何もない、まだ-Infiniteを取得している

            

0 投票する
1 に答える
2995 参照

ios - デシベル値を正規化して 0 から 1 の間にするにはどうすればよいですか

オーディオ サンプルをループし、チャネルごとの平均パワーを取得することで、オーディオのパワーを取得しようとしています。

再生中のオーディオの強度を反映する 0 から 1 の間の値を取得したいと考えています。現在、-160 (無音に近い) から 0 (非常にうるさい) までの float 値である dB (デシベル値) を取得しています。

これがSwiftで書かれた私のコードです:

取得しているdB値が正確かどうかわかりませんか、それとも何か間違っていますか?

現在、見つけたコードを使用して0〜190の値を取得していますが、あまり意味がありません。

私が必要としているのは、取得している dB 値を 0 ~ 1 の間に正規化することです。

編集 - Obective-C で自由にコードを記述してください

0 投票する
1 に答える
268 参照

android - AndroidRecoreder.MaxAmplitude() からデシベル値の範囲をさらに取得

AndroidRecorder を使用して maxAmplitude() を取得し、デシベルに変換しようとしていました。

これが私が使用している式です - Double powerDb = 20 * log10((mRecorder.getMaxAmplitude()/2700.0));

しかし、powerDB のログを見ると、負の 15 から 21.8 (正) の範囲の値が表示されます。

マイクの前でどれだけ叫ぶかは 21.8 を超えず、通常は 21.8 に達することもあります。

低音と高音を実際に区別できるように、値の幅を広げるにはどうすればよいですか。大きな音に基づいてアプリをトリガーすることを計画しています。

0 投票する
1 に答える
805 参照

audio - gstreamer はバッファーからデシベルを読み取ります

入力オーディオ サンプルの dB レベルを取得しようとしています。すべてのビデオ フレームで、dB レベルを更新し、0 ~ 100% の値を表すバーを描画します (0% は -20.0dB などの任意の値で、100% は 0dB です)。

これは、ここからの回答としてマークされたコードサンプルからCに適応されました。この非常に単純な方程式に何が欠けているのか疑問に思っています。

回答済み: コードが符号を失っていることについてジャケットは正しかったので、すべてが肯定的になりました。また、コード10 * log(rms)が間違っています。振幅をデシベルに変換しているのと同じはず20 * log(rms)です(出力電力の尺度として)。

0 投票する
2 に答える
1614 参照

slider - html5 ボリューム スライダーが 200% になる

音量を 100% 以上に上げる方法を探しています。100% に最大化された html5 のボリュームがちょっと低いビデオがいくつかあります。最大音量を 200% にしたり、100% のデシベル レベルを定義したりするものはありますか?

0 投票する
0 に答える
69 参照

java - Javaを使用して携帯電話またはPCからデータベースをサンプリングする

コンピューターまたは携帯電話のマイクからデシベルをサンプリングするのが難しいのですが、数学的にも物理的にもこれを正しく行っていることを確認したいだけです。

これはコードです:

私の問題は、サンプルを取得しているように見えますが、このサンプルを計算するための正しい式を使用しているかどうかわからないことです.

物理学、数学、Javaの両方を知っている人が答えてくれることを願っています。

ご協力いただきありがとうございます :)