Я использую libavformat / libavcodec / libswscale / libavutil / libavfilter (библиотеки, связанные с ffmpeg) для создания видеоплеера.
У меня возникли проблемы с чересстрочным видео, оно просто неправильно связывает их ... Он всегда рисует предыдущий нижний кадр с текущим верхним. Что приводит к тому, что я не хочу. И я пытался возиться с переменными вокруг этого, это просто не будет работать. (Я не нашел плеер, который бы воспроизводил видео, которые у меня есть правильно, нет, вы не можете их получить, извините)
Мне удалось найти способ обойти это, перекодировав видео с помощью следующей команды:
ffmpeg -i video.mp4 -фильтр: v yadif -vcodec mpeg4 out.avi
Теперь мне нужны инструкции о том, как сделать это с кодом C ++ внутри моего видеоплеера.
Я не нашел никаких учебников по этому вопросу, и исходный код ffmpeg.c слишком чужд для меня.
Ссылка на учебник была бы в порядке, я просто не нашел ее ..
Edit:
Также этот пример стоило проверить:
https://github.com/krieger-od/imgs2video/blob/master/imgs2video.c
Джентльмен по имени Андрей Уткин