Статьи / Запись видеофайла с FFmpeg

Запись видеофайла с FFmpeg


Отправить ссылку:

Создание видеофайлов с помощью FFmpeg

Шаг 3: Завершение

На этом этапе записывается конец файла, файл закрывается и высвобождаются ресурсы.

Стоит отметить, что большая часть кода пропущена, смотрите его в прилагаемом примере.

Настройки записи

Для того чтобы настроить выходной файл, например степень сжатия, количество ключевых кадров и тому подобное, необходимо изменять настройки кодеков. Ниже приведены наиболее значимые из настроек.

Настройки записи видео:

Название параметра Комментарий
pCodecCxt->bit_rate Средний битрейт в байтах в секунду. Чем больше, тем лучше видео, хотя значение может не совпадать с выходным значением.
pCodecCxt->width
pCodecCxt->height
Высота и ширина видео.
pCodecCxt->time_base Обычно с помощью него задаётся количество кадров в секунду. Например для FPS 25:
time_base.den = 25;
time_base.num = 1;
pCodecCxt->gop_size Максимальное расстояние между двумя кадрами. Чем больше, тем меньше будет весить конечный файл.
pCodecCxt->pix_fmt Формат выходного видео, обычно PIX_FMT_YUV420P.
pCodecCxt->qcompress Сжатие, значение от 0.0 до 1.0. 1.0 для большего качества. По умолчанию 0.5.
pCodecCxt->qblur Сглаживание, значение от 0.0 до 1.0.
pCodecCxt->qmin Минимальный квантователь. Значение от 0 до 100.
pCodecCxt->qmax Максимальный квантователь. Значение от 0 до 100.

Настройки записи аудио:

Название параметра Комментарий
pCodecCxt->bit_rate Битрейт аудио, обычно 128000 байт в секунду, или 256000. Чем больше, тем качественнее.
pCodecCxt->sample_fmt Формат семпла:
SAMPLE_FMT_U8 - семпл равен 1 байт (0..255).
SAMPLE_FMT_S16 - семпл 2 байта, от -0x7FFF до 0x7FFF.
SAMPLE_FMT_S32 - семпл 4 байта от -0x7FFFFFFF до 0x7FFFFFFF.
SAMPLE_FMT_FLT - семпл float. Значение от 0.0 до 1.0.
SAMPLE_FMT_DBL - семпл double. Значение от 0.0 до 1.0.
pCodecCxt->channels Количество каналов: для стерео необходимо 2 канала.
pCodecCxt->sample_rate Частота семплов, обычно 44100, 28050...

Заключение

Из статьи вы могли узнать как использовать FFmpeg для создания видеофайлов. Стоит отметить, что FFmpeg поддерживает большое количество форматов и кодеков.

Пример

Да, без примера статья была бы не закончена. Вы можете скачать пример использования ffmpeg. Пример не имеет полную функциональность, а только демонстрирует основы создания файла с помощью FFmpeg. Программа создаёт видеофайл со звуком (хотя звук напоминает шум). Ниже представлены настройки, которые вы можете поменять.

CONTAINER - какой использовать контенер. "auto" - автоматически выбирается по раширению файла. Также может иметь значения: "avi", "mp4", "mpeg", "wmv", "mov".

Ссылки



При полном или частичном копировании необходимо указывать ссылку на данную статью.


Олег (Дата )

Все вопросы и предложения высылайте на адрес soft_support@list.ru. Необходимо в заголовке указать название статьи.

Оставь свой отзыв


Ответьте на вопрос (ответ маленькими буквами)* :
14+2?(ответ цифрами)


Дата: 30.08.10


Дата: 16.08.10

Ole Jak
e-mail: superior0@ya.ru
Дата: 02.08.10

Ole Jak
e-mail: superior0@mail.ru
Дата: 02.08.10