Как VLC и ffmpeg работают вместе?
Я скомпилировал VLC из исходного кода, и он работает хорошо. Когда я делаю "./VLC" VLC запускается. Я также скомпилировал ffmpeg из исходного кода, и он тоже работает хорошо. Когда я делаю "ffmpeg-if toto.flv mp3-vn-acodec copy new_toto.mp3", создается файл с именем "new_toto.mp3". Что я не могу понять, так это то, как VLC и ffmpeg работают вместе? Какая часть кода VLC использует код ffmpeg?
Есть ли команда ffmpeg для воспроизведения (чтения) видео?
Ответы
Ответ 1
VLC не вставляет FFmpeg в качестве своего рода подчиненного двоичного кода, используемого внутри, как вы могли предположить. Вместо этого, как FFmpeg, так и VLC используют libavcodec
, библиотеку, которая реализует то, что ffmpeg предоставляет через интерфейс командной строки. Таким образом, FFmpeg поддерживает VLC, предоставляя библиотеку libavcodec одним из основных компонентов, на которых VLC построен как игровое приложение.
Ответ 2
Есть ли команда ffmpeg для воспроизведения (чтения) видео?
ffplay video.mp4
ffplay
, однако, очень урезанный просмотрщик видео, в основном подходящий только для отладки видео, а не для ежедневного использования.
ffplay
может быть более точным, чем VLC, для некоторых необычных форматов, например, он может обрабатывать видео с очень низким FPS, когда VLC 2.2.4 не может: Как изменить размер изображения с помощью fsmpeg sws_scale()?
Протестировано в Ubuntu 16.04, ffmpeg 2.8 с минимальным процедурно сгенерированным видео из: Как изменить размер изображения с помощью swf_scale() из ffmpeg?