3

通話を発信および受信するための SIP ベースのアプリケーションを開発しています。最近、さまざまなデバイスでアプリケーションをテストしました。最初に、Samsung Galaxy five(2.2) と Samsung Galaxy y(2.3.6) でテストしましたが、両側のオーディオを呼び出すと問題ありませんでした。

しかし、Galaxy y(2.3.6) と Sony XPERIA (4.0.3) で試したところ、一方的な音声がありました。アプリケーションは 2.2 と 2.3.6 で正常に動作しましたが、2.3.6 と 4.0.3 でテスト中にICS のオーディオの問題でした。

誰でもこの問題について考えているか、この種の問題があった場合は、これについていくつかの考えを教えてください.

ありがとう

編集:

アプリケーションでコーデックを使用しており、そのコーデック用の .so ファイルを作成しました。ただし、 armeabiプロセッサ用の .so ファイルのみを作成しました。そして、Android 4.0.3にはarmeabi-v7aがあると思います。では、armeabi-v7a CPU 用の .so ファイルを作成する必要がありますか?

4

2 に答える 2

0

sebweisgerber が述べているように、いくつかの失敗ポイントが考えられます。通話が適切に確立されているのに音声が聞こえない場合は、音声のキャプチャ/再生、音声の復号化/コード化、または音声の送信にあるはずです。これが 2.3.6 では機能するが 4.0.3 では機能しないことを考慮すると、オーディオのキャプチャ/再生または成文化に賭けることになります。

コード化のためにサードパーティのライブラリを使用していますか? このライブラリがcsipsimpleプロジェクトのようなシステムのコード化ライブラリにアクセスしようとしている場合、デコード用のライブラリ名のほとんどが Gingerbread から ICS に変更されているため、これは「一方的な」動作を説明します。

お役に立てれば。

于 2012-08-14T09:22:20.200 に答える
0

armeabiはarmeabi-v7aでも動作します。とにかく、プロセッサの種類はデバイスに依存し、OS に依存しません。Gingerbread でも armeabi-v7 を使用できます...

パッケージ/音声損失の正確な位置を見つける必要があります。SIP アプリケーションでは、エラー チェーンが非常に長くなります。音声が聞こえなくても両方のデバイスで RTP パケットが受信されているかどうかをサメで確認できますか (デバイスでサメ/tcpdump を実行するにはルートが必要です)。それ以外の場合は、RTp プロキシを強制して、プロキシで wireshark を実行してみてください。

パケットが両方向に送信される場合は、パケットがどこで失われ、エンコーダに到達するかを確認します。ログとチェックを音声伝送パイプラインのどこにでも置いて、それらがどこにあるのかを把握し、より多くの情報を提供してください。

于 2012-08-08T07:06:11.413 に答える