Ответ 1
Недавно я сделал что-то, что синхронизирует графику со временем в звуковой дорожке. То, как я это делал, это использовать свойство currentPlaybackTime интерфейса MPMediaPlayback (которым также должен соответствовать контроллер MoviePlayer). Это возвращает секунды, прошедшие на носителе, в double
(typedef'ed as NSTimeInterval
). Фактическая синхронизация в моем приложении не была сделана в уведомлениях, так как я не мог найти никакого напоминания о "тике", но вместо этого я создал таймер, вызвав функцию, запрошенную currentPlaybackTime, и обновил графику на основе этого.
Что касается вашей реализации, я бы предположил, что у вас есть какая-то система для связывания текста меток (субтитров) с определенным временем. Затем вы можете сравнить временной диапазон текста с временем, возвращаемым currentPlaybackTime, чтобы найти правильный текст для отображения.