Jason 1 20 марта Опубликовано 20 марта · Жалоба Команда 1. Запись видео не удалась с помощью команды ffmpeg -framerate 25 -f v4l2 -i /dev/video4 Recording1.mp4 . Согласно официальной документации ffmpeg, -r и -framerate имеют одну и ту же функцию, но фактический тест показывает, что они разные. -framerate используется для ограничения ввода, а -r используется для ограничения вывода 2. Видео можно записать с помощью команды ffmpeg -r 25 -f v4l2 -i /dev/video4 Recording1.mp4 , но возникнут такие проблемы, как ошибка кадра и повторение кадра. 3. Используйте ffmpeg -f v4l2 -r 25 -thread_queue_size 128 -i /dev/video4 -vcodec libx264 -b:v 800k-preset сверхбыстрая запись1.mp4 для одновременной записи видео с двух камер. Описание параметра: ⚫ -f Установите формат вывода, формат вывода — кадр v412 (все найденные ранее команды используют фреймворк avfoundation, полнофункциональную инфраструктуру для обработки мультимедийных данных в iOS, macOS, watchOS и tvOS. В этом примере используется фреймворк v412). Команда представляет собой инфраструктуру для драйверов видеоустройств в ядре Linux, которая обеспечивает унифицированный интерфейс для уровня приложений и поддерживает гибкое расширение различного сложного оборудования). ⚫ -r Установить частоту кадров, установить частоту кадров 25 кадров в секунду. ⚫ -thread_queue_size (Размер очереди_ потока применяется к первому входу, указанному после него. Термин «thread_queue_size» может применяться ко всем входам и определяется на уровне приложения. Сколько пакетов из этого входа можно поставить в очередь во время ожидания ffmpeg для получения и обработки их в своем основном потоке. Некоторые устройства захвата, в первую очередь dshow, используют «rtbufsize» для хранения входящих кадров, ожидая их передачи в очередь уровня приложения для этого ввода. Эти два параметра не настраиваются значение другого, поэтому их следует устанавливать вручную. Значение по умолчанию — 8. Общие предупреждения: блокировка очереди сообщений потока; рассмотрите возможность повышения параметра thread_queue_size (текущее значение: 8). Чтобы решить эту проблему, официальное объяснение: этот параметр устанавливает максимальное количество пакетов в очереди при чтении из файла или устройства (в потоках реального времени с низкой задержкой и высокой скоростью пакеты могут быть отброшены, если они не прочитаны своевременно; увеличение этого значения предотвращает это). ⚫ -i Установить входной поток, установить входной сигнал из видео4 ⚫ -vcodec Установить видеокодер,(-vcodec и-codec:v равные значения) Кодеры — это библиотечные файлы, реализующие определенный формат кодирования. Кодирование и декодирование видео/аудио в определенном формате возможно только в том случае, если установлен кодировщик для этого формата. Вот некоторые из встроенных видеокодеров FFmpeg. libx264: Самый популярный кодировщик H.264 с открытым исходным кодом. NVENC: кодер H.264 на базе графического процессора NVIDIA. libx265: кодер HEVC с открытым исходным кодом. libvpx: кодировщики Google VP8 и VP9. libaom:Кодер AV1 ⚫ -B:v Битрейт видео ⚫ -preset определяет качество выходного видео, которое повлияет на скорость создания файла. Доступны следующие значения: Сверхбыстрый, сверхбыстрый, очень быстрый, быстрый, быстрый, средний, медленный, медленный, очень медленный, плацебо от быстрого к медленному, сверхбыстрая скорость транскодирования самая высокая, а видео часто самое размытое. ⚫ запись1.mp4 Имя и тип файла выходного видео. Вы можете использовать форматы ffmpeg, чтобы получить все типы файлов, поддерживаемые ffmpeg, где аннотация перед файлом выглядит следующим образом: D.=Поддерживается демультиплексирование (Поддержка инкапсуляции видео/аудио) . E=Поддерживается мультиплексирование (Поддержка декапсуляции видео/аудио). Метод: Программное обеспечение: ⚫ Убунту: 1. Сеть платы разработки. 2. Обновление sudo apt-gat обновляет apt-gat до последней версии (необязательно). 3. sudo apt-get install ffmpeg использует apt-gat для получения ffmpeg 4. Введите соответствующие команды. Аппаратное обеспечение: Подключите самодельный аналоговый модуль камеры Forlinx для поддержки двух камер. Video4-7 — это узлы, генерируемые TVIN, причем верхний левый соответствует видео7, нижний левый соответствует видео6, нижний правый соответствует видео5, а верхний правый соответствует видео4. Выбирайте в соответствии с реальной ситуацией. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться