Я хотел бы временно синхронизировать два устройства iOS с использованием Multipeer Connectivity (так что это должно работать как для WIFI, так и для Bluetooth) в Swift.Временно синхронизировать два устройства iOS через соединение Multipeer в Swift
В идеале мне понадобится синхронизация в пределах 0,03 мс, но допустимо 0,3 мс.
До сих пор я воспроизвожу звук с устройства 1 и записываю его с устройством 2, измеряя время с момента подключения устройств друг к другу через Multipeer Connectivity.
К сожалению, это не обеспечивает точную временную синхронизацию, необходимую для моего приложения.
Благодарим за предложение. Но если я это хорошо понял, A отправляет его время в B, которое получает его после t. Но это не говорит мне, как синхронизировать A и B. Поэтому, если время A равно 100, а время B - 200, например, и t принимает 20 для передачи от A до B, B будет принимать 100 на 220, но это не предоставляет мне информацию о синхронизации обоих устройств, не так ли? –
Использовать 'playAtTime:', метод/функцию, принадлежащую AVAudioPlayer. Без информации о вашем воспроизведении звука, я предполагаю, что вы используете эту реализацию аудиоплеера по умолчанию. 'playAtTime:' принимает параметр NSTimeInterval как параметр, поэтому он идеально подходит для использования с созданной переменной интервала. –
Спасибо за подсказку. Итак, если я последую за вами, A отправляет свое время (100) в B (200), которое он получает, например, в 220, и может попросить сыграть что-то в момент времени 220 + delay. Но все же, как мы узнаем время между отправкой сообщения A и получением B? Так что 20 в нашем случае? –