Запись видеофайла с 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".
Ссылки
- http://ffmpeg.org/ - официальный сайт проекта FFmpeg.
- http://en.wikipedia.org/wiki/FFmpeg - о FFmpeg на Википедии.
- http://ffmpeg.arrozcru.org/ - проект FFmpeg для Windows.
Страницы: назад [1] [2]
При полном или частичном копировании необходимо указывать ссылку на данную статью.
Олег (Дата )
Все вопросы и предложения высылайте на адрес soft_support@list.ru. Необходимо в заголовке указать название статьи.
Оставь свой отзыв
Дата: 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 |