Название: Синхронизация проигрывания звука между компом и устройсвом Отправлено: Kurles от Январь 26, 2016, 10:20 Доброго времени суток.
Есть устройство со своей внутренней звуковой шиной на 24000Гц, которое, ко всему прочему, эту шину по UDP транслирует наружу. Задача проиграть звук с этой шины на компе. На первый взгляд всё просто, настраиваем какую-либо библиотеку, которая умеет играть звук, на 24кГц (в моём случае это portaudio), принимаем пакеты, кешируем и играем их. Изи. Но проблема в том, что устройство тактируется от внутреннего кварца на микроконтроллере, соответственно 24кГц очень не точные,и за 5-10 секунд звук убегает или отстаёт на 2-3 мс. Интересует есть ли какое более менее стандартное решение, что бы это дело всё синхронизировать? Пока сделан костыль - добавлены команды, которые уменьшают / увеличивают скорость шины, и этими командами приложение на компе подстраивает скорость шины под себя. Работает, но как по мне не очень красивое решение. Название: Re: Синхронизация проигрывания звука между компом и устройсвом Отправлено: Bepec от Январь 26, 2016, 11:59 На мой неискушенный контроллерами взгляд - только увеличить точность. Компьютер в этом деле может лишь только подстраиваться постфактум, у программ на нём тоже не особо точное время.
PS а можно привести пример такой системы, задача интересная, но практического применения не вижу :) Название: Re: Синхронизация проигрывания звука между компом и устройсвом Отправлено: Kurles от Январь 26, 2016, 15:34 На мой неискушенный контроллерами взгляд - только увеличить точность. Компьютер в этом деле может лишь только подстраиваться постфактум, у программ на нём тоже не особо точное время. Оно понятно, что подстраиваться постфактум, вопрос как это правильно делать, и, желательно, без дополнительного управления устройством, как это сделано сейчас. PS а можно привести пример такой системы, задача интересная, но практического применения не вижу :) Есть "мастер" плата, в которую подключаются через общую шину произвольные устройства, которые могут работать в том числе и со звуком. Устройства в том числе и управляющие, через декодирование звукового сигнала могут делать разные вещи, включать оповещение, вызывать милицию, транслировать тот звук, что в шине на громкоговорители и т.п. А вот эта задача просто для удобной отладки, что же в данный момент в шине твориться ).Название: Re: Синхронизация проигрывания звука между компом и устройсвом Отправлено: Bepec от Январь 26, 2016, 15:46 Моё мнение - не париться, пусть отставание и есть, но пара мс это фигня. Тем более что только для тестовых целей, тогда тем более париться не стоит.
Точнее просто не вижу вариантов улучшить ваш результат без смены аппаратной части, да и даже сменив, не факт что результат не будет тем же. |