2016-06-16 13 views
2

私はPJSIPアプリでスピーカーを使用しようとしていますので、私はsetOutputRoute使用しています:pjsip android appでスピーカーを有効にするには?

pjmedia_aud_dev_routeルート= pjmedia_aud_dev_route.PJMEDIA_AUD_DEV_ROUTE_LOUDSPEAKERを。 MyApp.ep.audDevManager()。setOutputRoute(ルート、true);

エラー:無効またはサポートされていないオーディオ機能(PJMEDIA_EAUD_INVCAP)が表示されます。

pjsuaでは、このメソッドはAudioDevInfo.capsフラグにPJMEDIA_AUD_DEV_CAP_OUTPUT_ROUTE機能がある場合にのみ有効です。そうでない場合はエラーがスローされます。

私は多分私はこのフラグを設定する必要が考えています...しかし、私はいくつかの日前に同じ問題に遭遇したか

+0

また、私はこの問題をiOSで持っています。 pjsipを使ってラウドスピーカーとスピーカーをオフにする方法は?私はPJMEDIA_AUD_DEV_ROUTE_LOUDSPEAKERこれを試しました。しかし、オーディオでは何もしません。前もって感謝します! :) – NandhaKumar

答えて

4

知りません。私はその答えを知っている、ただ代替ですが、私はこれを使用して終了し、それは良い作品です。

AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE); 
audioManager.setSpeakerphoneOn(true); 

私は setSpeakerOn()を呼び出すことにより、イヤホンとスピーカーを切り替えるには、AndroidのAudioMangerを使用。あなたがそれを使用する場合は、出力を切り替えると永続的にコンテキストに対応するセットになることに注意してください。現在の状態を取得するには、 audioManager.isSpeakerphoneOn()を呼び出します。

+0

jniを使ってPJSIPコードとは別にこのコードを呼び出しますか? –

+1

こんにちは@IgorGanapolsky、私は知らないが、私はこの[OpenSL ESの質問](https://qnalist.com/questions/5897167/help-needed-cannot-set-stream-type-audio-player-already-実現しました)はあなたに関連しています。あなたが開発したいものに応じて、これはオプションになる可能性があります。 – oga

関連する問題