Время от выхода звука до момента его выхода из динамиков, когда звук бесконечно мал, так что не имеет значения. Но системе может потребоваться время для создания звука, особенно если он занят. Это может быть в диапазоне, который был бы значительным относительно времени реакции человека. Еще большая проблема заключается в том, что время может быть очень переменным, в зависимости от того, что система делает в то время.
Я не достаточно здравого смысла, чтобы знать, можно ли захватить наличие звукового сигнала выхода как loggable события системы. Если вам нужно приложение для этого, вы ничего не сделали, потому что это приложение будет представлять ту же проблему, которую вы пытаетесь решить. Поэтому мои предложения включают использование микрофона для определения выходного звука.
Минимальное решение: измерьте задержку, как указано в вопросе. Используйте специальную систему, которая ничего не делает, кроме как производит звук по требованию. Протестируйте его несколько раз, чтобы измерить время задержки между запуском программы и измерением звука на динамиках с помощью микрофона на передней панели динамика. Это должно быть сделано в электронном виде, а не с процессом, который включает в себя время реакции человека.
Если время очень точное, решите, достаточно ли оно для доверия, и скорректируйте свои результаты для этого «стандартного времени задержки». Если задержка составляет менее нескольких десятков миллисекунд, она, вероятно, достаточно коротка, чтобы ее игнорировать.
Если вам просто нужно что-то грубое, приведенное выше минимальное решение может быть «достаточно хорошим». Но есть еще переменные. Например, если человек наклоняется вперед и назад, такой разницы в расстоянии может быть достаточно для добавления временного шума (только миллисекунда или две, но каждый источник шума добавляет неточности). Также нет гарантии, что система будет иметь точно такую же задержку в использовании.
Очень точным методом было бы обойти необходимость измерения системной задержки и вместо этого начать со времени, когда звук достигает головы человека. Попросите человека надеть головной или микрофон с отворотом. Измерьте время с момента, когда микрофон обнаруживает звук, а не с момента запуска программы. Обратите внимание, что вы не хотите делать это с микрофоном с шумоподавлением, или с микрофоном, который включает какие-либо схемы, которые ждут звука, чтобы включить вещи.