私は VOIP Windows Phone プロジェクト (Windows Phone 用のソフトフォン アプリケーション) に取り組んでいます。現在、私 (Windows phone ソフトフォン) は、別のソフトフォンの音声を受信して聞くことができますが、片方向のみです。自分の声 (RTP パケット) を別のソフトフォンに送信できますが、完全なノイズが含まれています。このhttp://www.codeproject.com/Articles/14237/Using-the-G711-standard?msg=2573223#xx2573223xxに従って、U-law と PCM の間で RTP パケットをエンコードおよびデコードしました。デコード機能はうまく機能しましたが、エンコード機能はうまくいきませんでした。
RTPパケットをデコードし、サンプルレート8000Khz(U-law形式のサンプルレート)で再生しました。これを再生するコードは次のとおりです。
SoundEffect soundEffect = new SoundEffect(buffer, 8000, AudioChannels.Mono);
SoundEffectInstance soundInstance = soundEffect.CreateInstance();
soundInstance.Play();
そしてエンコードに関しては、Windows Phoneのマイクを使って音声を録音→U-Law形式にエンコード→RTPパケットに入れる→送信。しかし、これらのパケットには完全なノイズが含まれており、別のソフトフォン (宛先コール) はノイズとノイズしか受信しません。
マイクの録音データのフォーマットはPCM 16bit - 16KHzです。それを解決するのに役立つ解決策はありますか?
よろしくお願いします。