Можно ли одновременно воспроизводить записывающее устройство с помощью API FMOD? Эта функциональность аналогична той, что Windows предлагает в свойствах записывающего устройства, где вы можете включить «прослушивание этого устройства» для определенных записывающих устройств. Если это невозможно через FMOD, есть ли другой API, более подходящий для этой функциональности?
Воспроизведение и прослушивание записывающего устройства в FMOD
Ответы (1)
Вы можете добиться этого с помощью FMOD, просто записывая с зацикливанием, установленным на true, а затем воспроизводить записанный звук также как зацикливание. При условии, что вы разделите вызов RecordStart и вызов playSound на некоторое время (скажем, 10 мс), курсор воспроизведения и курсор записи будут следовать друг за другом, и вы получите воспроизведение в реальном времени.
Примером этого является пример «записи», который поставляется в FMOD API для большинства платформ, и есть более продвинутый пример на платформе Windows, который показывает добавление эффектов в реальном времени к живому записанному звуку.
person
Mathew Block
schedule
17.05.2011
Спасибо! Это определенно то, что я хотел сделать. К сожалению, либо качество записи, либо качество воспроизведения очень плохое. Он идет через динамики с более низким качеством, чем я хотел бы использовать. Я пытался изменить некоторые конфигурации в примере, но ничего не изменилось. Ну что ж, поиграюсь еще!
- person user8709; 17.05.2011
Две основные вещи, влияющие на качество записи, — это частота дискретизации и формат (например, PCM16, PCM8 и т. д.). Вы можете управлять ими обоими через структуру FMOD_CREATESOUNDEXINFO, которую вы передаете в System::createSound. Установив их на 44100 и PCM16, вы получите результаты достойного качества. Кроме того, если вы используете Windows Vista или Windows 7, проверьте свойства вашего микрофона, убедитесь, что частота дискретизации и формат совпадают.
- person Mathew Block; 20.05.2011