Подсчет видеокадров может быть полезен в различных сценариях, например, при редактировании видео, анализе качества или определении частоты кадров.
FFmpeg, популярный инструмент с открытым исходным кодом для работы с мультимедийными файлами, предоставляет простой способ подсчета видеокадров.
В этой статье мы расскажем вам, как использовать FFmpeg в Linux для подсчета видеокадров.
Установка FFmpeg в Linux
Если в вашей системе Linux не установлен FFmpeg, используйте следующую команду для установки FFmpeg.
sudo apt install ffmpeg [On Debian, Ubuntu and Mint] sudo yum install ffmpeg [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a sys-apps/ffmpeg [On Gentoo Linux] sudo apk add ffmpeg [On Alpine Linux] sudo pacman -S ffmpeg [On Arch Linux] sudo zypper install ffmpeg [On OpenSUSE] sudo pkg install ffmpeg [On FreeBSD]
Использование FFmpeg для подсчета видеокадров
Перед запуском FFmpeg убедитесь, что вы знаете точный путь к вашему видеофайлу, который может находиться в папке Downloads, каталоге Videos или в другом месте.
Чтобы подсчитать количество кадров в видео, используйте следующую команду:
ffmpeg -i video.mp4 -map 0:v:0 -c copy -f null -
Пояснение к команде:
ffmpeg
: Запускает программу FFmpeg.-i video.mp4
: Указание входного видеофайла.-map 0:v:0
: Сопоставляет первый видеопоток (основное видео).-c copy
: Копирует видеокодек без повторного кодирования (более быстрая обработка).-f null -
: Отправляет вывод в нулевой сток (отбрасывает вывод).
FFmpeg отобразит вывод в терминале, включая статистику для каждого обработанного кадра. В конце вывода ищите строку, показывающую количество обработанных кадров.
frame= 4926 fps=0.0 q=-1.0 Lsize=N/A time=00:03:16.96 bitrate=N/A speed=1.97e+04x
Значение frame
представляет собой общее количество кадров в видео. Например, если отображается frame= 4926
, это означает, что в видео есть 4926
кадров.
Если вы хотите сохранить результат подсчета кадров в текстовом файле, используйте команду grep
, чтобы отфильтровать только информацию о кадрах и перенаправить ее в файл.
ffmpeg -i video.mp4 -map 0:v:0 -c copy -f null - 2>&1 | grep "frame=" > frame_count.txt
Откройте файл frame_count.txt
, чтобы увидеть общее количество кадров.
cat frame_count.txt
Образец вывода:
frame= 4926 fps=0.0 q=-1.0 Lsize=N/A time=00:03:16.96 bitrate=N/A speed=2.15e+04x
Использование FFprobe для подсчета видеокадров
FFprobe, еще один инструмент из набора FFmpeg, может напрямую извлекать информацию о кадрах без декодирования видео. Часто это быстрее, чем использование FFmpeg для подсчета кадров.
Чтобы подсчитать кадры с помощью ffprobe, используйте следующую команду:
ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of csv=p=0 video.mp4
Эта команда выведет общее количество кадров в виде одного числа.
4926
Заключение
Подсчитать количество кадров в видеоролике легко с помощью FFmpeg в Linux, и для этого существует несколько различных способов. Самый прямой способ – использовать команду -f null -
с FFmpeg, но вы также можете использовать FFprobe для более быстрого результата.
Комментарии (0)