моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
При разработке мобильных приложений иногда необходимо использовать камеру устройства для записи видео, и вы хотите иметь возможность точно контролировать качество, формат и продолжительность видео в процессе записи. Как мощный инструмент обработки мультимедиа, FFmpeg предоставляет широкий спектр функций и опций, которые помогут нам достичь таких потребностей.
На платформе Android вы можете использовать com.arthenica:mobile-ffmpeg-full
библиотека для достижения этой цели.
implementation 'com.arthenica:mobile-ffmpeg-full:4.4'
Адрес склада:https://github.com/tanersener/mobile-ffmpeg
Дополнительные сведения о других вариантах использования ffmpeg см. в приведенном выше примере адресного документа.
FFmpeg.execute("-f android_camera -video_size 1280x720 -i 0:0 -r 25 -b:v 1.5M -pixel_format yuv420p -t 00:01:00 /sdcard/recorded_video.mp4");
Значение и функции параметров:
-f android_camera
: определяет входной формат как android_camera, сообщая FFmpeg о необходимости получения видеопотока с камеры устройства Android.
-video_size 1280x720
: установите разрешение видеовхода на 1280x720 пикселей. При необходимости это зависит от разрешения, поддерживаемого вашей камерой.
-i 0:0
: укажите входной файл или устройство. Здесь 0:0 означает, что FFmpeg будет получать видеовход от камеры системы Android по умолчанию. 0 представляет номер устройства (обычно камеры), 0 представляет индекс входного потока (обычно видеопоток).
-r 25
: установите частоту кадров выходного видео на 25 кадров в секунду (кадров в секунду). Определяет, сколько кадров видео отображается в секунду.
-b:v 1.5M
: установите битрейт видео на 1,5 Мбит/с (1,5 мегабит в секунду). Битрейт определяет качество и размер файла видео, причем более высокий битрейт обычно означает более высокое качество видео и больший размер файла.
-pixel_format yuv420p
: установите формат пикселей YUV420P. YUV420P — это формат пикселей, широко используемый для кодирования и передачи видео, где Y представляет компонент яркости (Luma), а U и V представляют компонент цветности (Chroma).
-t 00:01:00
:Установите продолжительность записанного видео на 1 минуту (00:01:00). FFmpeg прекратит запись по истечении указанного времени.
/sdcard/recorded_video.mp4
: укажите путь и имя выходного файла. Здесь видео будет сохранено в формате MP4, путь — /sdcard/recorded_video.mp4. Просто напишите фактический путь в соответствии с вашими потребностями, просто убедитесь, что у вас есть разрешение на чтение и запись.
Уведомление
Не меняйте порядок параметров в FFmpeg по своему желанию, иначе настройки параметров будут недействительны и будут использоваться параметры по умолчанию, например -video_size 1280x720
Если установлено-i 0:0
Если позже, то не получится, так что помните!
-t 00:01:00
Он записывает одну минуту и автоматически завершает запись по истечении времени. Конечно, если вы хотите продолжить запись, просто удалите этот параметр и вызовите его, когда захотите завершить ее.FFmpeg.cancel
Вот и все
-b:v 1.5M
Его можно гибко настроить в соответствии с потребностями. Все зависит от реальных условий. Чем больше значение, тем больше будет видео. Просто найдите подходящее значение.
🆗,就这些雷,我替大家踩了,下班。