4

Android の音声チャネルにノイズが発生しているかどうかをコードで判断したいと考えています。

http://developer.android.com/reference/android/telephony/SignalStrength.htmlに関数のリストがあります。

関数 getGsmBitErrorRate() が表示されます。これは、GSM に切り替えるときに役立ちます。

関数 getEvdoSnr() が表示されますが、それは「データ チャネル」専用だと思います。

CDMA を使用するその他の関数は getCdmaEci0() だけです。Eci0() から SNR を導出するにはどうすればよいですか? この値を導出する他の方法はありますか?

レビュー: ビット エラー レートや信号対雑音比などを返す関数を探しています。ec/i0 がSNR とまったく同じであることを示唆する 1 つのリンクを見つけました。しかし、他のページでは、ec/i0 が利用可能な信号の量であることが示されています。

4

1 に答える 1

3

Ec はパイロット信号エネルギーを表します。Io はノイズ エネルギーを表します。したがって、Ec/Io は「信号対ノイズ比」(つまり SNR) ではなく、「パイロット対ノイズ比」です。厳密に言えば、PNR は SNR と同じではありませんが、実際問題として、PNR を SNR の代理として使用できるはずです。パイロットの要点は、受信機に信号に関する情報を提供し、チャネル効果を推定できるようにすることです。

この Web ページは役に立ちそうです - Ec/Io

編集:実際の信号と比較してパイロットの電力を指定するネットワークプロバイダーによって設定されたパラメーターがあることを忘れていました. たとえば、Ec/Io が SNR に等しい場合、それらは同じ電力である可能性があります。または、パイロットが信号の電力の半分である可能性があります。この場合、SNR は常に Ec/Io よりも 3 dB 高くなります。 . パイロット対信号比は、多数の異なる値のいずれかであり、前述のように、ネットワークによって設定されます。パラメータの名前を思い出せません。

于 2011-05-16T21:07:54.270 に答える