Я использую Ffmpeg для декодирования и воспроизведения видеофайлов. В настоящее время у меня воспроизводится видео и звук воспроизводится с такой скоростью, с какой процессор может их декодировать и отображать. Проблема в том, что я хочу воспроизводить видео и аудио синхронно, используя системные часы.
Я искал какую-то помощь, но не могу найти ничего существенного, кроме учебника Дрангера 05 , но я не совсем понимаю, что он делает, потому что моя программа не написана в том же духе. кстати как его.
Я использую файлы mjpeg и, таким образом, очки, кажется, извлекаются каждый раз, когда кадр декодируется, я умножил очки на time_base, как дранджер делает, чтобы получить значение в секундах, но разрешение, кажется, составляет только секунды и поэтому я получаю значение «6» 25 раз, а затем «7» 25 раз, так как видео работает с частотой 25 кадров в секунду.
Разве нет более точного значения? Или способ получить более точное значение, и если да, то как мне выполнить синхронизацию с этим значением? Я использую SDL для отображения значения, поэтому я могу просто использовать SDL_Delay () полученного значения?
Спасибо за ваше время,
Infinitifizz