Я разрабатываю приложение VoIP для Wp8, основанное на примере приложения Chatterbox Sample. Все шло гладко, пока я не начал работать с изменяющимися конечными точками аудио. Я опубликовал это (http://social.msdn.microsoft.com/Forums/wpapps/en-US/30b14ab2-1985-4ab0-858b-459757d8b220/setaudioendpoint-to-speakerphone-causes-timing-problem-with-microphone-capture?forum=wpdcapp) некоторое время назад, когда я впервые столкнулся с проблемой синхронизации, возникшей после переключения конечных точек. Я видел таймер захвата в нечетные моменты времени, в результате чего на дальнем конце появился какой-то щелчок. Я решил сбросить и сбросить устройства (Stop(), Reset(), Start()) после переключения конечной точки - это, казалось, избавилось от проблемы с нажатием.Звонки в SetAudioEndpoint(), вызывающие нечетное поведение микрофона на WP8
Теперь, однако, возникает новая проблема. Иногда (т.е. каждые 20-30 переключателей) при переключении устройства конечной точки звук на дальнем конце становится «нечетким» или искаженным. Переключение конечной точки снова (и перезапуск устройств), похоже, избавляет от проблемы, но я все еще не знаю причину проблемы здесь. Я также заметил, что когда звук дальнего конца искажен, воспроизведение в ближнем конце прекрасное, что заставляет меня думать, что время не является проблемой.
Неужели люди сталкиваются с подобными проблемами при переключении конечных точек аудиосигнала или что-то еще происходит?
Я теперь видел эту проблему на примере приложения Chatterbox, немодифицированного, скомпилированного в VS2012 Phone с последним SDK и работающего на обновленном HTC PM23300, а также Nokia Lumia 920. Что может быть причиной этого проблема? – HarryHippo