ffmpeg-все
Это команда ffmpeg-all, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
ffmpeg - конвертер видео ffmpeg
СИНТАКСИС
ffmpeg [global_options] {[input_file_options] -я входной_файл} ... {[выходные_файл_опции]
выходной файл} ...
ОПИСАНИЕ
FFmpeg - это очень быстрый видео- и аудиоконвертер, который также может извлекать из живого аудио / видео
источник. Он также может конвертировать между произвольными частотами дискретизации и изменять размер видео на лету.
с качественным многофазным фильтром.
FFmpeg читает из произвольного количества входных "файлов" (которые могут быть обычными файлами, каналами,
сетевые потоки, устройства захвата и т. д.), указанный параметром "-i", и записывает в
произвольное количество выходных «файлов», которые задаются простым выходным именем файла.
Все, что можно найти в командной строке, что нельзя интерпретировать как параметр, считается
быть выходным именем файла.
Каждый входной или выходной файл, в принципе, может содержать любое количество потоков разных
типы (видео / аудио / субтитры / вложения / данные). Допустимое количество и / или типы потоков
может быть ограничен форматом контейнера. Выбор потоков из каких входов будет идти
в который вывод выполняется либо автоматически, либо с помощью опции «-map» (см. Stream
раздел выбора).
Чтобы ссылаться на входные файлы в параметрах, вы должны использовать их индексы (начиная с 0). Например, первый
входной файл - 0, второй - 1 и т. д. Точно так же потоки внутри файла называются
их индексы. Например, «2: 3» относится к четвертому потоку в третьем входном файле. Также см
главу "Спецификаторы потока".
Как правило, параметры применяются к следующему указанному файлу. Следовательно, порядок
важно, и вы можете использовать один и тот же параметр в командной строке несколько раз. Каждый
Затем вхождение применяется к следующему входному или выходному файлу. Исключения из этого правила
- это глобальные параметры (например, уровень детализации), которые следует указать в первую очередь.
Не смешивайте файлы ввода и вывода - сначала укажите все файлы ввода, затем все файлы вывода.
Также не смешивайте параметры, принадлежащие разным файлам. Все параметры применимы ТОЛЬКО к
следующий входной или выходной файл и сбрасываются между файлами.
· Чтобы установить битрейт видео выходного файла на 64 кбит / с:
ffmpeg -i input.avi -b: v 64k -bufsize 64k output.avi
· Чтобы установить частоту кадров выходного файла 24 кадра в секунду:
ffmpeg -i input.avi -r 24 выходной.avi
· Чтобы установить частоту кадров входного файла (действительно только для необработанных форматов) на 1 кадр / с и
частота кадров выходного файла до 24 кадров в секунду:
ffmpeg -r 1 -i input.m2v -r 24 выходной.avi
Параметр формата может потребоваться для необработанных входных файлов.
ДОП ОПИСАНИЕ
Процесс перекодирования в FFmpeg для каждого выхода можно описать следующие
диаграмма:
_______ ______________
| | | |
| ввод | демультиплексор | закодированные данные | декодер
| файл | ---------> | пакеты | ----- +
| _______ | | ______________ | |
v
_________
| |
| расшифровано |
| кадры |
| _________ |
________ ______________ |
🇧🇷 🇧🇷 🇧🇷 🇧🇷 🇧🇷
| выход | <-------- | закодированные данные | <---- +
| файл | мультиплексор | пакеты | кодировщик
| ________ | | ______________ |
FFmpeg вызывает библиотеку libavformat (содержащую демультиплексоры) для чтения входных файлов и получения
пакеты, содержащие из них закодированные данные. Когда есть несколько входных файлов, FFmpeg
пытается сохранить их синхронизацию, отслеживая самую низкую временную метку на любом активном входном потоке.
Затем закодированные пакеты передаются декодеру (если для
поток, см. описание далее). Декодер выдает несжатые кадры (raw
видео / аудио PCM / ...), которые могут быть обработаны с помощью фильтрации (см. следующий раздел). После
при фильтрации кадры передаются кодировщику, который их кодирует и выводит в закодированном виде
пакеты. Наконец, они передаются мультиплексору, который записывает закодированные пакеты в
выходной файл.
фильтрация
Перед кодированием FFmpeg может обрабатывать необработанные аудио- и видеокадры, используя фильтры из
Библиотека libavfilter. Несколько связанных фильтров образуют граф фильтров. FFmpeg отличает
между двумя типами фильтрграфов: простыми и сложными.
Простой графы фильтров
Простые графы фильтров - это те, у которых есть ровно один вход и выход, оба одинаковые
тип. На приведенной выше диаграмме их можно представить, просто добавив дополнительный шаг.
между декодированием и кодированием:
_________ ______________
| | | |
| расшифровано | | закодированные данные |
| кадры | \ _ | пакеты |
| _________ | \ / || ______________ |
\ __________ /
простой _ \ || | / кодировщик
filtergraph | фильтруется | /
| кадры |
| __________ |
Простые графы фильтров настраиваются для каждого потока -фильтр вариант (с -vf и -af
псевдонимы для видео и аудио соответственно). Простой графический фильтр для видео может искать
пример вроде этого:
_______ _____________ _______ ________
| | | | | | | |
| ввод | ---> | деинтерлейсинг | ---> | масштаб | ---> | выход |
| _______ | | _____________ | | _______ | | ________ |
Обратите внимание, что некоторые фильтры изменяют свойства кадра, но не содержимое кадра. Например, "fps"
фильтр в приведенном выше примере изменяет количество кадров, но не касается кадра
содержание. Другой пример - фильтр "setpts", который устанавливает только временные метки, в противном случае
передает кадры без изменений.
Комплекс графы фильтров
Сложные графы фильтров - это те, которые нельзя описать как простую линейную обработку.
цепочка применена к одному потоку. Это имеет место, например, когда на графике больше, чем
один вход и / или выход, или когда тип выходного потока отличается от входного. Они могут быть
представлен на следующей диаграмме:
_________
| |
| ввод 0 | \ __________
| _________ | \ | |
\ _________ / | выход 0 |
\ | | / | __________ |
_________ \ | комплекс | /
| | | | /
| вход 1 | ----> | фильтр | \
| _________ | | | \ __________
/ | график | \ | |
/ | | \ | вывод 1 |
_________ / | _________ | | __________ |
| | /
| вход 2 | /
| _________ |
Сложные графы фильтров настраиваются с помощью -filter_complex вариант. Обратите внимание, что это
опция является глобальной, поскольку сложный граф фильтра по своей природе не может быть однозначно
связаны с одним потоком или файлом.
Команда -лавфи вариант эквивалентен -filter_complex.
Тривиальным примером сложного графа фильтров является «оверлейный» фильтр, который имеет два видео
входы и один видеовыход, содержащий одно видео, наложенное поверх другого. Его аудио
аналог - фильтр "amix".
Поток копия
Копирование потока - это режим, который выбирается путем передачи параметра «копировать» в -кодек вариант. Это
создает FFmpeg опускает этап декодирования и кодирования для указанного потока, поэтому выполняется только
демультиплексирование и мультиплексирование. Это полезно для изменения формата контейнера или модификации
метаданные на уровне контейнера. Приведенная выше диаграмма в этом случае упрощается до следующего:
_______ ______________ ________
| | | | | |
| ввод | демультиплексор | закодированные данные | мультиплексор | выход |
| файл | ---------> | пакеты | -------> | файл |
| _______ | | ______________ | | ________ |
Поскольку нет декодирования или кодирования, это очень быстро и без потери качества.
Однако в некоторых случаях это может не сработать по многим причинам. Применение фильтров - это
очевидно, также невозможно, поскольку фильтры работают с несжатыми данными.
STREAM ВЫБОР
По умолчанию FFmpeg включает только один поток каждого из имеющихся типов (видео, аудио, субтитры)
во входных файлах и добавляет их в каждый выходной файл. Он выбирает «лучшее» из каждого на основе
по следующим критериям: для видео это поток с самым высоким разрешением, для
audio, это поток с наибольшим количеством каналов, для субтитров это первый субтитр
ручей. В случае, если несколько потоков одного типа имеют одинаковую скорость, поток с
выбирается самый низкий индекс.
Вы можете отключить некоторые из этих значений по умолчанию, используя параметры «-vn / -an / -sn». Для полного руководства
control, используйте опцию «-map», которая отключает только что описанные значения по умолчанию.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Все числовые параметры, если не указано иное, принимают строку, представляющую
число в качестве входных данных, за которым может следовать один из префиксов единиц СИ, например: 'K',
«M» или «G».
Если к префиксу единицы СИ добавляется буква i, полный префикс будет интерпретироваться как
префикс единицы для двоичных кратных, которые основаны на степенях 1024 вместо степеней
1000. Добавление буквы «B» к префиксу единицы СИ умножает значение на 8. Это позволяет использовать,
например: «KB», «MiB», «G» и «B» в качестве числовых суффиксов.
Параметры, не принимающие аргументов, являются логическими параметрами и устанавливают соответствующее значение.
к истине. Для них можно установить значение false, поставив перед именем параметра префикс «нет». Например
использование "-nofoo" установит для логической опции с именем "foo" значение false.
Поток спецификаторы
Некоторые параметры применяются к потоку, например, битрейт или кодек. Спецификаторы потока используются для
точно указать, к какому потоку (-ам) принадлежит данная опция.
Спецификатор потока - это строка, обычно добавляемая к имени опции и отделяемая от него.
двоеточием. Например, "-codec: a: 1 ac3" содержит спецификатор потока "a: 1", который соответствует
второй аудиопоток. Следовательно, для второго аудиопотока будет выбран кодек ac3.
Спецификатор потока может соответствовать нескольким потокам, поэтому параметр применяется ко всем из
их. Например, спецификатор потока в "-b: a 128k" соответствует всем аудиопотокам.
Описатель пустого потока соответствует всем потокам. Например, «-codec copy» или «-codec:
copy "скопирует все потоки без перекодирования.
Возможные формы спецификаторов потока:
поток_индекс
Соответствует потоку с этим индексом. Например, "-threads: 1 4" установит количество потоков для
второй поток на 4.
тип_потока[:поток_индекс]
тип_потока может быть одним из следующих: 'v' или 'V' для видео, 'a' для аудио, 's' для
подзаголовок, «d» для данных и «t» для вложений. 'v' соответствует всем видеопотокам, 'V'
соответствует только видеопотокам, к которым не прикреплены изображения, эскизы видео или обложка
искусства. Если поток_индекс задается, тогда он соответствует номеру потока поток_индекс этого
тип. В противном случае он соответствует всем потокам этого типа.
p:идентификатор_программы[:поток_индекс]
If поток_индекс задан, то он соответствует потоку с номером поток_индекс в
программа с идентификатором идентификатор_программы. В противном случае он соответствует всем потокам в программе.
#поток_ид or i:поток_ид
Сопоставьте поток по идентификатору потока (например, PID в контейнере MPEG-TS).
m:ключ[:ценностное ]
Соответствует потокам с тегом метаданных ключ имеющий указанное значение. Если ценностное Не
Данный, сопоставляет потоки, содержащие данный тег, с любым значением.
u Соответствует потокам с используемой конфигурацией, кодек должен быть определен, а основные
должна присутствовать такая информация, как размер видео или частота дискретизации звука.
Обратите внимание, что в FFmpeg, сопоставление по метаданным будет правильно работать только для входных файлов.
Общий кредита
Эти параметры используются в инструментах ff *.
-L Показать лицензию.
-час, - ?, -помощь, --Помогите [аргумент]
Покажи справку. Необязательный параметр может быть указан для вывода справки по конкретному элементу.
Если аргумент не указан, отображаются только базовые (не расширенные) параметры инструмента.
Возможные значения аргумент составляют:
длинной
Печать дополнительных параметров инструмента в дополнение к основным параметрам инструмента.
полный
Распечатать полный список опций, включая общие и частные опции для кодировщиков,
декодеры, демультиплексоры, мультиплексоры, фильтры и т. д.
декодер =имя_декодера
Распечатать подробную информацию о названном декодере имя_декодера, Использовать -декодеры
возможность получить список всех декодеров.
кодировщик =Encoder_name
Распечатать подробную информацию о названном кодировщике Encoder_name, Использовать -энкодеры
возможность получить список всех кодировщиков.
демультиплексор =имя_демультиплексора
Вывести подробную информацию о демультиплексоре с именем имя_демультиплексора, Использовать -форматы
возможность получить список всех демультиплексоров и мультиплексоров.
muxer =имя_мультиплексора
Распечатать подробную информацию о мультиплексоре с именем имя_мультиплексора, Использовать -форматы
возможность получить список всех мультиплексоров и демультиплексоров.
фильтр =имя_фильтра
Распечатать подробную информацию о названии фильтра имя_фильтра, Использовать -фильтры
возможность получить список всех фильтров.
-версия
Показать версию.
-форматы
Показать доступные форматы (включая устройства).
-devices
Показать доступные устройства.
-кодеки
Показать все кодеки, известные libavcodec.
Обратите внимание, что термин «кодек» используется в этой документации как сокращение для
то, что более правильно называется форматом битового потока мультимедиа.
-декодеры
Показать доступные декодеры.
-энкодеры
Показать все доступные кодировщики.
-bsfs
Показать доступные фильтры битового потока.
-протоколы
Показать доступные протоколы.
-фильтры
Показать доступные фильтры libavfilter.
-pix_fmts
Показать доступные форматы пикселей.
-sample_fmts
Показать доступные образцы форматов.
-разметки
Показывать названия каналов и стандартные макеты каналов.
-цвета
Показать распознанные названия цветов.
-sources устройство[,опт1=val1[,опт2=val2] ...]
Показать автоматически обнаруженные источники входного устройства. Некоторые устройства могут предоставлять системные
имена зависимых источников, которые не могут быть обнаружены автоматически. Возвращенный список не может быть
предполагается всегда быть полным.
ffmpeg -sources pulse, server = 192.168.0.4
- раковины устройство[,опт1=val1[,опт2=val2] ...]
Показать автоматически обнаруженные приемники выходного устройства. Некоторые устройства могут предоставлять системные
имена зависимых приемников, которые не могут быть обнаружены автоматически. Возвращенный список не может быть принят
быть всегда полным.
ffmpeg -sinks pulse, server = 192.168.0.4
-логуровень [повтор +]уровень журнала | -v [повтор +]уровень журнала
Установите уровень ведения журнала, используемый библиотекой. Добавление "repeat +" означает, что повторяется
вывод журнала не должен сжиматься до первой строки, а "Последнее сообщение повторяется n
times "строка будет опущена." repeat "также можно использовать отдельно. Если используется" repeat "
в одиночку и без предварительной установки уровня журнала будет использоваться уровень журнала по умолчанию. Если несколько
Приведены параметры loglevel, использование «повторения» не изменит уровень журналирования. уровень журнала
является строкой или числом, содержащим одно из следующих значений:
тихий, -8
Вообще ничего не показывать; Молчи.
паника, 0
Показывать только фатальные ошибки, которые могут привести к сбою процесса, например, assert
отказ. В настоящее время это ни для чего не используется.
фатальный 8
Показывать только фатальные ошибки. Это ошибки, после которых процесс абсолютно не может
продолжить после.
ошибка, 16
Показать все ошибки, в том числе те, которые можно исправить.
предупреждение, 24
Показать все предупреждения и ошибки. Любое сообщение, связанное с возможно неправильным или
будут показаны неожиданные события.
Информация, 32
Показывать информативные сообщения во время обработки. Это помимо предупреждений и
ошибки. Это значение по умолчанию.
подробный, 40
То же, что и "info", только более подробное.
отлаживать, 48
Показать все, включая отладочную информацию.
след, 56
По умолчанию программа регистрируется в stderr, если окраска поддерживается терминалом,
цвета используются для обозначения ошибок и предупреждений. Раскрашивание журнала можно отключить, установив
переменная среды AV_LOG_FORCE_NOCOLOR or НЕТ_COLOR, или может быть принудительно установлен
переменная среды AV_LOG_FORCE_COLOR. Использование переменной окружения НЕТ_COLOR
устарел и будет удален в следующей версии FFmpeg.
-report
Дамп полной командной строки и вывода консоли в файл с именем
"программа-ГГГГММДД-ЧЧММСС.log " в текущем каталоге. Этот файл может быть полезен для
отчеты об ошибках. Это также подразумевает «подробный словарь».
Установка переменной окружения FREPORT к любому значению имеет тот же эффект. Если
значение представляет собой последовательность ключ = значение, разделенную ':', эти параметры будут влиять на отчет;
значения параметров должны быть экранированы, если они содержат специальные символы или параметры
delimiter ':' (см. раздел `` Цитирование и экранирование '' в руководстве ffmpeg-utils).
Распознаются следующие варианты:
файл
установить имя файла для использования в отчете; % p заменяется на имя
программа,% t заменяется меткой времени, "%%" заменяется на простой "%"
уровень
установить уровень детализации журнала с помощью числового значения (см. «-loglevel»).
Например, чтобы вывести отчет в файл с именем ffreport.log с использованием уровня журнала 32
(псевдоним для уровня журнала "информация"):
FFREPORT = file = ffreport.log: level = 32 ffmpeg -i input output
Ошибки при разборе переменной окружения не фатальны и не отображаются в
сообщить.
-hide_banner
Подавить печать баннера.
Все инструменты FFmpeg обычно показывают уведомление об авторских правах, параметры сборки и библиотеку.
версии. Этот параметр можно использовать для подавления печати этой информации.
-cpuflags Флаги (Глобальный)
Позволяет устанавливать и очищать флаги процессора. Этот вариант предназначен для тестирования. Не используйте
это, если вы не знаете, что делаете.
ffmpeg -cpuflags -sse + mmx ...
ffmpeg -cpuflags ммх...
ffmpeg -cpuflags 0 ...
Возможные флаги для этой опции:
x86
MMX
mmxext
SSE
sse2
sse2slow
sse3
sse3slow
сссе3
атом
sse4.1
sse4.2
avx
avx2
ХОР
fma3
fma4
3dnow
3dnowext
ИМТ1
ИМТ2
смов
ARM
Armv5te
ARMv6
Armv6t2
ВФП
vfpv3
неоновый
сидеть
AAArch64
ARMv8
ВФП
неоновый
PowerPC
альтивек
Конкретный Процессоры
Pentium2
Pentium3
Pentium4
k6
k62
Athlon
Athlonxp
k8
-opencl_bench
Эта опция используется для тестирования всех доступных устройств OpenCL и печати результатов.
Эта опция доступна, только если FFmpeg скомпилирован с помощью "--enable-opencl".
Когда FFmpeg настроен с помощью "--enable-opencl", параметры для глобального OpenCL
контекст устанавливаются через -opencl_options. См. Раздел «Параметры OpenCL» в ffmpeg-
руководство по утилите для получения полного списка поддерживаемых опций. Среди прочего, эти параметры
включить возможность выбора конкретной платформы и устройства для запуска кода OpenCL
на. По умолчанию FFmpeg запускается на первом устройстве первой платформы. В то время как
опции для глобального контекста OpenCL предоставляют пользователю гибкость при выборе
Устройство OpenCL по своему выбору, большинство пользователей, вероятно, захотят выбрать самое быстрое
Устройство OpenCL для своей системы.
Эта опция помогает выбрать наиболее эффективную конфигурацию, определяя
соответствующее устройство для системы пользователя. Встроенный тест выполняется на всех
Устройства OpenCL и производительность измеряется для каждого устройства. Устройства в
список результатов отсортирован в зависимости от их производительности с указанием самого быстрого устройства
первый. Пользователь может впоследствии вызвать FFmpeg использование устройства считается наиболее
соответствующий через -opencl_options чтобы получить лучшую производительность для OpenCL
ускоренный код.
Типичное использование самого быстрого устройства OpenCL включает следующие шаги.
Выполните команду:
ffmpeg -opencl_bench
Запишите идентификатор платформы (пидкс) и ID устройства (дидкс) первого, то есть самого быстрого устройства
в списке. Выберите платформу и устройство с помощью команды:
ffmpeg -opencl_options platform_idx = : device_idx = ...
-opencl_options кредита (Глобальный)
Установите параметры среды OpenCL. Эта опция доступна, только если FFmpeg был
скомпилирован с помощью "--enable-opencl".
кредита должен быть список ключ=ценностное пары опций, разделенные знаком ":". См. Документ OpenCL
Параметры '' в руководстве по ffmpeg-utils для получения списка поддерживаемых параметров.
AVОпции
Эти параметры предоставляются напрямую libavformat, libavdevice и libavcodec.
библиотеки. Чтобы увидеть список доступных AVOptions, используйте -Помощь вариант. Они есть
разделены на две категории:
родовой
Эти параметры можно установить для любого контейнера, кодека или устройства. Общие варианты:
перечислены в параметрах AVFormatContext для контейнеров / устройств и в разделе AVCodecContext
варианты кодеков.
частная
Эти параметры зависят от конкретного контейнера, устройства или кодека. Частные варианты
перечислены в соответствующих им контейнерах / устройствах / кодеках.
Например, чтобы записать заголовок ID3v2.3 вместо ID3v2.4 по умолчанию в файл MP3, используйте
id3v2_версия частная опция мультиплексора MP3:
ffmpeg -i input.flac -id3v2_version 3 out.mp3
Все AVOptions кодека относятся к потоку, поэтому спецификатор потока должен быть прикреплен к
их.
Обратите внимание -опция синтаксис не может использоваться для логических AVOptions, используйте -Option 0/-Option 1.
Примечание: старый недокументированный способ указания AVOptions для каждого потока путем добавления v / a / s к
имя параметров устарело и скоро будет удалено.
Главная кредита
-f FMT (ввод, вывод)
Принудительный формат входного или выходного файла. Формат обычно автоматически определяется для ввода
файлы и угадываются по расширению файла для выходных файлов, поэтому этот параметр не
нужен в большинстве случаев.
-i имя файла (вход)
имя входного файла
-y (Глобальный)
Перезаписывать выходные файлы без запроса.
-n (Глобальный)
Не перезаписывать выходные файлы и немедленно выйти, если указанный выходной файл уже
существует.
-c [:поток_спецификатор] кодер-декодер (ввод / вывод, на поток)
-codec [:поток_спецификатор] кодер-декодер (ввод / вывод, на поток)
Выберите кодировщик (при использовании перед выходным файлом) или декодер (при использовании до
входной файл) для одного или нескольких потоков. кодер-декодер это имя декодера / кодировщика или
специальное значение «копировать» (только вывод), чтобы указать, что поток не должен быть повторно
закодировано.
Например
ffmpeg -i INPUT -map 0 -c: v libx264 -c: копия ВЫХОДА
кодирует все видеопотоки с помощью libx264 и копирует все аудиопотоки.
Для каждого потока применяется последняя совпадающая опция "c", поэтому
ffmpeg -i INPUT -map 0 -c copy -c: v: 1 libx264 -c: a: 137 libvorbis ВЫХОД
скопирует все потоки, кроме второго видео, которое будет закодировано с помощью libx264,
и 138-й звук, который будет закодирован с помощью libvorbis.
-t продолжительность (ввод, вывод)
При использовании в качестве параметра ввода (перед "-i") ограничьте продолжительность данных, прочитанных из
входной файл.
При использовании в качестве параметра вывода (перед именем файла вывода) прекратить запись вывода
после того, как его продолжительность достигнет продолжительность.
продолжительность должно быть указанием продолжительности времени, см. Время продолжительность . in
ffmpeg-утилиты(1) руководство.
-to и -t являются взаимоисключающими, а -t имеет приоритет.
-в должность (выходной)
Прекратить писать вывод в должность. должность должно быть указанием продолжительности времени,
посмотреть Время продолжительность . in ffmpeg-утилиты(1) руководство.
-to и -t являются взаимоисключающими, а -t имеет приоритет.
-фс limit_size (выходной)
Установите ограничение на размер файла, выраженное в байтах.
-ss должность (ввод, вывод)
При использовании в качестве параметра ввода (перед "-i") ищет в этом входном файле должность. Заметка
что в большинстве форматов невозможно точно искать, поэтому FFmpeg будет стремиться к
ближайшая точка поиска до должность. При перекодировании и -accurate_seek включен
(по умолчанию), этот дополнительный сегмент между точкой поиска и должность будет декодирован
и выбросили. При копировании потока или когда -noaccurate_seek используется, это будет
сохранились.
При использовании в качестве параметра вывода (перед именем файла вывода) декодирует, но отбрасывает ввод
пока метки времени не достигнут должность.
должность должно быть указанием продолжительности времени, см. Время продолжительность . in
ffmpeg-утилиты(1) руководство.
-ссеоф должность (ввод, вывод)
Аналогично опции «-ss», но относительно «конца файла». То есть отрицательные значения
ранее в файле 0 находится в EOF.
-itoffset смещение (вход)
Установите смещение времени ввода.
смещение должно быть указанием продолжительности времени, см. Время продолжительность . in
ffmpeg-утилиты(1) руководство.
Смещение добавляется к отметкам времени входных файлов. Указание положительного смещения
означает, что соответствующие потоки задерживаются на время, указанное в
смещение.
-метка времени даты (выходной)
Установите отметку времени записи в контейнере.
даты должна быть указана дата, см. Время . in ffmpeg-утилиты(1) руководство.
-metadata [: спецификатор_метаданных] ключ=ценностное (вывод, по метаданным)
Установите пару ключ / значение метаданных.
Необязательный метаданные_спецификатор может быть предоставлен для установки метаданных в потоках или главах.
См. Документацию "-map_metadata" для деталей.
Эта опция переопределяет метаданные, установленные с помощью "-map_metadata". Также возможно удалить
метаданные с использованием пустого значения.
Например, для установки заголовка в выходном файле:
ffmpeg -i in.avi -metadata title = "мой заголовок" out.flv
Чтобы установить язык первого аудиопотока:
ffmpeg -i INPUT -metadata: s: a: 0 language = eng ВЫВОД
-целевой напишите (выходной)
Укажите тип целевого файла («vcd», «svcd», «dvd», «dv», «dv50»). напишите может быть префиксом
с «pal-», «ntsc-» или «film-» для использования соответствующего стандарта. Все в формате
параметры (битрейт, кодеки, размеры буфера) затем устанавливаются автоматически. Вы можете просто ввести:
ffmpeg -i myfile.avi -целевой vcd /tmp/vcd.mpg
Тем не менее вы можете указать дополнительные параметры, если знаете, что они не
противоречит стандарту, например:
ffmpeg -i myfile.avi -целевой vcd -bf 2 /tmp/vcd.mpg
-dframes номер (выходной)
Установите количество кадров данных для вывода. Это псевдоним для «-frames: d».
-frames [:поток_спецификатор] количество кадров (вывод, на поток)
Прекратить запись в поток после количество кадров кадры.
-q [:поток_спецификатор] q (вывод, на поток)
-qscale [:поток_спецификатор] q (вывод, на поток)
Используйте фиксированную шкалу качества (VBR). Значение q/масштаб зависит от кодека. Если масштаб
используется без поток_спецификатор то это относится только к видеопотоку, это
для обеспечения совместимости с предыдущим поведением и указанием того же кодека
конкретное значение для 2 разных кодеков, то есть аудио и видео, как правило, не то, что
предназначен, когда не используется stream_specifier.
-фильтр[:поток_спецификатор] фильтрграф (вывод, на поток)
Создайте фильтрграф, указанный фильтрграф и используйте его для фильтрации потока.
фильтрграф - описание графа фильтров, применяемого к потоку, и должно иметь
один вход и один выход одного и того же типа потока. В графе фильтров
вход связан с меткой «вход», а выход - с меткой «выход». Увидеть
Руководство по ffmpeg-filters для получения дополнительной информации о синтаксисе графа фильтров.
Смотрите пост в -filter_complex вариант если вы хотите создать графы фильтров с несколькими входами
и / или выходы.
-filter_script [:поток_спецификатор] имя файла (вывод, на поток)
Этот вариант похож на -фильтр, с той лишь разницей, что его аргументом является
имя файла, из которого следует прочитать описание графа фильтра.
-pre [:поток_спецификатор] имя_настройки (вывод, на поток)
Укажите предустановку для совпадающего потока (ов).
-статистика (Глобальный)
Прогресс / статистика кодирования печати. По умолчанию он включен, чтобы явно отключить его, вы
необходимо указать "-nostats".
-прогресс URL (Глобальный)
Отправляйте удобную для программы информацию о прогрессе на адрес URL.
Информация о прогрессе пишется примерно каждую секунду и в конце
процесс кодирования. Оно сделано из "ключ=ценностное "линии. ключ состоит только из буквенно-цифровых
символы. Последним ключом в последовательности информации о ходе выполнения всегда является «прогресс».
-стдин
Включить взаимодействие при стандартном вводе. По умолчанию включен, если стандартный ввод не используется как
вход. Чтобы явно отключить взаимодействие, вам нужно указать «-nostdin».
Отключение взаимодействия со стандартным вводом полезно, например, если ffmpeg находится в
группа фоновых процессов. Примерно того же результата можно достичь с помощью "ffmpeg ...
/ dev / null ", но для этого требуется оболочка.
-debug_ts (Глобальный)
Распечатать информацию о метке времени. По умолчанию он выключен. Эта опция в основном полезна для
в целях тестирования и отладки, а формат вывода может меняться от одной версии к другой.
другой, поэтому его не следует использовать в переносимых скриптах.
См. Также параметр «-fdebug ts».
-прикреплять имя файла (выходной)
Добавьте вложение к выходному файлу. Это поддерживается несколькими форматами, такими как Matroska.
например, шрифты, используемые при рендеринге субтитров. Вложения реализованы в виде специфических
тип потока, поэтому этот параметр добавит в файл новый поток. Тогда возможно
использовать параметры каждого потока в этом потоке обычным образом. Созданы потоки прикрепленных файлов
с этой опцией будут созданы после всех других потоков (т. е. тех, которые созданы с
"-map" или автоматические сопоставления).
Обратите внимание, что для Matroska вам также необходимо установить тег метаданных mimetype:
ffmpeg -i INPUT -attach DejaVuSans.ttf -metadata: s: 2 mimetype = application / x-truetype-font out.mkv
(при условии, что поток вложений будет третьим в выходном файле).
-dump_attachment [:поток_спецификатор] имя файла (ввод, на поток)
Извлеките соответствующий поток вложений в файл с именем имя файла. Если имя файла is
пусто, то будет использоваться значение тега метаданных "имя файла".
Например, чтобы извлечь первое вложение в файл с именем out.ttf:
ffmpeg -dump_attachment: t: 0 out.ttf -i INPUT
Чтобы извлечь все вложения в файлы, определенные тегом "имя файла":
ffmpeg -dump_attachment: t "" -i ВХОД
Техническое примечание - вложения реализованы как дополнительные данные кодека, поэтому эта опция может
фактически использоваться для извлечения дополнительных данных из любого потока, а не только из вложений.
-нет автоповорота
Отключите автоматический поворот видео на основе метаданных файла.
Видео Возможности
-vframes номер (выходной)
Установите количество видеокадров для вывода. Это псевдоним для «-frames: v».
-р[:поток_спецификатор] кадров в секунду (ввод / вывод, на поток)
Установите частоту кадров (значение в Гц, дробь или аббревиатуру).
В качестве варианта ввода игнорируйте любые временные метки, хранящиеся в файле, и вместо этого генерируйте
временные метки, предполагающие постоянную частоту кадров кадров в секунду. Это не то же самое, что -частота кадров
параметр, используемый для некоторых форматов ввода, таких как image2 или v4l2 (раньше он был таким же в
старые версии FFmpeg). В случае сомнений используйте -частота кадров вместо опции ввода -r.
В качестве варианта вывода дублируйте или отбрасывайте входные кадры для достижения постоянного выходного кадра.
скорость кадров в секунду.
-s [:поток_спецификатор] размер (ввод / вывод, на поток)
Установите размер кадра.
В качестве варианта ввода это ярлык для размер видео частный опцион, признанный
некоторыми демультиплексорами, размер кадра которых либо не хранится в файле, либо
настраиваемый - например, сырое видео или видео грабберы.
В качестве варианта вывода он вставляет "масштабный" видеофильтр в конец
соответствующий фильтрграф. Пожалуйста, используйте фильтр "масштаб", чтобы вставить его в
начало или другое место.
Формат ШхВ (по умолчанию - то же, что и исходный).
-aspect [:поток_спецификатор] внешний вид (вывод, на поток)
Установите соотношение сторон дисплея видео, указанное внешний вид.
внешний вид может быть числовой строкой с плавающей запятой или строкой в форме Num:день, Где
Num и день - числитель и знаменатель соотношения сторон. Например "4: 3",
«16: 9», «1.3333» и «1.7777» являются допустимыми значениями аргументов.
Если используется вместе с -вкодек копия, это повлияет на соотношение сторон, сохраненное в
уровень контейнера, но не соотношение сторон, сохраненное в закодированных кадрах, если оно существует.
-вн (выходной)
Отключить запись видео.
-вкодек кодер-декодер (выходной)
Установите видеокодек. Это псевдоним для "-codec: v".
-проходят[:поток_спецификатор] n (вывод, на поток)
Выберите номер пропуска (1 или 2). Он используется для двухпроходного кодирования видео. В
статистика видео записывается при первом проходе в файл журнала (см. также
option -passlogfile), а во втором проходе этот файл журнала используется для генерации
видео с точно запрошенным битрейтом. На первом проходе вы можете просто отключить звук и
установите для вывода значение null, примеры для Windows и Unix:
ffmpeg -i foo.mov -c: v libxvid -pass 1 -an -f rawvideo -y NUL
ffmpeg -i foo.mov -c: v libxvid -pass 1 -an -f rawvideo -y / dev / null
-passlogfile [:поток_спецификатор] префикс (вывод, на поток)
Установите префикс имени файла журнала для двух проходов на префикс, префикс имени файла по умолчанию -
`` ffmpeg2pass ''. Полное имя файла будет ПРЕФИКС-N.log, где N - число
специфичный для выходного потока
-vf фильтрграф (выходной)
Создайте фильтрграф, указанный фильтрграф и используйте его для фильтрации потока.
Это псевдоним для "-filter: v", см. -фильтр вариант.
Фильтр Видео кредита
-pix_fmt [:поток_спецификатор] формат (ввод / вывод, на поток)
Установите формат пикселей. Используйте «-pix_fmts», чтобы показать все поддерживаемые форматы пикселей. Если
выбранный формат пикселей не может быть выбран, ffmpeg напечатает предупреждение и выберет
лучший формат пикселей, поддерживаемый кодировщиком. Если pix_fmt имеет префикс "+", ffmpeg
выйдет с ошибкой, если запрошенный формат пикселей не может быть выбран, и
автоматические преобразования внутри графов фильтров отключены. Если pix_fmt это одиночный "+",
ffmpeg выбирает тот же формат пикселей, что и ввод (или вывод графика), и автоматически
преобразования отключены.
-sws_flags Флаги (ввод, вывод)
Установите флаги SwScaler.
-вдт n
Отменить порог.
-rc_override [:поток_спецификатор] переопределение (вывод, на поток)
Переопределение управления скоростью для определенных интервалов, отформатированных как список "int, int, int"
разделены косой чертой. Два первых значения - это номера начального и конечного кадра, последнее
один - квантователь, если он положительный, или коэффициент качества, если он отрицательный.
-илме
Поддержка принудительной чересстрочной развертки в кодировщике (только MPEG-2 и MPEG-4). Используйте эту опцию, если
ваш входной файл чересстрочный, и вы хотите сохранить чересстрочный формат как минимум
убытки. Альтернативой является деинтерлейсинг входного потока с помощью - деинтерлейс, Но
деинтерлейсинг приносит убытки.
-пснр
Рассчитайте PSNR сжатых кадров.
-vstats
Выгрузить статистику кодирования видео в vstats_ЧЧММСС.log.
-vstats_file файл
Выгрузить статистику кодирования видео в файл.
-верхняя[:поток_спецификатор] n (вывод, на поток)
top = 1 / bottom = 0 / auto = -1 первое поле
-Округ Колумбия точность
Intra_dc_precision.
-vtag fourcc / тег (выходной)
Принудительный тег видео / fourcc. Это псевдоним для «-tag: v».
-qphist (Глобальный)
Показать гистограмму QP
-vbsf битовый_фильтр
Устарело см. -Bsf
-force_key_frames [:поток_спецификатор] время[,время...] (вывод, на поток)
-force_key_frames [:поток_спецификатор] выражение:выраж (вывод, на поток)
Принудительно установить ключевые кадры в указанные временные метки, точнее в первые кадры после
каждый указанный раз.
Если аргумент имеет префикс «expr:», строка выраж интерпретируется как
выражение и оценивается для каждого кадра. Ключевой кадр принудительно используется в случае
оценка не нулевая.
Если один из времен - "" главы "[дельта] ", он расширен до времени
начало всех глав в файле, смещенное на дельта, выраженное как время в
секунд. Эта опция может быть полезна, чтобы убедиться, что точка поиска присутствует в
метка главы или любое другое обозначенное место в выходном файле.
Например, чтобы вставить ключевой кадр через 5 минут плюс ключевые кадры за 0.1 секунды до
начало каждой главы:
-force_key_frames 0: 05: 00, главы-0.1
Выражение в выраж может содержать следующие константы:
n номер текущего обрабатываемого кадра, начиная с 0
n_ принудительно
количество принудительных кадров
prev_formed_n
номер предыдущего принудительного кадра, это "NAN", если не было принудительного ключевого кадра.
еще
prev_formed_t
время предыдущего принудительного кадра, это "NAN", если еще не было принудительно задано ни одного ключевого кадра.
t время текущего обрабатываемого кадра
Например, чтобы принудительно отображать ключевой кадр каждые 5 секунд, вы можете указать:
-force_key_frames выражение: gte (t, n_force * 5)
Для принудительной установки ключевого кадра через 5 секунд после последнего принудительного кадра, начиная с
второй 13:
-force_key_frames expr: if (isnan (prev_formed_t), gte (t, 13), gte (t, prev_forced_t + 5))
Обратите внимание, что форсирование слишком большого количества ключевых кадров очень вредно для алгоритмов опережающего просмотра.
определенные кодировщики: использование параметров фиксированной группы изображений или аналогичных было бы более эффективным.
-copyinkf [:поток_спецификатор] (вывод, на поток)
При копировании потока копируйте также неключевые кадры, найденные в начале.
-hwaccel [:поток_спецификатор] Hwaccel (ввод, на поток)
Используйте аппаратное ускорение для декодирования совпадающих потоков. Допустимые значения
Hwaccel составляют:
нет
Не использовать аппаратное ускорение (по умолчанию).
автоматический
Автоматический выбор метода аппаратного ускорения.
VDA Используйте аппаратное ускорение Apple VDA.
вдпау
Используйте аппаратное ускорение VDPAU (Video Decode and Presentation API for Unix).
dxva2
Используйте аппаратное ускорение DXVA2 (DirectX Video Acceleration).
Эта опция не действует, если выбранный hwaccel недоступен или не поддерживается
выбранный декодер.
Обратите внимание, что большинство методов ускорения предназначены для воспроизведения и не будут быстрее
чем программное декодирование на современных процессорах. Кроме того, FFmpeg обычно нужно скопировать
декодированные кадры из памяти графического процессора в системную память, в результате чего в дальнейшем
потеря производительности. Таким образом, эта опция в основном полезна для тестирования.
-hwaccel_device [:поток_спецификатор] hwaccel_device (ввод, на поток)
Выберите устройство, которое будет использоваться для аппаратного ускорения.
Этот вариант имеет смысл только тогда, когда -hwaccel опция также указывается. Его точный
значение зависит от конкретного выбранного метода аппаратного ускорения.
вдпау
Для VDPAU этот параметр указывает используемый дисплей / экран X11. Если эта опция
не указано, значение ДИСПЛЕЙ переменная окружения используется
dxva2
Для DXVA2 эта опция должна содержать номер используемого видеоадаптера.
Если этот параметр не указан, используется адаптер по умолчанию.
-hwaccels
Перечислите все методы аппаратного ускорения, поддерживаемые в этой сборке ffmpeg.
Аудио Возможности
-рамки номер (выходной)
Установите количество аудиокадров для вывода. Это псевдоним для «-frames: a».
-ar [:поток_спецификатор] частота (ввод / вывод, на поток)
Установите частоту дискретизации звука. Для выходных потоков по умолчанию установлено значение
частота соответствующего входного потока. Для входных потоков эта опция делает только
sense для устройств захвата звука и необработанных демультиплексоров и сопоставляется с соответствующими
параметры демультиплексора.
-ак q (выходной)
Установите качество звука (зависит от кодека, VBR). Это псевдоним для -q: a.
-ac [:поток_спецификатор] каналы (ввод / вывод, на поток)
Установите количество аудиоканалов. Для выходных потоков по умолчанию установлено значение
количество входных аудиоканалов. Для входных потоков этот параметр имеет смысл только для
устройства захвата звука и необработанные демультиплексоры и сопоставлены с соответствующим демультиплексором
настройки.
-an (выходной)
Отключить запись звука.
-акодек кодер-декодер (ввод, вывод)
Установите аудиокодек. Это псевдоним для "-codec: a".
-sample_fmt [:поток_спецификатор] sample_fmt (вывод, на поток)
Установите формат аудио образца. Используйте "-sample_fmts", чтобы получить список поддерживаемых образцов.
форматов.
-af фильтрграф (выходной)
Создайте фильтрграф, указанный фильтрграф и используйте его для фильтрации потока.
Это псевдоним для "-filter: a", см. -фильтр вариант.
Фильтр Аудио кредита
-атаг fourcc / тег (выходной)
Заставить аудио тег / fourcc. Это псевдоним для «-tag: a».
-абсф битовый_фильтр
Устарело, см. -Bsf
-guess_layout_max каналы (ввод, на поток)
Если какая-то раскладка входного канала неизвестна, попробуйте угадать, только ли она соответствует
максимально указанное количество каналов. Например, 2 сообщает FFmpeg признать 1
канал как моно и 2 канала как стерео, но не 6 каналов как 5.1. По умолчанию
всегда пытайтесь угадать. Используйте 0, чтобы отключить все угадывание.
подзаголовок кредита
-скодек кодер-декодер (ввод, вывод)
Установите кодек субтитров. Это псевдоним для "-codec: s".
-sn (выходной)
Отключить запись субтитров.
-sbsf битовый_фильтр
Устарело, см. -Bsf
Фильтр подзаголовок кредита
-fix_sub_duration
Исправьте продолжительность субтитров. Для каждого субтитра дождитесь следующего пакета в том же
Stream и отрегулируйте продолжительность первого, чтобы избежать дублирования. Это необходимо с
некоторые кодеки субтитров, особенно субтитры DVB, потому что продолжительность в оригинале
пакет - это только приблизительная оценка, и конец фактически отмечен пустым субтитром
Рамка. Если не использовать эту опцию при необходимости, это может привести к завышенной продолжительности.
или сбои мультиплексирования из-за немонотонных временных меток.
Обратите внимание, что эта опция задержит вывод всех данных до следующего пакета субтитров.
декодируется: это может значительно увеличить потребление памяти и задержку.
-размер холста размер
Установите размер холста, используемого для рендеринга субтитров.
Фильтр кредита
-map [-]input_file_id[:поток_спецификатор] [,sync_file_id[:поток_спецификатор]] | [метка ссылки]
(выходной)
Назначьте один или несколько входных потоков в качестве источника для выходного файла. Каждый входной поток
идентифицируется индексом входного файла input_file_id и индекс входного потока
input_stream_id во входном файле. Оба индекса начинаются с 0. Если указано,
sync_file_id:поток_спецификатор устанавливает, какой входной поток используется в качестве синхронизации презентации
Справка.
Первая опция «-map» в командной строке указывает источник для выходного потока 0,
вторая опция «-map» указывает источник для выходного потока 1 и т. д.
Символ «-» перед идентификатором потока создает «отрицательное» отображение. Это
отключает соответствующие потоки из уже созданных сопоставлений.
Альтернатива [метка ссылки] форма будет отображать выходные данные из сложных графов фильтров (см.
-filter_complex option) в выходной файл. ссылка должен соответствовать определенному
метка выходной ссылки на графике.
Например, чтобы отобразить ВСЕ потоки из первого входного файла в выходной
ffmpeg -i INPUT -map 0 вывод
Например, если у вас есть два аудиопотока в первом входном файле, эти потоки
обозначается «0: 0» и «0: 1». Вы можете использовать "-map", чтобы выбрать, какие потоки поместить в
выходной файл. Например:
ffmpeg -i ВХОД -map 0: 1 out.wav
отобразит входной поток в ВХОД идентифицируется как "0: 1" для (одиночного) выходного потока
in out.wav.
Например, чтобы выбрать поток с индексом 2 из входного файла а.мов (указано
идентификатор "0: 2") и поток с индексом 6 из ввода б.мов (указано
идентификатор "1: 6") и скопируйте их в выходной файл out.mov:
ffmpeg -i a.mov -i b.mov -c copy -map 0: 2 -map 1: 6 out.mov
Чтобы выбрать все видео и третий аудиопоток из входного файла:
ffmpeg -i ВХОД -map 0: v -map 0: a: 2 ВЫХОД
Чтобы сопоставить все потоки, кроме второго аудио, используйте отрицательные сопоставления
ffmpeg -i ВХОД -map 0 -map -0: a: 1 ВЫХОД
Чтобы выбрать аудиопоток на английском языке:
ffmpeg -i ВХОД -map 0: m: язык: eng ВЫВОД
Обратите внимание, что использование этой опции отключает сопоставления по умолчанию для этого выходного файла.
-ignore_unknown
Игнорировать входные потоки с неизвестным типом вместо сбоя, если копирование таких потоков
попытался.
-copy_unknown
Разрешить копирование входных потоков с неизвестным типом вместо сбоя при копировании таких
потоков.
-map_channel
[input_file_id.поток_спецификатор.идентификатор_канала| -1] [:выходной_файл_id.поток_спецификатор]
Сопоставьте аудиоканал от данного входа к выходу. Если
выходной_файл_id.поток_спецификатор не установлен, аудиоканал будет отображаться на всех
аудиопотоки.
Использование «-1» вместо input_file_id.поток_спецификатор.идентификатор_канала отобразит приглушенный
канал.
Например, если предположить ВХОД стерео аудиофайл, вы можете переключать два аудио
каналы с помощью следующей команды:
ffmpeg -i ВХОД -map_channel 0.0.1 -map_channel 0.0.0 ВЫХОД
Если вы хотите отключить звук первого канала и оставить второй:
ffmpeg -i ВХОД -map_channel -1 -map_channel 0.0.1 ВЫХОД
Порядок параметра "-map_channel" определяет порядок каналов в
выходной поток. Расположение выходных каналов определяется по количеству сопоставленных каналов.
(моно, если один "-map_channel", стерео, если два, и т. д.). Использование "-ac" в сочетании с
"-map_channel" обновляет уровни усиления канала, если входной и выходной канал
макеты не совпадают (например, две опции "-map_channel" и "-ac 6").
Вы также можете выделить каждый канал входа на определенные выходы; следующее
команда извлекает два канала из ВХОД аудиопоток (файл 0, поток 0) в
те ВЫХОД_CH0 и ВЫХОД_CH1 выходы:
ffmpeg -i INPUT -map_channel 0.0.0 OUTPUT_CH0 -map_channel 0.0.1 OUTPUT_CH1
В следующем примере каналы стереовхода разделяются на два отдельных потока.
которые помещаются в тот же выходной файл:
ffmpeg -i stereo.wav -map 0: 0 -map 0: 0 -map_channel 0.0.0: 0.0 -map_channel 0.0.1: 0.1 -y out.ogg
Обратите внимание, что в настоящее время каждый выходной поток может содержать каналы только с одного входа.
ручей; вы не можете, например, использовать "-map_channel" для выбора нескольких входных аудиоканалов
содержащихся в разных потоках (из одного или разных файлов) и объединить их в
единый выходной поток. Поэтому в настоящее время невозможно, например, повернуть
два отдельных монопотока в один стереопоток. Однако разделение стерео
возможен поток в два одноканальных монопотока.
Если вам нужна эта функция, одним из возможных обходных путей является использование объединять фильтр. За
Например, если вам нужно объединить медиа (здесь вход.mkv) с 2 монофоническими аудиопотоками в
один аудиопоток стереоканала (и сохранить видеопоток), вы можете использовать
следующая команда:
ffmpeg -i input.mkv -filter_complex "[0: 1] [0: 2] amerge" -c: a pcm_s16le -c: v копировать output.mkv
-map_metadata [:метаданные_spec_out] вводить[:метаданные_spec_in] (вывод, по метаданным)
Установить информацию метаданных следующего выходного файла из вводить. Обратите внимание, что это файл
индексы (с нуля), а не имена файлов. По желанию metadata_spec_in / out параметры
укажите, какие метаданные копировать. Спецификатор метаданных может иметь следующие формы:
g глобальные метаданные, то есть метаданные, которые применяются ко всему файлу
s[:поток_спец]
метаданные для каждого потока. поток_спец - спецификатор потока, как описано в Поток
спецификаторы глава. В спецификаторе входных метаданных первым совпадающим потоком является
скопировано из. В спецификаторе выходных метаданных копируются все совпадающие потоки.
c:индекс_главы
метаданные для каждой главы. индекс_главы отсчитываемый от нуля указатель глав.
p:индекс_программы
метаданные для каждой программы. индекс_программы - индекс программы с отсчетом от нуля.
Если спецификатор метаданных опущен, по умолчанию используется глобальный.
По умолчанию глобальные метаданные копируются из первого входного файла для каждого потока и каждого потока.
метаданные главы копируются вместе с потоками / главами. Эти сопоставления по умолчанию
отключено путем создания любого сопоставления соответствующего типа. Отрицательный индекс файла может быть
используется для создания фиктивного сопоставления, которое просто отключает автоматическое копирование.
Например, чтобы скопировать метаданные из первого потока входного файла в глобальный
метаданные выходного файла:
ffmpeg -i in.ogg -map_metadata 0: s: 0 out.mp3
Чтобы сделать обратное, то есть скопировать глобальные метаданные во все аудиопотоки:
ffmpeg -i in.mkv -map_metadata: s: a 0: g out.mkv
Обратите внимание, что простой 0 также будет работать в этом примере, поскольку глобальные метаданные
предполагается по умолчанию.
-map_chapters input_file_index (выходной)
Копировать главы из входного файла с индексом input_file_index в следующий выходной файл. Если
сопоставление глав не указано, главы копируются из первого входного файла
хотя бы с одной главой. Используйте отрицательный индекс файла, чтобы отключить любое копирование глав.
-бенчмарк (Глобальный)
Показывать контрольную информацию в конце кодирования. Показывает используемое время ЦП и
максимальное потребление памяти. Максимальное потребление памяти поддерживается не на всех
систем, он обычно отображается как 0, если не поддерживается.
-benchmark_all (Глобальный)
Показывать контрольную информацию во время кодирования. Показывает процессорное время, используемое на различных этапах
(кодирование / декодирование аудио / видео).
-лимит времени продолжительность (Глобальный)
Выйти после того, как ffmpeg был запущен в течение продолжительность секунд.
-дамп (Глобальный)
Выгрузите каждый входной пакет в stderr.
-шестнадцатеричный (Глобальный)
При выгрузке пакетов также выгружайте полезную нагрузку.
-re (вход)
Чтение ввода с исходной частотой кадров. В основном используется для имитации захвата. или живой ввод
поток (например, при чтении из файла). Не следует использовать с настоящими грейферами или
живые входные потоки (где это может привести к потере пакетов). По умолчанию FFmpeg пытается
прочтите ввод (ы) как можно быстрее. Эта опция замедлит чтение
input (s) с собственной частотой кадров ввода (ов). Это полезно для вывода в реальном времени
(например, прямая трансляция).
-loop_input
Прокрутите входной поток. В настоящее время работает только с потоками изображений. Этот вариант
используется для автоматического тестирования FFserver. Эта опция устарела, используйте -loop 1.
-loop_output количество раз
Повторно зацикливать вывод для форматов, поддерживающих зацикливание, таких как анимированный GIF (0 будет
зацикливать вывод бесконечно). Эта опция устарела, используйте -loop.
-vsync параметр
Метод синхронизации видео. По соображениям совместимости старые значения могут быть указаны как числа.
Новые добавленные значения всегда должны указываться как строки.
0, сквозной
Каждый кадр передается от демультиплексора к мультиплексору со своей меткой времени.
1, ЧФР
Кадры будут дублироваться и удаляться, чтобы достичь точно запрошенной константы.
частота кадров.
2, VFR
Кадры передаются с их отметкой времени или отбрасываются, чтобы предотвратить 2
кадры с одинаковой меткой времени.
падение
Как сквозной, но уничтожает все временные метки, заставляя мультиплексор генерировать свежие
временные метки на основе частоты кадров.
-1, автоматический
Выбирает от 1 до 2 в зависимости от возможностей мультиплексора. Это по умолчанию
метод.
Обратите внимание, что после этого временные метки могут быть изменены мультиплексором. За
Например, в случае, если параметр формата избежать_негативных_ц включен.
С помощью -map вы можете выбрать, из какого потока следует брать отметки времени. Ты сможешь
оставьте видео или аудио без изменений и синхронизируйте оставшиеся потоки с
неизменный.
-frame_drop_threshold параметр
Порог отбрасывания кадров, который указывает, насколько видеокадры могут отставать до того, как они
сброшены. В единицах частоты кадров 1.0 - это один кадр. По умолчанию -1.1. Один
возможный вариант использования - избегать кадровых капель в случае зашумленных временных меток или увеличивать
точность падения кадра в случае точных отметок времени.
-асинхронный Samples_per_second
Метод синхронизации звука. "Растягивает / сжимает" аудиопоток в соответствии с отметками времени,
Параметр - это максимальное количество отсчетов в секунду, на которое изменяется звук. -async 1
это особый случай, когда исправляется только начало аудиопотока без каких-либо
позднее исправление.
Обратите внимание, что после этого временные метки могут быть изменены мультиплексором. За
Например, в случае, если параметр формата избежать_негативных_ц включен.
Эта опция устарела. Вместо этого используйте звуковой фильтр "aresample".
-копии
Не обрабатывать временные метки ввода, но сохранять их значения, не пытаясь очистить
их. В частности, не удаляйте начальное значение смещения времени начала.
Обратите внимание, что в зависимости от VSync вариант или на конкретную обработку мультиплексора (например, в случае
вариант формата избежать_негативных_ц включен) временные метки вывода могут не совпадать
с метками времени ввода, даже если выбран этот параметр.
-start_at_zero
При использовании с копии, сдвиньте временные метки ввода, чтобы они начинались с нуля.
Это означает, что при использовании, например, "-ss 50" метки времени вывода начинаются с 50 секунд,
независимо от того, с какой отметки времени начался входной файл.
-copytb Режим
Укажите, как установить временную развертку кодировщика при копировании потока. Режим целое число
числовое значение и может принимать одно из следующих значений:
1 Используйте временную развертку демультиплексора.
База времени копируется в выходной кодер с соответствующего входа.
демультиплексор. Иногда это требуется, чтобы избежать немонотонного увеличения
отметки времени при копировании видеопотоков с переменной частотой кадров.
0 Используйте временную развертку декодера.
База времени копируется в выходной кодер с соответствующего входа.
декодер.
-1 Попробуйте сделать выбор автоматически, чтобы получить нормальный результат.
Значение по умолчанию -1.
-коротчайший (выходной)
Завершите кодирование, когда закончится самый короткий входной поток.
-dts_delta_threshold
Дельта-порог разрыва временной метки.
-muxdelay секунды (вход)
Установите максимальную задержку демультиплексирования.
-muxpreload секунды (вход)
Установите начальную задержку демультиплексирования.
-streamid выходной поток-индекс:новое значение (выходной)
Назначьте новое значение идентификатора потока выходному потоку. Этот вариант следует указать
перед выходным именем файла, к которому он применяется. Для ситуации, когда несколько
выходные файлы существуют, streamid можно переназначить на другое значение.
Например, чтобы установить PID потока 0 на 33 и PID потока 1 на 36 для вывода
mpegts файл:
ffmpeg -i infile -streamid 0:33 -streamid 1:36 out.ts
-bsf [:поток_спецификатор] битстрим_фильтры (вывод, на поток)
Установите фильтры битового потока для сопоставления потоков. битстрим_фильтры через запятую
список фильтров битового потока. Используйте опцию "-bsfs", чтобы получить список битового потока.
фильтры.
ffmpeg -i h264.mp4 -c: v copy -bsf: v h264_mp4toannexb -an out.h264
ffmpeg -i file.mov -an -vn -bsf: s mov2textsub -c: s copy -f rawvideo sub.txt
-тег[:поток_спецификатор] codec_tag (ввод / вывод, на поток)
Установите тег / fourcc для сопоставления потоков.
-таймкод hh:mm:ssСентябрьff
Укажите временной код для записи. Сентябрь это ':' для тайм-кода без выпадения и ';' (или '.') для
понижаться.
ffmpeg -i input.mpg -timecode 01: 02: 03.04 -r 30000/1001 -s ntsc output.mpg
-filter_complex фильтрграф (Глобальный)
Определите сложный граф фильтра, то есть с произвольным числом входов и / или выходов.
Для простых графиков - с одним входом и одним выходом одного типа - см.
-фильтр настройки. фильтрграф это описание графа фильтров, как описано в
Раздел `` Синтаксис Filtergraph '' руководства ffmpeg-filters.
Ярлыки входных ссылок должны относиться к входным потокам с использованием
Синтаксис "[file_index: stream_specifier]" (т. е. такой же, как -map использует). Если
поток_спецификатор соответствует нескольким потокам, будет использован первый. Немаркированный
input будет подключен к первому неиспользуемому входному потоку соответствующего типа.
Метки выходных ссылок обозначаются -map. Непомеченные выходы добавляются к первому
выходной файл.
Обратите внимание, что с этой опцией можно использовать только источники lavfi без обычных
входные файлы.
Например, чтобы наложить изображение на видео
ffmpeg -i video.mkv -i image.png -filter_complex '[0: v] [1: v] overlay [out]' -map
'[out]' out.mkv
Здесь «[0: v]» относится к первому видеопотоку в первом входном файле, который связан
на первый (основной) вход оверлейного фильтра. Аналогично первый видеопоток в
второй вход связан со вторым (оверлейным) входом оверлея.
Предполагая, что в каждом входном файле есть только один видеопоток, мы можем опустить метки входа,
так что приведенное выше эквивалентно
ffmpeg -i video.mkv -i image.png -filter_complex 'overlay [out]' -map
'[out]' out.mkv
Кроме того, мы можем опустить метку вывода и единственный вывод из графа фильтра.
будет добавлен в выходной файл автоматически, поэтому мы можем просто написать
ffmpeg -i video.mkv -i image.png -filter_complex 'оверлей' out.mkv
Чтобы сгенерировать 5 секунд чистого красного видео с использованием источника lavfi "color":
ffmpeg -filter_complex 'цвет = c = красный' -t 5 out.mkv
-лавфи фильтрграф (Глобальный)
Определите сложный граф фильтра, то есть с произвольным числом входов и / или выходов.
Эквивалентно -filter_complex.
-filter_complex_script имя файла (Глобальный)
Этот вариант похож на -filter_complex, с той лишь разницей, что его аргумент
имя файла, из которого следует прочитать описание сложного графа фильтра.
-accurate_seek (вход)
Эта опция включает или отключает точный поиск во входных файлах с -ss опцию.
По умолчанию он включен, поэтому при перекодировании поиск выполняется точно. Использовать
-noaccurate_seek чтобы отключить его, что может быть полезно, например, при копировании некоторых потоков и
перекодирование остальных.
-seek_timestamp (вход)
Эта опция включает или отключает поиск по метке времени во входных файлах с -ss
вариант. По умолчанию он отключен. Если включено, аргумент -ss опция
считается фактической меткой времени и не компенсируется временем начала файла. Этот
имеет значение только для файлов, которые не начинаются с отметки времени 0, например транспортных потоков.
-thread_queue_size размер (вход)
Эта опция устанавливает максимальное количество пакетов в очереди при чтении из файла или
устройство. При потоковой передаче с низкой задержкой / высокой скоростью пакеты могут быть отброшены, если они
не читаются своевременно; повышение этого значения может избежать этого.
-override_ffсервер (Глобальный)
Переопределяет входные спецификации из ффсервер. Используя эту опцию, вы можете сопоставить любой
входной поток в ффсервер и контролировать многие аспекты кодирования из FFmpeg, Без
этот вариант FFmpeg будет передавать ффсервер что требует ффсервер.
Опция предназначена для случаев, когда требуются функции, которые нельзя указать для
ффсервер но может быть FFmpeg.
-sdp_file файл (Глобальный)
Распечатать информацию sdp для выходного потока в файл. Это позволяет сбрасывать sdp
информация, когда хотя бы один выход не является потоком rtp. (Требуется хотя бы один из
форматы вывода должны быть rtp).
-отказаться (вход)
Позволяет отбрасывать определенные потоки или кадры потоков в демультиплексоре. Не все
демультиплексоры поддерживают это.
нет
Не отбрасывайте ни одного кадра.
по умолчанию
По умолчанию, при котором фреймы не отбрасываются.
норэф
Отбросьте все нереференсные кадры.
бидир
Отбросьте все двунаправленные кадры.
нет ключа
Отменить все кадры, кроме ключевых кадров.
ВСЕ Отменить все кадры.
-xerror (Глобальный)
Остановить и выйти при ошибке
В качестве особого исключения вы можете использовать в качестве входных данных поток растровых субтитров: он будет
конвертируется в видео того же размера, что и самое большое видео в файле, или 720x576, если
видео нет. Обратите внимание, что это экспериментальное и временное решение. Это будет
удаляется, когда libavfilter правильно поддерживает субтитры.
Например, чтобы жестко закодировать субтитры поверх записи DVB-T, хранящейся в формате MPEG-TS,
задержка субтитров на 1 секунду:
ffmpeg -i input.ts -filter_complex \
'[# 0x2ef] setpts = PTS + 1 / TB [sub]; [# 0x2d0] [под] оверлей '\
-sn -map '# 0x2dc' output.mkv
(0x2d0, 0x2dc и 0x2ef - идентификаторы PID MPEG-TS соответственно видео, аудио и
субтитры потоков; 0: 0, 0: 3 и 0: 7 тоже сработали бы)
Предустановленная файлов
Файл предустановок содержит последовательность вариант=ценностное пары, по одной для каждой строки, с указанием
последовательность опций, которые было бы неудобно указывать в командной строке. Линии начинаются
с символом решетки ('#') игнорируются и используются для комментариев. Проверить
пресеты каталог в дереве исходных текстов FFmpeg для примеров.
Есть два типа файлов предустановок: файлы ffpreset и avpreset.
ffpreset файлов
Файлы ffpreset указываются с параметрами «vpre», «apre», «spre» и «fpre». В
Параметр "fpre" принимает имя файла предустановки вместо имени предустановки в качестве входных данных и может
использоваться для любого кодека. Для параметров "vpre", "apre" и "spre" параметры
указанные в файле предустановок, применяются к текущему выбранному кодеку того же типа, что и
предустановленный вариант.
Аргумент, переданный параметрам предустановки "vpre", "apre" и "spre", определяет предустановку.
файл использовать в соответствии со следующими правилами:
Сначала ffmpeg ищет файл с именем аргумент.ffpreset в каталогах $ FFMPEG_DATADIR (если
набор), и $ HOME / .ffmpeg, и в каталоге данных, определенном во время настройки (обычно
ПРЕФИКС / share / ffmpeg) или в ffpresets папка по исполняемому файлу на win32, в этом
приказ. Например, если аргумент - «libvpx-1080p», он будет искать файл
libvpx-1080p.ffпредустановка.
Если такой файл не найден, то ffmpeg будет искать файл с именем имя_кодека-аргумент.ffpreset
в вышеупомянутых каталогах, где имя_кодека это имя кодека, к которому
будут применены предустановленные параметры файла. Например, если вы выберете видеокодек с
"-vcodec libvpx" и используйте "-vpre 1080p", тогда он будет искать файл
libvpx-1080p.ffпредустановка.
авпресет файлов
Файлы avpreset указываются с параметром «pre». Они работают аналогично файлам ffpreset,
но они допускают только параметры, специфичные для кодировщика. Следовательно, вариант=ценностное пара с указанием
кодировщик использовать нельзя.
Если указана опция «pre», ffmpeg будет искать файлы с расширением .avpreset.
в каталогах $ AVCONV_DATADIR (если установлено), и $ HOME / .avconv, а в datadir определенном
во время настройки (обычно ПРЕФИКС / share / ffmpeg), в этой последовательности.
Сначала ffmpeg ищет файл с именем имя_кодека-аргумент.avpreset в вышеупомянутом
каталоги, где имя_кодека это имя кодека, для которого предустановленные параметры файла
будет применяться. Например, если вы выбираете видеокодек с помощью «-vcodec libvpx» и используете
"-pre 1080p", тогда он будет искать файл libvpx-1080p.avpreset.
Если такой файл не найден, то ffmpeg будет искать файл с именем аргумент.avpreset в
те же каталоги.
ПРИМЕРЫ
Видео и Аудио захват
Если вы укажете формат ввода и устройство, тогда ffmpeg сможет напрямую захватывать видео и аудио.
ffmpeg -f oss -i / dev / dsp -f video4linux2 -i / dev / video0 /tmp/out.mpg
Или с аудиоисточником ALSA (моновход, идентификатор карты 1) вместо OSS:
ffmpeg -f alsa -ac 1 -i hw: 1 -f video4linux2 -i / dev / video0 /tmp/out.mpg
Обратите внимание, что перед запуском ffmpeg необходимо активировать правильный источник видео и канал.
с любым телезрителем, напримерhttp://linux.bytesex.org/xawtv/> Автор: Герд Кнорр. У вас также есть
для правильной установки уровней записи звука с помощью стандартного микшера.
X11 захват
Возьмите дисплей X11 с помощью ffmpeg через
ffmpeg -f x11grab -video_size cif -framerate 25 -i: 0.0 /tmp/out.mpg
0.0 - это номер экрана display.screen вашего сервера X11, то же самое, что и переменная среды DISPLAY.
ffmpeg -f x11grab -video_size cif -framerate 25 -i: 0.0 + 10,20 /tmp/out.mpg
0.0 - это номер экрана display.screen вашего сервера X11, то же самое, что и переменная среды DISPLAY.
10 - это смещение по оси X, а 20 - смещение по оси Y для захвата.
Видео и Аудио файл формат Преобразование
Любой поддерживаемый формат файла и протокол могут служить входными данными для ffmpeg:
Примеры:
· В качестве входных данных можно использовать файлы YUV:
ffmpeg -i / tmp / test% dY /tmp/out.mpg
Он будет использовать файлы:
/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V и т. д.
Файлы Y используют вдвое большее разрешение, чем файлы U и V. Это необработанные файлы без
заголовок. Их могут генерировать все приличные видеодекодеры. Необходимо указать размер
изображения с -s вариант, если ffmpeg не может его угадать.
· Вы можете ввести из необработанного файла YUV420P:
ffmpeg -i /tmp/test.yuv /tmp/out.avi
test.yuv - это файл, содержащий необработанные планарные данные YUV. Каждый кадр состоит из Y
плоскость, за которой следуют плоскости U и V с половинным разрешением по вертикали и горизонтали.
· Вы можете выводить в необработанный файл YUV420P:
ffmpeg -i mydivx.avi огромный файл.yuv
· Вы можете установить несколько файлов ввода и файлов вывода:
ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg
Преобразует аудиофайл a.wav и необработанный видеофайл YUV a.yuv в файл MPEG a.mpg.
· Вы также можете одновременно преобразовывать аудио и видео:
ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2
Преобразует a.wav в аудио MPEG с частотой дискретизации 22050 Гц.
· Вы можете кодировать в несколько форматов одновременно и определять отображение из ввода
поток в потоки вывода:
ffmpeg -i /tmp/a.wav -map 0: a -b: a 64k /tmp/a.mp2 -map 0: a -b: a 128k /tmp/b.mp2
Преобразует a.wav в a.mp2 со скоростью 64 кбит и в b.mp2 со скоростью 128 кбит. '-map файл: индекс'
указывает, какой входной поток используется для каждого выходного потока, в порядке
определение выходных потоков.
· Вы можете перекодировать дешифрованные VOB:
ffmpeg -i snatch_1.vob -f avi -c: v mpeg4 -b: v 800k -g 300 -bf 2 -c: a libmp3lame -b: 128k snatch.avi
Это типичный пример копирования DVD; вход - файл VOB, выход - файл AVI
с видео в формате MPEG-4 и аудио в формате MP3. Обратите внимание, что в этой команде мы используем B-кадры, поэтому
Поток MPEG-4 совместим с DivX5, а размер GOP составляет 300, что означает один внутренний кадр.
каждые 10 секунд для входящего видео со скоростью 29.97 кадра в секунду. Кроме того, аудиопоток
Кодируется в формате MP3, поэтому вам нужно включить поддержку LAME, передав "--enable-libmp3lame" в
настроить. Сопоставление особенно полезно для перекодирования DVD, чтобы получить желаемый результат.
язык аудио.
ПРИМЕЧАНИЕ. Чтобы увидеть поддерживаемые форматы ввода, используйте «ffmpeg -formats».
· Вы можете извлекать изображения из видео или создавать видео из множества изображений:
Для извлечения изображений из видео:
ffmpeg -i foo.avi -r 1 -s WxH -f image2 foo-% 03d.jpeg
Это будет извлекать из видео один видеокадр в секунду и выводить их в
файлы, названные foo-001.jpeg, foo-002.jpegи т. д. Изображение будет изменено в соответствии с новым
Значения WxH.
Если вы хотите извлечь только ограниченное количество кадров, вы можете использовать указанную выше команду
в сочетании с параметром -vframes или -t, или в сочетании с параметром -ss для запуска
извлечение с определенного момента времени.
Для создания видео из множества изображений:
ffmpeg -f изображение2 -framerate 12 -i foo-% 03d.jpeg -s WxH foo.avi
Синтаксис «foo-% 03d.jpeg» указывает на использование десятичного числа, состоящего из трех цифр.
дополненный нулями, чтобы выразить порядковый номер. Такой же синтаксис поддерживается
функция C printf, но подходят только форматы, принимающие нормальное целое число.
При импорте последовательности изображений -i также поддерживает подстановочный знак в стиле оболочки.
шаблоны (глобусы) внутри, путем выбора специфичного для image2 "-pattern_type glob"
опцию.
Например, для создания видео из имен файлов, соответствующих шаблону глобуса
"foo - *. jpeg":
ffmpeg -f image2 -pattern_type glob -framerate 12 -i 'foo - *. jpeg' -s WxH foo.avi
· Вы можете поместить в вывод несколько потоков одного типа:
ffmpeg -i test1.avi -i test2.avi -map 1: 1 -map 1: 0 -map 0: 1 -map 0: 0 -c copy -y test12.nut
Результирующий выходной файл test12.гайка будет содержать первые четыре потока из
входные файлы в обратном порядке.
· Для принудительного вывода видео CBR:
ffmpeg -i myfile.avi -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v
· Четыре параметра lmin, lmax, mblmin и mblmax используют единицы лямбда, но вы можете использовать
Константа QP2LAMBDA для простого преобразования из единиц q:
ffmpeg -i src.ext -lmax 21 * QP2LAMBDA dst.ext
СИНТАКСИС
В этом разделе описываются синтаксис и форматы, используемые библиотеками и инструментами FFmpeg.
квотирование и побег
FFmpeg использует следующий механизм кавычек и экранирования, если явно не указано иное.
Применяются следующие правила:
· ' и \ являются специальными символами (соответственно используются для цитирования и экранирования). В
в дополнение к ним могут быть другие специальные символы в зависимости от конкретных
синтаксис, в котором используются экранирование и кавычки.
· Специальный символ заменяется префиксом \.
· Все символы, заключенные между '' включены буквально в анализируемую строку. В
цитата персонаж ' сам по себе не может быть процитирован, поэтому вам может потребоваться закрыть цитату и
избежать этого.
· Начальные и конечные пробелы, если они не экранированы или не заключены в кавычки, удаляются из
проанализированная строка.
Обратите внимание, что вам может потребоваться добавить второй уровень экранирования при использовании командной строки или
сценарий, который зависит от синтаксиса принятого языка оболочки.
Функция av_get_token, определенная в libavutil / avstring.h может использоваться для анализа токена
процитировано или экранировано в соответствии с правилами, определенными выше.
Инструмент инструменты / ffescape в дереве исходного кода FFmpeg можно использовать для автоматического цитирования или
экранировать строку в скрипте.
Примеры
· Экранировать строку "Crime d'Amour", содержащую специальный символ "'":
Crime d \ 'Amour
· Строка выше содержит кавычки, поэтому при цитировании "'" необходимо экранировать:
'Преступление' \ '' Амур '
· Включите начальные или конечные пробелы, используя кавычки:
'эта строка начинается и заканчивается пробелами'
· Экранирование и цитирование можно смешивать вместе:
'Строка' \ 'строка \' '- это строка'
· Чтобы включить буквальный \ вы можете использовать либо экранирование, либо цитирование:
'c: \ foo' можно записать как c: \\ foo
Время
Принятый синтаксис:
[(ГГГГ-ММ-ДД | ГГГГММДД) [T | t | ]] ((ЧЧ: ММ: СС [.m ...]]]) | (ЧЧММСС [.m ...]]])) [Z]
сейчас
Если значение «сейчас», берется текущее время.
Время - местное, если не добавлено Z, и в этом случае оно интерпретируется как UTC. Если
часть год-месяц-день не указана, она принимает текущий год-месяц-день.
Время продолжительность
Есть два принятых синтаксиса для выражения продолжительности времени.
[-] [ :] : [. ...]
HH выражает количество часов, MM количество минут, состоящее максимум из 2 цифр, и
SS количество секунд до 2 цифр. В m в конце выражает десятичную дробь
значение для SS.
or
[-] + [. ...]
S выражает количество секунд с необязательной десятичной частью m.
В обоих выражениях необязательный - указывает отрицательную продолжительность.
Примеры
Следующие примеры являются действительной продолжительностью времени:
55 (55%)
12:03:45
12 часов 03 минут 45 секунд
23.189
(23.189%)
Видео размер
Укажите размер исходного видео, это может быть строка вида ширинаxвысота, или
название аббревиатуры размера.
Распознаются следующие сокращения:
нтск
720x480
приятель 720x576
qntsc
352x240
qpal
352x288
снц
640x480
спал
768x576
фильм
352x240
ntsc-фильм
352x240
sqcif
128x96
qcif
176x144
СИФ 352x288
4сиф
704x576
16сиф
1408x1152
qqvga
160x120
квга
320x240
VGA 640x480
SVGA
800x600
XGA 1024x768
Уксга
1600x1200
qxga
2048x1536
sxga
1280x1024
qsxga
2560x2048
hsxga
5120x4096
ввга
852x480
wxga
1366x768
WSXGA
1600x1024
Wuxga
1920x1200
Woxga
2560x1600
wqsxga
3200x2048
wquxga
3840x2400
Whsxga
6400x4096
Whuxga
7680x4800
CGA 320x200
EGA 640x350
hd480
852x480
hd720
1280x720
hd1080
1920x1080
2k 2048x1080
2кквартира
1998x1080
2кскоп
2048x858
4k 4096x2160
4кквартира
3996x2160
4кскоп
4096x1716
NHD 640x360
hqvga
240x160
wqvga
400x240
fwqvga
432x240
HVGA
480x320
QHD 960x540
2kdci
2048x1080
4kdci
4096x2160
UHD2160
3840x2160
UHD4320
7680x4320
Видео скорость
Укажите частоту кадров видео, выраженную в количестве кадров, генерируемых в секунду.
Это должна быть строка в формате Frame_rate_num/Frame_rate_den, целое число, a
число с плавающей запятой или допустимое сокращение частоты кадров видео.
Распознаются следующие сокращения:
нтск
30000/1001
приятель 25/1
qntsc
30000/1001
qpal
25/1
снц
30000/1001
спал
25/1
фильм
24/1
ntsc-фильм
24000/1001
Соотношение
Отношение может быть выражено как выражение или в форме числитель:знаменатель.
Обратите внимание, что соотношение с бесконечным (1/0) или отрицательным значением считается допустимым, поэтому вам следует
проверьте возвращаемое значение, если вы хотите исключить эти значения.
Неопределенное значение может быть выражено с помощью строки «0: 0».
Цвет
Это может быть имя цвета, как определено ниже (совпадение без учета регистра), или
Последовательность "[0x | #] RRGGBB [AA]", возможно, за которой следует @ и строка, представляющая альфа
компонент.
Альфа-компонент может быть строкой, состоящей из «0x», за которым следует шестнадцатеричное число или
десятичное число от 0.0 до 1.0, которое представляет значение непрозрачности (0x00 or 0.0
означает полностью прозрачный, 0xff or 1.0 полностью непрозрачный). Если альфа-компонент
не указано тогда 0xff предполагается.
Строка случайный приведет к случайному цвету.
Распознаются следующие названия цветов:
AliceBlue
0xF0F8FF
AntiqueWhite
0xFAEBD7
вода
0x00FFFF
Aquamarine
0x7FFFD4
Лазурный
0xF0FFFF
бежевый
0xF5F5DC
фора
0xFFE4C4
Черный
0x000000
BlanchedAlmond
0xFFEBCD
Blue
0x0000FF
Сине-фиолетовый
0x8A2BE2
Brown
0xA52A2A
БерлиВуд
0xDEB887
CadetBlue
0x5F9EA0
Картезианский монастырь
0x7FFF00
Шоколад
0xD2691E
коралловый
0xFF7F50
CornflowerBlue
0x6495ЭД
Cornsilk
0xFFF8DC
малиновый
0xDC143C
Голубой
0x00FFFF
Темно-синий
0x00008B
DarkCyan
0x008B8B
ТемныйЗолотойПрут
0xB8860B
Темно-серый
0xA9A9A9
Темно-зеленый
0x006400
DarkKhaki
0xBDB76B
DarkMagenta
0x8B008B
DarkOliveGreen
0x556B2F
темно-оранжевый
0xFF8C00
DarkOrchid
0x9932CC
Темно-красный
0x8B0000
DarkSalmon
0xE9967A
DarkSeaGreen
0x8FBC8F
DarkSlateBlue
0x483D8B
DarkSlateGray
0x2F4F4F
DarkTurquoise
0x00CED1
DarkViolet
0x9400D3
Темно-розовый
0xFF1493
DeepSkyBlue
0x00BFFF
DimGray
0x696969
DodgerBlue
0x1E90FF
огнеупорный кирпич
0xB22222
FloralWhite
0xFFFFAF0
Зеленый лес
0x228B22
Фуксия
0xFF00FF
Gainsboro
0xDCDCDC
GhostWhite
0xF8F8FF
Золото
0xFFD700
ЗолотойРод
0xDAA520
Серый
0x808080
Зелёная
0x008000
Желто-зеленый
0xADFF2F
Нектар
0xF0FFF0
Ярко-розовый
0xFF69B4
IndianRed
0xCD5C5C
Индиго
0x4B0082
слоновая кость
0xFFFFF0
Хаки
0xF0E68C
Лаванда
0xE6E6FA
LavenderBlush
0xFFF0F5
LawnGreen
0x7CFC00
LemonChiffon
0xFFFACD
Светло-синий
0xADD8E6
LightCoral
0xF08080
LightCyan
0xE0FFFF
СветЗолотойЖелтый
0xФАФАД2
Светло-зеленый
0x90EE90
Светло-серый
0xD3D3D3
Светло-розовый
0xFFB6C1
LightSalmon
0xFFA07A
LightSeaGreen
0x20B2AA
LightSkyBlue
0x87CEFA
LightSlateGray
0x778899
LightSteelBlue
0xB0C4DE
Светло-желтого
0xFFFFE0
известь
0x00FF00
LimeGreen
0x32CD32
Белье
0xFAF0E6
фуксин
0xFF00FF
Темно-бордовый
0x800000
MediumAquaMarine
0x66CDAA
MediumBlue
0x0000CD
MediumOrchid
0xBA55D3
MediumPurple
0x9370D8
MediumSeaGreen
0x3CB371
MediumSlateBlue
0x7B68EE
MediumSpringGreen
0x00FA9A
MediumTurquoise
0x48D1CC
MediumVioletRed
0xC71585
Темно-синий
0x191970
MintCream
0xF5FFFA
MistyRose
0xFFE4E1
мокасин
0xFFE4B5
NavajoWhite
0xFFDEAD
военно-морской флот
0x000080
OldLace
0xFDF5E6
оливки
0x808000
OliveDrab
0x6B8E23
Апельсин
0xFFA500
Оранжево-красный
0xFF4500
Orchid
0xDA70D6
БледныйЗолотой Род
0xEEE8AA
Бледно-зеленый
0x98FB98
PaleTurquoise
0xAFEEEE
PaleVioletRed
0xD87093
Папайя
0xFFEFD5
Peachpuff
0xFFDAB9
Перу
0xCD853F
Pink
0xFFC0CB
Слива
0xDDA0DD
PowderBlue
0xB0E0E6
Purple
0x800080
Red 0xFF0000
RosyBrown
0xBC8F8F
Королевский синий
0x4169E1
SaddleBrown
0x8B4513
Лосось
0xFA8072
Sandybrown
0xF4A460
Цвет морской волны
0x2E8B57
Морская ракушка
0xFFF5EE
Сиена
0xA0522D
Серебро
0xC0C0C0
Голубое небо
0x87CEEB
SlateBlue
0x6A5ACD
Шифер серый
0x708090
Снег
0xFFFAFA
ВеснаЗеленый
0x00FF7F
Стальной синий
0x4682B4
Загар 0xD2B48C
Чирок
0x008080
чертополох
0xD8BFD8
Помидор
0xFF6347
Бирюзовый
0x40E0D0
фиолетовый
0xEE82EE
пшеница
0xF5DEB3
Белый
0xFFFFFF
Белый дым
0xF5F5F5
Жёлтые
0xFFFF00
Желтый зеленый
0x9ACD32
Канал Планировка
Расположение каналов определяет пространственное расположение каналов в многоканальном
аудиопоток. Чтобы указать макет канала, FFmpeg использует специальный синтаксис.
Отдельные каналы идентифицируются идентификатором, как указано в таблице ниже:
FL передний левый
FR передний правый
FC передний центр
LFE низкая частота
BL назад влево
BR назад вправо
FLC спереди слева от центра
FRC спереди справа от центра
BC задний центр
SL сторона слева
SR сторона права
TC верхний центр
TFL верхний передний левый
КТФ верхний передний центр
TFR верхний передний правый
TBL вверху назад слева
TBC верхняя часть спины по центру
TBR вверху назад справа
DL понижающее микширование осталось
DR понижающее микширование справа
WL широкий левый
WR широкий правый
СДЛ объемное прямое левое
SDR объемное прямое правое
ЛФЭ2
низкая частота 2
Стандартные компоновки каналов можно указать с помощью следующих идентификаторов:
моно
FC
стерео
FL + FR
2.1 FL + FR + LFE
3.0 FL + FR + FC
3.0 (сзади)
FL + FR + BC
4.0 FL + FR + FC + BC
четырехъядерных
FL + FR + BL + BR
четырехъядерный (боковой)
FL + FR + SL + SR
3.1 FL + FR + FC + LFE
5.0 FL + FR + FC + BL + BR
5.0 (сбоку)
FL + FR + FC + SL + SR
4.1 FL + FR + FC + LFE + BC
5.1 FL + FR + FC + LFE + BL + BR
5.1 (сбоку)
FL + FR + FC + LFE + SL + SR
6.0 FL + FR + FC + BC + SL + SR
6.0 (передний)
FL + FR + FLC + FRC + SL + SR
шестиугольный
FL + FR + FC + BL + BR + BC
6.1 FL + FR + FC + LFE + BC + SL + SR
6.1 FL + FR + FC + LFE + BL + BR + BC
6.1 (передний)
FL + FR + LFE + FLC + FRC + SL + SR
7.0 FL + FR + FC + BL + BR + SL + SR
7.0 (передний)
FL + FR + FC + FLC + FRC + SL + SR
7.1 FL + FR + FC + LFE + BL + BR + SL + SR
7.1 (широкий)
FL + FR + FC + LFE + BL + BR + FLC + FRC
7.1 (широкая сторона)
FL + FR + FC + LFE + FLC + FRC + SL + SR
восьмиугольный
FL + FR + FC + BL + BR + BC + SL + SR
микширование
DL + DR
Пользовательский макет канала можно указать как последовательность терминов, разделенных знаком «+» или «|».
Каждый термин может быть:
· Название стандартного макета канала (например, моно, стерео, 4.0, четырехъядерных, 5.0И т.д.).
· Название отдельного канала (например, FL, FR, FC, LFEИ т.д.).
· Количество каналов в десятичном формате, за которым может следовать буква "c", что дает значение по умолчанию
расположение каналов для этого количества каналов (см. функцию
"av_get_default_channel_layout")
· Маска расположения каналов в шестнадцатеричном формате, начиная с «0x» (см. Макросы «AV_CH_ *» в
libavutil / channel_layout.h.
Начиная с libavutil версии 53, завершающий символ "c" указывает количество
каналов потребуются, в то время как маска макета канала также может быть указана как
десятичное число (тогда и только тогда, когда за ним не стоит "c").
См. Также функцию av_get_channel_layout, определенную в libavutil / channel_layout.h.
ЭКСПРЕССИЯ ОЦЕНКА
При вычислении арифметического выражения FFmpeg использует внутренний вычислитель формул,
реализуется через libavutil / eval.h интерфейс.
Выражение может содержать унарные, бинарные операторы, константы и функции.
Два выражения выражение1 и выражение2 можно объединить в другое выражение "выражение1;выражение2".
выражение1 и выражение2 оцениваются по очереди, и новое выражение оценивается как значение
выражение2.
Доступны следующие бинарные операторы: «+», «-», «*», «/», «^».
Доступны следующие унарные операторы: «+», «-».
Доступны следующие функции:
абс (х)
Вычислить абсолютное значение x.
acos (x)
Вычислить арккозин x.
asin (х)
Вычислить арксинус x.
атан (х)
Вычислить арктангенс x.
между (x, мин, Максимум)
Вернуть 1, если x Больше или равно мин и меньше или равно Макс, 0
в противном случае.
битанд (х, y)
битор (х, y)
Вычислить побитовое и / или операцию на x и y.
Результаты оценки x и y преобразуются в целые числа перед выполнением
побитовая операция.
Обратите внимание, что как преобразование в целое число, так и преобразование обратно в число с плавающей запятой могут
терять точность. Остерегайтесь неожиданных результатов для больших чисел (обычно 2 ^ 53 и
больше).
ceil (выражение)
Округлить значение выражения выраж вверх до ближайшего целого числа. Например,
«ceil (1.5)» равно «2.0».
клип (х, мин, Максимум)
Вернуть значение x зажат между мин и Макс.
сов (х)
Вычислить косинус x.
cosh (x)
Вычислить гиперболический косинус x.
уравнение (х, y)
Вернуть 1, если x и y эквивалентны, 0 в противном случае.
ехр (х)
Вычислить экспоненту x (с основанием «е», число Эйлера).
этаж (выражение)
Округлить значение выражения выраж вниз до ближайшего целого числа. Например,
«этаж (-1.5)» равен «-2.0».
гаусс (х)
Вычислить функцию Гаусса x, что соответствует выражению «exp (-x * x / 2) / sqrt (2 * PI)».
gcd (x, y)
Вернуть наибольший общий делитель x и y, Если оба x и y 0 или один или оба
меньше нуля, то поведение не определено.
gt (x, y)
Вернуть 1, если x больше y, 0 в противном случае.
gte (х, y)
Вернуть 1, если x Больше или равно y, 0 в противном случае.
гипотеза (х, y)
Эта функция похожа на одноименную функцию C; он возвращает "sqrt (x*x +
y*y) ", длина гипотенузы прямоугольного треугольника со сторонами длиной x и y,
или расстояние до точки (x, y) от происхождения.
если (х, y)
Оценивать x, и если результат ненулевой, вернуть результат оценки y,
в противном случае вернуть 0.
если (х, y, z)
Оценивать x, и если результат ненулевой, вернуть результат оценки yВ противном случае
результат оценки z.
если не (х, y)
Оценивать x, и если результат равен нулю, вернуть результат оценки y, возвращаться
0 в противном случае.
если не (х, y, z)
Оценивать x, и если результат равен нулю, вернуть результат оценки y, иначе
результат оценки z.
isinf (х)
Вернуть 1.0, если x равно +/- БЕСКОНЕЧНОСТЬ, в противном случае - 0.0.
иснан (х)
Вернуть 1.0, если x - это NAN, в противном случае - 0.0.
ld (var)
Загрузите значение внутренней переменной с номером вар, который ранее хранился
с st (вар, выраж). Функция возвращает загруженное значение.
войти (х)
Вычислить натуральный логарифм x.
lt (х, y)
Вернуть 1, если x меньше чем y, 0 в противном случае.
lte (х, y)
Вернуть 1, если x меньше или равно y, 0 в противном случае.
макс (х, y)
Вернуть максимум между x и y.
мин (х, y)
Вернуть максимум между x и y.
mod (x, y)
Вычислить остаток от деления x by y.
не (выражение)
Вернуть 1.0, если выраж равно нулю, иначе - 0.0.
pow (x, y)
Вычислить мощность x возвышенный y, это эквивалентно "(x) ^ (y). "
печать (т)
print (t, l)
Вывести значение выражения t с лог-уровнем l. Если l не указано, то по умолчанию
используется уровень журнала. Возвращает значение напечатанного выражения.
Печатает t с логическим уровнем l
случайный (x)
Вернуть псевдослучайное значение от 0.0 до 1.0. x индекс внутреннего
переменная, которая будет использоваться для сохранения начального числа / состояния.
корень (выражение, Максимум)
Найдите входное значение, для которого функция, представленная выраж с аргументом ld(0) is
0 в интервале 0 ..Макс.
Выражение в выраж должен обозначать непрерывную функцию, иначе результат не определен.
ld(0) используется для представления входного значения функции, что означает, что данный
выражение будет оцениваться несколько раз с различными входными значениями, которые
выражение может получить доступ через ld(0). Когда выражение оценивается как 0, тогда
будет возвращено соответствующее входное значение.
грех (х)
Вычислить синус x.
рождение (х)
Вычислить гиперболический синус x.
sqrt (выражение)
Вычислить квадратный корень из выраж. Это эквивалентно "(выраж) ^. 5 ".
хлюпать (х)
Вычислите выражение «1 / (1 + exp (4 * x))».
st (var, выражение)
Сохраните значение выражения выраж во внутренней переменной. вар указывает на
номер переменной, в которой хранится значение, и это значение в диапазоне от 0 до
9. Функция возвращает значение, хранящееся во внутренней переменной. Примечание, переменные
в настоящее время не используются в выражениях.
тангенс (х)
Вычислить тангенс x.
tanh (x)
Вычислить гиперболический тангенс x.
Тейлор (выражение, x)
Тейлор (выражение, x, Я бы)
Оцените серию Тейлора на x, учитывая выражение, представляющее "ld (id)" - й
производная функции в 0.
Если ряды не сходятся, результат не определен.
ld (идентификатор) используется для представления производного порядка в выраж, что означает, что данный
выражение будет оцениваться несколько раз с различными входными значениями, которые
Выражение может получить доступ через "ld (id)". Если id не указан, то предполагается 0.
Обратите внимание, когда у вас есть производные в y вместо 0, "taylor (expr, xy)" может быть
используемый.
время(0)
Возвращает текущее (настенные часы) время в секундах.
усечение (выражение)
Округлить значение выражения выраж от нуля до ближайшего целого числа. Например,
«trunc (-1.5)» равно «-1.0».
в то время как (cond, выражение)
Оценить выражение выраж в то время как выражение конд не равно нулю и возвращает значение
из последних выраж оценка, или NAN, если конд всегда было ложью.
Доступны следующие константы:
PI площадь единичного диска, примерно 3.14
E ехр(1) (число Эйлера), приблизительно 2.718
PHI золотое сечение (1+SQRT(5)) / 2, примерно 1.618
Предполагая, что выражение считается "истинным", если оно имеет ненулевое значение, обратите внимание, что:
"*" работает как И
"+" работает как ИЛИ
Например, конструкция:
если (A И B), то C
эквивалентно:
если (A * B, C)
В вашем коде C вы можете расширить список унарных и двоичных функций и определить
распознаваемые константы, чтобы они были доступны для ваших выражений.
Оценщик также распознает префиксы единиц Международной системы. Если добавлено 'i'
после префикса используются двоичные префиксы, основанные на степени 1024 вместо
степени 1000. Постфикс "B" умножает значение на 8 и может быть добавлен после
префикс единицы измерения или используется отдельно. Это позволяет использовать, например, «KB», «MiB», «G» и «B» в качестве
номер постфикс.
Ниже приводится список доступных префиксов международной системы с указанием
соответствующие степени 10 и 2.
y 10 ^ -24 / 2 ^ -80
z 10 ^ -21 / 2 ^ -70
a 10 ^ -18 / 2 ^ -60
f 10 ^ -15 / 2 ^ -50
p 10 ^ -12 / 2 ^ -40
n 10 ^ -9 / 2 ^ -30
u 10 ^ -6 / 2 ^ -20
m 10 ^ -3 / 2 ^ -10
c 10 ^ -2
d 10 ^ -1
h 10 ^ 2
k 10 ^ 3/2 ^ 10
K 10 ^ 3/2 ^ 10
M 10 ^ 6/2 ^ 20
G 10 ^ 9/2 ^ 30
T 10 ^ 12/2 ^ 40
P 10 ^ 15/2 ^ 40
E 10 ^ 18/2 ^ 50
Z 10 ^ 21/2 ^ 60
Y 10 ^ 24/2 ^ 70
ОТКРЫТЬ ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Когда FFmpeg настроен с помощью "--enable-opencl", можно установить параметры для
глобальный контекст OpenCL.
Список поддерживаемых опций следующий:
build_options
Задайте параметры сборки, используемые для компиляции зарегистрированных ядер.
См. Ссылку «Версия спецификации OpenCL: 1.2, глава 5.6.4».
платформа_idx
Выберите индекс платформы для запуска кода OpenCL.
Указанный индекс должен быть одним из индексов в списке устройств, который может быть
полученный с помощью "ffmpeg -opencl_bench" или "av_opencl_get_device_list ()".
устройство_idx
Выберите индекс устройства, используемого для запуска кода OpenCL.
Указанный индекс должен быть одним из индексов в списке устройств, который может быть
полученный с помощью "ffmpeg -opencl_bench" или "av_opencl_get_device_list ()".
Кодек ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
libavcodec предоставляет некоторые общие глобальные параметры, которые можно установить для всех кодировщиков и
декодеры. Кроме того, каждый кодек может поддерживать так называемые частные параметры, которые являются специфическими.
для данного кодека.
Иногда глобальный параметр может влиять только на определенный тип кодека и может быть
бессмысленный или игнорируемый другим, поэтому вам необходимо знать значение указанного
опции. Также некоторые параметры предназначены только для декодирования или кодирования.
Параметры можно установить, указав -вариант ценностное в инструментах FFmpeg или установив
значение явно в параметрах "AVCodecContext" или с помощью libavutil / opt.h API для
программное использование.
Список поддерживаемых опций следующий:
b целое (кодирование, аудио, видео)
Установите битрейт в бит / с. Значение по умолчанию - 200 КБ.
ab целое (кодирование, аудио)
Установите битрейт аудио (в битах / с). Значение по умолчанию - 128 КБ.
bt целое (кодирование, видео)
Установите допуск битрейта видео (в бит / с). В однопроходном режиме допуск битрейта указывает
насколько регулятор скорости может отклониться от целевого среднего значения битрейта. Этот
не имеет отношения к минимальному / максимальному битрейту. Слишком сильное снижение толерантности имеет неблагоприятный эффект
по качеству.
Флаги Флаги (декодирование / кодирование, аудио, видео, субтитры)
Установите общие флаги.
Возможные значения:
mv4 Используйте четыре вектора движения по макроблоку (mpeg4).
qpel
Используйте компенсацию движения 1/4 пика.
поиска
Используйте контурный фильтр.
масштаб
Используйте фиксированный qscale.
GMC Используйте gmc.
mv0 Всегда пробуйте mb с mv = <0,0>.
input_preserved
pass1
В режиме первого прохода используйте внутренний двухпроходный регулятор скорости.
pass2
Используйте внутренний двухпроходный регулятор скорости в режиме второго прохода.
серый
Только декодировать / кодировать оттенки серого.
эму_край
Не рисуйте края.
пснр
Установить переменные ошибки [?] Во время кодирования.
усеченный
Naq Нормализовать адаптивное квантование.
илдкт
Используйте чересстрочный DCT.
low_delay
Принудительная низкая задержка.
global_header
Поместите глобальные заголовки в дополнительные данные вместо каждого ключевого кадра.
битоточный
Записывайте только данные, не зависящие от платформы, сборки и времени. (кроме (I) DCT). Этот
обеспечивает воспроизводимость и соответствие контрольных сумм файлов и данных на разных платформах.
Его основное использование - для регрессионного тестирования.
АИК Примените H263 расширенное внутреннее кодирование / прогнозирование mpeg4 ac.
CBP Не рекомендуется, используйте вместо этого частные параметры mpegvideo.
qprd
Не рекомендуется, используйте вместо этого частные параметры mpegvideo.
Ilme
Примените оценку чересстрочного движения.
cgop
Используйте закрытый гоп.
me_method целое (кодирование, видео)
Установите метод оценки движения.
Возможные значения:
нуль
оценка нулевого движения (самая быстрая)
полный
полная оценка движения (самая медленная)
эпс
Оценка движения EPZS (по умолчанию)
один оценка движения esa (псевдоним для полной версии)
край
оценка движения tesa
диаметр оценка движения dia (псевдоним для epzs)
журнал оценка движения журнала
фотки
оценка движения фотонов
x1 Оценка движения X1
шестнадцатеричный оценка движения шестиугольника
ммм оценка движения
трубчатый проход
оценка движения
extradata_size целое
Установите размер дополнительных данных.
временная база рациональный номер
Установите временную базу кодека.
Это основная единица времени (в секундах), в которой используются временные метки кадра.
представлены. Для контента с фиксированной частотой кадров необходимо указать временную базу «1 / frame_rate» и отметку времени.
приращения должны быть идентичны 1.
g целое (кодирование, видео)
Установите размер группы изображений. Значение по умолчанию - 12.
ar целое (декодирование / кодирование, аудио)
Установите частоту дискретизации звука (в Гц).
ac целое (декодирование / кодирование, аудио)
Установите количество аудиоканалов.
выключение целое (кодирование, аудио)
Установите полосу пропускания среза.
размер кадра целое (кодирование, аудио)
Установите размер звукового кадра.
Каждый отправленный кадр, кроме последнего, должен содержать ровно выборок frame_size на
канал. Может быть 0, если для кодека установлен CODEC_CAP_VARIABLE_FRAME_SIZE, в этом случае
размер кадра не ограничен. Устанавливается некоторыми декодерами для обозначения постоянного
Размер рамки.
кадр_номер целое
Установите номер кадра.
задерживать целое
qcomp плавать (кодирование, видео)
Установите масштабное сжатие квантователя видео (VBR). Используется как константа в
уравнение управления скоростью. Рекомендуемый диапазон для rc_eq по умолчанию: 0.0–1.0.
qblur плавать (кодирование, видео)
Установите размытие шкалы квантователя видео (VBR).
Qmin целое (кодирование, видео)
Установите минимальную шкалу квантователя видео (VBR). Должно быть включено от -1 до 69, значение по умолчанию.
это 2.
qмакс целое (кодирование, видео)
Установите максимальную шкалу квантователя видео (VBR). Должно быть включено от -1 до 1024, по умолчанию
значение 31.
qdiff целое (кодирование, видео)
Установите максимальную разницу между шкалой квантователя (VBR).
bf целое (кодирование, видео)
Установите максимальное количество B-кадров между не-B-кадрами.
Должно быть целым числом от -1 до 16. 0 означает, что B-кадры отключены. Если значение
of -1, он выберет автоматическое значение в зависимости от кодировщика.
Значение по умолчанию 0.
b_qфактор плавать (кодирование, видео)
Установите коэффициент qp между кадрами P и B.
rc_strategy целое (кодирование, видео)
Установите метод контроля скорости.
b_стратегия целое (кодирование, видео)
Установите стратегию для выбора между I / P / B-кадрами.
ps целое (кодирование, видео)
Установите размер полезной нагрузки RTP в байтах.
мв_биты целое
биты заголовка целое
i_tex_bits целое
p_tex_bits целое
я считаю целое
p_count целое
пропуск_счета целое
разное_биты целое
биты кадра целое
codec_tag целое
ошибка Флаги (декодирование, видео)
Обходной путь: ошибки кодировщика не обнаруживаются автоматически.
Возможные значения:
AutoDetect
old_msmpeg4
некоторые старые файлы msmpeg4v3, сгенерированные lavc (без автоопределения)
xvid_ilace
Ошибка чересстрочной развертки Xvid (определяется автоматически, если fourcc == XVIX)
ump4
(определяется автоматически, если fourcc == UMP4)
no_padding
ошибка заполнения (обнаруживается автоматически)
AMV
ac_vlc
незаконная ошибка vlc (обнаруживается автоматически для fourcc)
qpel_chroma
std_qpel
старый стандартный qpel (определяется автоматически для fourcc / версии)
qpel_chroma2
размер прямого_блока
ошибка direct-qpel-blocksize (определяется автоматически для fourcc / версии)
край
Ошибка заполнения края (определяется автоматически для fourcc / версии)
hpel_chroma
dc_clip
ms Устранение различных ошибок в неработающих декодерах Microsoft.
усечение
транктированные кадры
Лелим целое (кодирование, видео)
Установите порог исключения единственного коэффициента для яркости (отрицательные значения также
учитывать коэффициент постоянного тока).
Целим целое (кодирование, видео)
Установите порог исключения одного коэффициента для цветности (отрицательные значения также
учитывать коэффициент постоянного тока)
строгий целое (декодирование / кодирование, аудио, видео)
Укажите, насколько строго соблюдать стандарты.
Возможные значения:
очень
строго соответствовать более старой более строгой версии спецификации или эталонного программного обеспечения
строгий
строго соответствовать всем требованиям спецификации, независимо от последствий
"обычные"
неофициальный
разрешить неофициальные расширения
экспериментальный
разрешить нестандартные экспериментальные вещи, экспериментальные (незавершенные / работа в
прогресс / не очень хорошо протестированы) декодеры и кодеры. Примечание: экспериментальные декодеры могут
представляют угрозу безопасности, не используйте это для декодирования ненадежных входных данных.
b_qoffset плавать (кодирование, видео)
Установите смещение QP между кадрами P и B.
err_detect Флаги (декодирование, аудио, видео)
Установите флаги обнаружения ошибок.
Возможные значения:
crccheck
проверить встроенные CRC
битовый поток
обнаруживать отклонения спецификации битового потока
буфер
обнаруживать неправильную длину битового потока
взорваться
прервать декодирование при обнаружении незначительной ошибки
ignore_err
игнорировать ошибки декодирования и продолжить декодирование. Это полезно, если вы хотите
анализировать содержание видео и, таким образом, хотеть, чтобы все декодировалось независимо от того,
Какие. Этот вариант не приведет к созданию видео, которое приятно смотреть, если
ошибки.
тщательный
рассматривать вещи, которые нарушают спецификацию и не были замечены в массовом порядке, как ошибки
отвечающий всем требованиям
рассматривать все несоответствия спецификации как ошибки
агрессивный
Считайте то, что нормальный кодировщик не должен делать, как ошибку
has_b_frames целое
блок_выравнивание целое
mpeg_quant целое (кодирование, видео)
Используйте квантователи MPEG вместо H.263.
qsquish плавать (кодирование, видео)
Как сохранить квантователь между qmin и qmax (0 = клип, 1 = использовать дифференцируемый
функция).
rc_qmod_amp плавать (кодирование, видео)
Установите экспериментальную модуляцию квантователя.
rc_qmod_freq целое (кодирование, видео)
Установите экспериментальную модуляцию квантователя.
rc_override_count целое
rc_eq string (кодирование, видео)
Установите уравнение управления нормой. При вычислении выражения помимо стандартного
функций, определенных в разделе «Оценка выражений», следующие функции
доступны: bits2qp (биты), qp2bits (qp). Также доступны следующие константы:
iTex pTex tex mv fCode iCount mcVar var isI isP isB avgQP qComp avgIITex avgPITex
avgPPTex avgBPTex avgTex.
максимальная скорость целое (кодирование, аудио, видео)
Установите допуск максимального битрейта (в битах / с). Требуется установить размер bufsize.
минимальная ставка целое (кодирование, аудио, видео)
Установите минимальный допуск битрейта (в битах / с). Наиболее полезно при настройке кодирования CBR. это
мало пользы в противном случае.
размер буфера целое (кодирование, аудио, видео)
Установите размер буфера управления скоростью (в битах).
rc_buf_aggresstivity плавать (кодирование, видео)
В настоящее время бесполезен.
i_qфактор плавать (кодирование, видео)
Установите коэффициент QP между кадрами P и I.
i_qoffset плавать (кодирование, видео)
Установите смещение QP между кадрами P и I.
rc_init_cplx плавать (кодирование, видео)
Установите начальную сложность для однопроходного кодирования.
DCT целое (кодирование, видео)
Установите алгоритм DCT.
Возможные значения:
автоматический
автоматический выбор хорошего (по умолчанию)
Fastint
быстрое целое число
Int точное целое число
MMX
альтивек
FAAN
AAN DCT с плавающей запятой
lumi_mask плавать (кодирование, видео)
Сжимайте яркие области сильнее, чем средние.
tcplx_mask плавать (кодирование, видео)
Установите маскирование временной сложности.
scplx_mask плавать (кодирование, видео)
Установите маскировку пространственной сложности.
p_маска плавать (кодирование, видео)
Установите внутреннее маскирование.
темная_маска плавать (кодирование, видео)
Сжимайте темные участки сильнее, чем средние.
ИДКТ целое (декодирование / кодирование, видео)
Выберите реализацию IDCT.
Возможные значения:
автоматический
Int
декриминализовано
простойmmx
простойавто
Автоматический выбор IDCT, совместимого с простым
Рука
альтивек
sh4
простая рука
простой
простой
простой неон
простойальфа
IPP
xvidmmx
фаани
AAN IDCT с плавающей запятой
срез_count целое
ec Флаги (декодирование, видео)
Установите стратегию маскировки ошибок.
Возможные значения:
Guess_mvs
поиск итеративного вектора движения (MV) (медленный)
Деблокирующий
используйте сильный фильтр деблокирования для поврежденных МБ
Favor_inter
предпочитают прогнозирование из предыдущего кадра вместо текущего
bits_per_coded_sample целое
PRED целое (кодирование, видео)
Установите метод прогнозирования.
Возможные значения:
оставил
самолет
медиана
внешний вид рациональный номер (кодирование, видео)
Установите примерное соотношение сторон.
отлаживать Флаги (декодирование / кодирование, аудио, видео, субтитры)
Распечатайте конкретную отладочную информацию.
Возможные значения:
пикт
информация об изображении
rc контроль скорости
битовый поток
mb_type
тип макроблока (МБ)
qp поблочный параметр квантования (QP)
mv вектор движения
dct_coeff
green_metadata
отображать метаданные сложности для предстоящего кадра, GoP или для заданной продолжительности.
пропускать
стартовый код
PTS
er распознавание ошибок
ммко
операции контроля управления памятью (H.264)
ошибки
vis_qp
визуализировать параметр квантования (QP), нижние QP окрашены в более зеленый цвет
vis_mb_type
визуализировать типы блоков
буферы
выделение буфера изображений
поток_ops
заправочные операции
номк
пропустить компенсацию движения
Vismv целое (декодирование, видео)
Визуализируйте векторы движения (MV).
Эта опция устарела, вместо нее см. Фильтр codecview.
Возможные значения:
pf прогнозируемые вперед MV P-кадров
bf прогнозируемые вперед MV B-кадров
bb обратные предсказанные MV B-кадров
CMP целое (кодирование, видео)
Установите полную функцию сравнения изображений.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
субкомпакт целое (кодирование, видео)
Установите функцию сравнения субэлементов.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
мбкмп целое (кодирование, видео)
Установить функцию сравнения макроблоков.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
ildctcmp целое (кодирование, видео)
Установите функцию сравнения чересстрочного DCT.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
диаметр_размера целое (кодирование, видео)
Установите тип и размер ромба для оценки движения.
последний_пред целое (кодирование, видео)
Установите количество предикторов движения из предыдущего кадра.
премия целое (кодирование, видео)
Установите предварительную оценку движения.
Premp целое (кодирование, видео)
Установите функцию сравнения предварительной оценки движения.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
pre_dia_size целое (кодирование, видео)
Установите тип и размер ромба для предварительного прохода оценки движения.
подк целое (кодирование, видео)
Установите качество оценки движения субпикселя.
dtg_active_format целое
я_диапазон целое (кодирование, видео)
Установите предел диапазона векторов движения (1023 для проигрывателя DivX).
ибиас целое (кодирование, видео)
Установите внутриквантовое смещение.
предвзятость целое (кодирование, видео)
Установите межквантовое смещение.
color_table_id целое
global_quality целое (кодирование, аудио, видео)
кодер целое (кодирование, видео)
Возможные значения:
VLC кодер переменной длины / кодер Хаффмана
ac арифметический кодер
сырье сырые (без кодировки)
RLE кодировщик длин серий
выкачивать
кодер на основе дефлята
контекст целое (кодирование, видео)
Установите контекстную модель.
срез_флаги целое
xvmc_acceleration целое
мбд целое (кодирование, видео)
Установить алгоритм решения макроблока (режим высокого качества).
Возможные значения:
декриминализовано
использовать mbcmp (по умолчанию)
биты
используйте наименьшее количество бит
rd использовать наилучшее искажение
stream_codec_tag целое
sc_threshold целое (кодирование, видео)
Установить порог смены сцены.
lмин целое (кодирование, видео)
Установите минимальный коэффициент задержки (VBR).
Lmax целое (кодирование, видео)
Установите максимальный коэффициент задержки (VBR).
nr целое (кодирование, видео)
Установить шумоподавление.
rc_init_occupancy целое (кодирование, видео)
Установите количество бит, которые должны быть загружены в буфер rc перед началом декодирования.
флаги2 Флаги (декодирование / кодирование, аудио, видео)
Возможные значения:
быстро
Разрешить уловки ускорения, не соответствующие спецификациям.
сгоп
Не рекомендуется, используйте вместо этого частные параметры mpegvideo.
нет
Пропустить кодирование битового потока.
игнорировать
Игнорировать информацию об обрезке из sps.
local_header
Поместите глобальные заголовки в каждый ключевой кадр, а не в дополнительные данные.
ломти
Данные кадра могут быть разделены на несколько частей.
показать все
Показать все кадры перед первым ключевым кадром.
Skiprd
Не рекомендуется, используйте вместо этого частные параметры mpegvideo.
экспорт_МВС
Экспорт векторов движения в боковые данные кадра (см. «AV_FRAME_DATA_MOTION_VECTORS»)
для кодеков, которые его поддерживают. Смотрите также документ / примеры / export_mvs.c.
ошибка целое (кодирование, видео)
вопросы целое (кодирование, видео)
Не рекомендуется, используйте вместо этого частные параметры mpegvideo.
темы целое (декодирование / кодирование, видео)
Возможные значения:
автоматический
обнаружить хорошее количество потоков
me_threshold целое (кодирование, видео)
Установите порог оценки движения.
mb_threshold целое (кодирование, видео)
Установите порог макроблока.
dc целое (кодирование, видео)
Установите intra_dc_precision.
нсшить целое (кодирование, видео)
Установите вес nsse.
Skip_top целое (декодирование, видео)
Задайте количество строк макроблока вверху, которые пропускаются.
пропустить_дно целое (декодирование, видео)
Задайте количество строк макроблока внизу, которые пропускаются.
профиль целое (кодирование, аудио, видео)
Возможные значения:
неизвестный
aac_main
aac_low
aac_ssr
aac_ltp
aac_he
aac_he_v2
aac_ld
aac_eld
mpeg2_aac_low
mpeg2_aac_he
mpeg4_sp
mpeg4_core
mpeg4_main
mpeg4_asp
д.т.н.
dts_es
dts_96_24
dts_hd_hra
dts_hd_ma
уровень целое (кодирование, аудио, видео)
Возможные значения:
неизвестный
низкое разрешение целое (декодирование, аудио, видео)
Декодирование с разрешением 1 = 1/2, 2 = 1/4, 3 = 1/8.
пропуск_порога целое (кодирование, видео)
Установить порог пропуска кадров.
пропуск_фактора целое (кодирование, видео)
Установите коэффициент пропуска кадров.
пропустить_exp целое (кодирование, видео)
Установить показатель пропуска кадров. Отрицательные значения ведут себя так же, как соответствующие
положительные, за исключением того, что оценка нормализована. Положительные значения существуют прежде всего
по причинам совместимости и не очень полезны.
пропуститьcmp целое (кодирование, видео)
Установите функцию сравнения пропуска кадров.
Возможные значения:
грустный сумма абсолютных разностей, быстро (по умолчанию)
SSE сумма квадратов ошибок
Satd
сумма абсолютных преобразованных разностей Адамара
DCT сумма абсолютных преобразованных разностей DCT
пснр
сумма квадратов ошибок квантования (избегайте, низкое качество)
бит количество бит, необходимых для блока
rd скорость искажения оптимальная, медленная
нуль
0
всад
сумма абсолютных вертикальных разностей
все
сумма квадратов вертикальных разностей
NSSE
сумма квадратов разностей с сохранением шума
w53 5/3 вейвлет, используется только на снегу
w97 9/7 вейвлет, используется только на снегу
dctmax
цветность
граница_маска плавать (кодирование, видео)
Увеличьте квантователь для макроблоков, близких к границам.
млн мин целое (кодирование, видео)
Установите минимальный коэффициент задержки макроблока (VBR).
мблмакс целое (кодирование, видео)
Установите максимальный коэффициент задержки макроблока (VBR).
мепк целое (кодирование, видео)
Установите компенсацию штрафа при оценке движения (1.0 = 256).
Skip_loop_filter целое (декодирование, видео)
пропустить_idct целое (декодирование, видео)
пропустить_кадр целое (декодирование, видео)
Сделать обработку сброса декодера в зависимости от типа кадра, выбранного опцией
значения.
Skip_loop_filter пропускает циклическую фильтрацию кадров, пропустить_idct пропускает кадр
IDCT / деквантование, пропустить_кадр пропускает декодирование.
Возможные значения:
нет
Не отбрасывайте ни одного кадра.
по умолчанию
Отбросьте бесполезные кадры, например кадры нулевого размера.
норэф
Отбросьте все нереференсные кадры.
бидир
Отбросьте все двунаправленные кадры.
нет ключа
Отменить все кадры, кроме ключевых кадров.
ВСЕ Отменить все кадры.
Значение по умолчанию по умолчанию.
бидир_уточнить целое (кодирование, видео)
Уточните два вектора движения, используемые в двунаправленных макроблоках.
brd_scale целое (кодирование, видео)
Кадры с уменьшенным масштабом для динамического принятия решения о B-кадрах.
keyint_min целое (кодирование, видео)
Установите минимальный интервал между IDR-кадрами.
реф. целое (кодирование, видео)
Установите опорные кадры, которые следует учитывать при компенсации движения.
смещение цветности целое (кодирование, видео)
Установите смещение цветности qp от яркости.
шпалера целое (кодирование, аудио, видео)
Установите оптимальное квантование по соотношению "скорость-искажение".
sc_фактор целое (кодирование, видео)
Установите значение, умноженное на qscale для каждого кадра и добавленное в scene_change_score.
mv0_threshold целое (кодирование, видео)
b_чувствительность целое (кодирование, видео)
Отрегулируйте чувствительность b_frame_strategy 1.
сжатие_уровень целое (кодирование, аудио, видео)
min_prediction_order целое (кодирование, аудио)
max_prediction_order целое (кодирование, аудио)
тайм-код_frame_start целое (кодирование, видео)
Установите начальный номер кадра временного кода GOP в формате без пропуска кадров.
request_channels целое (декодирование, аудио)
Установите желаемое количество аудиоканалов.
bits_per_raw_sample целое
канал_макет целое (декодирование / кодирование, аудио)
Возможные значения:
request_channel_layout целое (декодирование, аудио)
Возможные значения:
rc_max_vbv_use плавать (кодирование, видео)
rc_min_vbv_use плавать (кодирование, видео)
тиков_за_кадр целое (декодирование / кодирование, аудио, видео)
color_primaries целое (декодирование / кодирование, видео)
цвет_trc целое (декодирование / кодирование, видео)
цветовое пространство целое (декодирование / кодирование, видео)
цветовая гамма целое (декодирование / кодирование, видео)
Если используется в качестве входного параметра, он служит подсказкой для декодера, который определяет цветовой диапазон.
вход имеет.
chroma_sample_location целое (декодирование / кодирование, видео)
log_level_offset целое
Установите смещение уровня журнала.
ломтики целое (кодирование, видео)
Количество слайсов, используемых при параллельном кодировании.
тип_нити Флаги (декодирование / кодирование, видео)
Выберите, какие методы многопоточности использовать.
Использование рама увеличит задержку декодирования на один кадр на поток, поэтому клиенты, которые
не может предоставить будущие кадры, не следует его использовать.
Возможные значения:
кусочек
Одновременное декодирование более одной части одного кадра.
Многопоточность с использованием фрагментов работает только тогда, когда видео было закодировано с помощью фрагментов.
рама
Одновременное декодирование более одного кадра.
Значение по умолчанию срез + рамка.
audio_service_type целое (кодирование, аудио)
Установите тип аудиоуслуги.
Возможные значения:
ma Главный Аудио Сервис
ef Эффекты
vi Слабовидящих
hi Слабослышащих
di Диалог
co Комментарий
em Чрезвычайная ситуация
vo Voice Over
ka Караоке
request_sample_fmt sample_fmt (декодирование, аудио)
Установить формат образца аудио декодеры должны предпочесть. Значение по умолчанию - «нет».
pkt_timebase рациональный номер
sub_charenc кодирование (декодирование, субтитры)
Установите кодировку символов входных субтитров.
Порядок полей Порядок полей (XNUMX году )
Установить / изменить порядок полей в видео. Возможные значения:
приложение
Прогрессивное видео
tt Видео с чересстрочной разверткой, верхнее поле кодируется и отображается первым
bb Видео с чересстрочной разверткой, нижнее поле кодируется и отображается первым
tb Видео с чересстрочной разверткой, сначала отображается верхний код, сначала отображается нижний
bt Видео с чересстрочной разверткой, сначала отображается нижний код, сначала отображается верхний
пропустить_альфа целое (декодирование, видео)
Установите 1, чтобы отключить обработку альфа (прозрачности). Это работает как серый флаг в
Флаги опция, которая пропускает информацию о цветности вместо альфа. По умолчанию 0.
codec_whitelist список (вход)
Разделенный "," Список разрешенных декодеров. По умолчанию все разрешены.
dump_separator string (вход)
Разделитель, используемый для разделения полей, напечатанных в командной строке о потоке.
параметры. Например, чтобы разделить поля новой строкой и отступом:
ffprobe -dump_separator "
"-i ~ / видео / matrixbench_mpeg2.mpg
ДЕКОДЕРЫ
Декодеры - это сконфигурированные элементы в FFmpeg, которые позволяют декодировать мультимедийные потоки.
Когда вы настраиваете сборку FFmpeg, все поддерживаемые собственные декодеры включаются
дефолт. Декодеры, которым требуется внешняя библиотека, должны быть включены вручную через
соответствующая опция "--enable-lib". Вы можете перечислить все доступные декодеры, используя
настроить опцию "--list-decoders".
Вы можете отключить все декодеры с помощью параметра конфигурации "--disable-decoders" и
выборочно включать / отключать отдельные декодеры с помощью параметров "--enable-decoder ="ДЕКОДЕР " /
"--disable-decoder =ДЕКОДЕР ".
Параметр «-decoders» инструментов ff * отобразит список включенных декодеров.
ВИДЕО ДЕКОДЕРЫ
Ниже приводится описание некоторых из доступных в настоящее время видеодекодеров.
HEVC
Декодер HEVC / H.265.
Обратите внимание Skip_loop_filter опция действует только на уровне «все».
сырое видео
Необработанный видеодекодер.
Этот декодер декодирует потоки сырого видео.
Возможности
топ top_field_first
Укажите предполагаемый тип поля входного видео.
-1 видео предполагается прогрессивным (по умолчанию)
0 предполагается, что нижнее поле сначала
1 предполагается, что первое поле сначала
АУДИО ДЕКОДЕРЫ
Ниже приводится описание некоторых из доступных в настоящее время аудиодекодеров.
ac3
Аудиодекодер AC-3.
Этот декодер реализует часть ATSC A / 52: 2010 и ETSI TS 102 366, а также
недокументированный RealAudio 3 (также известный как dnet).
AC-3 дешифратор Возможности
-drc_scale ценностное
Масштабный коэффициент динамического диапазона. Коэффициент, применяемый к значениям динамического диапазона из AC-3
ручей. Этот коэффициент применяется экспоненциально. Есть 3 заметных масштабных фактора
диапазоны:
drc_scale == 0
DRC отключен. Обеспечивает полный диапазон звука.
0 < drc_scale <= 1
DRC включен. Применяет часть значения DRC потока. Воспроизведение звука
между полным диапазоном и полным сжатием.
drc_scale > 1
DRC включен. Применяет drc_scale асимметрично. Громкие звуки полностью сжаты.
Усилены мягкие звуки.
FLAC
Аудио декодер FLAC.
Этот декодер призван реализовать полную спецификацию FLAC от Xiph.
FLAC дешифратор кредита
-use_buggy_lpc
Кодер lavc FLAC, используемый для создания потоков с ошибками с высокими значениями lpc (например,
значение по умолчанию). Эта опция позволяет правильно декодировать такие потоки с помощью
используя для декодирования старую глючную логику lpc lavc.
ffwavesynth
Синтезатор внутренних волн.
Этот декодер генерирует волновые шаблоны в соответствии с заранее заданными последовательностями. Его использование чисто
internal, а формат данных, которые он принимает, публично не документируется.
libcelt
Оболочка декодера libcelt.
libcelt позволяет libavcodec декодировать аудиокодек Xiph CELT со сверхнизкой задержкой. Требует
наличие заголовков libcelt и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libcelt".
libgsm
Обертка декодера libgsm.
libgsm позволяет libavcodec декодировать полноскоростной аудиокодек GSM. Требуется наличие
заголовки libgsm и библиотека во время настройки. Вам необходимо явно настроить
построить с помощью "--enable-libgsm".
Этот декодер поддерживает как обычный GSM, так и вариант Microsoft.
libilbc
Оболочка декодера libilbc.
libilbc позволяет libavcodec декодировать аудиокодек Internet Low Bitrate Codec (iLBC).
Требует наличия заголовков libilbc и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libilbc".
Возможности
Оболочка libilbc поддерживает следующий параметр.
повышать
Включите улучшение декодированного звука, если установлено значение 1. Значение по умолчанию - 0.
(отключен).
libopencore-amrnb
Обертка декодера libopencore-amrnb.
libopencore-amrnb позволяет libavcodec декодировать адаптивный многоскоростной узкополосный звук.
кодек. Для его использования необходимо наличие заголовков libopencore-amrnb и библиотеки во время
конфигурация. Вам необходимо явно настроить сборку с помощью
"--enable-libopencore-amrnb".
Существует собственный декодер FFmpeg для AMR-NB, поэтому пользователи могут декодировать AMR-NB без этого
библиотека.
libopencore-amrwb
Оболочка декодера libopencore-amrwb.
libopencore-amrwb позволяет libavcodec декодировать адаптивный многоскоростной широкополосный звук.
кодек. Для его использования необходимо наличие заголовков libopencore-amrwb и библиотеки во время
конфигурация. Вам необходимо явно настроить сборку с помощью
"--enable-libopencore-amrwb".
Существует собственный декодер FFmpeg для AMR-WB, поэтому пользователи могут декодировать AMR-WB без этого
библиотека.
либопус
Оболочка декодера libopus.
libopus позволяет libavcodec декодировать интерактивный аудиокодек Opus. Требуется
наличие заголовков libopus и библиотеки во время настройки. Вам необходимо явно
настройте сборку с помощью "--enable-libopus".
Для Opus существует собственный декодер FFmpeg, поэтому пользователи могут декодировать Opus без этой библиотеки.
СУБТИТРЫ ДЕКОДЕРЫ
dvbsub
Возможности
Compute_clut
-1 Вычислить clut, если в потоке нет подходящего CLUT.
0 Никогда не вычисляйте CLUT
1 Всегда вычисляйте CLUT и отменяйте тот, который указан в потоке.
dvb_substream
Выбирает подпоток dvb или все подпотоки, если -1, что по умолчанию.
dvdsub
Этот кодек декодирует растровые субтитры, используемые в DVD; такие же субтитры можно найти
в парах файлов VobSub и в некоторых файлах Matroska.
Возможности
палитры
Укажите глобальную палитру, используемую растровыми изображениями. При хранении в VobSub палитра
обычно указывается в индексном файле; в Matroska палитра хранится в кодеке
экстра-данные в том же формате, что и в VobSub. В DVD палитра хранится в IFO.
файл, и поэтому недоступен при чтении из сброшенных файлов VOB.
Формат этой опции - строка, содержащая 16 24-битных шестнадцатеричных чисел.
(без префикса 0x) через запятую, например "0d00ee, ee450d, 101010, eaeaea,
0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, 7b2a0e, 0d950c, 0f007b, cf0dec,
cfa80c, 7c127b ".
ifo_palette
Укажите файл IFO, из которого получается глобальная палитра. (экспериментальный)
force_subs_only
Декодировать только те записи субтитров, которые помечены как принудительные. Некоторые титулы принудительные и необязательные
субтитры в той же дорожке. Установка этого флага в 1 сохранит только принудительный
субтитры. Значение по умолчанию - 0.
libzvbi-телетекст
Libzvbi позволяет libavcodec декодировать страницы телетекста DVB и субтитры телетекста DVB.
Требуется наличие заголовков libzvbi и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libzvbi".
Возможности
txt_page
Список номеров страниц телетекста для декодирования. Вы можете использовать специальную строку * для соответствия всем
страниц. Страницы, не соответствующие указанному списку, удаляются. Значение по умолчанию *.
txt_chop_top
Отбрасывает верхнюю строку телетекста. Значение по умолчанию - 1.
txt_format
Задает формат декодированных субтитров. Декодер телетекста может
декодируя страницы телетекста в растровые изображения или в простой текст, вы должны использовать "растровое изображение" для
страницы телетекста, потому что некоторые изображения и цвета не могут быть выражены простым
текст. Вы можете использовать "текст" для субтитров на основе телетекста, если ваше приложение может обрабатывать
простые текстовые субтитры. Значение по умолчанию - растровое изображение.
txt_left
Смещение по оси X сгенерированных растровых изображений, по умолчанию - 0.
txt_top
Смещение по оси Y сгенерированных растровых изображений, по умолчанию - 0.
txt_chop_spaces
Удаляет начальные и конечные пробелы и удаляет пустые строки из сгенерированного текста.
Эта опция полезна для субтитров на основе телетекста, где могут быть пустые места.
в начале или в конце строк или между ними могут быть пустые строки.
строки субтитров из-за удвоения размера символов телетекста. Значение по умолчанию - 1.
txt_duration
Устанавливает продолжительность отображения декодированных страниц или субтитров телетекста в миллисекундах.
Значение по умолчанию - 30000, что составляет 30 секунд.
txt_transparent
Установить прозрачный фон для созданных растровых изображений телетекста. Значение по умолчанию - 0
что означает непрозрачный (черный) фон.
КОДЕРЫ
Кодеры - это сконфигурированные элементы в FFmpeg, которые позволяют кодировать мультимедийные потоки.
Когда вы настраиваете сборку FFmpeg, все поддерживаемые собственные кодировщики включаются
дефолт. Кодеры, которым требуется внешняя библиотека, должны быть включены вручную через
соответствующая опция "--enable-lib". Вы можете перечислить все доступные кодировщики, используя
настроить опцию "--list-encoders".
Вы можете отключить все кодировщики с помощью параметра конфигурации "--disable-encoders" и
выборочно включать / отключать отдельные кодировщики с помощью параметров "--enable-encoder =КОДЕР " /
"--disable-encoder =КОДЕР ".
Параметр «-encoders» инструментов ff * отобразит список включенных кодировщиков.
АУДИО КОДЕРЫ
Ниже приводится описание некоторых доступных в настоящее время аудиокодеров.
AAC
Кодировщик Advanced Audio Coding (AAC).
Этот кодировщик является экспериментальным кодировщиком AAC, поддерживающим FFmpeg. В настоящее время только низкий
поддерживается профиль сложности (AAC-LC). Чтобы использовать этот кодировщик, вы должны установить строгий вариант
в экспериментальный или ниже.
Поскольку этот кодировщик является экспериментальным, время от времени может наблюдаться непредвиденное поведение. Для
более стабильный кодировщик AAC, см. libvo-aacenc. Однако учтите, что он имеет худшее качество.
сообщили некоторые пользователи.
Смотрите также libfdk_aac.
Возможности
b Установите скорость передачи в битах / с. Установка этого параметра автоматически активирует постоянную скорость передачи данных (CBR).
Режим.
q Установите качество для режима переменной скорости передачи данных (VBR). Эта опция действительна только при использовании
FFmpeg инструмент командной строки. Для пользователей интерфейса библиотеки используйте global_quality.
стерео_режим
Установите режим кодирования стерео. Возможные значения:
автоматический
Автоматически выбирается кодировщиком.
мс_офф
Отключить среднее / боковое кодирование. Это значение по умолчанию.
ms_force
Принудительное среднее / боковое кодирование.
aac_coder
Установите метод кодирования кодировщика AAC. Возможные значения:
FAAC
Метод, вдохновленный FAAC.
Этот метод является упрощенной повторной реализацией метода, используемого в FAAC, который
устанавливает пороги, пропорциональные энергии зон, а затем уменьшает все
пороговые значения с шагами квантователя, чтобы найти подходящее квантование с
искажение ниже порога по полосе.
Качество этого метода сопоставимо с методом двухпетлевого поиска.
описано ниже, но немного лучше и медленнее.
Anmr
Решение на основе решетки со средним отношением шума к маске (ANMR).
Это теоретически лучшее качество из всех методов кодирования, но за счет
самой медленной скорости.
двойная петля
Метод двухпетлевого поиска (TLS).
Этот метод сначала устанавливает квантователи в зависимости от пороговых значений полосы, а затем пытается
найти оптимальную комбинацию, добавляя или вычитая конкретное значение из всех
квантователи и немного подправив какой-нибудь индивидуальный квантователь.
Этот метод обеспечивает такое же качество, что и метод FAAC, и используется по умолчанию.
быстро
Метод постоянного квантователя.
Этот метод устанавливает постоянный квантователь для всех диапазонов. Это самый быстрый из всех
методы, но дает наихудшее качество.
ac3 и ac3_fixed
Аудиокодеры AC-3.
Эти кодировщики реализуют часть ATSC A / 52: 2010 и ETSI TS 102 366, а также
недокументированный RealAudio 3 (также известный как dnet).
Команда ac3 кодировщик использует математику с плавающей запятой, а ac3_fixed кодировщик использует только фиксированные
точечная целочисленная математика. Это не значит, что один всегда быстрее, просто тот или
другие могут лучше подходить для конкретной системы. Кодировщик с плавающей запятой будет
обычно обеспечивают лучшее качество звука для заданного битрейта. В ac3_fixed кодировщик не
кодек по умолчанию для любого из выходных форматов, поэтому он должен быть указан явно с помощью
параметр "-acodec ac3_fixed", чтобы использовать его.
AC-3 Метаданные
Параметры метаданных AC-3 используются для установки параметров, описывающих звук, но в большинстве
чехлы не влияют на кодирование звука. Некоторые параметры напрямую влияют на или
влияют на декодирование и воспроизведение результирующего битового потока, в то время как другие предназначены только для
информационные цели. Некоторые из опций добавят биты в выходной поток, которые могут
в противном случае будет использоваться для аудиоданных и, таким образом, повлияет на качество вывода. Те
будут обозначены соответствующим образом с пометкой в списке опций ниже.
Эти параметры подробно описаны в нескольких общедоступных документах.
* <http://www.atsc.org/cms/standards/a_52-2010.pdf>>
* <http://www.atsc.org/cms/standards/a_54a_with_corr_1.pdf>>
* <http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/18_Metadata.Guide.pdf>>
* <http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/46_DDEncodingGuidelines.pdf>>
Параметры управления метаданными
-per_frame_metadata логический
Разрешить покадровые метаданные. Указывает, должен ли кодировщик проверять наличие изменения метаданных
за каждый кадр.
0 Значения метаданных, установленные при инициализации, будут использоваться для каждого кадра в
ручей. (дефолт)
1 Значения метаданных можно изменять перед кодированием каждого кадра.
Уровни понижающего микширования
-center_mixlev уровень
Уровень центрального микса. Степень усиления, которую декодер должен применить к центральному каналу.
при понижающем микшировании в стерео. Это поле будет записано в битовый поток только в том случае, если
центральный канал присутствует. Значение указывается как масштабный коэффициент. Есть 3 действительных
ценности:
0.707
Применить усиление -3 дБ
0.595
Применить усиление -4.5 дБ (по умолчанию)
0.500
Применить усиление -6 дБ
-surround_mixlev уровень
Уровень объемного микса. Степень усиления, которую декодер должен применить к объемному звучанию.
канал (ы) при понижающем микшировании в стерео. Это поле будет записано только в битовый поток.
если присутствует один или несколько каналов объемного звучания. Значение указывается в виде шкалы.
фактор. Есть 3 допустимых значения:
0.707
Применить усиление -3 дБ
0.500
Применить усиление -6 дБ (по умолчанию)
0.000
Silence Surround Channel (ы)
Информация о звуковом производстве
Информация о производстве звука - это дополнительная информация, описывающая среду микширования.
В поток битов не записываются ни одно, либо оба поля.
-mixing_level номер
Уровень смешивания. Определяет пиковый уровень звукового давления (SPL) в производственной среде.
когда микс был освоен. Допустимые значения: от 80 до 111 или -1, если неизвестно или нет.
указано. Значение по умолчанию - -1, но это значение нельзя использовать, если параметр Audio
Производственная информация записывается в битовый поток. Следовательно, если "room_type"
параметр не является значением по умолчанию, параметр "Mixing_level" не должен быть -1.
-Тип номера напишите
Тип номера. Описывает выравнивание, используемое во время финального сеанса микширования на
студии или на сцене дубляжа. Большой зал - сцена дубляжа с индустрией
стандартная кривая X-кривой; малая комната имеет ровный уравнивание. Это поле будет
не будет записан в поток битов, если и опция "mixed_level", и "room_type"
опции имеют значения по умолчанию.
0
не указано
Не указано (по умолчанию)
1
большой
Большая комната
2
небольшой
Маленькая комната
Другие параметры метаданных
-авторское право логический
Индикатор авторских прав. Указывает, существуют ли авторские права на это аудио.
0
от Авторское право не существует (по умолчанию)
1
on Авторское право существует
-диалнорма ценностное
Нормализация диалога. Показывает, насколько далеко средний уровень диалога программы
ниже цифровой 100% полной шкалы (0 дБFS). Этот параметр определяет смещение уровня во время
воспроизведение звука, при котором средняя громкость диалога устанавливается на предварительно установленный уровень. В
Цель состоит в том, чтобы обеспечить соответствие уровня громкости между источниками программ. Значение -31 дБ приведет к
при воспроизведении звука уровень громкости не изменяется относительно громкости источника.
Допустимые значения - целые числа в диапазоне от -31 до -1, по умолчанию -31.
-dsur_mode Режим
Dolby Surround Mode. Определяет, использует ли стереосигнал Dolby Surround (Pro
Логика). Это поле будет записано в битовый поток, только если аудиопоток
стерео. Использование этой опции делает НЕ означает, что кодировщик действительно применяет Dolby Surround
обработка.
0
не указано
Не указано (по умолчанию)
1
от Не кодируется Dolby Surround
2
on Кодировка Dolby Surround
ПЕРВОНАЧАЛЬНО логический
Индикатор исходного битового потока. Определяет, взято ли это аудио из оригинала
источник, а не копия.
0
от Не оригинальный источник
1
on Исходный источник (по умолчанию)
Расширенный пакет Bitstream Информация
Параметры расширенного битового потока являются частью синтаксиса альтернативного битового потока, как указано в
Приложение D к стандарту A / 52: 2010. Он сгруппирован в 2 части. Если какой-либо параметр в
group, все значения в этой группе будут записаны в битовый поток. Дефолт
значения используются для тех, которые записаны, но не указаны. Если смешивание
уровни записаны, декодер будет использовать эти значения вместо указанных в
параметры center_mixlev и Surround_mixlev, если он поддерживает альтернативный битовый поток
Синтаксис.
Расширенная информация о битовом потоке - Часть 1
-dmix_mode Режим
Предпочтительный стереофонический режим понижающего микширования. Позволяет пользователю выбрать Lt / Rt (Dolby Surround)
или Lo / Ro (обычное стерео) в качестве предпочтительного режима понижающего стереофонического микширования.
0
не указано
Не указано (по умолчанию)
1
лтр
Lt / Rt Предпочтительно понижающее микширование
2
их
Предпочтительно низкое / нижнее микширование
-ltrt_cmixlev уровень
Lt / Rt Center Mix Level. Величина усиления, которую декодер должен применять к центру
канал при понижающем микшировании в стерео в режиме Lt / Rt.
1.414
Применить усиление + 3 дБ
1.189
Применить усиление + 1.5 дБ
1.000
Применить усиление 0 дБ
0.841
Применить усиление -1.5 дБ
0.707
Применить усиление -3.0 дБ
0.595
Применить усиление -4.5 дБ (по умолчанию)
0.500
Применить усиление -6.0 дБ
0.000
Канал центра тишины
-ltrt_surmixlev уровень
Lt / Rt Уровень микширования объемного звука. Степень усиления, которую декодер должен применить к объемному звучанию.
канал (ы) при понижающем микшировании в стерео в режиме Lt / Rt.
0.841
Применить усиление -1.5 дБ
0.707
Применить усиление -3.0 дБ
0.595
Применить усиление -4.5 дБ
0.500
Применить усиление -6.0 дБ (по умолчанию)
0.000
Silence Surround Channel (ы)
-loro_cmixlev уровень
Lo / Ro Center Mix Level. Величина усиления, которую декодер должен применять к центру
канал при понижающем микшировании в стерео в режиме Lo / Ro.
1.414
Применить усиление + 3 дБ
1.189
Применить усиление + 1.5 дБ
1.000
Применить усиление 0 дБ
0.841
Применить усиление -1.5 дБ
0.707
Применить усиление -3.0 дБ
0.595
Применить усиление -4.5 дБ (по умолчанию)
0.500
Применить усиление -6.0 дБ
0.000
Канал центра тишины
-loro_surmixlev уровень
Уровень микса объемного звука Lo / Ro. Степень усиления, которую декодер должен применить к объемному звучанию.
канал (ы) при понижающем микшировании в стерео в режиме Lo / Ro.
0.841
Применить усиление -1.5 дБ
0.707
Применить усиление -3.0 дБ
0.595
Применить усиление -4.5 дБ
0.500
Применить усиление -6.0 дБ (по умолчанию)
0.000
Silence Surround Channel (ы)
Расширенная информация о битовом потоке - Часть 2
-dsurex_mode Режим
Режим Dolby Surround EX. Указывает, использует ли поток Dolby Surround EX (7.1
матрица 5.1). Использование этой опции делает НЕ означает, что кодировщик действительно применит
Обработка Dolby Surround EX.
0
не указано
Не указано (по умолчанию)
1
on Dolby Surround EX выкл.
2
от Dolby Surround EX Вкл.
-dheadphone_mode Режим
Режим наушников Dolby. Указывает, использует ли поток кодировку Dolby Headphone
(многоканальная матрица 2.0 для использования с наушниками). Использование этой опции делает НЕ
означают, что кодировщик действительно применит обработку звука в наушниках Dolby.
0
не указано
Не указано (по умолчанию)
1
on Наушники Dolby выключены
2
от Наушники Dolby включены
-ad_conv_type напишите
Тип аналого-цифрового преобразователя. Указывает, прошел ли звук через HDCD A / D
преобразование.
0
стандарт
Стандартный аналого-цифровой преобразователь (по умолчанию)
1
HDCD
Аналого-цифровой преобразователь HDCD
Другой AC-3 Кодирование Возможности
-stereo_rematrixing логический
Стерео переформатирование. Включает / отключает использование повторной матрицы для стереовхода. Это
дополнительная функция AC-3, которая повышает качество за счет выборочного кодирования левого / правого
каналы как средние / боковые. Этот параметр включен по умолчанию, и его настоятельно рекомендуется
оставить его включенным, за исключением целей тестирования.
Только с плавающей запятой AC-3 Кодирование Возможности
Эти параметры действительны только для кодировщика с плавающей запятой и не существуют для
кодировщик с фиксированной точкой из-за того, что соответствующие функции не реализованы в фиксированной
пункт.
-channel_coupling логический
Включает / отключает использование объединения каналов, которое является дополнительной функцией AC-3, которая
повышает качество за счет объединения высокочастотной информации из нескольких каналов в
один канал. По каждому каналу высокочастотная информация отправляется с меньшими затратами.
точность как в частотной, так и во временной области. Это позволяет использовать больше бит для
более низкие частоты, сохраняя при этом достаточно информации для восстановления высоких
частоты. Эта опция включена по умолчанию для кодировщика с плавающей запятой и
обычно следует оставить включенным, за исключением целей тестирования или увеличения
скорость кодирования.
-1
автоматический
Выбирается кодировщиком (по умолчанию)
0
от Отключить связь каналов
1
on Включить связь каналов
-cpl_start_band номер
Начальная лента муфты. Устанавливает диапазон начала связи каналов от 1 до 15. Если значение
выше используемой полосы пропускания, она будет уменьшена на 1 меньше, чем на конце муфты
группа. Если автоматический используется, начальная полоса будет определена кодировщиком на основе
битрейт, частота дискретизации и расположение каналов. Эта опция не действует, если канал
связь отключена.
-1
автоматический
Выбирается кодировщиком (по умолчанию)
FLAC
Кодек FLAC (бесплатный аудиокодек без потерь)
Возможности
Следующие параметры поддерживаются кодировщиком flac от FFmpeg.
сжатие_уровень
Устанавливает уровень сжатия, который выбирает значения по умолчанию для многих других параметров, если они
не задан явно.
размер кадра
Устанавливает размер кадров в выборках на канал.
lpc_coeff_precision
Устанавливает точность коэффициента LPC, допустимые значения от 1 до 15, по умолчанию 15.
lpc_type
Устанавливает алгоритм LPC первого этапа
нет
LPC не используется
фиксированной
фиксированные коэффициенты LPC
Левинсон
Cholesky
lpc_passes
Количество проходов, используемых для факторизации Холецкого во время анализа LPC
min_partition_order
Минимальный порядок перегородок
max_partition_order
Максимальный порядок разделов
метод предсказания_порядка_порядка
Индивидуальный расчет
2level
4level
8level
по области применения
Брутфорс поиск
журнал
ch_mode
Режим канала
автоматический
Режим выбирается автоматически для каждого кадра
независимый
Каналы независимо кодируются
левая сторона
правая сторона
мид_сайд
точные_прицы_параметры
Выбирает, рассчитываются ли параметры риса точно или приблизительно. если установлено в 1, то
они выбраны точно, что немного замедляет код и улучшает сжатие
немного.
multi_dim_quant
Многомерное квантование. Если установлено значение 1, применяется алгоритм LPC 2-го этапа.
после первого этапа произвести точную настройку коэффициентов. Это довольно медленно и немного
улучшает сжатие.
библиотека libfaac
Оболочка кодировщика libfaac AAC (Advanced Audio Coding).
Требуется наличие заголовков libfaac и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libfaac --enable-nonfree".
Этот кодировщик считается более качественным по отношению к родной
экспериментальный FFmpeg AAC кодер.
Для получения дополнительной информации см. Проект libfaac по адресуhttp://www.audiocoding.com/faac.html/>.
Возможности
Распознаются следующие общие параметры кодека FFmpeg.
Оболочка libfaac поддерживает следующие параметры. В FAAC-эквивалент
параметры перечислены в скобках.
b (-b)
Установите скорость передачи в битах / с для режима ABR (средняя скорость передачи данных). Если битрейт не
явно указан, он автоматически устанавливается на подходящее значение в зависимости от
выбранный профиль. FAAC битрейт выражается в килобитах / с.
Обратите внимание, что libfaac не поддерживает CBR (постоянную скорость передачи данных), а поддерживает только ABR (средний бит
Ставка).
Если включен режим VBR, эта опция игнорируется.
ar (-R)
Установите частоту дискретизации звука (в Гц).
ac (-c)
Установите количество аудиоканалов.
выключение (-C)
Установите частоту среза. Если не указано (или явно установлено на 0), будет использоваться значение
автоматически вычисляется библиотекой. Значение по умолчанию - 0.
профиль
Установите звуковой профиль.
Распознаются следующие профили:
aac_main
Главный AAC (Главный)
aac_low
AAC низкой сложности (LC)
aac_ssr
Масштабируемая частота дискретизации (SSR)
aac_ltp
Долгосрочное прогнозирование (LTP)
Если не указано, устанавливается значение aac_low.
Флаги + qscale
Установите режим постоянного качества VBR (Variable Bit Rate).
global_quality
Задайте качество в режиме VBR как целое число лямбда-единиц.
Актуально, только если включен режим VBR с помощью «flags + qscale». Значение конвертируется
в единицы QP, разделив его на «FF_QP2LAMBDA», и используется для установки используемого значения качества
пользователя libfaac. Разумный диапазон для значения опции в единицах QP составляет [10-500],
чем выше значение, тем выше качество.
q (-q)
Включите режим VBR, если установлено неотрицательное значение, и установите постоянное значение качества как
двойное значение с плавающей запятой в единицах QP.
Значение устанавливает значение качества, используемое libfaac. Разумный диапазон для варианта
значение [10-500], чем выше значение, тем выше качество.
Эта опция действительна только при использовании FFmpeg инструмент командной строки. Для интерфейса библиотеки
пользователи, используйте global_quality.
Примеры
· Использовать FFmpeg для преобразования аудиофайла в ABR 128 кбит / с AAC в контейнере M4A (MP4):
ffmpeg -i input.wav -codec: a libfaac -b: a 128k -output.m4a
· Использовать FFmpeg чтобы преобразовать аудиофайл в VBR AAC, используя профиль LTP AAC:
ffmpeg -i input.wav -c: a libfaac -profile: a aac_ltp -q: вывод 100.m4a
libfdk_aac
libfdk-aac - оболочка кодировщика AAC (Advanced Audio Coding).
Библиотека libfdk-aac основана на коде AAC Fraunhofer FDK из проекта Android.
Требуется наличие заголовков libfdk-aac и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libfdk-aac". Библиотека также
несовместимо с GPL, поэтому, если вы разрешаете использование GPL, вам следует настроить
"--enable-gpl --enable-nonfree --enable-libfdk-aac".
Этот кодировщик считается более качественным по отношению как к родной
экспериментальный FFmpeg AAC кодер и библиотека libfaac.
Кодирование VBR, включенное через VBR or Флаги + qscale варианты, экспериментальный и только
работает с некоторыми комбинациями параметров.
Поддержка кодирования звука 7.1 доступна только с libfdk-aac 0.1.3 или выше.
Для получения дополнительной информации см. Проект fdk-aac по адресу
<http://sourceforge.net/p/opencore-amr/fdk-aac/>.
Возможности
Следующие параметры сопоставлены с общими параметрами кодека FFmpeg.
b Установите скорость передачи в битах / с. Если битрейт не указан явно, он
автоматически устанавливается на подходящее значение в зависимости от выбранного профиля.
Если включен режим VBR, опция игнорируется.
ar Установите частоту дискретизации звука (в Гц).
каналы
Установите количество аудиоканалов.
Флаги + qscale
Включите фиксированное качество, режим VBR (переменная скорость передачи данных). Обратите внимание, что VBR неявно
включен, когда VBR значение положительное.
выключение
Установите частоту среза. Если не указано (или явно установлено на 0), будет использоваться значение
автоматически вычисляется библиотекой. Значение по умолчанию - 0.
профиль
Установите звуковой профиль.
Распознаются следующие профили:
aac_low
AAC низкой сложности (LC)
aac_he
Высокоэффективный AAC (HE-AAC)
aac_he_v2
Высокоэффективный AAC версии 2 (HE-AACv2)
aac_ld
AAC с низкой задержкой (LD)
aac_eld
Улучшенный AAC с малой задержкой (ELD)
Если не указано, устанавливается значение aac_low.
Ниже приведены частные параметры кодировщика libfdk_aac.
форсажная камера
Включите функцию Afterburner, если установлено значение 1, отключите, если установлено значение 0. Это улучшает
качество, но и необходимая вычислительная мощность.
Значение по умолчанию 1.
поле_sbr
Включите SBR (репликацию спектрального диапазона) для ELD, если установлено значение 1, отключите, если установлено значение 0.
Значение по умолчанию 0.
сигнализация
Установите стиль сигнализации SBR / PS.
Он может принимать одно из следующих значений:
по умолчанию
выбрать сигнализацию неявно (явная иерархическая по умолчанию, неявная, если глобальная
заголовок отключен)
безоговорочно
неявная сигнализация с обратной совместимостью
явный_sbr
явная SBR, неявная сигнализация PS
явный_иерархический
явная иерархическая сигнализация
Значение по умолчанию по умолчанию.
латм
Выводить инкапсулированные данные LATM / LOAS, если установлено значение 1, отключено, если установлено значение 0.
Значение по умолчанию 0.
заголовок_период
Установите StreamMuxConfig и период повторения PCE (в кадрах) для внутриполосной отправки
конфигурационные буферы на транспортном уровне LATM / LOAS.
Должно быть 16-битным неотрицательным целым числом.
Значение по умолчанию 0.
VBR Установите режим VBR, от 1 до 5. 1 - самое низкое качество (хотя все еще довольно хорошее), а 5 -
высшее качество. Значение 0 отключит VBR, а CBR (постоянная скорость передачи) будет
включен.
В настоящее время только aac_low профиль поддерживает кодировку VBR.
Режимы VBR 1-5 соответствуют примерно следующим средним битрейтам:
1 32 кбит / с на канал
2 40 кбит / с на канал
3 48-56 кбит / с на канал
4 64 кбит / с на канал
5 около 80-96 кбит / с / канал
Значение по умолчанию 0.
Примеры
· Использовать FFmpeg для преобразования аудиофайла в VBR AAC в контейнере M4A (MP4):
ffmpeg -i input.wav -codec: libfdk_aac -vbr 3 output.m4a
· Использовать FFmpeg для преобразования аудиофайла в CBR 64k kbps AAC, используя High-Efficiency AAC
профиль:
ffmpeg -i input.wav -c: a libfdk_aac -profile: a aac_he -b: выход 64k.m4a
libmp3lame
LAME (Lame Ain't an MP3 Encoder) Обертка кодировщика MP3.
Требует наличия заголовков libmp3lame и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libmp3lame".
Посмотреть либшайн для кодировщика MP3 с фиксированной точкой, хотя и с более низким качеством.
Возможности
Оболочка libmp3lame поддерживает следующие параметры. В паралитический-эквивалент
параметры перечислены в скобках.
b (-b)
Установите битрейт, выраженный в битах / с, для CBR или ABR. LAME "битрейт" выражается в
килобит / с.
q (-V)
Установите постоянное качество для VBR. Эта опция действительна только при использовании FFmpeg
инструмент командной строки. Для пользователей интерфейса библиотеки используйте global_quality.
сжатие_уровень (-q)
Установите качество алгоритма. Допустимые аргументы - целые числа в диапазоне от 0 до 9, где 0 означает
самое высокое качество, но самое медленное, а 9 означает самое быстрое при наихудшем качестве.
водохранилище
Включите использование битового резервуара, если установлено значение 1. Значение по умолчанию - 1. У LAME это включено.
по умолчанию, но может быть изменено с помощью - нет опцию.
Joint_stereo (-m j)
Включите кодировщик для использования (покадрово) либо L / R стерео, либо mid / side
стерео. Значение по умолчанию - 1.
абр (--абр)
Включите кодировщик для использования ABR, если установлено значение 1. паралитический --абр устанавливает целевой битрейт,
в то время как эти параметры только говорят FFmpeg использовать ABR, все еще полагается на b установить битрейт.
libopencore-amrnb
Адаптивный многоскоростной узкополосный кодировщик OpenCORE.
Требуется наличие заголовков libopencore-amrnb и библиотеки во время настройки.
Вам необходимо явно настроить сборку с помощью "--enable-libopencore-amrnb".
--enable-version3 ".
Это кодировщик только моно. Официально он поддерживает только частоту дискретизации 8000 Гц, но вы можете
переопределить это, установив строгий в неофициальный или ниже.
Возможности
b Установите битрейт в битах в секунду. Поддерживаются только следующие битрейты, в противном случае
libavcodec будет округляться до ближайшего допустимого битрейта.
4750
5150
5900
6700
7400
7950
10200
12200
дтх Разрешить прерывистую передачу (генерировать комфортный шум), если установлено значение 1. По умолчанию
значение 0 (отключено).
либшайн
Оболочка для кодировщика MP3 с фиксированной точкой Shine.
Shine - это кодировщик MP3 с фиксированной точкой. Он имеет гораздо лучшую производительность на платформах без
FPU, например процессоры armel, а также некоторые телефоны и планшеты. Однако, поскольку он больше нацелен на
производительность, а не качество, он не на уровне LAME и других кодировщиков промышленного уровня
по качеству. Кроме того, согласно домашней странице проекта, этот кодировщик может быть не свободен от
багов, так как код был написан очень давно и проект был мертв как минимум 5
года.
Этот кодировщик поддерживает только стерео и моно вход. Это тоже только для ЦБ РФ.
Исходный проект (последнее обновление в начале 2007 г.) находится по адресу
<http://sourceforge.net/projects/libshine-fxp/>. Мы поддерживаем только обновленную вилку
Проект Savonet / Liquidsoap вhttps://github.com/savonet/shine>.
Требуется наличие заголовков libshine и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libshine".
Смотрите также libmp3lame.
Возможности
Оболочка libshine поддерживает следующие параметры. В сияние-эквивалент
параметры перечислены в скобках.
b (-b)
Установите битрейт, выраженный в битах / с для CBR. сияние -b вариант выражается в
килобит / с.
libtwolame
Обертка кодировщика TwoLAME MP2.
Требуется наличие заголовков libtwolame и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libtwolame".
Возможности
Оболочка libtwolame поддерживает следующие параметры. В двойка-эквивалентно
параметры следуют за параметрами FFmpeg и заключены в круглые скобки.
b (-b)
Установите битрейт, выраженный в битах / с для CBR. двойка b опция выражается в килобитах / с.
Значение по умолчанию - 128 КБ.
q (-V)
Установите качество для экспериментальной поддержки VBR. Максимальный диапазон значений от -50 до 50,
полезный диапазон от -10 до 10. Чем выше значение, тем лучше качество. Этот
опция действительна только при использовании FFmpeg инструмент командной строки. Для пользователей интерфейса библиотеки:
используют global_quality.
Режим (--Режим)
Установите режим результирующего звука. Возможные значения:
автоматический
Выбирать режим автоматически в зависимости от ввода. Это значение по умолчанию.
стерео
Стерео
Joint_stereo
Совместное стерео
двойной канал
Двухканальный
моно
Моно
психодель (--psyc-режим)
Установите психоакустическую модель для использования при кодировании. Аргумент должен быть целым числом от
-1 и 4 включительно. Чем выше значение, тем лучше качество. Значение по умолчанию
это 3.
Energy_levels (--энергия)
Включите расширение уровней энергии, если установлено значение 1. Значение по умолчанию - 0 (отключено).
error_protection (--защищать)
Включите защиту от ошибок CRC, если установлено значение 1. Значение по умолчанию - 0 (отключено).
авторское право (--авторское право)
Установите флаг авторских прав MPEG audio, если он установлен на 1. Значение по умолчанию - 0 (отключено).
оригинал (--оригинальный)
Установите флаг исходного звука MPEG, если он установлен на 1. Значение по умолчанию - 0 (отключено).
libvo-aacenc
Кодировщик VisualOn AAC.
Требуется наличие заголовков libvo-aacenc и библиотеки во время настройки. Ты
необходимо явно настроить сборку с помощью "--enable-libvo-aacenc --enable-version3".
Этот кодировщик считается хуже, чем родной экспериментальный FFmpeg AAC кодер,
по данным нескольких источников.
Возможности
Кодировщик VisualOn AAC поддерживает только кодирование AAC-LC и до 2 каналов. Это также
Только CBR.
b Установите скорость передачи в битах / с.
libvo-amrwbenc
Адаптивный многоскоростной широкополосный кодировщик VisualOn.
Требуется наличие заголовков libvo-amrwbenc и библиотеки во время настройки. Ты
необходимо явно настроить сборку с помощью "--enable-libvo-amrwbenc --enable-version3".
Это кодировщик только моно. Официально он поддерживает только частоту дискретизации 16000 Гц, но вы можете
переопределить это, установив строгий в неофициальный или ниже.
Возможности
b Установите битрейт в бит / с. Поддерживаются только следующие битрейты, иначе libavcodec
будет округлено до ближайшего допустимого битрейта.
6600
8850
12650
14250
15850
18250
19850
23050
23850
дтх Разрешить прерывистую передачу (генерировать комфортный шум), если установлено значение 1. По умолчанию
значение 0 (отключено).
либопус
Оболочка кодировщика интерактивного аудиокодека libopus Opus.
Требует наличия заголовков libopus и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libopus".
Опция Карт
Большинство опций libopus смоделированы после Opusenc утилита от opus-tools. Следующее
- это диаграмма сопоставления опций, описывающая опции, поддерживаемые оболочкой libopus, и их
Opusenc-эквивалент в скобках.
b (битрейт)
Установите скорость передачи в битах / с. FFmpeg's b параметр выражается в битах / с, а Opusenc's
битрейт в килобитах / с.
VBR (VBR, жесткий-cbr, и cvbr)
Установите режим VBR. FFmpeg VBR опция имеет следующие допустимые аргументы, с их
Opusenc эквивалентные варианты в скобках:
от (жесткий-cbr)
Используйте кодирование с постоянной скоростью передачи данных.
on (VBR)
Используйте кодирование с переменной скоростью передачи данных (по умолчанию).
ограничен (cvbr)
Используйте ограниченное кодирование с переменной скоростью передачи данных.
сжатие_уровень (комп)
Установить сложность алгоритма кодирования. Допустимые варианты - целые числа от 0 до 10. 0
дает самое быстрое кодирование, но более низкое качество, а 10 дает самое высокое качество, но
самая медленная кодировка. По умолчанию - 10.
продолжительность кадра (размер кадра)
Установите максимальный размер кадра или продолжительность кадра в миллисекундах. Аргумент должен быть
точно следующее: 2.5, 5, 10, 20, 40, 60. Чем меньше размер кадра, тем меньше
задержка, но меньшее качество при заданном битрейте. Размеры больше 20 мс - это только
интересно на довольно низких битрейтах. По умолчанию 20 мс.
package_loss (ожидаемая потеря)
Установите ожидаемый процент потери пакетов. По умолчанию - 0.
приложению (NA)
Установите предполагаемый тип приложения. Допустимые варианты перечислены ниже:
VoIP
Пользуйтесь улучшенной разборчивостью речи.
аудио
Сохраняйте верность входным данным (по умолчанию).
низкая задержка
Ограничьте только самые низкие режимы задержки.
выключение (NA)
Установите полосу среза в Гц. Аргумент должен быть в точности одним из следующих: 4000,
6000, 8000, 12000 или 20000, что соответствует узкополосному, среднему, широкополосному, супер
широкополосный и полнополосный соответственно. По умолчанию - 0 (отсечка отключена).
libvorbis
Оболочка кодировщика libvorbis.
Требуется наличие заголовков libvorbisenc и библиотеки во время настройки. Ты
необходимо явно настроить сборку с помощью "--enable-libvorbis".
Возможности
Оболочка libvorbis поддерживает следующие параметры. В оггенк-эквивалент
параметры перечислены в скобках.
Чтобы получить более точную и обширную документацию по параметрам libvorbis, обратитесь к
libvorbisenc и оггенкдокументация. Видетьhttp://xiph.org/vorbis/>,
<http://wiki.xiph.org/Vorbis-tools> и оггенк(1).
b (-b)
Установите битрейт, выраженный в битах / с для ABR. оггенк -b выражается в килобитах / с.
q (-q)
Установите постоянное качество для VBR. Значение должно быть числом с плавающей запятой в диапазоне
от -1.0 до 10.0. Чем выше значение, тем лучше качество. Значение по умолчанию -
3.0.
Эта опция действительна только при использовании FFmpeg инструмент командной строки. Для интерфейса библиотеки
пользователи, используйте global_quality.
выключение (--advanced-encode-опция lowpass_frequency = N)
Установите полосу среза в Гц, значение 0 отключает срез. оггенксвязанный вариант
выражается в кГц. Значение по умолчанию - 0 (отключение отключено).
минимальная ставка (-m)
Установите минимальный битрейт, выраженный в битах / с. оггенк -m выражается в килобитах / с.
максимальная скорость (-M)
Установите максимальный битрейт, выраженный в битах / с. оггенк -M выражается в килобитах / с. Этот
действует только в режиме ABR.
iблокировать (--advanced-encode-опция impulse_noisetune = N)
Установите смещение минимального уровня шума для импульсных блоков. Значение представляет собой число с плавающей запятой от -15.0 до
0.0. Отрицательное смещение указывает кодировщику обратить особое внимание на четкость изображения.
переходных процессов в кодированном аудио. Компромисс для лучшего переходного отклика - это
более высокий битрейт.
libwavpack
Оболочка, обеспечивающая кодирование WavPack через libwavpack.
В настоящее время поддерживается только режим без потерь с использованием 32-битных целочисленных выборок.
Требуется наличие заголовков libwavpack и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libwavpack".
Обратите внимание, что для кодека WavPack существует встроенный кодировщик libavcodec, поэтому пользователи могут кодировать
аудио с этим кодеком без использования этого кодировщика. Видеть wavpackenc.
Возможности
wavpack Соответствующие параметры утилиты командной строки перечислены в скобках, если таковые имеются.
размер кадра (--размер блока)
По умолчанию 32768.
сжатие_уровень
Установите компромисс между скоростью и сжатием. Допустимые аргументы перечислены ниже:
0 (-f)
Быстрый режим.
1 Нормальные (по умолчанию) настройки.
2 (-h)
Высокое качество.
3 (-хх)
Очень качественно.
4-8 (-хх -xEXTRAPROC)
Такой же как 3, но с включенной дополнительной обработкой.
4 такой же как -x2 и 8 такой же как -x6.
wavpack
Кодировщик аудио без потерь WavPack.
Это встроенный кодировщик WavPack для libavcodec. Также есть кодировщик на основе libwavpack,
но практически нет причин использовать этот кодировщик.
Смотрите также libwavpack.
Возможности
Эквивалентные варианты для wavpack утилиты командной строки указаны в скобках.
Общие параметры
Следующие общие параметры эффективны для этого кодировщика. Только особые примечания об этом
конкретный кодировщик будет задокументирован здесь. Общее значение опций см.
Кодер-декодер Возможности глава.
размер кадра (--размер блока)
Для этого кодировщика диапазон для этой опции составляет от 128 до 131072 XNUMX. По умолчанию
автоматически выбирается на основе частоты дискретизации и количества каналов.
Полную формулу расчета по умолчанию см. libavcodec / wavpackenc.c.
сжатие_уровень (-f, -h, -хх, и -x)
Синтаксис этой опции соответствует libwavpack"ы.
Частные варианты
Joint_stereo (-j)
Установите, следует ли включать совместное стерео. Допустимые значения:
on (1)
Принудительное кодирование среднего / бокового звука.
от (0)
Принудительное кодирование звука влево / вправо.
автоматический
Пусть кодировщик решит автоматически.
оптимизировать_моно
Установите, следует ли включать оптимизацию для моно. Эта опция эффективна только для не-
моно потоки. Доступные значения:
on включен
от инвалид
ВИДЕО КОДЕРЫ
Ниже приводится описание некоторых из доступных в настоящее время видеокодеров.
jpeg2000
Встроенный кодировщик jpeg 2000 по умолчанию работает с потерями, параметр "-q: v" можно использовать для установки
качество кодирования. Кодирование без потерь можно выбрать с помощью «-pred 1».
Возможности
формат
Может иметь значение «j2k» или «jp2» (по умолчанию), что позволяет хранить не-
RGB pix_fmts.
снег
Возможности
iterative_dia_size
размер диаметра для итеративной оценки движения
libtheora
Оболочка кодировщика libtheora Theora.
Требует наличия заголовков libtheora и библиотеки во время настройки. Тебе нужно
для явной настройки сборки с помощью "--enable-libtheora".
Для получения дополнительной информации о проекте libtheora см.http://www.theora.org/>.
Возможности
Следующие глобальные параметры сопоставлены внутренним параметрам libtheora, которые влияют на
качество и битрейт закодированного потока.
b Установите битрейт видео в бит / с для режима CBR (постоянный битрейт). В случае VBR
Включен режим (Переменная скорость передачи данных), этот параметр игнорируется.
Флаги
Используется для включения кодирования в режиме постоянного качества (VBR) через масштаб флаг, и
включить режимы «pass1» и «pass2».
g Установите размер GOP.
global_quality
Задайте глобальное качество как целое число в лямбда-единицах.
Актуально, только если включен режим VBR с помощью «flags + qscale». Значение конвертируется в
Единиц QP, разделив его на «FF_QP2LAMBDA», усеченный в диапазоне [0–10], а затем
умножается на 6.3, чтобы получить значение в диапазоне родной библиотеки libtheora [0-63]. Более высокое значение
соответствует более высокому качеству.
q Включите режим VBR, если установлено неотрицательное значение, и установите постоянное значение качества как
двойное значение с плавающей запятой в единицах QP.
Значение обрезается в диапазоне [0-10], а затем умножается на 6.3, чтобы получить значение в
родной диапазон libtheora [0-63].
Эта опция действительна только при использовании FFmpeg инструмент командной строки. Для интерфейса библиотеки
пользователи, используйте global_quality.
Примеры
· Установите максимальное постоянное качество (VBR) кодирования с помощью FFmpeg:
ffmpeg -i ВХОД -codec: v libtheora -q: v 10 OUTPUT.ogg
· Использовать FFmpeg для преобразования видеопотока Theora CBR 1000 кбит / с:
ffmpeg -i ВХОД -codec: v libtheora -b: v 1000k OUTPUT.ogg
libvpx
Формат VP8 / VP9 поддерживается libvpx.
Требует наличия заголовков libvpx и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-libvpx".
Возможности
Оболочка libvpx поддерживает следующие параметры. В vpxenc-эквивалентные варианты
или значения указаны в скобках для облегчения миграции.
Чтобы уменьшить дублирование документации, только частные параметры и некоторые другие
требующие особого внимания, описаны здесь. Для документации недокументированных
общие параметры, см. Кодер-декодер Возможности глава.
Чтобы получить дополнительную документацию по параметрам libvpx, вызовите команду FFmpeg -h
кодировщик = libvpx, FFmpeg -h кодировщик = libvpx-vp9 or vpxenc --Помогите. Дополнительная информация
доступно в документации API libvpx.
b (целевой битрейт)
Установите битрейт в бит / с. Обратите внимание, что FFmpeg b параметр выражается в битах / с, а
vpxenc's целевой битрейт в килобитах / с.
g (kf-макс-расстояние)
keyint_min (kf-мин-расстояние)
Qmin (мин-д)
qмакс (макс-д)
размер буфера (буф-сз, buf-optima-sz)
Установите размер буфера управления скоростью (в битах). Примечание vpxencпараметры указаны в
миллисекунд, оболочка libvpx преобразует это значение следующим образом: «buf-sz = bufsize *
1000 / битрейт "," buf-optimal-sz = bufsize * 1000 / битрейт * 5/6 ".
rc_init_occupancy (buf-инициал-sz)
Установите количество бит, которые должны быть загружены в буфер rc перед началом декодирования.
Внимание vpxencпараметр указывается в миллисекундах, оболочка libvpx преобразует это
значение следующим образом: «rc_init_occupancy * 1000 / битрейт».
недобор-процент
Установите минимальный процент отклонения от заданного битрейта в процентах.
превышение процента
Установите процент превышения допустимого уровня данных (макс.) От целевого битрейта.
пропуск_порога (выпадающая рамка)
qcomp (смещение-процент)
максимальная скорость (maxsection-процент)
Установите максимальный битрейт GOP в битах / с. Примечание vpxencопция указана в процентах от
целевой битрейт, оболочка libvpx преобразует это значение следующим образом: "(maxrate * 100
/ битрейт) ".
минимальная ставка (минсекция-пкт)
Установите минимальный битрейт GOP в бит / с. Примечание vpxencопция указана в процентах от
целевой битрейт, оболочка libvpx преобразует это значение следующим образом: "(minrate * 100
/ битрейт) ".
минрат максимальная скорость b конечное использование = cbr
"(минимальная скорость == максимальная скорость == битрейт)".
CRF (конечное использование = cq, cq-уровень)
качество, крайний срок (крайний срок)
лучший
Используйте крайний срок наилучшего качества. Плохо названный и довольно медленный, этот вариант должен быть
избегать, так как это может дать худшее качество продукции, чем хорошее.
хорошо
Используйте сроки хорошего качества. Это хороший компромисс между скоростью и качеством, когда
используется с процессор используется опцию.
реальном времени
Используйте крайний срок качества в реальном времени.
скорость, процессор используется (процессор используется)
Установите модификатор соотношения качество / скорость. Более высокие значения ускоряют кодирование за счет
качество.
nr (чувствительность к шуму)
статический молот
Установите порог изменения для блоков, ниже которого они будут пропущены кодировщиком.
ломтики (токен-части)
Обратите внимание, что FFmpeg ломтики опция дает общее количество разделов, а vpxenc's
токен-части задается как «log2 (разделы)».
максимальная внутренняя ставка
Установите максимальный битрейт I-кадра в процентах от целевого битрейта. Значение 0 означает
неограниченный.
Force_key_frames
"VPX_EFLAG_FORCE_KF"
Заместитель ссылка рама Связанный
авто-alt-ref
Разрешить использование альтернативных опорных кадров (только 2 прохода).
arnr-макс-кадров
Установите максимальное количество кадров для шумоподавления altref.
арнр-типа
Установите тип фильтра подавления шума altref: назад, вперед, по центру.
arnr-сила
Установите силу фильтра подавления шума altref.
rc-просмотр, задержка в кадрах (задержка в кадрах)
Установите количество кадров для просмотра вперед для типа кадра и контроля скорости.
устойчивый к ошибкам
Включите функции устойчивости к ошибкам.
VP9-специфичный кредита
без потерь
Включить режим без потерь.
кафель-колонны
Установите количество используемых столбцов плитки. Обратите внимание, что это указано как «log2 (tile_columns)». За
Например, 8 столбцов плитки будут запрошены, если установить кафель-колонны вариант
3.
ряды плитки
Установите количество используемых рядов плитки. Обратите внимание, что это указано как «log2 (tile_rows)». За
Например, 4 строки плитки будут запрошены, если установить ряды плитки — 2.
рамочно-параллельный
Включите функции параллельной декодирования кадров.
водный режим
Установите режим адаптивного квантования (0: выключено (по умолчанию), 1: дисперсия 2: сложность, 3:
циклическое обновление).
цветовое пространство цветовое пространство
Установите входное цветовое пространство. Битовый поток VP9 поддерживает сигнализацию следующего
цветовые пространства:
RGB SRGB
bt709 bt709
неопределенных неизвестный
бт470бг bt601
смпте170м smpte170
смпте240м smpte240
bt2020_ncl bt2020
Для получения дополнительной информации о libvpx см .:http://www.webmproject.org/>
libwebp
libwebp WebP Оболочка кодировщика изображений
libwebp - официальный кодировщик изображений WebP от Google. Он может кодировать с потерями или
режим без потерь. Изображения с потерями - это, по сути, оболочка вокруг кадра VP8. Изображения без потерь
представляют собой отдельный кодек, разработанный Google.
Pixel Формат
В настоящее время libwebp поддерживает только YUV420 для с потерями и RGB для без потерь из-за ограничений.
формата и libwebp. Альфа поддерживается для любого режима. Из-за API
ограничения, если RGB передается при кодировании с потерями или YUV передается для кодирования
без потерь формат пикселей будет автоматически преобразован с использованием функций из libwebp.
Это не идеально и сделано исключительно для удобства.
Возможности
-без потерь логический
Включает / отключает использование режима без потерь. По умолчанию 0.
-compression_level целое
В случае с потерями это компромисс между качеством и скоростью. Более высокие значения дают лучшее качество для
данный размер за счет увеличения времени кодирования. Для без потерь это размер / скорость
компромисс. Более высокие значения дают меньший размер за счет увеличения времени кодирования. Более
в частности, он контролирует количество используемых дополнительных алгоритмов и инструментов сжатия,
и варьируется комбинация этих инструментов. Это соответствует метод вариант в libwebp.
Допустимый диапазон - от 0 до 6. По умолчанию - 4.
-qмасштаб плавать
Для кодирования с потерями это контролирует качество изображения от 0 до 100. Для кодирования без потерь это
контролирует усилия и время, затрачиваемые на дополнительное сжатие. Значение по умолчанию - 75. Примечание.
что для использования через libavcodec эта опция называется global_quality и должен быть
умноженный на FF_QP2LAMBDA.
-предустановка напишите
Предварительная установка конфигурации. Это делает некоторые автоматические настройки на основе общего типа
изображение.
нет
Не используйте предустановку.
по умолчанию
Используйте кодировщик по умолчанию.
картина
Цифровое изображение, например портрет, внутренний снимок
Фото
Фотография на открытом воздухе при естественном освещении
рисование
Рисунок руки или линии с высококонтрастными деталями
значок
Маленькие красочные изображения
текст
Текстовый
библиотека libx264, libx264rgb
Оболочка кодировщика x264 H.264 / MPEG-4 AVC.
Этот кодировщик требует наличия заголовков libx264 и библиотеки во время
конфигурация. Вам необходимо явно настроить сборку с помощью «--enable-libx264».
libx264 поддерживает впечатляющее количество функций, включая адаптивные пространственные 8x8 и 4x4.
преобразование, адаптивное размещение B-кадров, энтропийное кодирование CAVLC / CABAC, чересстрочная развертка (MBAFF),
режим без потерь, psy-оптимизация для сохранения деталей (адаптивное квантование, psy-RD, psy-
шпалеры).
Многие параметры кодировщика libx264 сопоставлены с глобальными параметрами кодека FFmpeg, в то время как уникальные
параметры кодировщика предоставляются через частные параметры. Дополнительно x264opts и
x264-параметры частные параметры позволяют передавать список кортежей ключ = значение, принятый
функция libx264 "x264_param_parse".
Сайт проекта x264 находится по адресуhttp://www.videolan.org/developers/x264.html>.
Кодировщик libx264rgb такой же, как libx264, за исключением того, что он принимает упакованные форматы пикселей RGB.
в качестве ввода вместо YUV.
Поддержанный Pixel Форматы
x264 поддерживает 8–10-битные цветовые пространства. Точная битовая глубина контролируется на x264
настроить время. FFmpeg поддерживает только одну битовую глубину в одной конкретной сборке. В других
словами, невозможно построить один FFmpeg с несколькими версиями x264 с
разная битовая глубина.
Возможности
Оболочка libx264 поддерживает следующие параметры. В x264-эквивалентные варианты или
значения указаны в скобках для облегчения переноса.
Чтобы уменьшить дублирование документации, только частные параметры и некоторые другие
требующие особого внимания, описаны здесь. Для документации недокументированных
общие параметры, см. Кодер-декодер Возможности глава.
Чтобы получить более точную и обширную документацию по параметрам libx264, вызовите
команду x264 --полная помощь или обратитесь к документации libx264.
b (битрейт)
Установите битрейт в бит / с. Обратите внимание, что FFmpeg b параметр выражается в битах / с, а
x264's битрейт в килобитах / с.
bf (бфреймы)
g (Keyint)
Qmin (qpмин)
Минимальная шкала квантователя.
qмакс (qpmax)
Максимальная шкала квантователя.
qdiff (qpstep)
Максимальная разница между шкалами квантователя.
qblur (qblur)
Размытие кривой квантователя
qcomp (qcomp)
Коэффициент сжатия кривой квантователя
реф. (ссылка)
Количество опорных кадров, которые может использовать каждый P-кадр. Диапазон от 0-16.
sc_threshold (сцена)
Устанавливает порог обнаружения смены сцены.
шпалера (шпалера)
Выполняет квантование решетки для повышения эффективности. Включено по умолчанию.
nr (nr)
я_диапазон (мереж)
Максимальный диапазон поиска движения в пикселях.
me_method (me)
Установите метод оценки движения. Возможные значения в порядке убывания скорости:
диаметр (диаметр)
эпс (диаметр)
Алмазный поиск с радиусом 1 (самый быстрый). эпс это псевдоним для диаметр.
шестнадцатеричный (шестнадцатеричный)
Гексагональный поиск с радиусом 2.
ммм (ммм)
Неравномерный поиск по множеству шестиугольников.
один (один)
Исчерпывающий поиск.
край (край)
Исчерпывающий поиск Адамара (самый медленный).
подк (Разместить)
Метод оценки движения субпикселя.
b_стратегия (б-адаптировать)
Адаптивный алгоритм принятия решения о размещении B-кадра. Используйте только при первом проходе.
keyint_min (мин-ключ)
Минимальный размер GOP.
кодер
Установите энтропийный энкодер. Возможные значения:
ac Включите CABAC.
VLC Включите CAVLC и отключите CABAC. Дает тот же эффект, что и x264's --без кабака
опцию.
CMP Установите алгоритм сравнения оценки движения полного пикселя. Возможные значения:
цветность
Включить оценку цветности в движении.
грустный Игнорировать цветность при оценке движения. Дает тот же эффект, что и x264's
--нет-хрома-мне опцию.
темы (темы)
Количество потоков кодирования.
тип_нити
Установите технику многопоточности. Возможные значения:
кусочек
Многопоточность на основе срезов. Дает тот же эффект, что и x264's
--sliced-thread опцию.
рама
Многопоточность на основе кадров.
Флаги
Установите флаги кодировки. Его можно использовать для отключения закрытой GOP и включения открытой GOP с помощью
установив его на "-cgop". Результат аналогичен поведению x264's --open-гоп
опцию.
rc_init_occupancy (vbv-инит)
заданной (заданной)
Установите предустановку кодирования.
мелодия (мелодия)
Установите настройку параметров кодирования.
профиль (профиль)
Установите ограничения профиля.
быстрый первый проход
Включите быстрые настройки при кодировании первого прохода, если установлено значение 1. Если установлено значение 0, оно имеет
такой же эффект от x264's - медленный-первый проход опцию.
CRF (CRF)
Установите качество для режима постоянного качества.
crf_max (crf-макс)
В режиме CRF предотвращает снижение качества VBV сверх этой точки.
qp (qp)
Установите параметр метода управления постоянной скоростью квантования.
водный режим (водный режим)
Установите метод AQ. Возможные значения:
нет (0)
Отключено.
дисперсия (1)
Дисперсия AQ (маска сложности).
автовариантность (2)
Автовариантность AQ (экспериментальная).
водная сила (водная сила)
Установите силу AQ, уменьшите блокировку и размытие в плоских и текстурированных областях.
пси Используйте психовизуальную оптимизацию, если установлено значение 1. Если установлено значение 0, оно имеет тот же эффект, что и
x264's - не пси опцию.
пси-рд (пси-рд)
Установите силу психовизуальной оптимизации, в пси-рд:псай-решетка формат.
rc-просмотр вперед (rc-просмотр вперед)
Установите количество кадров для просмотра вперед для типа кадра и контроля скорости.
весb
Включите взвешенное предсказание для B-кадров, если установлено значение 1. Если установлено значение 0, оно имеет то же самое.
эффект как x264's - без весаb опцию.
вес (вес)
Установите метод взвешенного прогнозирования для P-кадров. Возможные значения:
нет (0)
Отключена
декриминализовано (1)
Включить только взвешенные ссылки
<ss-word style="transform-origin: 50% 50% 0px; backface-visibility: visible; opacity: 1;">высокую</ss-word> (2)
Включить как взвешенные ссылки, так и дубликаты
ссим (ссим)
Включите вычисление и печать статистики SSIM после кодирования.
внутреннее обновление (внутреннее обновление)
Включите использование периодического внутреннего обновления вместо кадров IDR, если установлено значение 1.
avcintra-класс (класс)
Настройте кодировщик для создания AVC-Intra. Допустимые значения: 50,100, 200 и XNUMX.
Bluray-совместимый (Bluray-совместимый)
Настройте кодировщик на совместимость со стандартом bluray. Это стенография
для установки "bluray-compat = 1 force-cfr = 1".
b-уклон (b-уклон)
Установите влияние на частоту использования B-кадров.
b-пирамида (b-пирамида)
Установить метод сохранения некоторых B-кадров в качестве ссылок. Возможные значения:
нет (нет)
Отключено.
строгий (строгий)
Строго иерархическая пирамида.
"обычные" ("обычные")
Нестрогий (не совместим с Blu-ray).
смешанные судьи
Разрешить использование одной ссылки на раздел вместо одной ссылки на
макроблок, если установлен на 1. Если установлен на 0, он имеет тот же эффект, что и x264's
--no-mixed-refs опцию.
8x8dct
Включите адаптивное пространственное преобразование (высокопрофильное преобразование 8x8), если установлено значение 1. Если установлено
до 0, он имеет тот же эффект, что и x264's --no-8x8dct опцию.
фаст-пскип
Включите раннее обнаружение SKIP на P-кадрах, если установлено значение 1. Если установлено значение 0, оно имеет то же самое.
эффект как x264's --no-fast-pskip опцию.
AUD (AUD)
Включите использование разделителей единиц доступа, если установлено значение 1.
мбтри
Включите использование управления скоростью дерева макроблоков, если установлено значение 1. Если установлено значение 0, оно имеет то же самое.
эффект как x264's --no-mbtree опцию.
Деблокирующий (Деблокирующий)
Установите параметры петлевого фильтра, в альфа:beta форме.
cplxblur (cplxblur)
Установить уменьшение колебаний QP (до сжатия кривой).
множество (множество)
Задайте разделы, которые следует рассматривать как список разделенных запятыми. Возможные значения в списке:
p8x8
П-образная перегородка 8х8.
p4x4
П-образная перегородка 4х4.
b8x8
Б-рамная перегородка 4х4.
i8x8
I-рамная перегородка 8x8.
i4x4
Двутавровая перегородка 4х4. (Включение p4x4 требуется p8x8 быть включенным. Включение i8x8
требуется адаптивное пространственное преобразование (8x8dct вариант) для включения.)
нет (нет)
Не считайте никаких перегородок.
ВСЕ (ВСЕ)
Рассмотрим каждый раздел.
прямой пред (направлять)
Установите режим прямого прогнозирования MV. Возможные значения:
нет (нет)
Отключить прогнозирование MV.
пространственный (пространственный)
Включить пространственное прогнозирование.
временной (временной)
Включить временное прогнозирование.
автоматический (автоматический)
Решено автоматически.
максимальный размер среза (максимальный размер среза)
Установите предел размера каждого фрагмента в байтах. Если не указано, но полезная нагрузка RTP
размер (ps) указано, что используется.
Статистика (Статистика)
Задайте имя файла для многопроходной статистики.
Nal-Hrd (Nal-Hrd)
Установить информацию о сигнале HRD (требуется vbv-bufsize установить). Возможные значения:
нет (нет)
Отключить информационную сигнализацию HRD.
VBR (VBR)
Переменная скорость передачи данных.
CBR (CBR)
Постоянная скорость передачи данных (не допускается в контейнере MP4).
x264opts (NA)
Установите любую опцию x264, см. x264 --fullhelp для списка.
Аргумент - это список ключ=ценностное пары, разделенные знаком ":". В фильтр и пси-рд кредита
которые используют ":" в качестве разделителя, вместо этого используйте ",". Они тоже это принимают, так как
давным-давно, но по какой-то причине это остается недокументированным.
Например, чтобы указать параметры кодировки libx264 с помощью FFmpeg:
ffmpeg -i foo.mpg -vcodec libx264 -x264opts keyint = 123: min-keyint = 20 -an out.mkv
x264-параметры (NA)
Переопределите конфигурацию x264, используя: -разделенный список параметров ключ = значение.
Эта опция функционально такая же, как и у x264opts, но дублируется для
совместимость с вилкой Libav.
Например, чтобы указать параметры кодировки libx264 с помощью FFmpeg:
ffmpeg -i INPUT -c: v libx264 -x264-params level = 30: bframes = 0: weightp = 0: \
cabac = 0: ref = 1: vbv-maxrate = 768: vbv-bufsize = 2000: analysis = all: me = umh: \
no-fast-pskip=1:subq=6:8x8dct=0:trellis=0 OUTPUT
Предусмотрено кодирование ffpresets для общего использования, поэтому их можно использовать с общими
система предустановок (например, передача заранее опция).
libx265
Обертка кодировщика x265 H.265 / HEVC.
Этот кодировщик требует наличия заголовков libx265 и библиотеки во время
конфигурация. Вам необходимо явно настроить сборку с помощью --enable-libx265.
Возможности
заданной
Установите предустановку x265.
мелодия
Установите параметр настройки x265.
x265-параметры
Установите параметры x265, используя список ключ=ценностное пары, разделенные знаком ":". Видеть x265 --Помогите
для списка опций.
Например, чтобы указать параметры кодировки libx265 с помощью -x265-параметры:
ffmpeg -i input -c: v libx265 -x265-params crf = 26: psy-rd = 1 output.mp4
libxvid
Оболочка кодировщика Xvid MPEG-4 Part 2.
Этот кодировщик требует наличия заголовков libxvidcore и библиотеки во время
конфигурация. Вам необходимо явно настроить сборку с помощью "--enable-libxvid".
--enable-gpl ".
Собственный кодировщик "mpeg4" поддерживает формат MPEG-4 Part 2, поэтому пользователи могут кодировать в этом формате.
формат без этой библиотеки.
Возможности
Оболочка libxvid поддерживает следующие параметры. Некоторые из следующих вариантов
перечислены, но не задокументированы и соответствуют параметрам общих кодеков. Видеть Кодер-декодер
Возможности глава для их документации. Другие общие параметры, не указанные в списке
не действуют для кодировщика libxvid.
b
g
Qmin
qмакс
mpeg_quant
темы
bf
b_qфактор
b_qoffset
Флаги
Установите определенные флаги кодирования. Возможные значения:
mv4 Используйте четыре вектора движения для каждого макроблока.
АИК Включите высококачественное прогнозирование переменного тока.
серый
Кодировать только оттенки серого.
GMC Включите использование глобальной компенсации движения (GMC).
qpel
Включите компенсацию движения на четверть пикселя.
cgop
Включить закрытый GOP.
global_header
Поместите глобальные заголовки в дополнительные данные вместо каждого ключевого кадра.
шпалера
me_method
Установите метод оценки движения. Возможные значения в порядке убывания скорости и
порядок увеличения качества:
нуль
Не использовать оценку движения (по умолчанию).
фотки
x1
журнал Включение расширенного алмазного зонального поиска для блоков 16x16 и полупиксельного уточнения
для блоков 16х16. x1 и журнал псевдонимы для фотки.
эпс
Включите все, что описано выше, а также расширенный поиск по алмазной зоне для
Блоки 8x8, уточнение полупикселей для блоков 8x8 и оценка движения по цветности
самолеты.
полный
Включите все, что описано выше, а также расширенные блоки 16x16 и 8x8
поиск.
мбд Установите алгоритм решения макроблока. Возможные значения в порядке возрастания качества:
декриминализовано
Использовать алгоритм функции сравнения макроблоков (по умолчанию).
биты
Включить уточнение половин и четверть пикселя на основе искажения для 16x16
блоки.
rd Включите все, что описано выше, а также половину пикселей на основе искажений.
и четвертьпиксельное уточнение для блоков 8x8, а также поиск на основе искажений
используя квадратный узор.
lumi_aq
Включите адаптивное квантование маскировки люминесценции, если установлено значение 1. По умолчанию - 0 (отключено).
дисперсия_aq
Включите адаптивное квантование дисперсии, если установлено значение 1. По умолчанию - 0 (отключено).
В сочетании с lumi_aq, итоговое качество не будет лучше любого из
два указаны индивидуально. Другими словами, качество будет хуже.
один из двух эффектов.
ссим
Установите метод отображения структурного подобия (SSIM). Возможные значения:
от Отключить отображение информации SSIM.
средний Вывести среднее значение SSIM в конце кодирования в стандартный вывод. Формат отображения
средний SSIM составляет:
Средний SSIM:% f
Для пользователей, не знакомых с C,% f означает число с плавающей запятой или десятичное число (например,
0.939232).
рама
Выводит как покадровые данные SSIM во время кодирования, так и среднее значение SSIM в конце
кодировка в стандартный вывод. Формат покадровой информации:
SSIM: в среднем:% 1.3f мин .:% 1.3f макс:% 1.3f
Для пользователей, не знакомых с C,% 1.3f означает число с плавающей запятой, округленное до 3.
цифры после точки (например, 0.932).
ssim_acc
Установите точность SSIM. Допустимые варианты - целые числа в диапазоне от 0 до 4, а 0 дает
самый точный результат и 4 самых быстрых.
mpeg2
Видеокодер MPEG-2.
Возможности
seq_disp_ext целое
Определяет, должен ли кодировщик записывать расширение sequence_display_extension на выходе.
-1
автоматический
Решите автоматически записывать это или нет (это значение по умолчанию), проверив, если
записываемые данные отличаются от значений по умолчанию или неопределенных значений.
0
никогда
Никогда не пиши это.
1
всегда
Всегда пиши это.
PNG
Кодировщик изображений PNG.
Частные кредита
точек на дюйм целое
Установить физическую плотность пикселей в точках на дюйм, по умолчанию не задано
пм целое
Установить физическую плотность пикселей в точках на метр, по умолчанию не задано
ProRes
Кодировщик Apple ProRes.
FFmpeg содержит 2 кодировщика ProRes, кодировщик prores-aw и prores-ks. Используемый кодировщик
можно выбрать с помощью опции "-vcodec".
Частные Возможности для прорес-кс
профиль целое
Выберите профиль ProRes для кодирования
полномочие
lt
стандарт
hq
4444
Quant_mat целое
Выберите матрицу квантования.
автоматический
по умолчанию
полномочие
lt
стандарт
hq
Если установлено на автоматический, будет выбрана матрица, соответствующая профилю. Если не установлен,
матрица высочайшего качества, по умолчанию, будет выбрано.
бит_пер_мб целое
Сколько бит выделить для кодирования одного макроблока. В разных профилях используется от 200
и 2400 бит на макроблок, максимум - 8000.
mbs_per_slice целое
Количество макроблоков в каждом срезе (1-8); значение по умолчанию (8) должно быть подходящим в
практически во всех ситуациях.
продавец string
Заменить 4-байтовый идентификатор поставщика. Пользовательский идентификатор поставщика, например apl0 потребует поток
был произведен кодировщиком Apple.
альфа_биты целое
Укажите количество бит для альфа-компонента. Возможные значения: 0, 8 и 16. Используйте 0
для отключения кодирования альфа-плоскости.
Скорость соображения
В режиме работы по умолчанию кодировщик должен соблюдать ограничения кадра (т. Е. Не
создавать кадры большего размера, чем требуется), сохраняя при этом качество выходного изображения
насколько возможно. Рамку, содержащую множество мелких деталей, сложнее сжать, и
кодировщик потратит больше времени на поиск подходящих квантователей для каждого среза.
Установка более высокого бит_пер_мб предел улучшит скорость.
Для максимальной скорости кодирования установите масштаб параметр (4 - рекомендуемое значение) и
не устанавливайте ограничение по размеру.
либквазар
Кодировщик Kvazaar H.265 / HEVC.
Требуется наличие заголовков и библиотеки libkvazaar во время настройки. Тебе нужно
чтобы явно настроить сборку с --enable-libkvazaar.
Возможности
b Установите целевой битрейт видео в бит / с и включите управление скоростью.
темы
Установите количество потоков кодирования.
квазаар-парамс
Задайте параметры квазара в виде списка имя=ценностное пары, разделенные запятыми (,). Видеть
kvazaar документация со списком опций.
СУБТИТРЫ КОДЕРЫ
dvdsub
Этот кодек кодирует формат растровых субтитров, который используется в DVD. Обычно они
хранятся в парах файлов VOBSUB (* .idx + * .sub), и их также можно использовать в файлах Matroska.
Возможности
даже_ряды_фикс
Если установлено значение 1, включите обходной путь, который сделает количество строк пикселей одинаковым во всех
субтитры. Это устраняет проблему с некоторыми игроками, которые обрезают нижний ряд, если
номер нечетный. При необходимости обходной путь просто добавляет полностью прозрачную строку. В
накладные расходы низкие, обычно в среднем один байт на субтитр.
По умолчанию этот обходной путь отключен.
БИТСТРИМ ФИЛЬТРЫ
Когда вы настраиваете свою сборку FFmpeg, все поддерживаемые фильтры битового потока включаются
дефолт. Вы можете перечислить все доступные, используя параметр конфигурации "--list-bsfs".
Вы можете отключить все фильтры битового потока, используя параметр конфигурации --disable-bsfs, и
выборочно включить любой фильтр битового потока с помощью опции "--enable-bsf = BSF", или вы можете
отключить конкретный фильтр битового потока с помощью опции "--disable-bsf = BSF".
Параметр "-bsfs" инструментов ff * отобразит список всех поддерживаемых битовых потоков.
фильтры, включенные в вашу сборку.
Инструменты ff * имеют параметр -bsf, применяемый к потоку, принимая список разделенных запятыми
фильтры, параметры которых следуют за именем фильтра после знака '='.
ffmpeg -i INPUT -c: v copy -bsf: v filter1 [= opt1 = str1 / opt2 = str2] [, filter2] ВЫХОД
Ниже приводится описание доступных в настоящее время фильтров битового потока с их
параметры, если есть.
aac_adtstoasc
Преобразование MPEG-2/4 AAC ADTS в фильтр потока битов MPEG-4 со специальной конфигурацией аудио.
Этот фильтр создает MPEG-4 AudioSpecificConfig из заголовка MPEG-2/4 ADTS и удаляет
заголовок ADTS.
Это требуется, например, при копировании потока AAC из необработанного контейнера ADTS AAC в
FLV или файл MOV / MP4.
чавкать
Удалите нулевое заполнение в конце пакета.
dump_extra
Добавьте дополнительные данные в начало отфильтрованных пакетов.
Дополнительный аргумент указывает, какие пакеты следует фильтровать. Он принимает
ценности:
a добавлять дополнительные данные ко всем пакетам ключей, но только если local_header установлен в флаги2 кодер-декодер
поле контекста
k добавить дополнительные данные ко всем ключевым пакетам
e добавить дополнительные данные ко всем пакетам
Если не указано иное, предполагается k.
Например, следующие FFmpeg команда заставляет глобальный заголовок (таким образом отключая отдельные
заголовки пакетов) в пакетах H.264, сгенерированных кодировщиком libx264, но исправляет их
путем добавления заголовка, хранящегося в extradata, к пакетам ключей:
ffmpeg -i INPUT -map 0 -flags: v + global_header -c: v libx264 -bsf: v dump_extra out.ts
h264_mp4вприложенииb
Преобразование битового потока H.264 из режима с префиксом длины в режим запуска с префиксом кода (как
определено в Приложении B спецификации ITU-T H.264).
Это требуется для некоторых форматов потоковой передачи, как правило, для формата транспортного потока MPEG-2.
("МПЭГТС").
Например, чтобы преобразовать файл MP4, содержащий поток H.264, в формат mpegts с помощью FFmpeg,
вы можете использовать команду:
ffmpeg -i INPUT.mp4 -codec copy -bsf: v h264_mp4toannexb OUTPUT.ts
imxdump
Изменяет поток битов, чтобы он соответствовал MOV и был использован декодером Final Cut Pro. Этот
фильтр применяется только к кодеку mpeg2video и, вероятно, не нужен для Final Cut Pro 7
и новее с соответствующими -tag: v.
Например, чтобы повторно преобразовать 30 МБ / с NTSC IMX в MOV:
ffmpeg -i input.mxf -c copy -bsf: v imxdump -tag: v mx3n output.mov
mjpeg2jpeg
Преобразование пакетов MJPEG / AVI1 в полные пакеты JPEG / JFIF.
MJPEG - это видеокодек, в котором каждый видеокадр представляет собой изображение в формате JPEG. В
отдельные кадры могут быть извлечены без потерь, например,
ffmpeg -i ../some_mjpeg.avi -c: v копировать кадры_% d.jpg
К сожалению, эти фрагменты представляют собой неполные изображения JPEG, поскольку в них отсутствует сегмент DHT.
требуется для декодирования. Цитата из
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:
Эйвери Ли, писавший в группе новостей rec.video.desktop в 2001 году, прокомментировал, что «MJPEG, или
по крайней мере, MJPEG в файлах AVI, имеющих MJPG fourcc, ограничен JPEG с фиксированным - и
* пропущено * - таблица Хаффмана. JPEG должен быть цветовым пространством YCbCr, он должен быть 4: 2: 2, и он
должен использовать базовую кодировку Хаффмана, а не арифметическую или прогрессивную. . . . Вы действительно можете
извлеките кадры MJPEG и декодируйте их с помощью обычного декодера JPEG, но вы должны
добавьте к ним сегмент DHT, иначе декодер не поймет, как распаковать
данные. Необходимая точная таблица приведена в спецификации OpenDML ".
Этот фильтр битового потока исправляет заголовок кадров, извлеченных из потока MJPEG.
(с идентификатором заголовка AVI1 и без сегмента DHT) для создания полностью квалифицированного JPEG
изображениями.
ffmpeg -i mjpeg-movie.avi -c: v copy -bsf: v mjpeg2jpeg frame_% d.jpg
exiftran -i -9 кадр * .jpg
ffmpeg -i frame_% d.jpg -c: v копировать rotated.avi
mjpega_dump_header
мовсуб
mp3_header_decompress
mpeg4_unpack_bframes
Распакуйте упакованные B-кадры в стиле DivX.
Упакованные в стиле DivX B-кадры не являются допустимыми MPEG-4 и были лишь временным решением для неработающих
Видео для подсистемы Windows. Они занимают больше места, могут вызывать незначительные проблемы с синхронизацией AV, требуют
больше мощности процессора для декодирования (если у плеера нет очереди декодированных изображений для компенсации
стиль 2,0,2,0 кадра на пакет) и вызвать проблемы при копировании в стандартный контейнер
например mp4 или mpeg-ps / ts, потому что декодеры MPEG-4 не могут их декодировать, поскольку они
не действительны MPEG-4.
Например, чтобы исправить файл AVI, содержащий поток MPEG-4 с упакованными B-кадрами в стиле DivX.
через FFmpeg, вы можете использовать команду:
ffmpeg -i INPUT.avi -codec copy -bsf: v mpeg4_unpack_bframes OUTPUT.avi
шум
Повреждает содержимое пакетов, не повреждая контейнер. Может использоваться для фаззинга или
тестирование устойчивости / сокрытия ошибок.
Параметры: числовая строка, значение которой связано с частотой выходных байтов.
изменен. Следовательно, значения ниже или равные 0 запрещены, и чем ниже, тем больше
частые байты будут изменены, причем 1 означает, что каждый байт изменен.
ffmpeg -i INPUT -c copy -bsf noise [= 1] output.mkv
применяет модификацию к каждому байту.
Remove_extra
ФОРМАТ ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Библиотека libavformat предоставляет некоторые общие глобальные параметры, которые можно установить на всех
мультиплексоры и демультиплексоры. Кроме того, каждый мультиплексор или демультиплексор может поддерживать так называемые частные
параметры, специфичные для этого компонента.
Параметры можно установить, указав -вариант ценностное в инструментах FFmpeg или установив
значение явно в параметрах "AVFormatContext" или с помощью libavutil / opt.h API для
программное использование.
Список поддерживаемых опций следующий:
авиафлаги Флаги (ввод, вывод)
Возможные значения:
направлять
Уменьшите буферизацию.
зондировать целое (вход)
Установите размер зондирования в байтах, то есть размер данных для анализа для получения потока
Информация. Более высокое значение позволит обнаружить больше информации, если она
рассеивается в потоке, но увеличивает задержку. Должно быть целым числом не меньше
чем 32. По умолчанию это 5000000.
размер пакета целое (выходной)
Установите размер пакета.
флаги Флаги (ввод, вывод)
Установите флаги формата.
Возможные значения:
игнидкс
Игнорировать index.
быстрый поиск
Включите быстрый, но неточный поиск для некоторых форматов.
Genpts
Сгенерируйте PTS.
нофиллин
Не заполняйте недостающие значения, которые можно точно рассчитать.
непродуманный
Отключите AVParsers, для этого тоже нужен "+ нофиллин".
воспламеняется
Игнорировать DTS.
отбросить
Отбросьте поврежденные кадры.
сорта
Попробуйте чередовать выходные пакеты по DTS.
крепость
Не объединяйте побочные данные.
латм
Включите полезную нагрузку RTP MP4A-LATM.
нобуфер
Уменьшите задержку, вызванную дополнительной буферизацией
битоточный
Записывайте только данные, не зависящие от платформы, сборки и времени. Это гарантирует, что файл
контрольные суммы данных воспроизводимы и совпадают между платформами. Его основное использование
предназначен для регрессионного тестирования.
искать2любой целое (вход)
Разрешить поиск неключевых кадров на уровне демультиплексора, если поддерживается, если установлено значение 1. По умолчанию
это 0.
анализируемая продолжительность целое (вход)
Укажите, сколько микросекунд анализируется для проверки ввода. Более высокое значение будет
позволит обнаруживать более точную информацию, но увеличит задержку. По умолчанию
5,000,000 5 XNUMX микросекунд = XNUMX секунд.
криптоключ шестнадцатеричный string (вход)
Установите ключ дешифрования.
индексная память целое (вход)
Установите максимальный объем памяти, используемый для индекса отметки времени (для каждого потока).
rtbufsize целое (вход)
Установите максимальный объем памяти, используемый для буферизации кадров реального времени.
fdebug Флаги (ввод, вывод)
Распечатайте конкретную отладочную информацию.
Возможные значения:
ts
max_delay целое (ввод, вывод)
Установите максимальную задержку мультиплексирования или демультиплексирования в микросекундах.
fpsprobesize целое (вход)
Установите количество кадров, используемых для проверки fps.
audio_preload целое (выходной)
Установите микросекунды, на которые аудиопакеты должны чередоваться раньше.
chunk_duration целое (выходной)
Установите микросекунды для каждого фрагмента.
размер_чанка целое (выходной)
Установите размер в байтах для каждого блока.
ошибка_обнаружение, f_err_detect Флаги (вход)
Установите флаги обнаружения ошибок. "f_err_detect" устарел и должен использоваться только через
FFmpeg инструмент.
Возможные значения:
crccheck
Проверьте встроенные CRC.
битовый поток
Обнаружение отклонений спецификации битового потока.
буфер
Обнаружить неправильную длину битового потока.
взорваться
Прервать декодирование при обнаружении незначительной ошибки.
тщательный
Считайте вещи, которые нарушают спецификацию и не были замечены в дикой природе как
ошибки.
отвечающий всем требованиям
Считайте все несоответствия спецификациям ошибками.
агрессивный
Считайте ошибки, которые нормальный кодировщик не должен делать.
max_interleave_delta целое (выходной)
Установите максимальную продолжительность буферизации для чередования. Продолжительность выражается в
микросекунд, по умолчанию 1000000 (1 секунда).
Чтобы гарантировать правильное чередование всех потоков, libavformat будет ждать, пока он
имеет хотя бы один пакет для каждого потока перед фактической записью каких-либо пакетов в
выходной файл. Когда некоторые потоки "разреженные" (т. Е. Есть большие промежутки между
последовательные пакеты), это может привести к чрезмерной буферизации.
В этом поле указывается максимальная разница между отметками времени первого и
последний пакет в очереди мультиплексирования, выше которого libavformat выведет пакет
независимо от того, поставил ли он в очередь пакет для всех потоков.
Если установлено значение 0, libavformat продолжит буферизацию пакетов до тех пор, пока не получит пакет для
каждый поток, независимо от максимальной разницы в отметках времени между буферизованными
пакеты.
use_walllock_as_timestamps целое (вход)
Используйте настенные часы в качестве отметок времени.
избежать_негативных_ц целое (выходной)
Возможные значения:
make_non_negative
Сдвиньте временные метки, чтобы сделать их неотрицательными. Также обратите внимание, что это влияет только на
ведущие отрицательные временные метки, а не немонотонные отрицательные временные метки.
make_zero
Сдвиньте отметки времени так, чтобы первая отметка времени была 0.
автоматический (По умолчанию)
Включает смещение, когда это требуется целевым форматом.
инвалид
Отключает смещение отметки времени.
Когда смещение включено, все временные метки вывода смещаются на одинаковую величину. Аудио,
сохраняются рассинхронизация видео и субтитров, а также относительная разница в отметках времени
по сравнению с тем, как они были бы без переключения.
Skip_initial_bytes целое (вход)
Установите количество байтов, которые нужно пропустить перед чтением заголовка и фреймов, если установлено значение 1. По умолчанию
0.
правильно_ts_overflow целое (вход)
Исправьте переполнение одиночной временной метки, если установлено значение 1. По умолчанию - 1.
flash_packets целое (выходной)
Очищать основной поток ввода-вывода после каждого пакета. По умолчанию 1 включает его и имеет
эффект уменьшения латентности; 0 отключает его и может немного повысить производительность в
некоторые случаи.
output_ts_offset смещение (выходной)
Установите смещение времени вывода.
смещение должно быть указанием продолжительности времени, см. Время продолжительность . in
ffmpeg-утилиты(1) руководство.
Смещение добавляется мультиплексором к выходным отметкам времени.
Указание положительного смещения означает, что соответствующие потоки задерживаются на
продолжительность времени, указанная в смещение. Значение по умолчанию - 0 (это означает, что смещение не
применяемый).
format_whitelist список (вход)
Разделенный "," Список разрешенных демультиплексоров. По умолчанию все разрешены.
dump_separator string (вход)
Разделитель, используемый для разделения полей, напечатанных в командной строке о потоке.
параметры. Например, чтобы разделить поля новой строкой и отступом:
ffprobe -dump_separator "
"-i ~ / видео / matrixbench_mpeg2.mpg
Формат поток спецификаторы
Спецификаторы потока формата позволяют выбрать один или несколько потоков, соответствующих определенному
свойства.
Возможные формы спецификаторов потока:
поток_индекс
Соответствует потоку с этим индексом.
тип_потока[:поток_индекс]
тип_потока может быть одним из следующих: 'v' для видео, 'a' для аудио, 's' для субтитров, 'd'
для данных и "t" для вложений. Если поток_индекс дается, то он соответствует
номер потока поток_индекс этого типа. В противном случае он соответствует всем потокам этого
тип.
p:идентификатор_программы[:поток_индекс]
If поток_индекс задан, то он соответствует потоку с номером поток_индекс в
программа с идентификатором идентификатор_программы. В противном случае он соответствует всем потокам в программе.
#поток_ид
Соответствует потоку по идентификатору, зависящему от формата.
Точная семантика спецификаторов потока определяется
Функция avformat_match_stream_specifier (), объявленная в libavformat / avformat.h
заголовка.
ДЕМУКСЕРЫ
Демультиплексоры - это сконфигурированные элементы в FFmpeg, которые могут читать мультимедийные потоки из
конкретный тип файла.
При настройке сборки FFmpeg все поддерживаемые демультиплексоры включены по умолчанию.
Вы можете перечислить все доступные, используя параметр конфигурации "--list-demuxers".
Вы можете отключить все демультиплексоры, используя параметр конфигурации "--disable-demuxers", и
выборочно включить один демультиплексор с помощью опции "--enable-demuxer ="ДЕМУКСЕР ", или отключить
это с опцией "--disable-demuxer ="ДЕМУКСЕР ".
Параметр "-formats" инструментов ff * отобразит список включенных демультиплексоров.
Ниже приводится описание некоторых из доступных в настоящее время демультиплексоров.
aa
Audible Format 2, 3 и 4 демультиплексор.
Этот демультиплексор используется для демультиплексирования файлов Audible Format 2, 3 и 4 (.aa).
яблоко
Демультиплексор Apple HTTP Live Streaming.
Этот демультиплексор представляет все AVStreams из всех вариантных потоков. В поле id установлено значение
порядковый номер варианта битрейта. Установив флаги сброса для AVStreams (нажав 'a'
или 'v' в ffplay), вызывающий может решить, какие варианты потоков фактически принимать. В
общий битрейт варианта, которому принадлежит поток, доступен в ключе метаданных
с именем "вариант_битрейт".
apng
Демультиплексор переносимой анимированной сетевой графики.
Этот демультиплексор используется для демультиплексирования файлов APNG. Все заголовки, кроме подписи PNG, до (но
не включая) первый фрагмент fcTL передаются как дополнительные данные. Затем кадры разделяются
как все фрагменты между двумя фрагментами fcTL или между последними фрагментами fcTL и IEND.
-ignore_loop BOOL
Игнорируйте переменную цикла в файле, если она установлена.
-max_fps Int
Максимальная частота кадров в кадрах в секунду (0 без ограничения).
-default_fps Int
Частота кадров по умолчанию в кадрах в секунду, если в файле ничего не указано (0 означает
как можно быстрее).
АФС
Демультиплексор Advanced Systems Format.
Этот демультиплексор используется для демультиплексирования файлов ASF и сетевых потоков MMS.
-no_resync_search BOOL
Не пытайтесь выполнить повторную синхронизацию, ища определенный необязательный стартовый код.
CONCAT
Демультиплексор скрипта виртуальной конкатенации.
Этот демультиплексор считывает список файлов и других директив из текстового файла и демультиплексирует их.
один за другим, как если бы все их пакеты были объединены вместе.
Метки времени в файлах настраиваются так, чтобы первый файл начинался с 0, а каждый следующий
файл начинается там, где заканчивается предыдущий. Обратите внимание, что это делается глобально и может вызвать
промежутки, если все потоки не имеют одинаковой длины.
Все файлы должны иметь одинаковые потоки (одинаковые кодеки, одинаковую временную развертку и т. Д.).
Продолжительность каждого файла используется для настройки отметок времени следующего файла: если
продолжительность неверна (потому что она была вычислена с использованием скорости передачи данных или потому что файл
усеченный, например), это может вызвать артефакты. Директива duration может использоваться для
переопределить продолжительность, хранящуюся в каждом файле.
Синтаксис
Сценарий представляет собой текстовый файл в расширенном коде ASCII с одной директивой в каждой строке. Пустые строки,
ведущие пробелы и строки, начинающиеся с символа "#", игнорируются. Следующая директива
признал:
"файл путь"
Путь к файлу для чтения; специальные символы и пробелы должны быть экранированы обратной косой чертой
или одинарные кавычки.
Все последующие директивы, относящиеся к файлу, применяются к этому файлу.
"ffconcat версия 1.0 "
Определите тип и версию скрипта. Он также устанавливает безопасный вариант 1, если это было
по умолчанию -1.
Чтобы FFmpeg распознавал формат автоматически, эта директива должна отображаться точно
как есть (без лишнего пробела или отметки порядка байтов) в самой первой строке скрипта.
"продолжительность жесткий"
Продолжительность файла. Эту информацию можно указать из файла; уточняя это
здесь может быть более эффективно или помочь, если информация из файла недоступна
или точный.
Если длительность задана для всех файлов, то можно искать по всему
объединенное видео.
"inpoint" отметка времени"
В точке файла. Когда демультиплексор открывает файл, он мгновенно ищет
указанная отметка времени. Поиск выполняется так, чтобы все потоки могли быть успешно представлены
в точке.
Эта директива лучше всего работает с внутрикадровыми кодеками, потому что для не-внутрикадровых кодеков
вы обычно получаете дополнительные пакеты до фактической точки входа и декодированного содержимого
скорее всего, будет также содержать фреймы до точки In.
Для каждого файла пакеты до точки входа в файл будут иметь метки времени меньше, чем
вычисленная отметка времени начала файла (отрицательная в случае первого файла), и
продолжительность файлов (если не указана директивой "duration") будет уменьшена
на основе их указанного в пункте.
Из-за потенциальных пакетов до указанной точки входа временные метки пакетов могут
перекрытие двух объединенных файлов.
"точка выхода" отметка времени"
Конечная точка файла. Когда демультиплексор достигает указанной отметки времени декодирования в
любой из потоков, он обрабатывает его как условие конца файла и пропускает текущий
и все остальные пакеты из всех потоков.
Точка выхода является исключительной, что означает, что демультиплексор не будет выводить пакеты с
временная метка декодирования больше или равна точке выхода.
Эта директива лучше всего работает с внутрикадровыми кодеками и форматами, в которых все потоки
плотно чередующиеся. Для кодеков без внутрикадрового кодека вы обычно получаете дополнительные
пакеты с отметкой времени представления после точки выхода, поэтому декодированный контент будет
скорее всего, содержат кадры и после точки выхода. Если ваши потоки не плотно
с чередованием вы не можете получить все пакеты из всех потоков до точки выхода, и вы
может декодировать только самый ранний поток до точки выхода.
Продолжительность файлов (если не указана в директиве "duration") будет
уменьшается в зависимости от указанной точки выхода.
"file_packet_metadata ключ = значение"
Метаданные пакетов файла. Указанные метаданные будут установлены для каждого файла
пакет. Вы можете указать эту директиву несколько раз, чтобы добавить несколько метаданных
записей.
"поток"
Добавьте поток в виртуальный файл. Все последующие директивы, относящиеся к потоку
применяется к последнему введенному потоку. Некоторые свойства потоков должны быть установлены, чтобы
позволяют идентифицировать совпадающие потоки в подфайлах. Если потоки не определены в
скрипта копируются потоки из первого файла.
"точный_стрим_ид" id"
Установите идентификатор потока. Если указана эта директива, строка с
будет использоваться соответствующий идентификатор в подфайлах. Это особенно полезно для MPEG-PS.
(VOB) файлы, порядок потоков которых ненадежен.
Возможности
Этот демультиплексор принимает следующие параметры:
безопасный
Если установлено значение 1, отклонять небезопасные пути к файлам. Путь к файлу считается безопасным, если он не
содержат спецификацию протокола и являются относительными, и все компоненты содержат только
символы из переносимого набора символов (буквы, цифры, точка, подчеркивание и
дефис) без точки в начале компонента.
Если установлено значение 0, принимается любое имя файла.
По умолчанию -1, это эквивалентно 1, если формат был автоматически проверен и 0
в противном случае.
auto_convert
Если установлено значение 1, попробуйте выполнить автоматическое преобразование пакетных данных, чтобы потоки
соединяемый. По умолчанию 1.
В настоящее время единственное преобразование - это добавление фильтра битового потока h264_mp4toannexb в
Потоки H.264 в формате MP4. Это особенно необходимо, если есть разрешение
изменений.
FLV
Демультиплексор Adobe Flash Video Format.
Этот демультиплексор используется для демультиплексирования файлов FLV и сетевых потоков RTMP.
-flv_метаданные BOOL
Распределите потоки в соответствии с содержимым массива onMetaData.
библиотека
Библиотека Game Music Emu - это коллекция эмуляторов музыкальных файлов видеоигр.
Видетьhttp://code.google.com/p/game-music-emu/> для получения дополнительной информации.
Некоторые файлы содержат несколько дорожек. По умолчанию демультиплексор выберет первую дорожку. В
track_index опцию можно использовать для выбора другой дорожки. Индексы треков начинаются с 0.
демультиплексор экспортирует количество треков как треков ввод метаданных.
Для очень больших файлов макс_размер вариант, возможно, придется отрегулировать.
libquvi
Воспроизведение медиафайлов из интернет-сервисов с помощью проекта quvi.
Демультиплексор принимает формат возможность запросить конкретное качество. По умолчанию установлено значение
лучший.
Видетьhttp://quvi.sourceforge.net/> для получения дополнительной информации.
FFmpeg должен быть построен с помощью "--enable-libquvi", чтобы этот демультиплексор был включен.
GIF
Демультиплексор анимированных GIF.
Он принимает следующие варианты:
мин_задержка
Установите минимальную допустимую задержку между кадрами в сотых долях секунды. Диапазон от 0 до
6000. Значение по умолчанию - 2.
max_gif_delay
Установите максимально допустимую задержку между кадрами в сотых долях секунды. Диапазон от 0 до
65535. Значение по умолчанию - 65535 (почти одиннадцать минут), максимальное значение, разрешенное
спецификация.
default_delay
Установите задержку по умолчанию между кадрами в сотых долях секунды. Диапазон от 0 до 6000.
Значение по умолчанию 10.
ignore_loop
Файлы GIF могут содержать информацию, повторяющуюся определенное количество раз (или бесконечно).
If ignore_loop установлен на 1, то установка цикла со входа будет проигнорирована и
зацикливания не произойдет. Если установлено значение 0, то будет происходить цикл, и число будет циклически повторяться.
раз по GIF. Значение по умолчанию - 1.
Например, с фильтром наложения поместите бесконечный цикл GIF поверх другого видео:
ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay = short = 1 out.mkv
Обратите внимание, что в приведенном выше примере самый короткий вариант для оверлейного фильтра используется для завершения
выводить видео по длине самого короткого входного файла, который в данном случае ввод.mp4 as
GIF в этом примере зацикливается бесконечно.
image2
Демультиплексор файла образа.
Этот демультиплексор читает из списка файлов изображений, заданных шаблоном. Синтаксис и
значение узора задается опцией Шаблонный тип.
Шаблон может содержать суффикс, который используется для автоматического определения формата
изображения, содержащиеся в файлах.
Размер, формат пикселей и формат каждого изображения должны быть одинаковыми для всех
файлы в последовательности.
Этот демультиплексор принимает следующие параметры:
Частота кадров
Установите частоту кадров для видеопотока. По умолчанию 25.
поиска
Если установлено в 1, перебрать вход. Значение по умолчанию - 0.
Шаблонный тип
Выберите тип шаблона, используемый для интерпретации указанного имени файла.
Шаблонный тип принимает одно из следующих значений.
нет
Отключите сопоставление с образцом, поэтому видео будет содержать только указанные
изображение. Вам следует использовать эту опцию, если вы не хотите создавать последовательности из
несколько изображений и имена ваших файлов могут содержать специальные символы шаблона.
последовательность
Выберите тип шаблона последовательности, используемый для указания последовательности файлов, проиндексированных
порядковые номера.
Шаблон последовательности может содержать строку «% d» или «% 0».Nd ", который определяет
положение символов, представляющих порядковый номер в каждом имени файла
соответствует образцу. Если форма "% d0Nd ", строка, представляющая
число в каждом имени файла дополняется нулями и N это общее количество цифр, дополненных нулями
представляющий число. В шаблоне можно указать буквальный символ '%'
со строкой "%%".
Если шаблон последовательности содержит «% d» или «% 0»Nd ", первое имя файла
список, указанный в шаблоне, должен содержать число, заключенное между
начальный_номер и начальный_номер+начальный_номер_диапазона-1 и все следующие числа
должны быть последовательными.
Например, шаблон «img-% 03d.bmp» будет соответствовать последовательности имен файлов
форма img-001.bmp, img-002.bmp..., img-010.bmp, и т.д.; шаблон
"i %% m %% g-% d.jpg" loading = "lazy" будет соответствовать последовательности имен файлов в форме я% m% g-1.jpg,
я% m% g-2.jpg..., я% m% g-10.jpg, и т.д.
Обратите внимание, что шаблон не обязательно должен содержать «% d» или «% 0».Nd ", например, чтобы
преобразовать один файл изображения изображение.jpeg вы можете использовать команду:
ffmpeg -i img.jpeg img.png
земной шар
Выберите тип шаблона подстановочного знака glob.
Шаблон интерпретируется как шаблон «glob ()». Это можно выбрать, только если
libavformat был скомпилирован с поддержкой подстановки.
glob_sequence (устарело, предусматривает be удален)
Выберите смешанный шаблон подстановочного знака / последовательности.
Если ваша версия libavformat была скомпилирована с поддержкой подстановки, и
предоставленный шаблон содержит по крайней мере один метасимвол глобуса среди "% *? [] {}", который
перед неэкранированным "%" шаблон интерпретируется как шаблон "glob ()",
в противном случае это интерпретируется как шаблон последовательности.
Все специальные символы glob "% *? [] {}" Должны иметь префикс "%". Чтобы избежать
буквальный "%" вы должны использовать "%%".
Например, шаблон «foo -% *. Jpeg» будет соответствовать всем именам файлов с префиксом
"foo-" с завершением на ".jpeg" и "foo -%?%?% ?. jpeg" будут соответствовать всем
имена файлов с префиксом "foo-", за которым следует последовательность из трех символов, и
заканчивается на ".jpeg".
Этот тип шаблона не рекомендуется в пользу земной шар и последовательность.
Значение по умолчанию glob_sequence.
формат_пикселя
Установите пиксельный формат считываемых изображений. Если не указан формат пикселей
угадывается из первого файла изображения в последовательности.
начальный_номер
Установите индекс файла, совпадающий с шаблоном файла изображения, с которого начинается чтение.
Значение по умолчанию 0.
начальный_номер_диапазона
Задайте диапазон интервала индекса для проверки при поиске первого файла изображения в
последовательность, начиная с начальный_номер. Значение по умолчанию - 5.
ts_from_file
Если установлено значение 1, метка времени кадра будет соответствовать времени изменения файла изображения. Обратите внимание, что
не обеспечивается однообразие временных меток: изображения идут в том же порядке, что и без этого
вариант. Значение по умолчанию - 0. Если установлено на 2, установит временную метку кадра для модификации.
время файла изображения с точностью до наносекунды.
размер видео
Установите размер видео для чтения. Если не указано иное, угадывается размер видео
из первого файла изображения в последовательности.
Примеры
· Использовать FFmpeg для создания видео из изображений в последовательности файлов img-001.jpeg,
img-002.jpeg, ..., предполагая, что входная частота кадров составляет 10 кадров в секунду:
ffmpeg -framerate 10 -i 'img-% 03d.jpeg' out.mkv
· То же, что и выше, но начните с чтения из файла с индексом 100 в следующей последовательности:
ffmpeg -framerate 10 -start_number 100 -i 'img-% 03d.jpeg' out.mkv
· Считывать изображения, соответствующие шаблону глобуса "* .png" loading = "lazy", то есть все файлы, заканчивающиеся на
суффикс ".png" loading = "ленивый":
ffmpeg -framerate 10 -pattern_type glob -i "* .png" loading = "ленивый" out.mkv
mov / mp4 / 3gp / Quicktme
Демультиплексор Quicktime / MP4.
Этот демультиплексор принимает следующие параметры:
Enable_drefs
Разрешить загрузку внешних треков, по умолчанию отключено. Включение этого может
теоретически утечка информации в некоторых случаях использования.
use_absolute_path
Позволяет загружать внешние треки по абсолютным путям, по умолчанию отключено. Включение
это создает угрозу безопасности. Его следует включать только в том случае, если известно, что источник не
злонамеренный.
MPEGTS
Демультиплексор транспортного потока MPEG-2.
Этот демультиплексор принимает следующие параметры:
resync_size
Установите ограничение на размер для поиска новой синхронизации. Значение по умолчанию - 65536.
fix_teletext_pts
Заменить значения PTS и DTS пакета телетекста на временные метки, рассчитанные из
PCR первой программы, частью которой является поток телетекста, не отбрасывается.
Значение по умолчанию - 1, установите для этого параметра значение 0, если вы хотите, чтобы ваш пакет телетекста PTS и DTS.
ценности нетронутые.
ts_packetsize
Параметр вывода, содержащий размер необработанного пакета в байтах. Показать обнаруженный необработанный пакет
размер, не может быть установлен пользователем.
scan_all_pmts
Отсканируйте и объедините все PMT. Значение представляет собой целое число от -1 до 1 (-1 означает
автоматическая настройка, 1 означает включено, 0 означает отключено). Значение по умолчанию -1.
сырое видео
Демультиплексор сырого видео.
Этот демультиплексор позволяет читать необработанные видеоданные. Поскольку нет заголовка, определяющего
предполагаемые параметры видео, пользователь должен указать их, чтобы иметь возможность декодировать
данные правильно.
Этот демультиплексор принимает следующие параметры:
Частота кадров
Установите частоту кадров входного видео. Значение по умолчанию - 25.
формат_пикселя
Установите формат пикселей входного видео. Значение по умолчанию - «yuv420p».
размер видео
Установите размер входного видео. Это значение должно быть указано явно.
Например, чтобы прочитать файл rawvideo input.raw ffplay, предполагая, что формат пикселей
«rgb24», размер видео «320x240» и частота кадров 10 изображений в секунду, используйте
команда:
ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -частота кадров 10 input.raw
SBG
Демультиплексор скриптов SBaGen.
Этот демультиплексор читает скриптовый язык, используемый SBaGen.http://uazu.net/sbagen/> к
генерировать сеансы бинауральных ритмов. Скрипт SBG выглядит так:
-se
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
выключенный: -
СЕЙЧАС == а
+0: 07: 00 == б
+0: 14: 00 == а
+0: 21: 00 == б
+0: 30: 00 выкл.
Сценарий SBG может смешивать абсолютные и относительные отметки времени. Если в сценарии используется только
абсолютные временные метки (включая время начала скрипта) или только относительные, то его
макет фиксирован, а преобразование не вызывает затруднений. С другой стороны, если сценарий
смешивает оба типа временных меток, затем СЕЙЧАС ссылка для относительных отметок времени будет
взято из текущего времени суток в момент чтения скрипта, а макет скрипта
будет заморожен в соответствии с этой ссылкой. Это означает, что если сценарий напрямую
воспроизведено, фактическое время будет соответствовать абсолютным отметкам времени до звукового контроллера
точность часов, но если пользователь каким-то образом приостанавливает воспроизведение или ищет, все время будет
соответственно сместился.
Тедкапции
Подписи JSON, используемые дляhttp://www.ted.com/>.
TED не предоставляет ссылок на подписи, но их можно угадать со страницы. В
файл инструменты / bookmarklets.html из исходного дерева FFmpeg содержит букмарклет для отображения
их.
Этот демультиплексор принимает следующие параметры:
начальное время
Установите время начала выступления TED в миллисекундах. По умолчанию - 15000 (15 с). это
используется для синхронизации субтитров с загружаемыми видео, поскольку они содержат
интро.
Пример: конвертируйте подписи в формат, понятный большинству игроков:
ffmpeg -я http://www.ted.com/talks/subtitles/id/1/lang/en talk1-ru.srt
МУКСЕРЫ
Муксеры - это сконфигурированные элементы в FFmpeg, которые позволяют записывать мультимедийные потоки в
конкретный тип файла.
При настройке сборки FFmpeg все поддерживаемые мультиплексоры включены по умолчанию. Ты
может вывести список всех доступных мультиплексоров, используя параметр конфигурации "--list-muxers".
Вы можете отключить все мультиплексоры с помощью параметра конфигурации "--disable-muxers" и
выборочно включать / отключать одиночные мультиплексоры с помощью параметров "--enable-muxer ="MUXER " /
"--disable-muxer =MUXER ".
Параметр «-formats» инструментов ff * отображает список включенных мультиплексоров.
Ниже приводится описание некоторых из доступных в настоящее время мультиплексоров.
AIFF
Мультиплексор формата аудиообмена.
Возможности
Он принимает следующие варианты:
write_id3v2
Включите запись тегов ID3v2, если установлено значение 1. По умолчанию - 0 (отключено).
id3v2_версия
Выберите версию ID3v2 для записи. В настоящее время только версии 3 и 4 (также известные как ID3v2.3 и
ID3v2.4) поддерживаются. По умолчанию - версия 4.
CRC
Формат тестирования CRC (Cyclic Redundancy Check).
Этот мультиплексор вычисляет и печатает CRC Adler-32 всех входных аудио- и видеокадров.
По умолчанию аудиокадры преобразуются в 16-битные необработанные аудиофайлы со знаком, а видеокадры - в необработанные.
видео до вычисления CRC.
Выход мультиплексора состоит из единственной строки вида: CRC = 0xCRC, Где CRC - это
шестнадцатеричное число, дополненное 0 до 8 цифр, содержащее CRC для всего декодированного ввода
кадры.
См. Также кадр мультиплексор.
Примеры
Например, чтобы вычислить CRC ввода и сохранить его в файле out.crc:
ffmpeg -i ВХОД -f crc out.crc
Вы можете распечатать CRC в стандартный вывод с помощью команды:
ffmpeg -i ВХОД -f crc -
Вы можете выбрать выходной формат каждого кадра с помощью FFmpeg указав аудио и
видеокодек и формат. Например, чтобы вычислить CRC входящего звука, преобразованного в PCM.
беззнаковый 8-битный и входное видео преобразовано в видео MPEG-2, используйте команду:
ffmpeg -i ВХОД -c: a pcm_u8 -c: v mpeg2video -f crc -
кадр
Посадочный формат тестирования CRC (Cyclic Redundancy Check).
Этот мультиплексор вычисляет и печатает CRC Adler-32 для каждого аудио и видео пакета. От
аудиокадры по умолчанию преобразуются в 16-битные необработанные аудиофайлы со знаком, а видеокадры - в необработанные.
видео до вычисления CRC.
Выход мультиплексора состоит из строки для каждого аудио- и видеопакета вида:
, , , , , 0x
CRC представляет собой шестнадцатеричное число с дополнением 0 до 8 цифр, содержащее CRC пакета.
Примеры
Например, чтобы вычислить CRC аудио и видео кадров в ВХОД, преобразовано в необработанный
аудио- и видеопакеты, и сохранить их в файле out.crc:
ffmpeg -i ВХОД -f framecrc out.crc
Чтобы вывести информацию на стандартный вывод, используйте команду:
ffmpeg -i ВХОД -f framecrc -
В FFmpeg, вы можете выбрать выходной формат, в котором будут отображаться аудио- и видеокадры.
кодируется перед вычислением CRC для каждого пакета путем указания аудио- и видеокодеков.
Например, чтобы вычислить CRC каждого декодированного входного аудиокадра, преобразованного в PCM
беззнаковый 8-битный и для каждого декодированного входного видеокадра, преобразованного в видео MPEG-2, используйте
команда:
ffmpeg -i INPUT -c: a pcm_u8 -c: v mpeg2video -f framecrc -
См. Также CRC мультиплексор.
кадрмд5
Посадочный формат тестирования MD5.
Этот мультиплексор вычисляет и печатает хэш MD5 для каждого аудио и видео пакета. По умолчанию
аудиокадры преобразуются в 16-битное необработанное аудио со знаком, а видеокадры - в необработанное видео до
вычисление хэша.
Выход мультиплексора состоит из строки для каждого аудио- и видеопакета вида:
, , , , ,
MD5 - шестнадцатеричное число, представляющее вычисленный хэш MD5 для пакета.
Примеры
Например, чтобы вычислить MD5 аудио и видео кадров в ВХОД, преобразовано в необработанный
аудио- и видеопакеты, и сохранить их в файле аут.md5:
ffmpeg -i ВХОД -f framemd5 out.md5
Чтобы вывести информацию на стандартный вывод, используйте команду:
ffmpeg -i ВХОД -f framemd5 -
См. Также md5 мультиплексор.
GIF
Анимированный GIF мультиплексор.
Он принимает следующие варианты:
поиска
Установите количество циклов вывода. Используйте «-1» для отсутствия цикла, 0 для цикла
бессрочно (по умолчанию).
Final_delay
Установить задержку (выраженную в сантисекундах) после последнего кадра. Каждый кадр заканчивается
задержка до следующего кадра. Значение по умолчанию - «-1», что является специальным значением, чтобы сообщить
мультиплексор, чтобы повторно использовать предыдущую задержку. В случае цикла вы можете настроить
это значение, например, чтобы отметить паузу.
Например, чтобы закодировать 10-кратный цикл gif с задержкой в 5 секунд между циклами:
ffmpeg -i INPUT -loop 10 -final_delay 500 out.gif
Примечание 1: если вы хотите извлечь кадры в отдельные файлы GIF, вам необходимо принудительно
image2 мультиплексор:
ffmpeg -i INPUT -c: v gif -f image2 "out% d.gif"
Примечание 2: формат GIF имеет очень маленькую временную базу: задержка между двумя кадрами не может быть
меньше одного сантиметра секунды.
HLS
Мультиплексор Apple HTTP Live Streaming, который сегментирует MPEG-TS в соответствии с HTTP Live Streaming
(HLS) спецификация.
Он создает файл списка воспроизведения и один или несколько файлов сегментов. Имя выходного файла указывает
имя файла списка воспроизведения.
По умолчанию мультиплексор создает файл для каждого произведенного сегмента. Эти файлы имеют одинаковые
имя в качестве списка воспроизведения, за которым следует порядковый номер и расширение .ts.
Например, чтобы преобразовать входной файл с FFmpeg:
ffmpeg -i вход.нут выход.m3u8
В этом примере будет создан список воспроизведения, аут.m3u8, и файлы сегментов: out0.ts, out1.ts,
out2.ts, и т.д.
См. Также сегмент мультиплексор, который обеспечивает более общую и гибкую реализацию
segmenter и может использоваться для выполнения сегментации HLS.
Возможности
Этот мультиплексор поддерживает следующие параметры:
hls_time секунды
Установите длину сегмента в секундах. Значение по умолчанию - 2.
hls_list_size размер
Установите максимальное количество записей в плейлисте. Если установлено значение 0, файл списка будет содержать все
сегменты. Значение по умолчанию - 5.
hls_ts_options options_list
Установите параметры формата вывода, используя разделенный: список параметров ключ = значение. Ценности
содержащие ":" специальные символы должны быть экранированы.
hls_wrap заворачивать
Задайте номер, после которого номер файла сегмента (номер, указанный в каждом
сегментный файл). Если установлено значение 0, число никогда не будет перенесено. Значение по умолчанию - 0.
Эта опция полезна, чтобы избежать заполнения диска большим количеством файлов сегментов, и ограничивает
максимальное количество файлов сегментов, записываемых на диск заворачивать.
начальный_номер номер
Начать порядковый номер списка воспроизведения с номер. Значение по умолчанию - 0.
hls_allow_cache разрешить кэш
Явно устанавливает, МОЖЕТ ли клиент \fIS0(1) или НЕ ДОЛЖЕН \fIS0(0) кэш-носитель
сегменты.
hls_base_url базовый URL
присоединять базовый URL к каждой записи в плейлисте. Полезно для создания плейлистов с
абсолютные пути.
Обратите внимание, что порядковый номер списка воспроизведения должен быть уникальным для каждого сегмента и не является
следует путать с порядковым номером имени файла сегмента, который может быть циклическим, например
пример, если заворачивать опция указана.
hls_segment_filename имя файла
Задайте имя файла сегмента. Если не установлен hls_flags single_file имя файла используется как
строковый формат с номером сегмента:
ffmpeg in.nut -hls_segment_filename 'file% 03d.ts' out.m3u8
В этом примере будет создан список воспроизведения, аут.m3u8, и файлы сегментов: файл000.ts,
файл001.ts, файл002.ts, и т.д.
hls_key_info_file ключевой_информационный_файл
Используйте информацию в ключевой_информационный_файл для сегментного шифрования. Первая строка
ключевой_информационный_файл указывает ключевой URI, записанный в список воспроизведения. Ключевой URL-адрес используется для
получить доступ к ключу шифрования во время воспроизведения. Вторая строка указывает путь к
key файл, используемый для получения ключа в процессе шифрования. Ключевой файл читается как
единый упакованный массив из 16 октетов в двоичном формате. Необязательная третья строка указывает
вектор инициализации (IV) в виде шестнадцатеричной строки, которая будет использоваться вместо
порядковый номер сегмента (по умолчанию) для шифрования. Изменения к ключевой_информационный_файл приведет к
в сегментном шифровании с новым ключом / IV и записью в плейлисте для нового ключа
URI / IV.
Формат файла ключевой информации:
(по желанию)
Пример ключевых URI:
http://server/file.key
/путь/к/файлу.ключ
файл.key
Примеры путей к ключевым файлам:
файл.key
/путь/к/файлу.ключ
Пример IV:
0123456789ABCDEF0123456789ABCDEF
Пример файла с ключевой информацией:
http://server/file.key
/путь/к/файлу.ключ
0123456789ABCDEF0123456789ABCDEF
Пример сценария оболочки:
#!/ Бен / ш
BASE_URL = $ {1: - '.'}
openssl rand 16> файл.key
echo $ BASE_URL / file.key> file.keyinfo
echo file.key >> file.keyinfo
эхо $ (openssl rand -hex 16) >> file.keyinfo
ffmpeg -f lavfi -re -i testsrc -c: v h264 -hls_flags delete_segments \
-hls_key_info_file файл.keyinfo out.m3u8
hls_flags отдельный файл
Если этот флаг установлен, мультиплексор сохранит все сегменты в одном файле MPEG-TS, и
будет использовать байтовые диапазоны в списке воспроизведения. Плейлисты HLS, созданные таким образом, будут иметь
номер версии 4. Например:
ffmpeg -i in.nut -hls_flags одиночный_файл out.m3u8
Составлю плейлист, аут.m3u8, и односегментный файл, вых.тс.
hls_flags delete_segments
Файлы сегментов, удаленные из списка воспроизведения, удаляются по истечении периода времени, равного
продолжительность сегмента плюс продолжительность списка воспроизведения.
ICO
Мультиплексор файлов ICO.
Формат файлов значков Microsoft (ICO) имеет некоторые строгие ограничения, на которые следует обратить внимание:
· Размер не может превышать 256 пикселей в любом измерении.
· Могут быть сохранены только изображения BMP и PNG
· Если используется изображение BMP, оно должно быть одного из следующих форматов пикселей:
Битовая глубина BMP Формат пикселей FFmpeg
1 бит pal8
4 бит pal8
8 бит pal8
16-битный rgb555le
24-битный bgr24
32-битная бгра
· Если используется изображение BMP, оно должно использовать заголовок BITMAPINFOHEADER DIB.
· Если используется изображение PNG, оно должно использовать формат пикселей rgba.
image2
Мультиплексор файлов изображений.
Мультиплексор файлов изображений записывает видеокадры в файлы изображений.
Имена выходных файлов задаются шаблоном, который можно использовать для последовательного создания
пронумерованные серии файлов. Шаблон может содержать строку «% d» или «% 0».Nd ", эта строка
определяет положение символов, представляющих нумерацию в именах файлов. Если
форма "% 0Nd ", строка, представляющая номер в каждом имени файла, дополняется 0 до N
цифры. Буквальный символ «%» можно указать в шаблоне со строкой «%%».
Если шаблон содержит «% d» или «% 0»Nd ", первое имя указанного списка файлов будет
содержат цифру 1, все следующие числа будут последовательными.
Шаблон может содержать суффикс, который используется для автоматического определения формата
файлы изображений для записи.
Например, шаблон «img-% 03d.bmp» будет указывать последовательность имен файлов в форме
img-001.bmp, img-002.bmp..., img-010.bmpи т. д. В шаблоне "img %% -% d.jpg" loading = "lazy" будет указано
последовательность имен файлов в форме img% -1.jpg, img% -2.jpg..., img% -10.jpg, и т.д.
Примеры
В следующем примере показано, как использовать FFmpeg для создания последовательности файлов
img-001.jpeg, img-002.jpeg, ..., снимая по одному изображению каждую секунду из входного видео:
ffmpeg -i in.avi -vsync 1 -r 1 -f image2 'img-% 03d.jpeg'
Обратите внимание, что с FFmpeg, если формат не указан с параметром "-f" и вывод
filename указывает формат файла изображения, мультиплексор image2 выбирается автоматически, поэтому
предыдущую команду можно записать как:
ffmpeg -i in.avi -vsync 1 -r 1 'img-% 03d.jpeg'
Также обратите внимание, что шаблон не обязательно должен содержать «% d» или «% 0».Nd ", например, чтобы
создать единый файл изображения изображение.jpeg из входного видео вы можете использовать команду:
ffmpeg -i in.avi -f image2 -frames: v 1 img.jpeg
Команда стрфтайм опция позволяет расширить имя файла информацией о дате и времени.
Проверьте синтаксис в документации функции strftime ().
Например, чтобы сгенерировать файлы изображений из шаблона "strftime ()" "% Y-% m-% d_% H-% M-% S",
после FFmpeg можно использовать команду:
ffmpeg -f v4l2 -r 1 -i / dev / video0 -f image2 -strftime 1 "% Y-% m-% d_% H-% M-% S.jpg"
Возможности
начальный_номер
Начать последовательность с указанного номера. Значение по умолчанию - 0.
обновление
Если установлено значение 1, имя файла всегда будет интерпретироваться как просто имя файла, а не как имя файла.
шаблон, и соответствующий файл будет постоянно перезаписываться новыми изображениями.
Значение по умолчанию 0.
стрфтайм
Если установлено в 1, расширьте имя файла информацией о дате и времени из "strftime ()".
Значение по умолчанию 0.
Мультиплексор изображений поддерживает формат файлов изображений .YUV. Этот формат особенный тем, что
каждый кадр изображения состоит из трех файлов для каждого из компонентов YUV420P. Читать или
напишите этот формат файла изображения, укажите имя файла '.Y'. Мультиплексор будет
автоматически открывать файлы .U и .V по мере необходимости.
Matroska
Контейнерный мультиплексор Matroska.
Этот мультиплексор реализует спецификации контейнера matroska и webm.
Метаданные
Распознаваемые настройки метаданных в этом мультиплексоре:
название
Задайте название заголовка для отдельной дорожки.
язык
Укажите язык трека в форме Matroska languages.
Языком может быть трехбуквенная библиографическая форма ISO-3-639 (ISO 2-639 / B).
(например, "fre" для французского) или код языка, смешанный с кодом страны для специальностей
в языках (например, "fre-ca" для канадского французского).
стерео_режим
Установите стерео 3D-макет видео с двумя видами на одной видеодорожке.
Признаны следующие ценности:
моно
видео не стерео
лево право
Оба вида расположены рядом, вид для левого глаза находится слева.
снизу сверху
Оба вида расположены в ориентации сверху вниз, вид для левого глаза - внизу.
верх_низ
Оба вида расположены в ориентации сверху вниз, вид для левого глаза сверху.
шахматная доска_rl
Каждое представление расположено в виде чередующегося рисунка шахматной доски, вид для левого глаза
первый
шахматная доска_lr
Каждое представление расположено в виде чередующегося рисунка шахматной доски, вид правым глазом
первый
row_interleaved_rl
Каждое представление состоит из чередования на основе строк, вид правым глазом - первая строка
row_interleaved_lr
Каждое представление состоит из чередования на основе строк, вид для левого глаза - первая строка
col_interleaved_rl
Оба представления расположены в порядке чередования столбцов, вид правым глазом
первый столбец
col_interleaved_lr
Оба вида расположены в порядке чередования столбцов, вид для левого глаза
первый столбец
анаглиф_циан_красный
Все кадры имеют анаглифический формат и просматриваются через красно-голубые фильтры.
право лево
Оба вида расположены рядом, вид правым глазом находится слева.
анаглиф_зеленый_пурпурный
Все кадры имеют анаглифический формат и просматриваются через фильтры зелено-пурпурного цвета.
блок_лр
Оба глаза соединены в один блок, сначала левый глаз
блок_рл
Оба глаза соединены в один блок, сначала вид правым глазом
Например, клип 3D WebM можно создать с помощью следующей командной строки:
ffmpeg -i sample_left_right_clip.mpg -an -c: v libvpx -metadata stereo_mode = left_right -y stereo_clip.webm
Возможности
Этот мультиплексор поддерживает следующие параметры:
Reserve_index_space
По умолчанию этот мультиплексор записывает индекс для поиска (называемый репликами в терминах Matroska) в
конец файла, потому что он не может заранее знать, сколько места оставить для
index в начале файла. Однако для некоторых случаев использования - например, для потоковой передачи.
где поиск возможен, но медленный - полезно поставить индекс в начале
файла.
Если для этой опции установлено ненулевое значение, мультиплексор зарезервирует заданное количество
пробела в заголовке файла, а затем попытайтесь записать туда реплики, когда мультиплексирование
отделка. Если доступного пространства недостаточно, мультиплексирование завершится ошибкой. Безопасный размер для
в большинстве случаев требуется около 50 КБ на час видео.
Обратите внимание, что реплики записываются только в том случае, если вывод доступен для поиска, и эта опция не будет иметь
эффект, если это не так.
md5
Формат тестирования MD5.
Этот мультиплексор вычисляет и печатает хэш MD5 всех входных аудио- и видеокадров. От
аудиокадры по умолчанию преобразуются в 16-битные необработанные аудиофайлы со знаком, а видеокадры - в необработанные.
видео перед вычислением хэша.
Выход мультиплексора состоит из единственной строки вида: MD5 =MD5, Где MD5 - это
шестнадцатеричное число, представляющее вычисленный хэш MD5.
Например, чтобы вычислить хэш MD5 входного сигнала, преобразованного в необработанное аудио и видео, и
сохранить это в файле аут.md5:
ffmpeg -i ВХОД -f md5 out.md5
Вы можете распечатать MD5 на стандартный вывод с помощью команды:
ffmpeg -i ВХОД -f md5 -
См. Также кадрмд5 мультиплексор.
мов, mp4, измв
MOV / MP4 / ISMV (Smooth Streaming) мультиплексор.
Мультиплексор mov / mp4 / ismv поддерживает фрагментацию. Обычно файл MOV / MP4 имеет все
метаданные обо всех пакетах, хранящихся в одном месте (записанные в конце файла, они могут
переместите в начало для лучшего воспроизведения, добавив FastStart до movflagsили используя
qt-быстрый запуск инструмент). Фрагментированный файл состоит из ряда фрагментов, в которых пакеты
и метаданные об этих пакетах хранятся вместе. Запись фрагментированного файла имеет
преимущество в том, что файл декодируется, даже если запись прервана (в то время как нормальный
MOV / MP4 нельзя декодировать, если он не закончен должным образом), и для него требуется меньше памяти, когда
запись очень длинных файлов (поскольку при записи обычных файлов MOV / MP4 сохраняется информация о каждом отдельном
пакет в памяти до закрытия файла). Обратной стороной является то, что он менее совместим.
с другими приложениями.
Возможности
Фрагментация включается путем установки одного из параметров AVOptions, которые определяют, как вырезать файл.
на фрагменты:
-moov_size байт
Резервирует место для атома moov в начале файла вместо размещения
атом moov в конце. Если зарезервированного пространства недостаточно, мультиплексирование завершится ошибкой.
-movflags фрагмент_ключевого кадра
Начинайте новый фрагмент с каждого ключевого кадра видео.
-frag_duration продолжительность
Создавайте фрагменты, которые продолжительность микросекунды долго.
-frag_size размер
Создавайте фрагменты, содержащие до размер байты данных полезной нагрузки.
-movflags фрагмент_custom
Позвольте вызывающему абоненту вручную выбирать, когда вырезать фрагменты, позвонив
«av_write_frame (ctx, NULL)» для записи фрагмента с уже записанными пакетами. (Этот
полезен только с другими приложениями, интегрирующими libavformat, а не с FFmpeg.)
-min_frag_duration продолжительность
Не создавайте фрагменты короче, чем продолжительность микросекунды долго.
Если указано более одного условия, фрагменты будут вырезаны, когда одно из указанных
условия выполнены. Исключением является "-min_frag_duration", которое должно быть
выполняется для применения любых других условий.
Кроме того, способ записи выходного файла можно настроить с помощью нескольких других
опции:
-movflags пустой_moov
Напишите начальный атом moov прямо в начале файла, не описывая никаких
образцы в нем. Обычно пара mdat / moov записывается в начале файла как
обычный файл MOV / MP4, содержащий только короткую часть файла. С этой опцией
установлено, что начального атома mdat нет, а атом moov описывает только треки, но
имеет нулевую продолжительность.
Этот параметр неявно устанавливается при записи файлов ismv (Smooth Streaming).
-movflags отдельный_муф
Напишите отдельный атом муфа (фрагмента фильма) для каждого трека. Обычно пакеты для всех
треки записываются в атоме moof (что немного более эффективно), но с этим
установленный параметр, мультиплексор записывает одну пару moof / mdat для каждого трека, что упрощает
отдельные треки.
Этот параметр неявно устанавливается при записи файлов ismv (Smooth Streaming).
-movflags FastStart
Выполните второй проход, переместив индекс (атом moov) в начало файла. Этот
операция может занять некоторое время и не будет работать в различных ситуациях, например, при фрагментированной
вывод, поэтому по умолчанию он не включен.
-movflags ртфинт
Добавьте треки хинтинга RTP в выходной файл.
-movflags отключить_чпл
Отключить маркеры глав Nero (атом chpl). Обычно и главы Nero, и
Дорожка главы QuickTime записывается в файл. Если этот параметр установлен, только
Будет записана дорожка главы QuickTime. Главы Nero могут вызывать сбои, когда
файл обрабатывается с помощью определенных программ тегов, таких как mp3Tag 2.61a и iTunes 11.3,
скорее всего, затронуты и другие версии.
-movflags опустить_tfhd_offset
Не записывайте никаких абсолютных значений base_data_offset в атомах tfhd. Это позволяет избежать связывания фрагментов
в абсолютные байтовые позиции в файле / потоках.
-movflags default_base_moof
Подобно omit_tfhd_offset, этот флаг позволяет избежать записи абсолютного
base_data_offset в атомах tfhd, но делает это с помощью нового default-base-is-
флаг moof вместо этого. Этот флаг появился впервые с 14496 по 12: 2012. Это может сделать фрагменты
легче анализировать при определенных обстоятельствах (избегая определения местоположения фрагмента трека
вычисления на неявном конце предыдущего фрагмента трека).
Пример
С помощью этого
мультиплексор. Пример:
ffmpeg -re < > -movflags isml + frag_keyframe -f ismv http://server/publishingpoint.isml/Streams(Кодер 1)
Звуковой AAX
Файлы Audible AAX - это зашифрованные файлы M4B, и их можно расшифровать, указав 4
байтовый секрет активации.
ffmpeg -activation_bytes 1CEB00DA -i test.aax -vn -c: копия output.mp4
mp3
Мультиплексор MP3 записывает необработанный поток MP3 со следующими дополнительными функциями:
· Заголовок метаданных ID3v2 в начале (по умолчанию включен). Версии 2.3 и 2.4
поддерживаются, закрытый параметр "id3v2_version" определяет, какой из них используется (3 или 4).
Установка «id3v2_version» в 0 полностью отключает заголовок ID3v2.
Мультиплексор поддерживает запись прикрепленных изображений (кадров APIC) в заголовок ID3v2. В
изображения поступают в мультиплексор в виде видеопотока с одним пакетом.
Таких потоков может быть любое количество, каждый будет соответствовать одному кадру APIC.
Теги метаданных потока название и комментарий карта в APIC описание и картина напишите
соответственно. Видетьhttp://id3.org/id3v2.4.0-frames> для разрешенных типов изображений.
Обратите внимание, что кадры APIC должны быть записаны в начале, поэтому мультиплексор будет буферизовать
звуковые кадры, пока не получат все изображения. Поэтому рекомендуется предоставить
изображения как можно скорее, чтобы избежать чрезмерной буферизации.
· Кадр Xing / LAME сразу после заголовка ID3v2 (если присутствует). По умолчанию он включен,
но будет записан только в том случае, если вывод доступен для поиска. Частная опция "write_xing"
можно использовать для его отключения. Кадр содержит различную информацию, которая может быть полезна
декодеру, например длительность звука или задержка кодировщика.
· Устаревший тег ID3v1 в конце файла (по умолчанию отключен). Это может быть включено
с закрытым параметром "write_id3v1", но поскольку его возможности очень ограничены, его
использование не рекомендуется.
Примеры:
Напишите mp3 с заголовком ID3v2.3 и нижним колонтитулом ID3v1:
ffmpeg -i ВХОД -id3v2_version 3 -write_id3v1 1 out.mp3
Чтобы прикрепить изображение к mp3-файлу, выберите и аудио, и поток изображений с помощью
"карта":
ffmpeg -i input.mp3 -i Cover.png -c копировать -map 0 -map 1
-metadata: s: v title = "Обложка альбома" -metadata: s: v comment = "Cover (Front)" out.mp3
Напишите «чистый» MP3 без каких-либо дополнительных функций:
ffmpeg -i input.wav -write_xing 0 -id3v2_version 0 out.mp3
MPEGTS
Мультиплексор транспортного потока MPEG.
Этот мультиплексор соответствует стандарту ISO 13818-1 и части ETSI EN 300 468.
Распознаваемые настройки метаданных в мультиплексоре MPEGTS: «service_provider» и
"наименование услуги". Если они не установлены, по умолчанию для "service_provider" будет "FFmpeg", а
по умолчанию для "service_name" установлено "Service01".
Возможности
Варианты мультиплексора:
-mpegts_original_network_id номер
Установите original_network_id (по умолчанию 0x0001). Это уникальный идентификатор сети.
в DVB. Его основное использование - уникальная идентификация услуги через путь
Original_Network_ID, Transport_Stream_ID.
-mpegts_transport_stream_id номер
Установите transport_stream_id (по умолчанию 0x0001). Это идентифицирует транспондер в DVB.
-mpegts_service_id номер
Установите service_id (по умолчанию 0x0001), также известный как программа в DVB.
-mpegts_service_type номер
Установите программу service_type (по умолчанию Цифровое телевидение), см. ниже список предопределенных
значения.
-mpegts_pmt_start_pid номер
Установите первый PID для PMT (по умолчанию 0x1000, максимум 0x1f00).
-mpegts_start_pid номер
Установите первый PID для пакетов данных (по умолчанию 0x0100, максимум 0x0f00).
-mpegts_m2ts_mode номер
Включите режим m2ts, если он установлен на 1. Значение по умолчанию -1, что отключает режим m2ts.
-мультискорость номер
Установите постоянную мультиплексорную скорость (по умолчанию VBR).
-pcr_ period Numer
Отменить время повторной передачи PCR по умолчанию (по умолчанию 20 мс), игнорируется, если переменная
выбран муксрат.
пат_период номер
Максимальное время в секундах между таблицами PAT / PMT.
sdt_период номер
Максимальное время в секундах между таблицами SDT.
-pes_payload_size номер
Установите минимальную полезную нагрузку пакета PES в байтах.
-mpegts_flags Флаги
Установите флаги (см. Ниже).
-mpegts_copyts номер
Сохранить исходные отметки времени, если установлено значение 1. Значение по умолчанию - -1, что приводит к
в смещении отметок времени так, чтобы они начинались с 0.
-tables_version номер
Установите версию PAT, PMT и SDT (по умолчанию 0, допустимые значения от 0 до 31 включительно).
Эта опция позволяет обновлять структуру потока, чтобы стандартный потребитель мог обнаружить
изменять. Для этого повторно откройте выходной AVFormatContext (в случае использования API) или перезапустите
Экземпляр ffmpeg, циклически меняющий значение tables_version:
ffmpeg -i source1.ts -codec copy -f mpegts -tables_version 0 UDP: //1.1.1.1: 1111
ffmpeg -i source2.ts -codec copy -f mpegts -tables_version 1 UDP: //1.1.1.1: 1111
...
ffmpeg -i source3.ts -codec copy -f mpegts -tables_version 31 UDP: //1.1.1.1: 1111
ffmpeg -i source1.ts -codec copy -f mpegts -tables_version 0 UDP: //1.1.1.1: 1111
ffmpeg -i source2.ts -codec copy -f mpegts -tables_version 1 UDP: //1.1.1.1: 1111
...
Опция mpegts_service_type принимает следующие значения:
шестнадцатеричное_значение
Любое шестнадцатеричное значение от 0x01 до 0xff, как определено в ETSI 300 468.
Цифровое телевидение
Услуга цифрового ТВ.
цифровое_радио
Служба цифрового радио.
телетекст
Услуга телетекста.
Advanced_codec_digital_radio
Услуга Advanced Codec Digital Radio.
mpeg2_digital_hdtv
MPEG2 Digital HDTV сервис.
Advanced_codec_digital_sdtv
Advanced Codec Digital SDTV сервис.
Advanced_codec_digital_hdtv
Advanced Codec Digital HDTV сервис.
Опция mpegts_flags может принимать набор таких флагов:
Resend_headers
Повторно отправьте PAT / PMT перед записью следующего пакета.
латм
Используйте пакетирование LATM для AAC.
pat_pmt_at_frames
Повторно отправляйте PAT и PMT на каждом кадре видео.
Пример
ffmpeg -i файл.mpg -c копировать \
-mpegts_original_network_id 0x1122 \
-mpegts_transport_stream_id 0x3344 \
-mpegts_service_id 0x5566 \
-mpegts_pmt_start_pid 0x1500 \
-mpegts_start_pid 0x150 \
-metadata service_provider = "Какой-то провайдер" \
-metadata service_name = "Некоторый канал" \
-y вне.тс
мультимедиа, mxf_d10
MXF мультиплексор.
Возможности
Варианты мультиплексора:
store_user_comments BOOL
Установите, следует ли сохранять комментарии пользователей, если они доступны, или никогда. ИРТ Д-10 не позволяет
комментарии пользователей. Таким образом, по умолчанию они записываются для mxf, но не для mxf_d10.
нуль
Нулевой мультиплексор.
Этот мультиплексор не генерирует выходной файл, он в основном полезен для тестирования или
сравнительный анализ.
Например, чтобы протестировать декодирование с помощью FFmpeg вы можете использовать команду:
ffmpeg -benchmark -i INPUT -f null out.null
Обратите внимание, что приведенная выше команда не читает и не записывает out.null файл, но указав
выходной файл требуется FFmpeg синтаксис.
В качестве альтернативы вы можете написать команду как:
ffmpeg -benchmark -i INPUT -f null -
натс
-синкпойнты Флаги
Измените использование точки синхронизации в орехе:
по умолчанию используют "обычные" низкие накладные расходы поиск СПИД.
нет do используют точки синхронизации at все, снижение накладные расходы но изготовление поток
не требующий поиска;
Использовать эту опцию не рекомендуется, так как полученные файлы сильно повреждаются.
чувствительный и поиск невозможен. Также в целом накладные расходы от
точек синхронизации незначительно. Примечание, -C 0 можно использовать для отключения
все растущие таблицы данных, что позволяет объединять бесконечные потоки с ограниченной памятью
и без этих недостатков.
временная метка продлить точка синхронизации a настенные часы поле.
Команда нет и временная метка флаги экспериментальные.
-write_index BOOL
Напишите индекс в конце, по умолчанию нужно написать индекс.
ffmpeg -i INPUT -f_strict экспериментально -syncpoints нет - | процессор
OGG
Муксер для контейнеров Ogg.
-page_duration продолжительность
Желаемая длительность страницы в микросекундах. Мультиплексор попытается создать страницы, которые
приблизительно продолжительность микросекунды долго. Это позволяет пользователю пойти на компромисс
между детализацией поиска и накладными расходами контейнера. По умолчанию 1 секунда. Значение 0
заполнит все сегменты, сделав страницы максимально большими. Значение 1 будет
эффективно использовать 1 пакет на страницу в большинстве ситуаций, обеспечивая небольшую степень детализации поиска
за счет дополнительных накладных расходов контейнера.
-serial_offset ценностное
Серийное значение, от которого можно установить порядковый номер потока. Установка его на разные и
достаточно большие значения гарантируют, что созданные файлы ogg могут быть безопасно связаны в цепочку.
сегмент, поток_сегмент, сегмент
Базовый сегментатор потока.
Этот мультиплексор выводит потоки в несколько отдельных файлов почти фиксированной продолжительности. Вывод
шаблон имени файла может быть установлен аналогично image2, или используя "strftime"
шаблон, если стрфтайм опция включена.
stream_segment - это вариант мультиплексора, который используется для записи в потоковые выходные форматы, т. е.
которые не требуют глобальных заголовков и рекомендуется для вывода, например, в MPEG
сегменты транспортного потока. «ssegment» - это более короткий псевдоним для «stream_segment».
Каждый сегмент начинается с ключевого кадра выбранного эталонного потока, который установлен
через reference_stream опцию.
Обратите внимание: если вам нужно точное разделение видеофайла, вам нужно сделать ключ ввода
кадры соответствуют точному времени разделения, ожидаемому сегментером, или сегментом
мультиплексор начнет новый сегмент с ключевого кадра, найденного следующим после указанного начала
времени.
Сегментный мультиплексор лучше всего работает с одиночным видео с постоянной частотой кадров.
При желании он может сгенерировать список созданных сегментов, установив опцию
сегмент_лист. Тип списка определяется тип_списка_сегмента вариант. Вход
имена файлов в списке сегментов по умолчанию устанавливаются равными базовому имени соответствующего
файлы сегментов.
См. Также HLS мультиплексор, который обеспечивает более конкретную реализацию HLS
сегментация.
Возможности
Мультиплексор сегментов поддерживает следующие параметры:
reference_stream спецификатор
Установите ссылочный поток, как указано в строке спецификатор. Если спецификатор установлен
на «авто» ссылка выбирается автоматически. В противном случае это должен быть поток
спецификатор (см. главу `` Спецификаторы потока '' в руководстве по ffmpeg), который определяет
эталонный поток. Значение по умолчанию - «авто».
сегмент_формат формат
Переопределить формат внутреннего контейнера, по умолчанию он определяется по имени файла
расширение.
сегмент_format_options options_list
Установите параметры формата вывода, используя разделенный: список параметров ключ = значение. Ценности
содержащий специальный символ ":", необходимо экранировать.
сегмент_лист имя
Создайте также файл списка с именем имя. Если не указано иное, файл списка не создается.
сегмент_list_flags Флаги
Установить флаги, влияющие на формирование списка сегментов.
В настоящее время он поддерживает следующие флаги:
кэш
Разрешить кэширование (влияет только на файлы списков M3U8).
жить
Разрешить создание файлов в реальном времени.
сегмент_список_размер размер
Обновите файл списка так, чтобы он содержал не более размер сегменты. Если 0 файл списка
будет содержать все сегменты. Значение по умолчанию - 0.
сегмент_list_entry_prefix префикс
Подготовить префикс к каждой записи. Полезно для создания абсолютных путей. По умолчанию без префикса
применены.
тип_списка_сегмента напишите
Выберите формат объявления.
Признаны следующие ценности:
плоский
Создайте плоский список для созданных сегментов, по одному сегменту в строке.
CSV, Ext
Создайте список для созданных сегментов, по одному сегменту на строку, каждая строка соответствует
формат (значения, разделенные запятыми):
, ,
имя_файла_сегмента это имя выходного файла, сгенерированного мультиплексором в соответствии с
по предоставленному шаблону. Экранирование CSV (согласно RFC4180) применяется, если
требуется.
сегмент_начало_время и сегмент_окончание_времени укажите время начала и окончания сегмента
выражается в секундах.
Файл списка с суффиксом «.csv» или «.ext» будет автоматически выбирать этот формат.
Ext устарел в пользу или CSV.
ffconcat
Создайте файл ffconcat для созданных сегментов. Полученный файл можно прочитать
используя FFmpeg CONCAT демультиплексор.
Файл списка с суффиксом «.ffcat» или «.ffconcat» автоматически выберет этот формат.
m3u8
Создайте расширенный файл M3U8 версии 3, совместимый с
<http://tools.ietf.org/id/draft-pantos-http-live-streaming>.
Файл списка с расширением ".m3u8" автоматически выберет этот формат.
Если не указан, то тип определяется по суффиксу имени файла списка.
сегмент_время время
Установите продолжительность сегмента на время, значение должно быть указанием продолжительности. Дефолт
значение равно «2». Также сегмент_время опцию.
Обратите внимание, что разделение может быть неточным, если вы не принудительно нажмете клавишу эталонного потока.
кадры в данный момент. См. Вводную информацию и примеры ниже.
сегмент_atclocktime 1 | 0
Если установлено значение «1», разбивать на равные временные интервалы, начиная с 00:00 часов. В
время значение, указанное в сегмент_время используется для установки длины разделения
интервал.
Например с сегмент_время установлено значение «900», что позволяет создавать файлы на
12:00, 12:15, 12:30 и т. Д.
Значение по умолчанию - «0».
сегмент_время_дельта дельта
Укажите время точности при выборе времени начала для сегмента, выраженное как
спецификация продолжительности. Значение по умолчанию - «0».
Если указана дельта, ключевой кадр начнет новый сегмент, если его PTS удовлетворяет требованиям
связь:
PTS> = start_time - time_delta
Эта опция полезна при разделении видеоконтента, который всегда разделяется по GOP.
границ, в случае, если ключевой кадр найден непосредственно перед указанным временем разделения.
В частности, может использоваться в сочетании с FFmpeg вариант Force_key_frames,
время ключевых кадров, указанное Force_key_frames не может быть установлен точно из-за
проблемы с округлением, в результате чего время ключевого кадра может быть установлено непосредственно перед
указанное время. Для видео с постоянной частотой кадров значение 1 / (2 *частота кадров) должен
устранить наихудшее несоответствие между указанным временем и временем, установленным
Force_key_frames.
сегмент_время раз
Задайте список точек разделения. раз содержит список продолжительности, разделенной запятыми
спецификации в порядке возрастания. Также сегмент_время опцию.
сегмент_фреймы кадры
Укажите список номеров разделенных видеокадров. кадры содержит список разделенных запятыми
целые числа в порядке возрастания.
Эта опция указывает, что новый сегмент запускается всякий раз, когда ключевой кадр опорного потока
найдено и порядковый номер (начиная с 0) кадра больше или равен
следующее значение в списке.
сегмент_обертка предел
Обернуть индекс сегмента, как только он достигнет предел.
номер_начального_сегмента номер
Установите порядковый номер первого сегмента. По умолчанию 0.
стрфтайм 1 | 0
Используйте функцию «strftime», чтобы определить имя новых сегментов для записи. Если это
выбрано, имя выходного сегмента должно содержать шаблон функции "strftime".
Значение по умолчанию 0.
Break_non_keyframes 1 | 0
Если этот параметр включен, разрешите сегментам начинаться с кадров, отличных от ключевых. Это улучшает
поведение некоторых игроков, когда время между ключевыми кадрами несовместимо, но может
для других дела обстоят хуже и могут вызывать некоторые странности во время поиска. По умолчанию 0.
reset_timestamps 1 | 0
Сбрасывать отметки времени в начале каждого сегмента, чтобы каждый сегмент начинался с
отметки времени, близкие к нулю. Это предназначено для облегчения воспроизведения сгенерированных сегментов. Мая
не работают с некоторыми комбинациями мультиплексоров / кодеков. По умолчанию установлено значение 0.
начальное_смещение смещение
Укажите смещение отметки времени для применения к отметкам времени выходного пакета. Аргумент должен
- спецификация продолжительности времени, по умолчанию - 0.
Примеры
· Ремиксировать содержимое файла дюйм.мкв к списку сегментов из-000.гайка, из-001.гайкаИ т.д.
и записать список сгенерированных сегментов в вне.список:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.list out% 03d.nut
· Сегментный ввод и установка параметров формата вывода для выходных сегментов:
ffmpeg -i in.mkv -f сегмент -segment_time 10 -segment_format_options movflags = + faststart out% 03d.mp4
· Сегментируйте входной файл в соответствии с точками разделения, указанными сегмент_время
опции:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 out% 03d.nut
· Использовать FFmpeg Force_key_frames возможность принудительно включить ключевые кадры на входе в
указанное местоположение вместе с опцией сегмента сегмент_время_дельта для учета
возможные округления, используемые при установке времени ключевых кадров.
ffmpeg -i in.mkv -force_key_frames 1,2,3,5,8,13,21 -codec: v mpeg4 -codec: a pcm_s16le -map 0 \
-f сегмент -segment_list out.csv -segment_times 1,2,3,5,8,13,21 -segment_time_delta 0.05 out% 03d.nut
Чтобы принудительно включить ключевые кадры во входной файл, требуется перекодирование.
· Сегментируйте входной файл, разбивая входной файл в соответствии с номерами кадров
последовательность, указанная с помощью сегмент_фреймы опции:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.csv -segment_frames 100,200,300,500,800 out% 03d.nut
· Преобразовать дюйм.мкв в сегменты TS с использованием кодировщиков libx264 и libfaac:
ffmpeg -i in.mkv -map 0 -codec: v libx264 -codec: a libfaac -f ssegment -segment_list out.list out% 03d.ts
· Сегментируйте входной файл и создайте живой плейлист M3U8 (может использоваться как live HLS
источник):
ffmpeg -re -i in.mkv -codec copy -map 0 -f segment -segment_list playlist.m3u8\
-segment_list_flags + live -segment_time 10 из% 03d.mkv
плавное течение
Мультиплексор Smooth Streaming генерирует набор файлов (манифест, чанки), пригодных для обслуживания.
с обычным веб-сервером.
размер_окна
Укажите количество фрагментов, хранящихся в манифесте. По умолчанию 0 (оставить все).
extra_window_size
Укажите количество фрагментов, хранящихся за пределами манифеста, перед удалением из
диск. По умолчанию 5.
просмотр_счета
Укажите количество фрагментов просмотра вперед. По умолчанию 2.
min_frag_duration
Укажите минимальную продолжительность фрагмента (в микросекундах). По умолчанию 5000000.
Remove_at_exit
Укажите, нужно ли удалять все фрагменты по окончании. По умолчанию 0 (не удалять).
тройник
Tee-мультиплексор можно использовать для записи одних и тех же данных в несколько файлов или в любой другой тип файла.
мультиплексор. Его можно использовать, например, как для потоковой передачи видео в сеть, так и для сохранения его в
диск одновременно.
Это отличается от указания нескольких выходов для FFmpeg инструмент командной строки, потому что
аудио и видео данные будут кодироваться только один раз с помощью тройника мультиплексора; кодирование может быть
очень дорогой процесс. Это бесполезно при прямом использовании API libavformat, потому что
тогда можно напрямую подавать одни и те же пакеты в несколько мультиплексоров.
Выходы подчиненного устройства указываются в имени файла, присвоенном мультиплексору, через '|'. Если
любое имя подчиненного устройства содержит символ '|' разделитель, начальные или конечные пробелы или любые
специальный символ, он должен быть экранирован (см. "Цитирование и побег " . in
ffmpeg-утилиты(1) руководство).
Параметры мультиплексора могут быть указаны для каждого ведомого устройства, добавив их в виде списка ключ=ценностное
пары, разделенные знаком ":" в квадратных скобках. Если значения параметров содержат специальный
символ или разделитель ":", они должны быть экранированы; обратите внимание, что это второй уровень
побег.
Также распознаются следующие специальные опции:
f Укажите название формата. Полезно, если его нельзя угадать по суффиксу имени вывода.
bsfs [/спецификация]
Укажите список фильтров битового потока, применяемых к указанному выходу.
Можно указать, к каким потокам применяется данный фильтр битового потока, с помощью
добавление спецификатора потока к опции, разделенной "/". спецификация должен быть поток
спецификатор (см. Формат поток спецификаторы). Если спецификатор потока не указан,
фильтры битового потока будут применяться ко всем потокам на выходе.
Можно указать несколько фильтров битового потока, разделенных знаком «,».
выберите
Выберите потоки, которые должны быть сопоставлены с выходом ведомого устройства, указанным потоком
спецификатор. Если не указано, по умолчанию используются все входные потоки.
Примеры
· Закодируйте что-то, и оба архивируйте это в файл WebM, и передавайте его как MPEG-TS через UDP.
(потоки должны быть явно отображены):
ffmpeg -i ... -c: v libx264 -c: a mp2 -f tee -map 0: v -map 0: a
"archive-20121107.mkv | [f = mpegts] udp: //10.0.1.255: 1234 /"
· Использовать FFmpeg для кодирования ввода и отправки вывода по трем разным адресатам.
Фильтр битового потока "dump_extra" используется для добавления дополнительной информации ко всем
выводить пакеты ключевых кадров видео в соответствии с требованиями формата MPEG-TS. Вариант выбора
применяется к вне.aac чтобы он содержал только аудиопакеты.
ffmpeg -i ... -map 0 -flags + global_header -c: v libx264 -c: aac -strict экспериментальный
-f tee "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = a] out.aac"
· Как показано ниже, но для вывода звука выберите только поток «a: 1». Обратите внимание, что второй уровень
необходимо выполнить экранирование, поскольку «:» - это специальный символ, используемый для разделения параметров.
ffmpeg -i ... -map 0 -flags + global_header -c: v libx264 -c: aac -strict экспериментальный
-f tee "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = \ 'a: 1 \'] out.aac"
Примечание: для некоторых кодеков могут потребоваться разные параметры в зависимости от формата вывода; авто-
обнаружение этого не может работать с тройником мультиплексора. Главный пример - это global_header
флаг.
webm_dash_manifest
Мультиплексор манифеста WebM DASH.
Этот мультиплексор реализует спецификацию манифеста WebM DASH для генерации манифеста DASH.
XML. Он также поддерживает создание манифеста для прямых трансляций DASH.
Для получения дополнительной информации см .:
· Спецификация WebM DASH:
<https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification>
· Спецификация ISO DASH:
<http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip>
Возможности
Этот мультиплексор поддерживает следующие параметры:
адаптации_наборы
Этот параметр имеет следующий синтаксис: «id = x, streams = a, b, c id = y, streams = d, e», где x
и y - уникальные идентификаторы наборов адаптации, а a, b, c, d и e -
индексы соответствующих аудио- и видеопотоков. Любое количество комплектов адаптации
можно добавить с помощью этой опции.
жить
Установите значение 1, чтобы создать манифест DASH в прямом эфире. По умолчанию: 0.
chunk_start_index
Начальный индекс первого чанка. Это войдет в стартовый номер атрибут
Шаблон сегмента элемент в манифесте. По умолчанию: 0.
chunk_duration_ms
Продолжительность каждого фрагмента в миллисекундах. Это войдет в продолжительность атрибут
Шаблон сегмента элемент в манифесте. По умолчанию: 1000.
utc_timing_url
URL-адрес страницы, которая вернет метку времени в формате UTC в формате ISO. Это войдет в
ценностное атрибут UTC элемент в манифесте. По умолчанию: Нет.
time_shift_buffer_глубина
Наименьшее время (в секундах) сдвига буфера, для которого гарантируется любое Представление
быть доступным. Это войдет в времяShiftBufferDepth атрибут MPD
элемент. По умолчанию: 60.
минимальный_период_обновления
Минимальный период обновления манифеста (в секундах). Это войдет в
минимальный период обновления атрибут MPD элемент. По умолчанию: 0.
Пример
ffmpeg -f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i video2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-карта 0 -карта 1 -карта 2 -карта 3 \
-c копировать \
-f webm_dash_manifest \
-adaptation_sets "id = 0, streams = 0,1 id = 1, streams = 2,3" \
манифест.xml
вебм_чанк
WebM Live Chunk Muxer.
Этот мультиплексор записывает заголовки и фрагменты WebM как отдельные файлы, которые могут использоваться
клиенты, поддерживающие потоки WebM Live через DASH.
Возможности
Этот мультиплексор поддерживает следующие параметры:
chunk_start_index
Индекс первого чанка (по умолчанию 0).
заголовок
Имя файла заголовка, в который будут записаны данные инициализации.
audio_chunk_duration
Продолжительность каждого звукового фрагмента в миллисекундах (по умолчанию 5000).
Пример
ffmpeg -f v4l2 -i / dev / video0 \
-f alsa -i hw: 0 \
-map 0: 0 \
-c: v libvpx-vp9 \
-s 640x360 -keyint_min 30 -g 30 \
-f вебм_чанк \
-заголовок webm_live_video_360.hdr \
-chunk_start_index 1 \
webm_live_video_360_% d.chk \
-map 1: 0 \
-c: libvorbis \
-b: 128k \
-f вебм_чанк \
-заголовок webm_live_audio_128.hdr \
-chunk_start_index 1 \
-audio_chunk_duration 1000 \
webm_live_audio_128_% d.chk
METADATA
FFmpeg может сбрасывать метаданные из медиафайлов в простой INI-подобный текст в кодировке UTF-8.
файл, а затем загрузите его обратно с помощью мультиплексора / демультиплексора метаданных.
Формат файла следующий:
1. Файл состоит из заголовка и ряда тегов метаданных, разделенных на разделы, каждый
на собственной линии.
2. Заголовок представляет собой ; FFMETADATA строка, за которой следует номер версии (теперь 1).
3. Теги метаданных имеют форму ключ = значение
4. Сразу после заголовка следуют глобальные метаданные.
5. После глобальных метаданных могут быть разделы с метаданными для каждого потока / главы.
6. Раздел начинается с названия раздела в верхнем регистре (например, ПОТОК или ГЛАВА) в
скобки ([, ]) и заканчивается следующим разделом или концом файла.
7. В начале раздела главы может быть необязательная временная шкала, которая будет использоваться для
начальные / конечные значения. Это должно быть по форме БАЗА ВРЕМЕНИ =Num/день, Где Num и день целые числа.
Если развертка отсутствует, предполагается, что время начала / окончания указано в миллисекундах.
Затем раздел главы должен содержать время начала и окончания главы в форме START =Num,
КОНЕЦ =Num, Где Num является положительным целым числом.
8. Пустые строки и строки, начинающиеся с ; or # игнорируются.
9. Ключи или значения метаданных, содержащие специальные символы (=, ;, #, \ и новая строка) должны
экранировать обратную косую черту \.
10. Обратите внимание, что пробелы в метаданных (например, Foo = бар) считается частью
тег (в приведенном выше примере ключ Foo , значение
бар).
Файл ffmetadata может выглядеть так:
; FFMETADATA1
title = велосипед \ сарай
; это комментарий
artist = Команда троллей FFmpeg
[ГЛАВА]
БАЗА ВРЕМЕНИ = 1/1000
START = 0
# глава заканчивается в 0:01:00
END = 60000
title = chapter \ # 1
[ТРАНСЛИРОВАТЬ]
title = multi \
линия
Используя мультиплексор и демультиплексор ffmetadata, можно извлекать метаданные из входных данных.
файл в файл ffmetadata, а затем перекодируйте файл в выходной файл с
отредактированный файл ffmetadata.
Извлечение файла ffmetadata с помощью FFmpeg идет следующим образом:
ffmpeg -i INPUT -f ffmetadata ФАЙЛ МЕТАДАННЫХ
Повторная вставка отредактированной информации метаданных из файла FFMETADATAFILE может быть выполнена следующим образом:
ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec copy ВЫВОД
ПРОТОКОЛЫ
Протоколы - это настраиваемые элементы в FFmpeg, обеспечивающие доступ к ресурсам, требующим
конкретные протоколы.
При настройке сборки FFmpeg все поддерживаемые протоколы включены по умолчанию.
Вы можете перечислить все доступные, используя опцию конфигурации «--list-протоколы».
Вы можете отключить все протоколы, используя параметр конфигурации --disable -tocols, и
выборочно включить протокол, используя параметр "--enable-protocol ="ПРОТОКОЛ", или вы можете
отключить определенный протокол с помощью опции "--disable-protocol ="ПРОТОКОЛ".
Параметр «-protocols» инструментов ff * отображает список поддерживаемых протоколов.
Ниже приводится описание доступных в настоящее время протоколов.
асинхронной
Обертка асинхронного заполнения данных для входного потока.
Заполните данные в фоновом потоке, чтобы отделить операцию ввода-вывода от потока демультиплексирования.
асинхронный:
асинхронный:http://host/resource
асинхронный: кеш:http://host/resource
Блю рей
Прочтите список воспроизведения BluRay.
Допустимые варианты:
угол
BluRay угол
глава
Начать главу (1 ... N)
плейлист
Плейлист для чтения (BDMV / PLAYLIST / ?????. Mpls)
Примеры:
Прочтите самый длинный плейлист с BluRay, подключенного к / mnt / bluray:
bluray: / mnt / bluray
Считайте угол 2 плейлиста 4 с BluRay, установленного на / mnt / bluray, начните с главы 2:
-плейлист 4 -угловой 2-глава 2 bluray: / mnt / bluray
кэш
Кеширующая оболочка для входного потока.
Кэшируйте входной поток во временный файл. Это дает возможность поиска для прямых трансляций.
кеш:
CONCAT
Протокол физической конкатенации.
Последовательно читайте и ищите множество ресурсов, как если бы они были уникальным ресурсом.
URL-адрес, принимаемый этим протоколом, имеет синтаксис:
concat: | | ... |
в котором URL1, URL2..., URLN - это URL-адреса объединяемого ресурса, каждый из которых
возможно указание отдельного протокола.
Например, чтобы прочитать последовательность файлов Split1.mpeg, Split2.mpeg, Split3.mpeg ffplay
используйте команду:
ffplay concat: split1.mpeg \ | split2.mpeg \ | split3.mpeg
Обратите внимание, что вам может потребоваться экранировать символ "|" что является особенным для многих снарядов.
крипто-
Протокол чтения потока с шифрованием AES.
Допустимые варианты:
ключ Установите двоичный блок ключа дешифрования AES из заданного шестнадцатеричного представления.
iv Установить двоичный блок вектора инициализации дешифрования AES из заданного шестнадцатеричного
представление.
Допустимые форматы URL:
крипто:
крипто +
данным
Данные в строке в URI. Видетьhttp://en.wikipedia.org/wiki/Data_URI_scheme>.
Например, чтобы преобразовать файл GIF, указанный в строке с FFmpeg:
ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png
файл
Протокол доступа к файлам.
Чтение или запись в файл.
URL-адрес файла может иметь вид:
файл:
в котором имя файла это путь к файлу для чтения.
URL-адрес без префикса протокола будет считаться URL-адресом файла. В зависимости от
сборка, URL-адрес, который выглядит как путь Windows с буквой диска в начале
также предполагается, что это URL-адрес файла (обычно это не так в сборках для unix-подобных
системы).
Например, чтобы прочитать из файла ввод.mpeg FFmpeg используйте команду:
ffmpeg -i файл: input.mpeg output.mpeg
Этот протокол допускает следующие варианты:
усекать
Обрезать существующие файлы при записи, если установлено значение 1. Значение 0 предотвращает усечение.
Значение по умолчанию 1.
размер блока
Установите максимальный размер блока операции ввода-вывода в байтах. Значение по умолчанию - "INT_MAX", что
приводит к тому, что запрошенный размер блока не ограничивается. Установка этого значения достаточно низким
сокращает время реакции на запрос на завершение работы пользователя, что очень важно для файлов, находящихся в медленном темпе.
средний.
FTP
FTP (протокол передачи файлов).
Чтение или запись на удаленные ресурсы по протоколу FTP.
Требуется следующий синтаксис.
ftp: // [пользователь [: пароль] @] сервер [: порт] /path/to/remote/resource.mpeg
Этот протокол допускает следующие варианты.
Тайм-аут
Установите тайм-аут в микросекундах для операций ввода-вывода сокета, используемых нижележащим низким уровнем
операция. По умолчанию установлено значение -1, что означает, что тайм-аут не указан.
ftp-анонимный-пароль
Пароль, используемый при входе в систему как анонимный пользователь. Обычно адрес электронной почты должен быть
используемый.
ftp-запись-поиск
Контроль возможности поиска соединения при кодировании. Если установлено значение 1, ресурс
предполагается, что он доступен для поиска, если установлено значение 0, предполагается, что он недоступен для поиска. Значение по умолчанию
это 0.
ПРИМЕЧАНИЕ. Протокол можно использовать в качестве вывода, но не рекомендуется этого делать, если только не
проявляется осторожность (тесты, индивидуальная конфигурация сервера и т. д.). Различные FTP-серверы ведут себя
по-разному во время операции поиска. Инструменты ff * могут создавать неполный контент из-за
ограничения сервера.
суслик
Протокол суслика.
HLS
Считайте сегментированный поток, совместимый с Apple HTTP Live Streaming, как единый. M3U8
списки воспроизведения, описывающие сегменты, могут быть удаленными ресурсами HTTP или локальными файлами, к которым осуществляется доступ
используя стандартный файловый протокол. Вложенный протокол объявляется путем указания "+прото"
после имени схемы URI hls, где прото либо "файл", либо "http".
hls +http://host/path/to/remote/resource.m3u8
hls + file: //path/to/local/resource.m3u8
Использование этого протокола не рекомендуется - демультиплексор hls должен работать так же хорошо (если нет,
пожалуйста, сообщите о проблемах) и является более полным. Чтобы вместо этого использовать демультиплексор hls, просто
используйте прямые URL-адреса файлов m3u8.
HTTP
HTTP (протокол передачи гипертекста).
Этот протокол допускает следующие варианты:
доступный
Управляйте возможностью поиска соединения. Если установлено значение 1, ресурс должен быть
seekable, при значении 0 предполагается, что поиск недоступен, при значении -1 он будет пытаться
автоматическое определение, если он доступен для поиска. Значение по умолчанию -1.
кусок_поста
Если установлено значение 1, использовать фрагментированное кодирование передачи для сообщений, по умолчанию - 1.
Тип содержимого
Установите определенный тип содержимого для сообщений POST.
Заголовки
Установите собственные заголовки HTTP, можно переопределить встроенные заголовки по умолчанию. Значение должно быть
строка, кодирующая заголовки.
множественные_запросы
Использовать постоянные соединения, если установлено значение 1, по умолчанию - 0.
post_data
Установите пользовательские данные HTTP-сообщения.
агент пользователя
user_agent
Переопределить заголовок User-Agent. Если не указано, протокол будет использовать строку
описание сборки libavformat. ("Лавф / ")
Тайм-аут
Установите тайм-аут в микросекундах для операций ввода-вывода сокета, используемых нижележащим низким уровнем
операция. По умолчанию установлено значение -1, что означает, что тайм-аут не указан.
mime_type
Экспортируйте MIME-тип.
ледяной Если установлено значение 1, запросить метаданные ICY (SHOUTcast) с сервера. Если сервер поддерживает
это метаданные должны быть получены приложением путем чтения
ледяные_метаданные_заголовки и ледяной_metadata_packet опции. По умолчанию 1.
ледяные_метаданные_заголовки
Если сервер поддерживает метаданные ICY, они содержат ответ HTTP, специфичный для ICY.
заголовки, разделенные символами новой строки.
ледяной_metadata_packet
Если сервер поддерживает метаданные ICY, и ледяной был установлен в 1, это содержит последние не-
пустой пакет метаданных, отправленный сервером. Он должен опрашиваться через равные промежутки времени
приложения, заинтересованные в обновлении метаданных в середине потока.
cookies
Установите файлы cookie для отправки в будущих запросах. Формат каждого файла cookie одинаков.
как значение поля HTTP-ответа Set-Cookie. Несколько файлов cookie могут быть разделены
символ новой строки.
смещение
Установить начальное смещение байта.
end_offset
Попробуйте ограничить запрос байтами, предшествующими этому смещению.
метод
При использовании в качестве опции клиента он устанавливает метод HTTP для запроса.
При использовании в качестве опции сервера он устанавливает метод HTTP, который ожидается от
клиент (ы). Если ожидаемый и полученный HTTP-метод не соответствует клиенту
получит ответ неверный запрос. Если не установлено, метод HTTP не проверяется на
в настоящее время. В будущем это будет заменено на автоопределение.
Слушать
Если установлено значение 1, включается экспериментальный HTTP-сервер. Это можно использовать для отправки данных при использовании
в качестве варианта вывода или считывать данные от клиента с помощью HTTP POST при использовании в качестве ввода
вариант. Если установлено значение 2, включается экспериментальный HTTP-сервер с несколькими клиентами. Это еще не
реализован в ffmpeg.c или ffserver.c и поэтому не должен использоваться в качестве командной строки
опцию.
# На стороне сервера (отправка):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http: // :
# Клиентская сторона (получение):
ffmpeg -i http: // : -c скопировать somefile.ogg
# Клиент также может быть выполнен с помощью wget:
wget http: // : -O somefile.ogg
# Сторона сервера (получение):
ffmpeg -listen 1 -i http: // : -c скопировать somefile.ogg
# Клиентская сторона (отправка):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http: // :
# Клиент также может быть выполнен с помощью wget:
wget --post-file = somefile.ogg http: // :
HTTP Файлы
Некоторые HTTP-запросы будут отклонены, если с запросом не будут переданы значения cookie. В
cookies опция позволяет указать эти файлы cookie. По крайней мере, каждый файл cookie должен
укажите значение вместе с путем и доменом. HTTP-запросы, соответствующие как домену
и путь будет автоматически включать значение cookie в поле заголовка HTTP Cookie.
Несколько файлов cookie могут быть разделены новой строкой.
Требуемый синтаксис для воспроизведения потока с указанием cookie:
ffplay -cookies "nlqptid = nltid = tsn; path = /; domain = somedomain.com;" http://somedomain.com/somestream.m3u8
Icecast
Протокол Icecast (поток на серверы Icecast)
Этот протокол допускает следующие варианты:
лед_жанр
Установите жанр трансляции.
ледяное_имя
Задайте имя потока.
лед_описание
Задайте описание потока.
лед_url
Задайте URL-адрес веб-сайта потока.
Ice_public
Установите, если поток должен быть общедоступным. По умолчанию - 0 (не общедоступно).
user_agent
Переопределить заголовок User-Agent. Если не указано иное, строка вида «Лавф / "
будет использоваться.
password
Установите пароль точки монтирования Icecast.
Тип содержимого
Установите тип содержимого потока. Это необходимо установить, если он отличается от audio / mpeg.
Legacy_icecast
Это включает поддержку версий Icecast <2.4.0, которые не поддерживают HTTP PUT.
метод, но метод SOURCE.
icecast: // [ [: ] @] : /
ммст
Протокол MMS (Microsoft Media Server) через TCP.
ммш
Протокол MMS (Microsoft Media Server) через HTTP.
Требуемый синтаксис:
ммш: // [: ] [/ ] [/ ]
md5
Протокол вывода MD5.
Вычисляет хэш MD5 данных для записи и при закрытии записывает его в
назначенный вывод или стандартный вывод, если ничего не указано. Его можно использовать для тестирования мультиплексоров без
запись реального файла.
Ниже приведены некоторые примеры.
# Записать MD5-хэш закодированного файла AVI в файл output.avi.md5.
ffmpeg -i input.flv -f avi -y md5: output.avi.md5
# Записать MD5-хэш закодированного файла AVI в stdout.
ffmpeg -i input.flv -f avi -y md5:
Обратите внимание, что некоторые форматы (обычно MOV) требуют, чтобы протокол вывода был доступен для поиска, поэтому они
не будет работать с протоколом вывода MD5.
труба
Протокол доступа к каналу UNIX.
Чтение и запись из каналов UNIX.
Принятый синтаксис:
трубка:[ ]
номер - это номер, соответствующий файловому дескриптору канала (например, 0 для стандартного ввода, 1
для stdout, 2 для stderr). Если номер не указан, по умолчанию файл stdout
дескриптор будет использоваться для записи, stdin для чтения.
Например, чтобы читать из стандартного ввода с помощью FFmpeg:
кот test.wav | ffmpeg -i труба: 0
# ... это то же самое, что ...
кот test.wav | ffmpeg -i труба:
Для записи в стандартный вывод с помощью FFmpeg:
ffmpeg -i test.wav -f avi pipe: 1 | кошка> test.avi
# ... это то же самое, что ...
ffmpeg -i test.wav -f avi pipe: | кошка> test.avi
Этот протокол допускает следующие варианты:
размер блока
Установите максимальный размер блока операции ввода-вывода в байтах. Значение по умолчанию - "INT_MAX", что
приводит к тому, что запрошенный размер блока не ограничивается. Установка этого значения достаточно низким
улучшает время реакции на запрос на завершение работы пользователя, что важно, если данные
передача идет медленно.
Обратите внимание, что некоторые форматы (обычно MOV) требуют, чтобы протокол вывода был доступен для поиска, поэтому
они не будут работать с протоколом вывода конвейера.
RTMP
Протокол обмена сообщениями в реальном времени.
Протокол обмена сообщениями в реальном времени (RTMP) используется для потоковой передачи мультимедийного контента через
Сеть TCP / IP.
Требуемый синтаксис:
rtmp: // [ : @] [: ] [/ ] [/ ] [/ ]
Допустимые параметры:
username
Необязательное имя пользователя (в основном для публикации).
password
Необязательный пароль (в основном для публикации).
сервер
Адрес RTMP-сервера.
порт
Номер используемого TCP-порта (по умолчанию 1935).
приложение Это имя приложения, к которому нужно получить доступ. Обычно это соответствует пути, по которому
приложение установлено на сервере RTMP (например, /по требованию/, / flash / live /И т.д.).
Вы также можете переопределить значение, полученное из URI, с помощью параметра «rtmp_app».
игровая дорожка
Это путь или имя ресурса для воспроизведения со ссылкой на приложение.
указано в приложение, может иметь префикс "mp4:". Вы можете переопределить значение, полученное из
URI через параметр "rtmp_playpath".
Слушать
Выступать в роли сервера, ожидающего входящего соединения.
Тайм-аут
Максимальное время ожидания входящего соединения. Подразумевает слушать.
Кроме того, следующие параметры могут быть установлены с помощью параметров командной строки (или в коде через
«AVOption» s):
rtmp_app
Имя приложения для подключения к RTMP-серверу. Этот параметр имеет приоритет над параметром
указанный в URI.
rtmp_buffer
Установите время буферизации клиента в миллисекундах. По умолчанию 3000.
rtmp_conn
Дополнительные произвольные параметры подключения AMF, извлеченные из строки, например, "B: 1"
S: authMe O: 1 NN: code: 1.23 NS: flag: ok O: 0 ". Каждое значение предваряется одиночным префиксом
символ, обозначающий тип, B для логического, N для числа, S для строки, O для объекта,
или Z для null, за которым следует двоеточие. Для логических значений данные должны быть либо 0, либо 1 для
ЛОЖЬ или ИСТИНА соответственно. Аналогично для Объектов данные должны быть 0 или 1, чтобы закончить или
начать объект соответственно. Элементы данных в подобъектах могут быть названы с помощью префикса
введите «N» и укажите имя перед значением (например, «NB: myFlag: 1»). Этот
опцию можно использовать несколько раз для построения произвольных последовательностей AMF.
rtmp_flashver
Версия плагина Flash, используемая для запуска SWF-плеера. По умолчанию LNX 9,0,124,2.
(При публикации по умолчанию используется FMLE / 3.0 (совместимый; ).)
rtmp_flush_interval
Количество пакетов, сброшенных в одном запросе (только RTMPT). По умолчанию - 10.
rtmp_live
Укажите, что медиа - это прямой эфир. Нет возобновления или поиска в прямых трансляциях.
возможный. Значение по умолчанию - «любой», что означает, что подписчик сначала пытается сыграть.
прямой эфир, указанный в пути воспроизведения. Если прямой эфир с таким названием не найден,
он воспроизводит записанный поток. Другие возможные значения - «живое» и «записанное».
rtmp_pageurl
URL-адрес веб-страницы, в которую был встроен носитель. По умолчанию никакое значение не будет отправлено.
rtmp_playpath
Идентификатор потока для воспроизведения или публикации. Эта опция переопределяет указанный параметр.
в URI.
rtmp_subscribe
Имя прямой трансляции, на которую нужно подписаться. По умолчанию никакое значение не будет отправлено. Это только
отправляется, если указана опция или если для rtmp_live установлено значение live.
rtmp_swfhash
SHA256-хэш распакованного SWF-файла (32 байта).
rtmp_swfsize
Размер распакованного SWF-файла, необходимый для SWFVerification.
rtmp_swfurl
URL-адрес SWF-плеера для мультимедиа. По умолчанию никакое значение не будет отправлено.
rtmp_swfverify
URL-адрес SWF-файла плеера, вычислить хэш / размер автоматически.
rtmp_tcurl
URL-адрес целевого потока. По умолчанию proto: // host [: port] / app.
Например, чтобы читать с ffplay мультимедийный ресурс под названием "образец" из приложения
"vod" с RTMP-сервера "myserver":
ffplay rtmp: // myserver / vod / образец
Чтобы опубликовать на сервере, защищенном паролем, отдельно передавая путь воспроизведения и имена приложений:
ffmpeg -re -i -f flv -rtmp_playpath some / long / path -rtmp_app long / app / name rtmp: // имя пользователя: пароль @ myserver /
ртмпе
Зашифрованный протокол обмена сообщениями в реальном времени.
Протокол зашифрованных сообщений в реальном времени (RTMPE) используется для потоковой передачи мультимедиа.
содержимое в стандартных криптографических примитивах, состоящее из ключа Диффи-Хеллмана
exchange и HMACSHA256, генерируя пару ключей RC4.
rtmps
Протокол обмена сообщениями в реальном времени через безопасное соединение SSL.
Протокол обмена сообщениями в реальном времени (RTMPS) используется для потоковой передачи мультимедийного контента через
зашифрованное соединение.
rtmpt
Протокол обмена сообщениями в реальном времени, туннелируемый через HTTP.
Протокол обмена сообщениями в реальном времени, туннелируемый через HTTP (RTMPT), используется для потоковой передачи.
мультимедийный контент в HTTP-запросах на прохождение межсетевых экранов.
rtmpte
Зашифрованный протокол обмена сообщениями в реальном времени, туннелируемый через HTTP.
Протокол обмена зашифрованными сообщениями в реальном времени, туннелируемый через HTTP (RTMPTE), используется для
потоковая передача мультимедийного контента в HTTP-запросах через брандмауэры.
rtmpts
Протокол обмена сообщениями в реальном времени, туннелируемый через HTTPS.
Протокол обмена сообщениями в реальном времени, туннелируемый через HTTPS (RTMPTS), используется для потоковой передачи.
мультимедийный контент в запросах HTTPS для прохождения межсетевых экранов.
libsmbclient
libsmbclient позволяет управлять сетевыми ресурсами CIFS / SMB.
Требуется следующий синтаксис.
smb: // [[домен:] пользователь [: пароль @]] сервер [/ share [/ путь [/ файл]]]
Этот протокол допускает следующие варианты.
Тайм-аут
Установить тайм-аут в миллисекундах для операций ввода-вывода сокета, используемых нижележащим низким уровнем
операция. По умолчанию установлено значение -1, что означает, что тайм-аут не указан.
усекать
Обрезать существующие файлы при записи, если установлено значение 1. Значение 0 предотвращает усечение.
Значение по умолчанию 1.
рабочая группа
Задайте рабочую группу, используемую для установления соединений. По умолчанию рабочая группа не указана.
Для получения дополнительной информации см .:http://www.samba.org/>.
libssh
Безопасный протокол передачи файлов через libssh
Чтение или запись на удаленные ресурсы по протоколу SFTP.
Требуется следующий синтаксис.
sftp: // [пользователь [: пароль] @] сервер [: порт] /path/to/remote/resource.mpeg
Этот протокол допускает следующие варианты.
Тайм-аут
Установите тайм-аут операций ввода-вывода сокета, используемых базовой операцией низкого уровня. От
по умолчанию он установлен на -1, что означает, что тайм-аут не указан.
усекать
Обрезать существующие файлы при записи, если установлено значение 1. Значение 0 предотвращает усечение.
Значение по умолчанию 1.
приватный_ключ
Укажите путь к файлу, содержащему закрытый ключ, который будет использоваться при авторизации. От
по умолчанию libssh ищет ключи в ~ / .ssh / каталог.
Пример: воспроизвести файл, хранящийся на удаленном сервере.
ffplay сftp: // пользователь: пароль @ адрес_сервера: 22 / home / user / resource.mpeg
librtmp рутмп, ртмпе, рутмпс, ртмпт, rtmpte
Протокол обмена сообщениями в реальном времени и его варианты, поддерживаемые librtmp.
Требуется наличие заголовков librtmp и библиотеки во время настройки. Тебе надо
явно настройте сборку с помощью "--enable-librtmp". Если включено, это заменит
собственный протокол RTMP.
Этот протокол обеспечивает большинство клиентских функций и несколько функций сервера, необходимых для поддержки
RTMP, RTMP с туннелированием в HTTP (RTMPT), зашифрованный RTMP (RTMPE), RTMP через SSL / TLS (RTMPS) и
туннелированные варианты этих зашифрованных типов (RTMPTE, RTMPTS).
Требуемый синтаксис:
: // [: ] [/ ] [/ ]
в котором rtmp_proto является одной из строк «rtmp», «rtmpt», «rtmpe», «rtmps», «rtmpte»,
"rtmpts", соответствующий каждому варианту RTMP, и сервер, порт, приложение и игровая дорожка есть
то же значение, что и для собственного протокола RTMP. кредита содержит список пробелов
отдельные варианты формы ключ=волна.
См. Дополнительную информацию на странице руководства librtmp (man 3 librtmp).
Например, для потоковой передачи файла в реальном времени на сервер RTMP с помощью FFmpeg:
ffmpeg -re -i myfile -f flv rtmp: // myserver / live / mystream
Чтобы воспроизвести тот же поток, используя ffplay:
ffplay "rtmp: // myserver / live / mystream live = 1"
РТП
Транспортный протокол в реальном времени.
Требуемый синтаксис для URL-адреса RTP: rtp: //хоста[:порт] [?вариант=волна...]
порт указывает используемый порт RTP.
Поддерживаются следующие варианты URL:
ttl =n
Установите значение TTL (время жизни) (только для многоадресной рассылки).
rtcpport =n
Установите удаленный порт RTCP на n.
localrtpport =n
Установите для локального порта RTP значение n.
localrtcpport =n'
Установите для локального порта RTCP значение n.
pkt_size =n
Установите максимальный размер пакета (в байтах) на n.
подключить = 0 | 1
Выполните «connect ()» на сокете UDP (если установлено в 1) или нет (если установлено в 0).
источники =ip[,ip]
Список разрешенных исходных IP-адресов.
блок =ip[,ip]
Список запрещенных (заблокированных) исходных IP-адресов.
write_to_source = 0 | 1
Отправлять пакеты на адрес источника последнего полученного пакета (если установлено значение 1) или на адрес
удаленный адрес по умолчанию (если установлен на 0).
localport =n
Установите для локального порта RTP значение n.
Это устаревший вариант. Вместо, локальный порт должен быть использован.
Важные замечания:
1. Если rtcpport не установлен, порт RTCP будет установлен на значение порта RTP плюс 1.
2. Если локальный порт (локальный порт RTP) не установлен, любой доступный порт будет использоваться для
локальные порты RTP и RTCP.
3. Если локальный порт (локальный порт RTCP) не установлен, он будет установлен на локальный порт RTP
значение плюс 1.
RTSP
Протокол потоковой передачи в реальном времени.
RTSP технически не является обработчиком протокола в libavformat, это демультиплексор и мультиплексор. В
демультиплексор поддерживает как обычный RTSP (с данными, передаваемыми через RTP; это используется, например,
Apple и Microsoft) и Real-RTSP (с передачей данных через RDT).
Мультиплексор можно использовать для отправки потока с использованием RTSP ANNOUNCE на сервер, поддерживающий его.
(в настоящее время сервер потокового вещания Дарвина и Миша Шпигельмока
<https://github.com/revmischa/rtsp-server>).
Требуемый синтаксис для URL-адреса RTSP:
rtsp: // [: ] /
Параметры могут быть установлены на FFmpeg/ffplay в командной строке или задать в коде через "AVOption" или в
"avformat_open_input".
Поддерживаются следующие параметры.
начальная_пауза
Не начинайте воспроизведение потока немедленно, если установлено значение 1. Значение по умолчанию - 0.
rtsp_transport
Установите транспортные протоколы RTSP.
Принимает следующие значения:
UDP Используйте UDP в качестве нижнего транспортного протокола.
TCP Используйте TCP (чередование в канале управления RTSP) в качестве нижнего транспорта
протокол.
udp_multicast
Используйте многоадресную рассылку UDP в качестве нижнего транспортного протокола.
HTTP
Используйте HTTP-туннелирование в качестве нижнего транспортного протокола, который полезен для передачи
прокси.
Можно указать несколько нижних транспортных протоколов, в этом случае они пробуются одним
за один раз (если настройка одного не удалась, выполняется попытка следующего). Для мультиплексора только
TCP и UDP опции поддерживаются.
rtsp_flags
Установите флаги RTSP.
Принимаются следующие значения:
filter_src
Принимать пакеты только от согласованного однорангового адреса и порта.
Слушать
Выступать в роли сервера, ожидающего входящего соединения.
предпочитать_tcp
Сначала попробуйте TCP для транспорта RTP, если TCP доступен как транспорт RTSP RTP.
Значение по умолчанию нет.
разрешенные_медиа_типы
Установите типы мультимедиа для приема с сервера.
Принимаются следующие флаги:
XNUMX году
аудио
данным
По умолчанию он принимает все типы мультимедиа.
мин_порт
Установите минимальный локальный порт UDP. Значение по умолчанию - 5000.
макс_порт
Установите максимальный локальный порт UDP. Значение по умолчанию 65000.
Тайм-аут
Установите максимальное время ожидания (в секундах) для ожидания входящих подключений.
Значение -1 означает бесконечность (по умолчанию). Этот вариант подразумевает rtsp_flags установлен в
Слушать.
reorder_queue_size
Установите количество пакетов в буфер для обработки переупорядоченных пакетов.
стимуляция
Установите таймаут ввода-вывода TCP для сокета в микросекундах.
агент пользователя
Переопределить заголовок User-Agent. Если не указано, по умолчанию используется формат libavformat.
строка идентификатора.
При получении данных по UDP демультиплексор пытается переупорядочить полученные пакеты (поскольку они
могут приходить не по порядку или пакеты могут полностью теряться). Это можно отключить, установив
максимальная задержка демультиплексирования до нуля (через поле "max_delay" AVFormatContext).
При просмотре мультибитрейтных потоков Real-RTSP с ffplay, отображаемые потоки могут быть
выбирается с "-vst" n и "-аст" n для видео и аудио соответственно, и может быть включен
муха, нажав "v" и "a".
Примеры
Во всех следующих примерах используется ffplay и FFmpeg инструментов.
· Наблюдайте за потоком по UDP с максимальной задержкой переупорядочения 0.5 секунды:
ffplay -max_delay 500000 -rtsp_transport udp rtsp: //server/video.mp4
· Смотрите поток, туннелируемый через HTTP:
ffplay -rtsp_transport http rtsp: //server/video.mp4
· Отправлять поток в реальном времени на сервер RTSP, чтобы его могли посмотреть другие:
ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp: //server/live.sdp
· Получать поток в реальном времени:
ffmpeg -rtsp_flags прослушать -i rtsp: //ownaddress/live.sdp
живица
Протокол объявления сеанса (RFC 2974). Технически это не обработчик протокола в
libavformat, это мультиплексор и демультиплексор. Он используется для сигнализации потоков RTP посредством
регулярное объявление SDP для потоков на отдельном порту.
Муксер
Синтаксис URL-адреса SAP, передаваемого мультиплексору:
sap: // [: ] [? ]
Пакеты RTP отправляются на назначение в порту порт, или на порт 5004, если порт не
указано. кредита представляет собой список, разделенный "&". Поддерживаются следующие варианты:
announce_addr =адрес
Укажите IP-адрес назначения для отправки объявлений. Если опущено,
объявления отправляются на обычно используемый адрес многоадресной рассылки объявлений SAP
224.2.127.254 (sap.mcast.net) или ff0e :: 2: 7ffe, если назначение это IPv6-адрес.
announce_port =порт
Укажите порт для отправки объявлений, по умолчанию 9875, если не указан.
ttl =время_жизни
Укажите время жизни для объявлений и пакетов RTP, по умолчанию 255.
same_port =0 | 1
Если установлено значение 1, отправлять все потоки RTP на одну и ту же пару портов. Если ноль (по умолчанию), все
потоки отправляются на уникальные порты, причем каждый поток на порту на 2 номера больше, чем
предыдущий. VLC / Live555 требует, чтобы это было установлено в 1, чтобы иметь возможность принимать поток.
Стек RTP в libavformat для приема требует, чтобы все потоки отправлялись по уникальному
порты.
Ниже приведены примеры командных строк.
Чтобы транслировать поток в локальной подсети для просмотра в VLC:
ffmpeg -re -i -f sap sap: //224.0.0.255? same_port = 1
Точно так же для просмотра в ffplay:
ffmpeg -re -i -f sap sap: //224.0.0.255
И для просмотра в ffplay, по IPv6:
ffmpeg -re -i -f sap sap: // [ff0e :: 1: 2: 3: 4]
Демультиплексор
Синтаксис URL-адреса SAP, передаваемого демультиплексору:
sap: // [ ] [: ]
адрес это адрес многоадресной рассылки для прослушивания объявлений, если он не указан, по умолчанию
224.2.127.254 (sap.mcast.net). порт порт, который прослушивается, 9875, если
опущено.
Демультиплексор прослушивает объявления по данному адресу и порту. Однажды
объявление получено, он пытается принять этот конкретный поток.
Ниже приведены примеры командных строк.
Чтобы воспроизвести первый поток, объявленный на обычном многоадресном адресе SAP:
ffplay sap: //
Чтобы воспроизвести первый поток, объявленный на одном из многоадресных IPv6-адресов SAP по умолчанию:
ffplay sap: // [ff0e :: 2: 7ffe]
SCTP
Протокол передачи управления потоком.
Допустимый синтаксис URL:
sctp: // : [? ]
Протокол допускает следующие варианты:
Слушать
Если установлено любое значение, прослушивать входящее соединение. Исходящее соединение осуществляется
по умолчанию.
max_streams
Установите максимальное количество потоков. По умолчанию ограничение не установлено.
сртп
Безопасный транспортный протокол в реальном времени.
Допустимые варианты:
srtp_in_suite
srtp_out_suite
Выберите наборы кодирования ввода и вывода.
Поддерживаемые значения:
AES_CM_128_HMAC_SHA1_80
SRTP_AES128_CM_HMAC_SHA1_80
AES_CM_128_HMAC_SHA1_32
SRTP_AES128_CM_HMAC_SHA1_32
srtp_in_params
srtp_out_params
Установите параметры кодирования ввода и вывода, которые выражаются в кодировке base64
представление двоичного блока. Первые 16 байтов этого двоичного блока используются как
мастер-ключ, следующие 14 байтов используются в качестве основной соли.
подфайл
Виртуально извлечь сегмент файла или другого потока. Базовый поток должен быть
доступный для поиска.
Допустимые варианты:
Начало
Начальное смещение извлеченного сегмента в байтах.
конец Конечное смещение извлеченного сегмента в байтах.
Примеры:
Извлеките главу из файла DVD VOB (начальный и конечный секторы, полученные извне, и
умножить на 2048):
подфайл ,, начало, 153391104, конец, 268142592 ,,: / media / dvd / VIDEO_TS / VTS_08_1.VOB
Воспроизвести файл AVI прямо из архива TAR:
подфайл`` начало, 183241728, конец, 366490624``: archive.tar
TCP
Протокол управления передачей.
Требуемый синтаксис для URL-адреса TCP:
tcp: // : [? ]
кредита содержит список опций формы, разделенных & ключ=волна.
Список поддерживаемых опций приводится ниже.
слушать =1 | 0
Слушайте входящее соединение. Значение по умолчанию - 0.
тайм-аут =микросекунд
Установить время ожидания ошибки при подъёме, выраженное в микросекундах.
Эта опция актуальна только в режиме чтения: если данные не поступили больше этого времени
интервал, поднимите ошибку.
listen_timeout =миллисекунды
Установите время ожидания прослушивания, выраженное в миллисекундах.
В следующем примере показано, как настроить прослушивающее TCP-соединение с FFmpeg, Которая является
затем доступ с ffplay:
ffmpeg -i -f tcp: // : ?Слушать
ffplay tcp: // :
TLS
Безопасность транспортного уровня (TLS) / Уровень защищенных сокетов (SSL)
Требуемый синтаксис для URL-адреса TLS / SSL:
tls: // : [? ]
Следующие параметры могут быть установлены через параметры командной строки (или в коде через "AVOption" s):
ca_файл, cafile =имя файла
Файл, содержащий корневые сертификаты центра сертификации (ЦС), которые следует рассматривать как доверенные. Если
связанная библиотека TLS содержит значение по умолчанию, которое может не указываться для
проверка на работу, но не все библиотеки и настройки имеют встроенные значения по умолчанию.
файл должен быть в формате OpenSSL PEM.
tls_verify =1 | 0
Если включено, попробуйте проверить однорангового узла, с которым мы общаемся. Обратите внимание, если вы используете
OpenSSL, в настоящее время это только гарантирует, что одноранговый сертификат подписан одним из
корневые сертификаты в базе данных CA, но это не подтверждает, что
сертификат фактически совпадает с именем хоста, к которому мы пытаемся подключиться. (С GnuTLS,
имя хоста также проверяется.)
По умолчанию это отключено, так как для этого требуется, чтобы база данных CA была предоставлена
вызывающий абонент во многих случаях.
файл_сертификата, сертификат =имя файла
Файл, содержащий сертификат для использования при рукопожатии с одноранговым узлом. (Когда
работая как сервер в режиме прослушивания, это чаще требуется одноранговым узлом, в то время как
только клиентские сертификаты требуются в определенных настройках.)
ключ_файл, ключ =имя файла
Файл, содержащий закрытый ключ для сертификата.
слушать =1 | 0
Если этот параметр включен, прослушивать подключения на указанном порту и брать на себя роль сервера в
рукопожатие вместо роли клиента.
Пример командных строк:
Чтобы создать сервер TLS / SSL, который обслуживает входной поток.
ffmpeg -i -f tls: // : ? слушать & cert = & ключ =
Чтобы воспроизвести поток с сервера TLS / SSL, используя ffplay:
ffplay tls: // :
UDP
Протокол пользовательских датаграмм.
Требуемый синтаксис для URL-адреса UDP:
UDP: // : [? ]
кредита содержит список опций формы, разделенных & ключ=волна.
Если в системе включена многопоточность, используется кольцевой буфер для хранения
входящие данные, что позволяет уменьшить потери данных из-за переполнения буфера сокета UDP.
Команда fifo_size и overrun_nonfatal параметры связаны с этим буфером.
Список поддерживаемых опций приводится ниже.
buffer_size =размер
Установите максимальный размер буфера сокета UDP в байтах. Используется для установки либо
размер буфера приема или отправки, в зависимости от того, для чего используется сокет. По умолчанию
64 КБ. Смотрите также fifo_size.
localport =порт
Переопределите локальный порт UDP для привязки.
localaddr =адр
Выберите локальный IP-адрес. Это полезно, например, если отправка многоадресной рассылки и хост имеет
несколько интерфейсов, где пользователь может выбрать интерфейс для отправки
указав IP-адрес этого интерфейса.
pkt_size =размер
Установите размер UDP-пакетов в байтах.
повторное использование =1 | 0
Явно разрешите или запретите повторное использование сокетов UDP.
ttl =время_жизни
Установите значение времени жизни (только для многоадресной рассылки).
подключить =1 | 0
Инициализируйте сокет UDP с помощью «connect ()». В этом случае адрес назначения
не может быть изменен с помощью ff_udp_set_remote_url позже. Если адрес назначения не
известно с самого начала, этот параметр также можно указать в ff_udp_set_remote_url. Этот
позволяет узнать адрес источника для пакетов с getsockname и делает
записывает return с помощью AVERROR (ECONNREFUSED), если получено сообщение «пункт назначения недоступен».
Для приема это дает преимущество приема пакетов только от указанного
одноранговый адрес / порт.
источники =адрес[,адрес]
Принимать пакеты, отправленные в группу многоадресной рассылки только с одного из указанных IP-адресов отправителя
адреса.
блок =адрес[,адрес]
Игнорировать пакеты, отправленные в группу многоадресной рассылки с указанных IP-адресов отправителя.
fifo_size =единиц
Установите размер кольцевого буфера приема UDP, выраженный как количество пакетов с размером
188 байт. Если не указано иное, по умолчанию используется 7 * 4096.
overrun_nonfatal =1 | 0
Выжить в случае приема UDP при циклическом переполнении буфера. Значение по умолчанию - 0.
тайм-аут =микросекунд
Установить время ожидания ошибки при подъёме, выраженное в микросекундах.
Эта опция актуальна только в режиме чтения: если данные не поступили больше этого времени
интервал, поднимите ошибку.
трансляция =1 | 0
Явно разрешите или запретите широковещательную рассылку UDP.
Обратите внимание, что трансляция может не работать должным образом в сетях, где есть широковещательный шторм.
защита.
Примеры
· Использовать FFmpeg для потоковой передачи по UDP на удаленную конечную точку:
ffmpeg -i -f UDP: // :
· Использовать FFmpeg для потоковой передачи в формате mpegts через UDP с использованием UDP-пакетов размером 188, используя
большой буфер ввода:
ffmpeg -i -f mpegts UDP: // : ? pkt_size = 188 & buffer_size = 65535
· Использовать FFmpeg для приема по UDP от удаленной конечной точки:
ffmpeg -i udp: // [ ]: ...
Юникс
Локальный сокет Unix
Требуемый синтаксис URL-адреса сокета Unix:
unix: //
Следующие параметры могут быть установлены через параметры командной строки (или в коде через "AVOption" s):
Тайм-аут
Тайм-аут в мс.
Слушать
Создайте сокет Unix в режиме прослушивания.
УСТРОЙСТВО ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Библиотека libavdevice предоставляет тот же интерфейс, что и libavformat. А именно вход
устройство рассматривается как демультиплексор, а устройство вывода - как мультиплексор, а интерфейс
и общие параметры устройства те же, что и в libavformat (см. ffmpeg-sizes
руководство по эксплуатации).
Кроме того, каждое устройство ввода или вывода может поддерживать так называемые частные параметры, которые
специфичен для этого компонента.
Параметры можно установить, указав -вариант ценностное в инструментах FFmpeg или установив
значение явно в параметрах "AVFormatContext" устройства или с помощью libavutil / opt.h API
для программного использования.
ВХОД УСТРОЙСТВА
Устройства ввода - это сконфигурированные элементы в FFmpeg, которые позволяют получить доступ к поступающим данным.
с мультимедийного устройства, подключенного к вашей системе.
Когда вы настраиваете сборку FFmpeg, все поддерживаемые устройства ввода включаются
дефолт. Вы можете перечислить все доступные, используя параметр конфигурации "--list-indevs".
Вы можете отключить все устройства ввода с помощью параметра конфигурации "--disable-indevs" и
выборочно включить устройство ввода с помощью параметра "--enable-indev ="ИНДЕВ", или вы можете
отключить конкретное устройство ввода с помощью опции "--disable-indev ="ИНДЕВ".
Параметр «-devices» инструментов ff * отображает список поддерживаемых устройств ввода.
Ниже приводится описание доступных в настоящее время устройств ввода.
альса
Устройство ввода ALSA (Advanced Linux Sound Architecture).
Чтобы включить это устройство ввода во время настройки, на вашем компьютере должен быть установлен libasound.
системы.
Это устройство позволяет осуществлять захват с устройства ALSA. Имя устройства для захвата должно быть
быть идентификатором карты ALSA.
Идентификатор ALSA имеет синтаксис:
hw: [, [, ]]
где DEV и СУБДЕВ компоненты не являются обязательными.
Три аргумента (по порядку: CARD,DEV,СУБДЕВ) укажите номер карты или идентификатор, устройство
номер и номер подустройства (-1 означает любое).
Чтобы увидеть список карт, которые в настоящее время распознаются вашей системой, проверьте файлы
/ proc / asound / карты и / proc / asound / устройства.
Например, чтобы захватить с помощью FFmpeg с устройства ALSA с идентификатором карты 0, вы можете запустить
команда:
ffmpeg -f alsa -i hw: 0 alsaout.wav
Для получения дополнительной информации см .:http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>
Возможности
частота дискретизации
Установите частоту дискретизации в Гц. По умолчанию 48000.
каналы
Установите количество каналов. По умолчанию 2.
основание
Устройство ввода AVFoundation.
AVFoundation - это рекомендуемый Apple фреймворк для потоковой передачи в OSX> =
10.7, как и на iOS. Старая структура QTKit была помечена как устаревшая, так как OSX
версия 10.7.
Имя входного файла должно быть указано в следующем синтаксисе:
-i "[[ВИДЕО]: [АУДИО]]"
Первая запись выбирает видеовход, а вторая - аудиовход. В
поток должен быть указан именем устройства или индексом устройства, как показано устройством
список. В качестве альтернативы, устройство ввода видео и / или звука можно выбрать по индексу с помощью
B <-video_device_index E ИНДЕКС >
и / или
B <-audio_device_index E ИНДЕКС >
, переопределяя любое имя устройства или индекс, указанный во входном имени файла.
Все доступные устройства можно перечислить с помощью -list_devices правда, список всех устройств
названия и соответствующие индексы.
Есть два псевдонима имени устройства:
"По умолчанию"
Выберите устройство AVFoundation по умолчанию соответствующего типа.
"никто"
Не записывайте соответствующий тип носителя. Это эквивалентно указанию пустого
имя или индекс устройства.
Возможности
AVFoundation поддерживает следующие параметры:
-list_devices
Если установлено значение true, отображается список всех доступных устройств ввода с указанием всех устройств.
имена и индексы.
-video_device_index
Укажите видеоустройство по его индексу. Переопределяет все, что указано во входном имени файла.
-audio_device_index
Укажите аудиоустройство по его индексу. Переопределяет все, что указано во входном имени файла.
-pixel_format
Попросите видеоустройство использовать определенный формат пикселей. Если указанный формат
не поддерживается, приводится список доступных форматов, и первый в этом списке
вместо этого. Доступные форматы пикселей: monob, rgb555be, rgb555le, rgb565be,
rgb565le, rgb24, bgr24, 0rgb, bgr0, 0bgr, rgb0,
бгр48бэ, уйвы422, юва444п, юва444п16ле, юв444п, юв422п16, юв422п10, юв444п10,
yuv420p, nv12, yuyv422, серый "
-частота кадров
Установите частоту кадров захвата. По умолчанию "ntsc", что соответствует частоте кадров
«30000/1001».
-размер видео
Установите размер видеокадра.
-capture_cursor
Захватите указатель мыши. По умолчанию 0.
-capture_mouse_clicks
Захватывайте щелчки мыши на экране. По умолчанию 0.
Примеры
· Распечатайте список поддерживаемых AVFoundation устройств и выйдите:
$ ffmpeg -f avfoundation -list_devices истина -i ""
· Записывать видео с видеоустройства 0 и аудио с аудиоустройства 0 на out.avi:
$ ffmpeg -f avfoundation -i "0: 0" out.avi
· Записывать видео с видеоустройства 2 и аудио с аудиоустройства 1 на out.avi:
$ ffmpeg -f avfoundation -video_device_index 2 -i ": 1" out.avi
· Запишите видео с системного видеоустройства по умолчанию с использованием формата пикселей bgr0 и выполните
не записывать звук в out.avi:
$ ffmpeg -f avfoundation -pixel_format bgr0 -i "по умолчанию: нет" out.avi
бктр
Устройство видеоввода BSD.
Возможности
Частота кадров
Установите частоту кадров.
размер видео
Установите размер видеокадра. По умолчанию "vga".
стандарт
Доступные значения:
приятель
нтск
секэм
Paln
ладонь
нцц
DeckLink
Устройство ввода decklink обеспечивает возможности захвата для устройств Blackmagic DeckLink.
Чтобы включить это устройство ввода, вам потребуется Blackmagic DeckLink SDK и
настроить с соответствующими флагами "--extra-cflags" и "--extra-ldflags". В Windows вы
нужно запустить файлы IDL через Widl.
DeckLink очень разборчив в отношении поддерживаемых форматов. Формат пикселей - uyvy422 или v210,
частота кадров и размер видео должны быть определены для вашего устройства с -list_formats 1. Аудио
частота дискретизации всегда составляет 48 кГц, а количество каналов может быть 2, 8 или 16.
Возможности
список_устройств
Если установлено на правда, распечатайте список устройств и выйдите. По умолчанию ложный.
список_форматов
Если установлено на правда, распечатайте список поддерживаемых форматов и выйдите. По умолчанию ложный.
бм_в210
Если установлено на 1, видео захватывается в 10-битном формате v210 вместо uyvy422. Не все Blackmagic
устройства поддерживают эту опцию.
Примеры
· Список устройств ввода:
ffmpeg -f decklink -list_devices 1 -i пустышка
· Список поддерживаемых форматов:
ffmpeg -f decklink -list_formats 1 -i 'Интенсивность Pro'
· Захват видеоклипа в разрешении 1080i50 (формат 11):
ffmpeg -f decklink -i 'Intensity Pro @ 11' -acodec copy -vcodec copy output.avi
· Захват видеоклипа в разрешении 1080i50 10 бит:
ffmpeg -bm_v210 1 -f decklink -i 'UltraStudio Mini Recorder @ 11' -acodec copy -vcodec copy output.avi
шоу
Устройство ввода Windows DirectShow.
Поддержка DirectShow включается, когда FFmpeg собран с проектом mingw-w64. В настоящее время
поддерживаются только аудио и видео устройства.
Несколько устройств могут быть открыты как отдельные входы, но они также могут быть открыты на одном и том же
ввод, который должен улучшить синхронизацию между ними.
Имя входа должно быть в формате:
знак равно [: знак равно ]
в котором ТИП может быть аудио or XNUMX году и ИМЯ это имя устройства или альтернатива
имя..
Возможности
Если параметры не указаны, используются настройки устройства по умолчанию. Если устройство не
поддержите запрошенные варианты, он не откроется.
размер видео
Установите размер видео в захваченном видео.
Частота кадров
Установите частоту кадров в захваченном видео.
частота дискретизации
Установите частоту дискретизации (в Гц) захваченного звука.
размер образца
Установите размер выборки (в битах) захваченного звука.
каналы
Установите количество каналов в захваченном аудио.
список_устройств
Если установлено на правда, распечатайте список устройств и выйдите.
list_options
Если установлено на правда, распечатайте список опций выбранного устройства и выйдите.
video_device_number
Установите номер видеоустройства для устройств с таким же именем (начинается с 0, по умолчанию 0).
audio_device_number
Установите номер аудиоустройства для устройств с таким же именем (начинается с 0, по умолчанию 0).
формат_пикселя
Выберите формат пикселей, который будет использоваться DirectShow. Это можно установить только тогда, когда видео
кодек не установлен или не установлен на rawvideo.
audio_buffer_size
Установите размер буфера аудиоустройства в миллисекундах (что может напрямую повлиять на задержку,
в зависимости от устройства). По умолчанию используется размер буфера аудиоустройства по умолчанию.
(обычно кратное 500 мс). Установка слишком низкого значения может ухудшить
представление. Смотрите также
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v = против 85) .aspx>
video_pin_name
Выберите значок захвата видео для использования по имени или альтернативному имени.
audio_pin_name
Выберите значок захвата звука для использования по имени или альтернативному имени.
crossbar_video_input_pin_number
Выберите номер пина видеовхода для устройства кроссбара. Это будет направлено на перекладину
выходной контакт видеодекодера устройства. Обратите внимание, что изменение этого значения может повлиять на будущее
вызовы (устанавливает новое значение по умолчанию), пока не произойдет перезагрузка системы.
crossbar_audio_input_pin_number
Выберите номер контакта аудиовхода для перекрестного устройства. Это будет направлено на перекладину
выходной контакт аудиодекодера устройства. Обратите внимание, что изменение этого значения может повлиять на будущее
вызовы (устанавливает новое значение по умолчанию), пока не произойдет перезагрузка системы.
show_video_device_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им изменять свойства и конфигурации видеофильтров вручную. Примечание
что для устройств с перекладинами время от времени может потребоваться корректировка значений в этом диалоговом окне, чтобы
переключение между PAL (25 кадров в секунду) и NTSC (29.97) входной частотой кадров, размерами, чересстрочной разверткой,
и т. д. Изменение этих значений может включить различные частоты сканирования / частоты кадров и избежать
зеленые полосы внизу, мерцающие строки развертки и т. д. Обратите внимание, что на некоторых устройствах
изменение этих свойств также может повлиять на будущие вызовы (устанавливает новые значения по умолчанию) до тех пор, пока
происходит перезагрузка системы.
show_audio_device_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им изменять свойства и конфигурации аудиофильтров вручную.
show_video_crossbar_connection_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им вручную изменять разводку выводов перекладины при открытии видеоустройства.
show_audio_crossbar_connection_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им вручную изменять маршрутизацию контактов перекладины при открытии аудиоустройства.
show_analog_tv_tuner_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им вручную изменять телеканалы и частоты.
show_analog_tv_tuner_audio_dialog
Если установлено на правдаперед началом захвата откройте диалоговое окно для конечного пользователя,
позволяя им вручную изменять звук ТВ (например, моно или стерео, язык A, B или C).
audio_device_load
Загрузите устройство с фильтром захвата звука из файла вместо поиска по имени. Это может
загрузить и дополнительные параметры, если фильтр поддерживает сериализацию своих
свойства к. Чтобы использовать это, необходимо указать источник аудиозахвата, но его можно
ничего, даже фальшивого.
audio_device_save
Сохраните используемое в настоящее время устройство фильтра захвата звука и его параметры (если фильтр
поддерживает его) в файл. Если файл с таким же именем существует, он будет перезаписан.
video_device_load
Загрузите устройство с фильтром видеозахвата из файла вместо поиска по имени. Это может
загрузить и дополнительные параметры, если фильтр поддерживает сериализацию своих
свойства к. Чтобы использовать это, необходимо указать источник видеозахвата, но его можно
ничего, даже фальшивого.
video_device_save
Сохраните текущее используемое устройство фильтра захвата видео и его параметры (если фильтр
поддерживает его) в файл. Если файл с таким же именем существует, он будет перезаписан.
Примеры
· Распечатайте список поддерживаемых DirectShow устройств и выйдите:
$ ffmpeg -list_devices true -f dshow -i фиктивный
· Открыть видеоустройство камера:
$ ffmpeg -f dshow -i video = "Камера"
· Откройте второе видеоустройство с именем камера:
$ ffmpeg -f dshow -video_device_number 1 -i video = "Камера"
· Открыть видеоустройство камера и аудиоустройство Микрофон:
$ ffmpeg -f dshow -i video = "Камера": audio = "Микрофон"
· Распечатать список поддерживаемых опций в выбранном устройстве и выйти:
$ ffmpeg -list_options true -f dshow -i video = "Камера"
· Укажите имена контактов для захвата по имени или альтернативному имени, укажите альтернативное устройство
Название:
$ ffmpeg -f dshow -audio_pin_name "Audio Out" -video_pin_name 2 -i video=video="@device_pnp_\\?\pci#ven_1a0a&dev_6200&subsys_62021461&rev_01#4&e2c7dd6&0&00e1#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{ca465100-deb0-4d59-818f-8c477184adf6}":audio="Microphone"
· Настроить перекладину устройства, указав контакты перекладины, позволить пользователю настраивать видео
захватить свойства при запуске:
$ ffmpeg -f dshow -show_video_device_dialog true -crossbar_video_input_pin_number 0
-crossbar_audio_input_pin_number 3 -i video = "Аналоговый захват AVerMedia BDA": audio = "Аналоговый захват AVerMedia BDA"
dv1394
Устройство ввода Linux DV 1394.
Возможности
Частота кадров
Установите частоту кадров. По умолчанию 25.
стандарт
Доступные значения:
приятель
нтск
Значение по умолчанию - «ntsc».
фбдев
Устройство ввода фреймбуфера Linux.
Буфер кадра Linux - это графический аппаратно-независимый слой абстракции для отображения графики.
на мониторе компьютера, обычно на консоли. Доступ к нему осуществляется через файловое устройство
узел, обычно / dev / fb0.
Для получения более подробной информации прочтите файл Documentation / fb / framebuffer.txt, включенный в
дерево исходных текстов Linux.
Смотрите такжеhttp://linux-fbdev.sourceforge.net/> и фбсет(1).
Для записи с устройства фреймбуфера / dev / fb0 FFmpeg:
ffmpeg -f fbdev -framerate 10 -i / dev / fb0 out.avi
Вы можете сделать один снимок экрана с помощью команды:
ffmpeg -f fbdev -framerate 1 -i / dev / fb0 -frames: v 1 screenshot.jpeg
Возможности
Частота кадров
Установите частоту кадров. По умолчанию 25.
гдиграб
Устройство захвата экрана на базе Win32 GDI.
Это устройство позволяет захватывать область дисплея в Windows.
Есть два варианта ввода имени файла:
компьютера
or
title =
Первый вариант захватит весь рабочий стол или фиксированную область рабочего стола. В
второй вариант вместо этого захватит содержимое одного окна, независимо от его
положение на экране.
Например, чтобы захватить весь рабочий стол с помощью FFmpeg:
ffmpeg -f gdigrab -framerate 6 -i рабочий стол out.mpg
Возьмите область 640 x 480 в позиции "10,20":
ffmpeg -f gdigrab -частота кадров 6 -offset_x 10 -offset_y 20 -video_size vga -i рабочий стол out.mpg
Возьмите содержимое окна под названием «Калькулятор».
ffmpeg -f gdigrab -framerate 6 -i title = Калькулятор out.mpg
Возможности
draw_mouse
Укажите, нужно ли рисовать указатель мыши. Используйте значение 0, чтобы не рисовать указатель.
Значение по умолчанию 1.
Частота кадров
Установите частоту кадров захвата. Значение по умолчанию - «ntsc», что соответствует частоте кадров
«30000/1001».
показать_регион
Показать захваченную область на экране.
If показать_регион указан с 1, то область захвата будет указана на
экран. С помощью этой опции легко узнать, что берется, если только часть
экрана захватывается.
Обратите внимание, что показать_регион несовместимо с захватом содержимого одного окна.
Например:
ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i Desktop out.mpg
размер видео
Установите размер видеокадра. По умолчанию снимается весь экран, если компьютера is
выбрано, или полный размер окна, если title = window_title .
offset_x
При захвате региона с размер видео, установите расстояние от левого края
экран или рабочий стол.
Обратите внимание, что смещение рассчитывается от верхнего левого угла основного монитора на
Windows. Если у вас есть монитор, расположенный слева от основного монитора, вы
нужно будет использовать отрицательный offset_x значение, чтобы переместить регион на этот монитор.
offset_y
При захвате региона с размер видео, установите расстояние от верхнего края
экран или рабочий стол.
Обратите внимание, что смещение рассчитывается от верхнего левого угла основного монитора на
Windows. Если у вас есть монитор, расположенный над основным монитором, вам необходимо
использовать отрицательный offset_y значение, чтобы переместить регион на этот монитор.
iec61883
Устройство ввода FireWire DV / HDV с использованием libiec61883.
Чтобы включить это устройство ввода, вам необходимо установить libiec61883, libraw1394 и libavc1394 на
ваша система. Используйте параметр конфигурации --enable-libiec61883 для компиляции с устройством.
включен.
Устройство захвата iec61883 поддерживает захват с видеоустройства, подключенного через IEEE1394.
(FireWire) с использованием libiec61883 и нового стека Linux FireWire (juju). Это по умолчанию
Метод ввода DV / HDV в ядре Linux 2.6.37 и новее, поскольку старый стек FireWire был
удален.
Укажите порт FireWire, который будет использоваться в качестве входного файла, или «авто», чтобы выбрать первый порт.
связанный.
Возможности
тип DV
Отменить автоматическое определение DV / HDV. Это следует использовать только в том случае, если автоматическое обнаружение не
работать, или если следует запретить использование другого типа устройства. Лечение DV
устройство как HDV (или наоборот) не будет работать и приведет к неопределенному поведению. В
ценности автоматический, dv и HDV поддерживаются.
dvbuffer
Установите максимальный размер буфера для входящих данных в кадрах. Для DV это точный
ценить. Для HDV это не точный кадр, поскольку HDV не имеет фиксированного размера кадра.
dvguid
Выберите устройство захвата, указав его GUID. Захват будет производиться только
с указанного устройства и завершается ошибкой, если не найдено устройство с данным GUID. Это
полезно для выбора входа, если одновременно подключено несколько устройств. Смотреть
в / sys / bus / firewire / devices, чтобы узнать идентификаторы GUID.
Примеры
· Возьмите и покажите вход устройства FireWire DV / HDV.
ffplay -f iec61883 -i авто
· Захватите и запишите вход устройства FireWire DV / HDV, используя буфер пакетов 100000
пакеты, если источником является HDV.
ffmpeg -f iec61883 -i auto -hdvbuffer 100000 выход.миль на галлон
домкрат
Устройство ввода JACK.
Чтобы включить это устройство ввода во время настройки, на вашем компьютере должен быть установлен libjack.
системы.
Устройство ввода JACK создает один или несколько клиентов JACK с возможностью записи, по одному для каждого аудиоканала,
с именем имя клиента:Вход_N, Где имя клиента это имя, указанное в приложении,
и N это номер, который идентифицирует канал. Каждый доступный для записи клиент отправит
полученные данные на устройство ввода FFmpeg.
После того, как вы создали один или несколько клиентов, доступных для чтения JACK, вам необходимо подключить их к одному
или несколько клиентов JACK с возможностью записи.
Для подключения или отключения клиентов JACK вы можете использовать jack_connect и jack_disconnect
программ, или сделать это через графический интерфейс, например, с qjackctl.
Чтобы вывести список клиентов JACK и их свойств, вы можете вызвать команду jack_lsp.
Далее следует пример, который показывает, как захватить клиент, доступный для чтения JACK, с помощью FFmpeg.
# Создать доступного для записи клиента JACK с именем "ffmpeg".
$ ffmpeg -f jack -i ffmpeg -y out.wav
# Запустить образец читаемого клиента jack_metro.
$ jack_metro -b 120 -d 0.2 -f 4000
# Список текущих клиентов JACK.
$ jack_lsp -c
система: capture_1
система: capture_2
система: воспроизведение_1
система: воспроизведение_2
ffmpeg: input_1
метро: 120_б / мин
# Подключить метро к клиенту с возможностью записи ffmpeg.
$ jack_connect metro: 120_bpm ffmpeg: input_1
Для получения дополнительной информации прочтите:http://jackaudio.org/>
Возможности
каналы
Установите количество каналов. По умолчанию 2.
лавфи
Виртуальное устройство ввода Libavfilter.
Это устройство ввода считывает данные с открытых выходных площадок фильтрующего графа libavfilter.
Для каждого открытого вывода filtergraph устройство ввода создаст соответствующий поток
который отображается на сгенерированный вывод. В настоящее время поддерживаются только видеоданные. В
filtergraph указывается с помощью опции график.
Возможности
график
Укажите граф фильтра для использования в качестве входных данных. Каждый открытый видеовыход должен быть помечен значком
уникальная строка формы "out"N", где N это число, начинающееся с 0, соответствующее
сопоставленный входной поток, созданный устройством. Первый немаркированный вывод:
автоматически назначается метке "out0", но необходимо указать все остальные
явно.
Суффикс "+ subcc" можно добавить к метке вывода, чтобы создать дополнительный поток с
пакеты с субтитрами, прикрепленные к этому выходу (экспериментально; только для EIA-608 /
CEA-708 на данный момент). Потоки subcc создаются после всех обычных потоков в
порядок соответствующего потока. Например, если есть "out19 + subcc",
"out7 + subcc" и до "out42" поток №43 является subcc для потока №7 и потока №44.
является подпрограммой для потока №19.
Если не указано, по умолчанию используется имя файла, указанное для устройства ввода.
граф_файл
Задайте имя файла графа фильтра, которое будет считываться и отправляться другим фильтрам. Синтаксис
графа фильтра совпадает с указанным опцией график.
дампграф
Выгрузить график в stderr.
Примеры
· Создайте цветной видеопоток и воспроизведите его с помощью ffplay:
ffplay -f lavfi -graph "color = c = pink [out0]" манекен
· Как в предыдущем примере, но используйте имя файла для указания описания графика, и
опустите метку "out0":
ffplay -f lavfi color = c = розовый
· Создайте три разных источника видео с фильтрацией и воспроизведите их:
ffplay -f lavfi -graph "testsrc [out0]; testsrc, hflip [out1]; testsrc, negate [out2]" test3
· Прочтите аудиопоток из файла с помощью источника amovie и воспроизведите его с помощью ffplay:
ffplay -f lavfi "amovie = test.wav"
· Прочтите аудиопоток и видеопоток и воспроизведите их с помощью ffplay:
ffplay -f lavfi "фильм = test.avi [out0]; amovie = test.wav [out1]"
· Выгрузить декодированные кадры в изображения и скрытые подписи в файл (экспериментально):
ffmpeg -f lavfi -i "movie = test.ts [out0 + subcc]" -map v frame% 08d.png -map s -c copy -f rawvideo subcc.bin
libcdio
Устройство ввода аудио-CD на основе libcdio.
Чтобы включить это устройство ввода во время настройки, вам необходимо установить libcdio на вашем компьютере.
система. Для этого требуется параметр конфигурации --enable-libcdio.
Это устройство позволяет воспроизводить и скачивать аудио-компакт-диски.
Например, чтобы скопировать с помощью FFmpeg весь аудио-компакт-диск в / dev / sr0, вы можете запустить команду:
ffmpeg -f libcdio -i / dev / sr0 cd.wav
Возможности
скорость
Установите скорость чтения диска. Значение по умолчанию - 0.
Скорость указана в единицах скорости CD-ROM. Скорость выставляется через libcdio
Функция "cdio_cddap_speed_set". На многих приводах компакт-дисков указание слишком большого значения
приведет к использованию максимальной скорости.
паранойя_режим
Установите флаги режима восстановления паранойи. Принимает одно из следующих значений:
запрещать
проверить
перекрытие
Neverskip
полный
Значение по умолчанию запрещать.
Для получения дополнительной информации о доступных режимах восстановления обратитесь к проекту paranoia.
документация.
libdc1394
Устройство ввода IIDC1394, основанное на libdc1394 и libraw1394.
Требуется параметр конфигурации --enable-libdc1394.
открытый
Устройство ввода OpenAL обеспечивает захват звука во всех системах с работающим OpenAL 1.1.
реализации.
Чтобы включить это устройство ввода во время настройки, вам потребуются заголовки и библиотеки OpenAL.
установлен в вашей системе, и вам необходимо настроить FFmpeg с помощью "--enable-openal".
Заголовки и библиотеки OpenAL должны быть предоставлены как часть вашей реализации OpenAL, или
в качестве дополнительной загрузки (SDK). В зависимости от вашей установки вам может потребоваться указать
дополнительные флаги через "--extra-cflags" и "--extra-ldflags" для разрешения сборки
система для поиска заголовков и библиотек OpenAL.
Ниже приводится неполный список реализаций OpenAL:
творческий
Официальная реализация Windows, обеспечивающая аппаратное ускорение с поддерживаемыми
резервное копирование устройств и программного обеспечения. Видетьhttp://openal.org/>.
OpenAL мягкая
Переносимая программная реализация с открытым исходным кодом (LGPL). Включает бэкенды для большинства
общие звуковые API в операционных системах Windows, Linux, Solaris и BSD. Видеть
<http://kcat.strangesoft.net/openal.html>.
Apple
OpenAL является частью Core Audio, официального интерфейса Mac OS X Audio. Видеть
<http://developer.apple.com/technologies/mac/audio-and-video.html>
Это устройство позволяет осуществлять захват с устройства ввода звука, обрабатываемого через OpenAL.
Вам необходимо указать имя устройства для захвата в указанном имени файла. Если
пустая строка, устройство автоматически выберет устройство по умолчанию. Вы можете
получить список поддерживаемых устройств с помощью опции список_устройств.
Возможности
каналы
Установите количество каналов в захваченном аудио. Только ценности 1 (монофонический) и 2
(стерео) в настоящее время поддерживаются. По умолчанию 2.
размер образца
Установите размер выборки (в битах) захваченного звука. Только ценности 8 и 16
в настоящее время поддерживается. По умолчанию 16.
частота дискретизации
Установите частоту дискретизации (в Гц) захваченного звука. По умолчанию 44.1k.
список_устройств
Если установлено на правда, распечатайте список устройств и выйдите. По умолчанию ложный.
Примеры
Распечатайте список поддерживаемых OpenAL устройств и выйдите:
$ ffmpeg -list_devices истина -f openal -i фиктивный out.ogg
Захват с устройства OpenAL ДР-БТ101 с помощью PulseAudio:
$ ffmpeg -f openal -i 'DR-BT101 через PulseAudio' out.ogg
Захват с устройства по умолчанию (обратите внимание на пустую строку '' в качестве имени файла):
$ ffmpeg -f openal -i '' out.ogg
Захват с двух устройств одновременно, запись в два разных файла в одном и том же
FFmpeg команда:
$ ffmpeg -f openal -i 'DR-BT101 через PulseAudio' out1.ogg -f openal -i 'ALSA Default' out2.ogg
Примечание: не все реализации OpenAL поддерживают несколько одновременных захватов - попробуйте
последняя версия OpenAL Soft, если вышеуказанное не работает.
нам
Откройте устройство ввода звуковой системы.
Имя файла, передаваемое устройству ввода, - это узел устройства, представляющий вход OSS.
устройство, и обычно устанавливается на / dev / dsp.
Например, чтобы взять из / dev / dsp через FFmpeg используйте команду:
ffmpeg -f oss -i / dev / dsp /tmp/oss.wav
Для получения дополнительной информации о OSS см .:http://manuals.opensound.com/usersguide/dsp.html>
Возможности
частота дискретизации
Установите частоту дискретизации в Гц. По умолчанию 48000.
каналы
Установите количество каналов. По умолчанию 2.
импульс
Устройство ввода PulseAudio.
Чтобы включить это устройство вывода, вам необходимо настроить FFmpeg с помощью "--enable-libpulse".
Имя файла, передаваемое устройству ввода, - это исходное устройство или строка «по умолчанию».
Чтобы перечислить исходные устройства PulseAudio и их свойства, вы можете вызвать команду
пактл список источники.
Более подробную информацию о PulseAudio можно найти наhttp://www.pulseaudio.org>.
Возможности
сервер
Подключитесь к определенному серверу PulseAudio, указанному по IP-адресу. Сервер по умолчанию
используется, если не указан.
имя
Укажите имя приложения, которое PulseAudio будет использовать при отображении активных клиентов, с помощью
по умолчанию это строка «LIBAVFORMAT_IDENT».
имя_потока
Укажите имя потока, которое PulseAudio будет использовать при отображении активных потоков, по умолчанию
это «рекорд».
частота дискретизации
Укажите частоту дискретизации в Гц, по умолчанию используется 48 кГц.
каналы
Укажите используемые каналы, по умолчанию установлено 2 (стерео).
размер кадра
Укажите количество байтов в кадре, по умолчанию оно равно 1024.
фрагмент_размер
Укажите минимальный фрагмент буферизации в PulseAudio, это повлияет на звук
задержка. По умолчанию он не установлен.
настенные часы
Установите начальный PTS, используя текущее время. По умолчанию 1.
Примеры
Запишите поток с устройства по умолчанию:
ffmpeg -f pulse -i по умолчанию /tmp/pulse.wav
qtkit
Устройство ввода QTKit.
Имя файла, переданное в качестве входных данных, анализируется и содержит либо имя устройства, либо индекс. В
индекс устройства также можно задать с помощью -video_device_index. Указанный индекс устройства будет
переопределить любое заданное имя устройства. Если желаемое устройство состоит только из цифр, используйте
-video_device_index для его идентификации. Устройство по умолчанию будет выбрано, если пустая строка
или дается имя устройства "по умолчанию". Доступные устройства можно перечислить с помощью
-список_устройств.
ffmpeg -f qtkit -i "0" out.mpg
ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg
ffmpeg -f qtkit -i "по умолчанию" out.mpg
ffmpeg -f qtkit -list_devices истина -i ""
Возможности
частота кадров
Установите частоту кадров. По умолчанию 30.
список_устройств
Если установлено значение «true», распечатайте список устройств и выйдите. По умолчанию "ложь".
video_device_index
Выберите видеоустройство по индексу для устройств с таким же именем (начинается с 0).
Sndio
устройство ввода sndio.
Чтобы включить это устройство ввода во время настройки, вам необходимо установить libsndio на вашем компьютере.
системы.
Имя файла, предоставляемого устройству ввода, - это узел устройства, представляющий sndio.
устройство ввода и обычно устанавливается на / dev / audio0.
Например, чтобы взять из / dev / audio0 через FFmpeg используйте команду:
ffmpeg -f sndio -i / dev / audio0 /tmp/oss.wav
Возможности
частота дискретизации
Установите частоту дискретизации в Гц. По умолчанию 48000.
каналы
Установите количество каналов. По умолчанию 2.
видео4linux2, v4l2
Видеоустройство ввода Video4Linux2.
«v4l2» может использоваться как псевдоним для «video4linux2».
Если FFmpeg собран с поддержкой v4l-utils (с помощью параметра "--enable-libv4l2",
option), его можно использовать с опцией устройства ввода "-use_libv4l2".
Имя захватываемого устройства - это узел файлового устройства, обычно системы Linux имеют тенденцию
автоматически создавать такие узлы, когда устройство (например, веб-камера USB) подключено к
система, и имеет название вида / dev / videoN, Где N это число, связанное с
устройства.
Устройства Video4Linux2 обычно поддерживают ограниченный набор ширинаxвысота размеры и частота кадров.
Вы можете проверить, какие из них поддерживаются, используя -list_formats ВСЕ для устройств Video4Linux2. Некоторые
устройства, такие как ТВ-карты, поддерживают один или несколько стандартов. Можно перечислить все
поддерживаемые стандарты с использованием -list_standards ВСЕ.
Временная база для отметок времени составляет 1 микросекунду. В зависимости от версии ядра и
конфигурации, отметки времени могут быть получены из часов реального времени (происхождение в Unix
Эпоха) или монотонных часов (происхождение обычно во время загрузки, не зависит от NTP или ручного управления).
меняет на часы). В -временные метки ABS or -TS ABS опция может использоваться для принудительного
преобразование в часы реального времени.
Некоторые примеры использования устройства video4linux2 с FFmpeg и ffplay:
· Список поддерживаемых форматов для устройства video4linux2:
ffplay -f video4linux2 -list_formats все / dev / video0
· Возьмите и покажите ввод устройства video4linux2:
ffplay -f video4linux2 -framerate 30 -video_size hd720 / dev / video0
· Захватите и запишите ввод устройства video4linux2, оставив частоту кадров и размер как
ранее установлено:
ffmpeg -f video4linux2 -input_format mjpeg -i / dev / video0 out.mpeg
Для получения дополнительной информации о Video4Linux, проверьтеhttp://linuxtv.org/>.
Возможности
стандарт
Установите стандарт. Должно быть названием поддерживаемого стандарта. Чтобы получить список
поддерживаемые стандарты, используйте список_стандартов опцию.
канал
Установите номер входного канала. По умолчанию -1, что означает использование ранее выбранного
канал.
размер видео
Установите размер видеокадра. Аргумент должен быть строкой в форме ШИРИНАxВЫСОТА или
действительное сокращение размера.
формат_пикселя
Выберите формат пикселей (действительно только для необработанного видеовхода).
входной_формат
Установите предпочтительный формат пикселей (для необработанного видео) или имя кодека. Эта опция позволяет
один для выбора формата ввода, если их несколько.
Частота кадров
Установите предпочтительную частоту кадров видео.
список_форматов
Перечислите доступные форматы (поддерживаемые форматы пикселей, кодеки и размеры кадров) и выйдите.
Доступные значения:
ВСЕ Показать все доступные форматы (сжатые и несжатые).
сырье Показывать только сырые видео (несжатые) форматы.
сжатый
Показывать только сжатые форматы.
список_стандартов
Перечислите поддерживаемые стандарты и выйдите.
Доступные значения:
ВСЕ Показать все поддерживаемые стандарты.
отметки времени, ts
Установите тип временных меток для захваченных кадров.
Доступные значения:
по умолчанию
Используйте метки времени из ядра.
ABS Используйте абсолютные отметки времени (настенные часы).
моно2абс
Принудительное преобразование из монотонных в абсолютные метки времени.
Значение по умолчанию - «по умолчанию».
use_libv4l2
Используйте функции преобразования libv4l2 (v4l-utils). По умолчанию 0.
vfwcap
Устройство ввода VfW (видео для Windows) захвата.
Имя файла, переданное в качестве входных данных, представляет собой номер драйвера захвата в диапазоне от 0 до 9. Вы можете
используйте «список» в качестве имени файла, чтобы распечатать список драйверов. Любое другое имя файла будет интерпретировано
как номер устройства 0.
Возможности
размер видео
Установите размер видеокадра.
Частота кадров
Установите частоту кадров захвата. Значение по умолчанию - «ntsc», что соответствует частоте кадров
«30000/1001».
x11захват
Устройство ввода видео X11.
Чтобы включить это устройство ввода во время настройки, в вашей системе должна быть установлена библиотека libxcb.
Он будет автоматически обнаружен во время настройки.
В качестве альтернативы параметр конфигурации --enable-x11grab существует для старых пользователей Xlib.
Это устройство позволяет захватывать область дисплея X11.
Имя файла, переданное в качестве входных данных, имеет синтаксис:
[ ]: . [+ , ]
хоста:display_number.номер_экрана указывает отображаемое имя X11 экрана, который нужно захватить
из. хоста может быть опущено, по умолчанию используется "localhost". Переменная окружения
ДИСПЛЕЙ содержит отображаемое имя по умолчанию.
x_offset и y_offset укажите смещения захваченной области относительно левого верхнего угла
граница экрана X11. По умолчанию они равны 0.
Проверьте документацию X11 (например, человек X) для получения более подробной информации.
Использовать xdpyinfo программа для получения базовой информации о свойствах вашего X11
отображение (например, grep для «имени» или «размеров»).
Например, чтобы взять из : 0.0 через FFmpeg:
ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 out.mpg
Захватите в позиции «10,20»:
ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg
Возможности
draw_mouse
Укажите, нужно ли рисовать указатель мыши. Значение 0 указывает, что
указатель. Значение по умолчанию - 1.
Follow_mouse
Сделайте так, чтобы захваченная область следовала за курсором мыши. Аргумент может быть "центрированным" или числом
пикселей PIXELS.
Если указано "по центру", область захвата следует за указателем мыши.
и держит указатель в центре области; в противном случае область следует только тогда, когда
указатель мыши достигает PIXELS (больше нуля) до края области.
Например:
ffmpeg -f x11grab -follow_mouse по центру -framerate 25 -video_size cif -i: 0.0 out.mpg
Чтобы следовать только тогда, когда указатель мыши достигает края в пределах 100 пикселей:
ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i: 0.0 out.mpg
Частота кадров
Установите частоту кадров захвата. Значение по умолчанию - «ntsc», что соответствует частоте кадров
«30000/1001».
показать_регион
Показать захваченную область на экране.
If показать_регион указан с 1, то область захвата будет указана на
экран. С помощью этой опции легко узнать, что берется, если только часть
экрана захватывается.
область_граница
Установите толщину границы области, если -show_region 1 используется. Диапазон от 1 до 128 и
по умолчанию - 3 (только x11grab на базе XCB).
Например:
ffmpeg -f x11grab -show_region 1 -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg
В Follow_mouse:
ffmpeg -f x11grab -follow_mouse по центру -show_region 1 -framerate 25 -video_size cif -i: 0.0 out.mpg
размер видео
Установите размер видеокадра. Значение по умолчанию - «vga».
use_shm
Используйте расширение MIT-SHM для общей памяти. Значение по умолчанию - 1. Может потребоваться
, чтобы отключить его для удаленных дисплеев (только устаревшая версия x11grab).
Grab_x Grab_y AVOption
Синтаксис:
-grab_x -grab_y
Установите координаты области захвата. Они выражаются как смещение от левого верхнего угла.
окна X11. Значение по умолчанию - 0.
ВЫВОД УСТРОЙСТВА
Устройства вывода - это сконфигурированные элементы в FFmpeg, которые могут записывать мультимедийные данные в
устройство вывода, подключенное к вашей системе.
Когда вы настраиваете сборку FFmpeg, все поддерживаемые устройства вывода включаются
дефолт. Вы можете перечислить все доступные, используя параметр конфигурации "--list-outdevs".
Вы можете отключить все устройства вывода, используя параметр конфигурации --disable-outdevs, и
выборочно включить устройство вывода с помощью параметра "--enable-outdev ="OUTDEV", или вы можете
отключить конкретное устройство ввода с помощью параметра --disable-outdev =OUTDEV".
Параметр «-devices» инструментов ff * отображает список включенных устройств вывода.
Ниже приводится описание доступных в настоящее время устройств вывода.
альса
Устройство вывода ALSA (Advanced Linux Sound Architecture).
Примеры
· Воспроизвести файл на устройстве ALSA по умолчанию:
ffmpeg -i INPUT -f alsa по умолчанию
· Воспроизвести файл на звуковой карте 1, аудиоустройстве 7:
ffmpeg -i INPUT -f alsa hw: 1,7
Caca
Устройство вывода CACA.
Это устройство вывода позволяет отображать видеопоток в окне CACA. Только одно окно CACA
разрешено для каждого приложения, поэтому вы можете иметь только один экземпляр этого устройства вывода в
Приложение.
Чтобы включить это устройство вывода, вам необходимо настроить FFmpeg с помощью "--enable-libcaca".
libcaca - это графическая библиотека, которая выводит текст вместо пикселей.
Для получения дополнительной информации о libcaca проверьте:http://caca.zoy.org/wiki/libcaca>
Возможности
окно_заголовок
Установите заголовок окна CACA, если он не указан по умолчанию, для имени файла, указанного для
устройство вывода.
размер_окна
Установите размер окна CACA, может быть строкой вида ширинаxвысота или размер видео
Сокращенное название. Если не указано иное, по умолчанию используется размер входного видео.
водитель
Установите драйвер дисплея.
алгоритм
Установить алгоритм дизеринга. Дизеринг необходим, потому что визуализируемое изображение
как правило, цветов гораздо больше, чем в доступной палитре. Перечислены допустимые значения.
с "-list_dither алгоритмами".
антиалиас
Установите метод сглаживания. Сглаживание сглаживает визуализированное изображение и позволяет избежать
часто наблюдаемый эффект лестницы. Допустимые значения перечислены с помощью "-list_dither
антиалиас ».
кодировок
Установите, какие символы будут использоваться при рендеринге текста. Принятые значения
перечислены с "-list_dither charsets".
цвет
Установите цвет, который будет использоваться при рендеринге текста. Допустимые значения указаны с
"-list_dither цветов".
список_драйверов
Если установлено на правда, распечатайте список доступных драйверов и выйдите.
list_dither
Перечислите доступные параметры дизеринга, связанные с аргументом. Аргумент должен быть одним из
"алгоритмы", "антиалиаси", "наборы символов", "цвета".
Примеры
· Следующая команда показывает FFmpeg вывод - это окно CACA, заставляющее его размер
80x25:
ffmpeg -i INPUT -vcodec rawvideo -pix_fmt rgb24 -window_size 80x25 -f caca -
· Показать список доступных драйверов и выйти:
ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_drivers true -
· Показать список доступных цветов дизеринга и выйти:
ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_dither цвета -
DeckLink
Устройство вывода decklink обеспечивает возможности воспроизведения для устройств Blackmagic DeckLink.
Чтобы включить это устройство вывода, вам понадобится Blackmagic DeckLink SDK и
настроить с соответствующими флагами "--extra-cflags" и "--extra-ldflags". В Windows вы
нужно запустить файлы IDL через Widl.
DeckLink очень разборчив в поддерживаемых форматах. Формат пикселей всегда uyvy422,
частота кадров и размер видео должны быть определены для вашего устройства с -list_formats 1. Аудио
частота дискретизации всегда 48 кГц.
Возможности
список_устройств
Если установлено на правда, распечатайте список устройств и выйдите. По умолчанию ложный.
список_форматов
Если установлено на правда, распечатайте список поддерживаемых форматов и выйдите. По умолчанию ложный.
предварительный просмотр
Время в секундах для предварительной прокрутки видео. По умолчанию 0.5.
Примеры
· Список устройств вывода:
ffmpeg -i test.avi -f decklink -list_devices 1 пустышка
· Список поддерживаемых форматов:
ffmpeg -i test.avi -f decklink -list_formats 1 'Мини-монитор DeckLink'
· Воспроизвести видеоклип:
ffmpeg -i test.avi -f decklink -pix_fmt uyvy422 'Мини-монитор DeckLink'
· Воспроизведение видеоклипа с нестандартной частотой кадров или размером видео:
ffmpeg -i test.avi -f decklink -pix_fmt uyvy422 -s 720x486 -r 24000/1001 'Мини-монитор DeckLink'
фбдев
Устройство вывода фреймбуфера Linux.
Буфер кадра Linux - это графический аппаратно-независимый слой абстракции для отображения графики.
на мониторе компьютера, обычно на консоли. Доступ к нему осуществляется через файловое устройство
узел, обычно / dev / fb0.
Для более подробной информации прочтите файл Документация / fb / framebuffer.txt включены в
дерево исходных текстов Linux.
Возможности
xсмещение
смещение
Установите координату x / y левого верхнего угла. По умолчанию 0.
Примеры
Воспроизвести файл на устройстве с кадровым буфером / dev / fb0. Требуемый формат пикселей зависит от текущего
настройки фреймбуфера.
ffmpeg -re -i INPUT -vcodec rawvideo -pix_fmt bgra -f fbdev / dev / fb0
Смотрите такжеhttp://linux-fbdev.sourceforge.net/> и фбсет(1).
OpenGL
Устройство вывода OpenGL.
Чтобы включить это устройство вывода, вам необходимо настроить FFmpeg с помощью "--enable-opengl".
Это устройство вывода позволяет выполнять рендеринг в контексте OpenGL. Контекст может быть предоставлен
создается приложение или окно SDL по умолчанию.
Когда устройство выполняет рендеринг во внешний контекст, приложение должно реализовывать обработчики для следующих
messages: «AV_DEV_TO_APP_CREATE_WINDOW_BUFFER» - создать контекст OpenGL в текущем потоке.
"AV_DEV_TO_APP_PREPARE_WINDOW_BUFFER" - сделать контекст OpenGL текущим.
«AV_DEV_TO_APP_DISPLAY_WINDOW_BUFFER» - буферы подкачки.
«AV_DEV_TO_APP_DESTROY_WINDOW_BUFFER» - уничтожить контекст OpenGL. Приложение также
требуется, чтобы сообщить устройству о текущем разрешении, отправив
Сообщение "AV_APP_TO_DEV_WINDOW_SIZE".
Возможности
фон
Установите цвет фона. Черный цвет по умолчанию.
нет_окна
Отключает окно SDL по умолчанию, если установлено ненулевое значение. Заявление должно предоставить
Контекст OpenGL и обратные вызовы "window_size_cb" и "window_swap_buffers_cb", когда
комплект.
окно_заголовок
Установите заголовок окна SDL, если он не указан по умолчанию для имени файла, указанного для
устройство вывода. Игнорируется, когда нет_окна установлен.
размер_окна
Установите предпочтительный размер окна, может быть строкой в формате ширина x высота или размер видео.
Сокращенное название. Если не указано иное, по умолчанию используется размер входного видео с уменьшенным масштабом.
согласно соотношению сторон. В основном можно использовать, когда нет_окна не установлен.
Примеры
Воспроизвести файл в окне SDL с помощью рендеринга OpenGL:
ffmpeg -i INPUT -f opengl "заголовок окна"
нам
Устройство вывода OSS (Open Sound System).
импульс
Устройство вывода PulseAudio.
Чтобы включить это устройство вывода, вам необходимо настроить FFmpeg с помощью "--enable-libpulse".
Более подробную информацию о PulseAudio можно найти наhttp://www.pulseaudio.org>
Возможности
сервер
Подключитесь к определенному серверу PulseAudio, указанному по IP-адресу. Сервер по умолчанию
используется, если не указан.
имя
Укажите имя приложения, которое PulseAudio будет использовать при отображении активных клиентов, с помощью
по умолчанию это строка «LIBAVFORMAT_IDENT».
имя_потока
Укажите имя потока, которое PulseAudio будет использовать при отображении активных потоков, по умолчанию
устанавливается на указанное имя вывода.
устройство
Укажите устройство для использования. Если не указано иное, используется устройство по умолчанию. Список вывода
устройства можно получить с помощью команды пактл список поглотителями.
размер буфера
буфер_продолжительность
Управляйте размером и продолжительностью буфера PulseAudio. Небольшой буфер дает больше
контроль, но требует более частого обновления.
размер буфера указывает размер в байтах, а буфер_продолжительность указывает продолжительность в
миллисекунды.
Если предоставлены оба варианта, используется максимальное значение (продолжительность
пересчитывается в байты с использованием параметров потока). Если они установлены на 0 (то есть
default), устройство будет использовать значение длительности PulseAudio по умолчанию. По умолчанию
PulseAudio установил длительность буфера примерно на 2 секунды.
пребуф
Укажите размер предварительной буферизации в байтах. Сервер не запускается с воспроизведением раньше в
наименее пребуф байты доступны в буфере. По умолчанию эта опция инициализирована
к тому же значению, что и размер буфера or буфер_продолжительность (в зависимости от того, что больше).
минрек
Укажите минимальный размер запроса в байтах. Сервер не запрашивает менее минрек
байтов от клиента, вместо этого ожидает, пока буфер не освободится достаточно, чтобы запросить больше
байтов сразу. Рекомендуется не устанавливать эту опцию, она инициализируется как
значение, которое сервер считает разумным.
Примеры
Воспроизвести файл на устройстве по умолчанию на сервере по умолчанию:
ffmpeg -i INPUT -f pulse "имя потока"
СДЛ
Устройство вывода SDL (Simple DirectMedia Layer).
Это устройство вывода позволяет отображать видеопоток в окне SDL. Только одно окно SDL
разрешено для каждого приложения, поэтому вы можете иметь только один экземпляр этого устройства вывода в
Приложение.
Чтобы включить это устройство вывода, вам необходимо установить libsdl в вашей системе при настройке
твоя сборка.
Для получения дополнительной информации о SDL проверьте:http://www.libsdl.org/>
Возможности
окно_заголовок
Установите заголовок окна SDL, если он не указан по умолчанию для имени файла, указанного для
устройство вывода.
icon_title
Задайте имя отображаемого в виде значка окна SDL, если не указано иное, для него будет установлено то же значение.
of окно_заголовок.
размер_окна
Установите размер окна SDL, может быть строкой в форме ширинаxвысота или размер видео
Сокращенное название. Если не указано иное, по умолчанию используется размер входного видео с уменьшенным масштабом.
согласно соотношению сторон.
окно_fullscreen
Установите полноэкранный режим, если указано ненулевое значение. Значение по умолчанию - ноль.
Интерактивное команды
Окном, созданным устройством, можно управлять с помощью следующих интерактивных
команды.
q, ESC
Немедленно закройте устройство.
Примеры
Следующая команда показывает FFmpeg вывод - это окно SDL, заставляющее его размер равняться
формат qcif:
ffmpeg -i INPUT -vcodec rawvideo -pix_fmt yuv420p -window_size qcif -f sdl "Вывод SDL"
Sndio
устройство вывода звука sndio.
xv
Устройство вывода XV (XVideo).
Это устройство вывода позволяет отображать видеопоток в окне системы X Window.
Возможности
display_name
Укажите отображаемое имя оборудования, которое определяет отображение и связь
домен, который будет использоваться.
Отображаемое имя или переменная среды DISPLAY может быть строкой в формате
хоста[:номер[.номер_экрана]].
хоста указывает имя хост-машины, на которой физически находится дисплей.
прилагается. номер указывает номер сервера отображения на этом хост-компьютере.
номер_экрана указывает экран, который будет использоваться на этом сервере.
Если не указано, по умолчанию используется значение переменной среды DISPLAY.
Например, «двухголовый: 0.1» будет означать экран 1 дисплея 0 на устройстве.
названный `` двуглавый ''.
Обратитесь к спецификации X11 для получения более подробной информации об отображаемом имени.
формат.
window_id
Если установлено ненулевое значение, устройство не создает новое окно, а использует существующие.
один с предоставленным window_id. По умолчанию для этого параметра установлено значение XNUMX, и устройство создает
собственное окно.
размер_окна
Установить размер создаваемого окна, может быть строкой вида ширинаxвысота или размер видео
Сокращенное название. Если не указано иное, по умолчанию используется размер входного видео. Игнорируется
когда window_id установлен.
окно_x
окно_у
Установите смещения X и Y для созданного окна. Они оба установлены в 0 с помощью
дефолт. Значения могут игнорироваться оконным менеджером. Игнорируется, когда window_id is
комплект.
окно_заголовок
Установите заголовок окна, если не указан по умолчанию, для имени файла, указанного для
устройство вывода. Игнорируется, когда window_id установлен.
Для получения дополнительной информации о XVideo см.http://www.x.org/>.
Примеры
· Декодирование, отображение и кодирование видеовхода с помощью FFmpeg в то же время:
ffmpeg -i ВВОД ВЫХОД -f xv display
· Декодировать и отображать входное видео в нескольких окнах X11:
ffmpeg -i INPUT -f xv нормальный -vf negate -f xv отрицательный
ПЕРЕЗАГРУЗКА ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Аудио ресэмплер поддерживает следующие названные параметры.
Параметры можно установить, указав -вариант ценностное в инструментах FFmpeg, вариант=ценностное для
aresample, задав значение явно в параметрах "SwrContext" или используя
libavutil / opt.h API для программного использования.
ич, in_channel_count
Установите количество входных каналов. Значение по умолчанию - 0. Установка этого значения не
обязательно, если соответствующая раскладка канала in_channel_layout установлен.
ох, out_channel_count
Установите количество выходных каналов. Значение по умолчанию - 0. Установка этого значения не
обязательно, если соответствующая раскладка канала out_channel_layout установлен.
уч, Used_channel_count
Установите количество используемых входных каналов. Значение по умолчанию - 0. Этот параметр используется только
для специального переназначения.
Изр, in_sample_rate
Установите частоту дискретизации входного сигнала. Значение по умолчанию - 0.
оср, out_sample_rate
Установите частоту дискретизации вывода. Значение по умолчанию - 0.
ИСФ, in_sample_fmt
Укажите формат входной выборки. По умолчанию установлено значение «нет».
осф, out_sample_fmt
Укажите формат выходного образца. По умолчанию установлено значение «нет».
цф, Internal_sample_fmt
Установите внутренний формат сэмпла. Значение по умолчанию - «нет». Это будет автоматически
выбирается, когда он не установлен явно.
кл, in_channel_layout
окл out_channel_layout
Установите расположение каналов ввода / вывода.
Посмотреть Канал Планировка . in ffmpeg-утилиты(1) руководство для требуемого синтаксиса.
ключ center_mix_level
Установите центральный уровень микса. Это значение, выраженное в децибелах, и должно быть в
интервал [-32,32].
слев, Surround_mix_level
Установите уровень микширования объемного звучания. Это значение, выраженное в децибелах, и должно быть в
интервал [-32,32].
lfe_mix_level
Установите микс LFE на уровень, отличный от LFE. Используется, когда есть вход LFE, но нет LFE.
выход. Это значение выражается в децибелах и должно находиться в интервале [-32,32].
рмвол, rematrix_volume
Установите громкость rematrix. Значение по умолчанию 1.0.
rematrix_maxval
Установите максимальное выходное значение для повторной матрицы. Это можно использовать для предотвращения отсечения vs.
предотвращение уменьшения объема Значение 1.0 предотвращает обрезку.
флаги swr_flags
Установить флаги, используемые конвертером. Значение по умолчанию - 0.
Он поддерживает следующие отдельные флаги:
разрешения принудительно повторная выборка, этот флаг заставляет использовать повторную выборку, даже если вход и
выходные частоты дискретизации совпадают.
dither_scale
Установите масштаб дизеринга. Значение по умолчанию - 1.
метод дизеринга
Установите метод дизеринга. Значение по умолчанию - 0.
Поддерживаемые значения:
прямоугольный
выберите прямоугольный дизеринг
треугольный
выберите треугольный дизеринг
треугольная_ л.с.
выберите треугольный дизеринг с высоким проходом
Liphitz
выбрать дизеринг с формированием шума по губам
шибата
выберите дизеринг с формированием шума шибата
low_shibata
выбрать дизеринг с низким уровнем шума сибата
high_shibata
выберите дизеринг с высоким уровнем шума сибата
f_взвешенный
выберите f-взвешенный дизеринг с формированием шума
модифицированный_e_взвешенный
выберите дизеринг с измененным электронно-взвешенным шумом
Improved_e_weighted
выбрать дизеринг с улучшенным электронно-взвешенным формированием шума
ресамплер
Установите движок передискретизации. Значение по умолчанию - swr.
Поддерживаемые значения:
SWA выбираем родной SW Resampler; параметры фильтра точность и чебы не
применимо в этом случае.
сокс
выберите SoX Resampler (если есть); параметры компенсации и фильтрации
filter_size, phase_shift, filter_type и kaiser_beta не применимы в этом
дело.
filter_size
Только для swr установите размер фильтра передискретизации, значение по умолчанию - 32.
сдвиг фазы
Только для swr: установите фазовый сдвиг передискретизации, значение по умолчанию - 10 и должно быть в
интервал [0,30].
линейный_интерп
Использовать линейную интерполяцию, если установлено значение 1, значение по умолчанию - 0.
выключение
Установите соотношение частоты среза (swr: точка 6 дБ; soxr: точка 0 дБ); должно быть значение с плавающей запятой
от 0 до 1. Значение по умолчанию - 0.97 с swr и 0.91 с soxr (которое, с
частота дискретизации 44100, сохраняет весь звуковой диапазон до 20 кГц).
точность
Только для soxr - точность в битах, с которой будет вычисляться передискретизированный сигнал.
Значение по умолчанию 20 (что при подходящем дизеринге подходит для
разрядность назначения 16) дает SoX «высокое качество»; значение 28 дает SoX
«Очень высокое качество».
Cheby
Только для soxr, выбирает спад полосы пропускания none (Chebyshev) и более высокую точность
приближение для «иррациональных» соотношений. Значение по умолчанию - 0.
асинхронной
Только для swr, простая синхронизация звука с одним параметром и метками времени с использованием растяжения, сжатия,
начинка и обрезка. Установка этого значения на 1 позволит заполнить и обрезать, больше
значения представляют собой максимальное количество в выборках, на которое данные могут быть растянуты или
сжимается каждую секунду. Значение по умолчанию - 0, поэтому компенсация не применяется.
образцы соответствуют отметкам времени аудио.
first_pts
Только для swr предположим, что первые точки должны иметь это значение. Единица времени - 1 / отсчет
темп. Это позволяет выполнять заполнение / обрезку в начале потока. По умолчанию нет
сделано предположение об ожидаемых точках первого кадра, поэтому заполнение или обрезка не выполняется.
сделано. Например, это может быть установлено на 0, чтобы заполнить начало тишиной, если
аудиопоток начинается после видеопотока или для обрезки любых сэмплов с отрицательными точками
из-за задержки кодировщика.
мин_комп
Только для swr: установите минимальную разницу между отметками времени и аудиоданными (в
секунд), чтобы вызвать растяжение / сжатие / заполнение или обрезку данных, чтобы они
сопоставьте отметки времени. По умолчанию растягивание / сжатие / заливка и обрезка
отключен (мин_комп = "FLT_MAX").
min_hard_comp
Только для swr: установите минимальную разницу между отметками времени и аудиоданными (в
секунд), чтобы запустить добавление / удаление образцов, чтобы они соответствовали отметкам времени. Этот
фактически является порогом для выбора между жестким (обрезка / заливка) и мягким
(сжатие / растяжение) компенсация. Обратите внимание, что вся компенсация по умолчанию отключена.
через мин_комп. По умолчанию 0.1.
comp_duration
Только для swr: установите продолжительность (в секундах), в течение которой данные растягиваются / сжимаются, чтобы сделать
он соответствует отметкам времени. Должно быть неотрицательным двойным значением с плавающей запятой, значение по умолчанию:
1.0. Воспользуйтесь функционалом
max_soft_comp
Только для swr: установите максимальный коэффициент, с которым данные растягиваются / сжимаются, чтобы они соответствовали
отметки времени. Должно быть неотрицательным двойным значением с плавающей запятой, значение по умолчанию - 0.
матрица_кодирование
Выберите матричное стереофоническое кодирование.
Принимает следующие значения:
нет
не выбрать ничего
Долби
выберите Dolby
дплии
выберите Dolby Pro Logic II
Значение по умолчанию - «нет».
тип_фильтра
Только для swr выберите тип фильтра передискретизации. Это влияет только на операции передискретизации.
Принимает следующие значения:
кубический
выберите кубический
blackman_nuttall
выберите Blackman Nuttall Windowed Sinc
кайзер
выберите Kaiser Windowed Sinc
kaiser_beta
Только для swr установите значение Kaiser Window Beta. Должно быть целым числом в интервале [2,16],
значение по умолчанию - 9.
output_sample_bits
Только для swr: установите количество используемых выходных битов выборки для дизеринга. Должно быть целым числом
в интервале [0,64] значение по умолчанию - 0, что означает, что оно не используется.
СКАЛЕР ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Устройство масштабирования видео поддерживает следующие параметры.
Параметры можно установить, указав -вариант ценностное в инструментах FFmpeg. Для программного использования
они могут быть установлены явно в параметрах "SwsContext" или через libavutil / opt.h API.
sws_flags
Установите флаги скейлера. Это также используется для установки алгоритма масштабирования. Только один
алгоритм должен быть выбран.
Принимает следующие значения:
fast_bilinear
Выберите алгоритм быстрого билинейного масштабирования.
билинейной
Выберите алгоритм билинейного масштабирования.
бикубический
Выберите алгоритм бикубического масштабирования.
экспериментальный
Выберите экспериментальный алгоритм масштабирования.
сосед
Выберите алгоритм масштабирования ближайшего соседа.
область
Выберите алгоритм изменения масштаба области усреднения.
бикублин
Выберите алгоритм бикубического масштабирования для компонента яркости, билинейный для цветности
компоненты.
гаусс
Выберите алгоритм изменения масштаба по Гауссу.
синк
Выберите алгоритм масштабирования sinc.
Lanczos
Выберите алгоритм масштабирования Ланцоша.
сплайн
Выберите алгоритм изменения масштаба естественного бикубического сплайна.
print_info
Включите печать / ведение журнала отладки.
precision_rnd
Включите точное округление.
full_chroma_int
Включить полную интерполяцию цветности.
full_chroma_inp
Выберите полный ввод цветности.
битоточный
Включение вывода с битовой точностью.
источник
Установите ширину источника.
срч
Установите высоту источника.
dstw
Установите ширину назначения.
dsth
Установите высоту назначения.
src_format
Установить формат исходного пикселя (должен быть выражен целым числом).
dst_format
Установите формат целевого пикселя (должен быть выражен как целое число).
src_range
Выберите исходный диапазон.
dst_range
Выберите диапазон назначения.
параметр0, param1
Задайте параметры алгоритма масштабирования. Указанные значения зависят от некоторого масштабирования.
алгоритмы и игнорируются другими. Указанные значения представляют собой число с плавающей запятой.
значения.
sws_dither
Установите алгоритм дизеринга. Принимает одно из следующих значений. Значение по умолчанию
автоматический.
автоматический
автоматический выбор
нет
нет дизеринга
Bayer
Байерский дизеринг
ed дизеринг диффузии ошибок
a_dither
арифметический дизеринг, основанный на сложении
x_dither
арифметический дизеринг, основанный на использовании xor (более случайный / менее очевидный паттерн, который
а_дизер).
альфа-смесь
Установите альфа-смешение для использования, когда на входе есть альфа, а на выходе нет.
Значение по умолчанию нет.
униформа_цвет
Наложите на однородный цвет фона
шахматная доска
Растушуйте на шахматной доске
нет
Без смешивания
ФИЛЬТРАЦИЯ ВВЕДЕНИЕ
Фильтрация в FFmpeg включается через библиотеку libavfilter.
В libavfilter фильтр может иметь несколько входов и несколько выходов. Чтобы проиллюстрировать
Что-то вроде возможного, мы рассматриваем в следующем фильтре.
[главный]
ввод -> разделить ---------------------> наложение -> вывод
| ^
| [tmp] [перевернуть] |
+ -----> обрезка -> vflip ------- +
Этот граф фильтра разделяет входной поток на два потока, а затем отправляет один поток через
обрезать фильтр и фильтр vflip, прежде чем объединить его с другим потоком
накладывая его сверху. Для этого вы можете использовать следующую команду:
ffmpeg -i INPUT -vf "split [main] [tmp]; [tmp] crop = iw: ih / 2: 0: 0, vflip [flip]; [main] [flip] overlay = 0: H / 2" OUTPUT
В результате верхняя половина видео будет зеркально отражена на нижней половине
вывод видео.
Фильтры в одной линейной цепочке разделяются запятыми, а разные линейные цепочки
фильтры разделяются точкой с запятой. В нашем примере обрезка, vflip находятся в одной линейной цепочке,
раскол и наложение находятся отдельно в другом. Точки стыковки линейных цепей
помечены именами, заключенными в квадратные скобки. В этом примере разделенный фильтр генерирует
два выхода, которые связаны с метками [главный] и [тмп].
Поток, отправленный на второй выход раскол, помеченный как [тмп], обрабатывается через
урожай фильтр, который обрезает нижнюю половину видео, а затем вертикально
перевернулся. В наложение фильтр принимает на вход первый неизмененный выход разделенного фильтра
(который был помечен как [главный]), и наложить на его нижнюю половину вывод, сгенерированный
обрезка, vflip цепочка фильтров.
Некоторые фильтры принимают на вход список параметров: они указываются после имени фильтра.
и знак равенства и отделены друг от друга двоеточием.
Существуют так называемые источник фильтры у которых нет аудио / видео входа, и раковина
фильтры который не будет иметь аудио / видео выхода.
GRAPH
Команда граф2точка программа включена в FFmpeg инструменты каталог можно использовать для анализа
описание фильтра и выдать соответствующее текстовое представление в точке
язык.
Вызвать команду:
граф2точка -ч
чтобы увидеть, как использовать граф2точка.
Затем вы можете передать описание точки в dot программа (из пакета graphviz
программ) и получить графическое представление фильтраграфа.
Например последовательность команд:
эхо | \
инструменты / graph2dot -o graph.tmp && \
точка -Tpng graph.tmp -o graph.png && \
Показать график.png
может использоваться для создания и отображения изображения, представляющего график, описанный
ГРАФ_ОПИСАНИЕ нить. Обратите внимание, что эта строка должна быть полным автономным графом,
с явно определенными входами и выходами. Например, если ваша командная строка
форма:
ffmpeg -i infile -vf scale = 640: исходный файл 360
ГРАФ_ОПИСАНИЕ строка должна иметь вид:
nullsrc, scale = 640: 360, nullsink
вам также может потребоваться установить nullsrc параметры и добавить формат фильтровать, чтобы
имитировать конкретный входной файл.
ФИЛЬТРГРАФ ОПИСАНИЕ
Граф фильтров - это ориентированный граф связанных фильтров. Он может содержать циклы, а там
может быть несколько ссылок между парой фильтров. Каждая ссылка имеет одну панель ввода с одной стороны
подключив его к одному фильтру, от которого он принимает свой вход, и одной выходной площадке к другому
сторона, соединяющая его с одним фильтром, принимающим его выход.
Каждый фильтр в графе фильтров является экземпляром класса фильтра, зарегистрированного в
приложение, которое определяет функции и количество входных и выходных площадок
фильтр.
Фильтр без входных площадок называется «источником», а фильтр без выходных площадок -
называется «раковиной».
Фильтрграф синтаксис
Граф фильтра имеет текстовое представление, которое распознается -фильтр/-vf/-af и
-filter_complex Варианты в FFmpeg и -vf/-af in ffplay, А самая
Функция avfilter_graph_parse_ptr (), определенная в libavfilter / avfilter.h.
Цепочка фильтров состоит из последовательности подключенных фильтров, каждый из которых подключен к
предыдущий в последовательности. Цепочка фильтров представлена списком, разделенным ","
описания фильтров.
График фильтров состоит из последовательности цепочек фильтров. Последовательность цепочек фильтров
представлен списком описаний цепочки фильтров, разделенных ";".
Фильтр представлен строкой вида:
[in_link_1] ... [in_link_N]имя_фильтра=Аргументы[out_link_1] ... [out_link_M]
имя_фильтра это имя класса фильтра, экземпляром которого является описанный фильтр
of, и должно быть именем одного из классов фильтров, зарегистрированных в программе. В
за именем класса фильтра может следовать строка "=Аргументы".
Аргументы - строка, содержащая параметры, используемые для инициализации фильтра.
пример. Он может иметь одну из двух форм:
· A ':' - список разделенных ключ = значение пар.
· A ':' - список разделенных ценностное . В этом случае предполагается, что ключи являются опцией
имена в порядке их объявления. Например, фильтр "затухание" объявляет три варианта в
этот заказ -- напишите, старт_кадр и nb_frames. Тогда список параметров в: 0: 30 означает
что значение in назначается на опцию напишите, 0 в старт_кадр и 30 в
nb_frames.
· A ':' - разделенный список смешанных прямых ценностное и долго ключ = значение пары. Прямая ценностное
должен предшествовать ключ = значение пары, и следуйте тому же порядку ограничений
предыдущий пункт. Следующий ключ = значение пары могут быть установлены в любом предпочтительном порядке.
Если значение параметра само по себе является списком элементов (например, фильтр «формат» принимает список
форматы пикселей), элементы в списке обычно разделяются |.
Список аргументов можно заключить в кавычки с помощью символа ' в качестве начального и конечного знака, и
персонаж \ для экранирования символов в цитируемом тексте; в противном случае аргумент
строка считается завершенной, когда следующий специальный символ (принадлежащий набору
знак равно) встречается.
Имя и аргументы фильтра опционально предшествуют и после них следует список
ярлыки ссылок. Метка ссылки позволяет назвать ссылку и связать ее с выходом фильтра.
или панель ввода. Предыдущие метки in_link_1 ... in_link_N, связаны с фильтром
входные площадки, следующие метки out_link_1 ... out_link_M, связаны с выходом
подушечки.
Когда в графе фильтров обнаруживаются две метки ссылок с одинаковыми именами, связь между
соответствующие входные и выходные площадки создаются.
Если выходная площадка не помечена, она по умолчанию связана с первым немаркированным входом.
pad следующего фильтра в цепочке фильтров. Например, в цепочке фильтров
nullsrc, split [L1], [L2] оверлей, nullsink
у экземпляра разделенного фильтра есть две выходные площадки, а у экземпляра оверлейного фильтра два входа
колодки. Первая выходная площадка разделения помечена "L1", первая входная площадка оверлея -
помечены как «L2», а вторая выходная площадка разделения связана со второй входной площадкой
оверлей, которые не помечены.
Если в описании фильтра входная метка первого фильтра не указана, "in" будет
предполагается; если метка вывода последнего фильтра не указана, предполагается "out".
В полной цепочке фильтров все немаркированные входные и выходные площадки фильтров должны быть
связаны. График фильтров считается действительным, если все входные и выходные площадки фильтра
все цепочки фильтров подключены.
Libavfilter автоматически вставит лестница фильтры, где требуется преобразование формата.
Можно указать флаги swscale для автоматически вставленных скейлеров с помощью
добавление "sws_flags =флаги; " к описанию фильтрграфа.
Вот BNF-описание синтаксиса графа фильтров:
:: = последовательность буквенно-цифровых символов и '_'
знак равно "]"
знак равно [ ]
:: = последовательность символов (возможно в кавычках)
знак равно ] знак равно ] [ ]
знак равно [, ]
:: = [sws_flags = ;] [; ]
Заметки on фильтрграф побег
Составление описания фильтрграфа предполагает несколько уровней экранирования. Видеть "Цитирование
и побег " . in ffmpeg-утилиты(1) руководство для получения дополнительных сведений о
использовали процедуру побега.
Экранирование первого уровня влияет на содержимое каждого значения параметра фильтра, которое может содержать
специальный символ «:», используемый для разделения значений, или один из экранирующих символов «\ '».
Экранирование второго уровня влияет на все описание фильтра, которое может содержать
экранирующие символы «\ '» или специальные символы «[] ,;» используется фильтром
описание.
Наконец, когда вы указываете граф фильтра в командной строке оболочки, вам необходимо выполнить
экранирование третьего уровня для содержащихся в нем специальных символов оболочки.
Например, представьте, что следующая строка встроена в текст фильтр
описание текст значение:
это «строка»: может содержать один или несколько специальных символов.
Эта строка содержит специальный экранирующий символ "'" и специальный символ ":", поэтому
его нужно экранировать следующим образом:
text = это \ 'строка \' \: может содержать один или несколько специальных символов
Второй уровень экранирования требуется при встраивании описания фильтра в
описание filtergraph, чтобы избежать всех специальных символов filtergraph. Таким образом
приведенный выше пример становится:
drawtext = text = это \\\ 'строка \\\' \\: может содержать один \ или несколько \ специальных символов
(обратите внимание, что в дополнение к экранирующим специальным символам "\ '" также должно быть
сбежал).
Наконец, требуется дополнительный уровень экранирования при написании описания графа фильтра.
в команде оболочки, которая зависит от правил экранирования принятой оболочки. Например,
предполагая, что "\" является особенным и его нужно экранировать другим "\", предыдущая строка
в конечном итоге приведет к:
-vf "drawtext = text = это \\\\\\ 'строка \\\\\\' \\\\: может содержать один \\ или несколько \\ специальных символов"
ГРАФИК РЕДАКТИРОВАНИЕ
Некоторые фильтры поддерживают общий включить вариант. Для фильтров, поддерживающих редактирование шкалы времени,
эта опция может быть установлена в выражение, которое оценивается перед отправкой кадра в
фильтр. Если оценка не равна нулю, фильтр будет включен, в противном случае кадр
будет отправлено без изменений следующему фильтру в графе фильтров.
Выражение принимает следующие значения:
t метка времени, выраженная в секундах, NAN, если метка времени ввода неизвестна
n порядковый номер входного кадра, начиная с 0
пост позиция в файле входного кадра, NAN, если неизвестно
w
h ширина и высота кадра ввода, если видео
Кроме того, эти фильтры поддерживают включить команда, которую можно использовать для переопределения
выражение.
Как и любой другой вариант фильтрации, включить вариант следует тем же правилам.
Например, чтобы включить фильтр размытия (умное размытие) от 10 секунд до 3 минут, а
Кривые фильтр, начиная с 3 секунд:
smartblur = enable = 'между (t, 10,3 * 60)',
кривые = включить = 'gte (t, 3)': preset = cross_process
АУДИО ФИЛЬТРЫ
Когда вы настраиваете свою сборку FFmpeg, вы можете отключить любой из существующих фильтров, используя
"- отключить фильтры". Выходные данные конфигурации покажут аудиофильтры, включенные в ваш
строить.
Ниже приводится описание доступных в настоящее время аудио фильтров.
затухать
Примените плавное затухание от одного входного аудиопотока к другому входному аудиопотоку. Крест
затухание применяется на указанную продолжительность ближе к концу первого потока.
Фильтр принимает следующие параметры:
nb_samples, ns
Укажите количество сэмплов, для которых должен длиться эффект кроссфейда. В конце
Из-за эффекта кроссфейда звук на первом входе будет полностью беззвучным. По умолчанию
44100. Воспользуйтесь функционалом
продолжительность, d
Укажите продолжительность эффекта плавного перехода. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса. По умолчанию продолжительность определяется
by nb_samples. Если установлено, эта опция используется вместо nb_samples.
перекрывать, o
Если конец первого потока перекрывается с началом второго потока. По умолчанию включен.
кривая1
Установите кривую для перехода между плавными переходами для первого потока.
кривая2
Установите кривую для перехода между плавными переходами для второго потока.
Описание доступных типов кривых см. увядать описание фильтра.
Примеры
· Переход от одного входа к другому:
ffmpeg -i first.flac -i second.flac -filter_complex черезfade = d = 10: c1 = exp: c2 = exp output.flac
· Переход от одного входа к другому, но без перекрытия:
ffmpeg -i first.flac -i second.flac -filter_complex через затухание = d = 10: o = 0: c1 = exp: c2 = exp output.flac
задержка
Задержите один или несколько аудиоканалов.
Сэмплы в задержанном канале заполнены тишиной.
Фильтр принимает следующий вариант:
с задержками
Задайте список задержек в миллисекундах для каждого канала, разделенных знаком «|». Хотя бы один
должна быть предусмотрена задержка больше 0. Неиспользованные задержки будут игнорироваться. Если
количество заданных задержек меньше, чем количество каналов, все остальные каналы будут
не откладывать.
Примеры
· Задержите первый канал на 1.5 секунды, третий канал на 0.5 секунды и оставьте
второй канал (и любые другие каналы, которые могут присутствовать) без изменений.
adelay = 1500 | 0 | 500
эхо
Примените эхо к входному звуку.
Эхо - это отраженный звук, который может возникать естественным образом среди гор (а иногда и больших
здания) при разговоре или крике; эффекты цифрового эха имитируют это поведение и являются
часто используется для улучшения звучания отдельного инструмента или вокала. Разница во времени
между исходным сигналом и отражением находится «задержка», а громкость
отраженный сигнал - это «затухание». Множественные эхо-сигналы могут иметь разные задержки и затухания.
Далее следует описание принятых параметров.
in_gain
Установите входное усиление отраженного сигнала. По умолчанию 0.6.
out_gain
Установите выходное усиление отраженного сигнала. По умолчанию 0.3.
с задержками
Установить список временных интервалов в миллисекундах между исходным сигналом и отражениями
разделенные знаком "|". Допустимый диапазон для каждой «задержки»: «(0 - 90000.0]». По умолчанию - 1000.
распады
Задайте список громкостей отраженных сигналов, разделенных знаком «|». Допустимый диапазон для каждого
«decay» равен «(0 - 1.0]». По умолчанию - 0.5.
Примеры
· Сделайте так, будто инструментов в два раза больше, чем на самом деле:
эхо = 0.8: 0.88: 60: 0.4
· Если задержка очень короткая, это звучит как (металлический) робот, играющий музыку:
эхо = 0.8: 0.88: 6: 0.4
· Более длительная задержка будет звучать как концерт под открытым небом в горах:
эхо = 0.8: 0.9: 1000: 0.3
· То же, что и выше, но с еще одной горой:
aecho=0.8:0.9:1000|1800:0.3|0.25
эвал
Измените звуковой сигнал в соответствии с указанными выражениями.
Этот фильтр принимает одно или несколько выражений (по одному для каждого канала), которые оцениваются
и используется для изменения соответствующего аудиосигнала.
Он принимает следующие параметры:
выражения
Установите список выражений, разделенных символом "|", для каждого отдельного канала. Если количество
входных каналов больше, чем количество выражений, последнее указанное
выражение используется для остальных выходных каналов.
канал_макет, c
Установите схему выходного канала. Если не указан, макет канала определяется
количество выражений. Если установлено на то же, по умолчанию будет использоваться тот же входной канал
раскладка.
Каждое выражение в выражения может содержать следующие константы и функции:
ch номер канала текущего выражения
n номер оцениваемой выборки, начиная с 0
s частота дискретизации
t время оцениваемой пробы, выраженное в секундах
nb_in_channels
nb_out_channels
входное и выходное количество каналов
val (CH)
значение входного канала с номером CH
Примечание: этот фильтр работает медленно. Для более быстрой обработки вам следует использовать специальный фильтр.
Примеры
· Половина объема:
aeval = val (ch) / 2: c = то же самое
· Инвертировать фазу второго канала:
aeval =волна(0) | -волна(1)
увядать
Примените эффект плавного появления / затухания к входному звуку.
Далее следует описание принятых параметров.
типа, t
Укажите тип эффекта, может быть "in" для постепенного появления или "out" для постепенного исчезновения.
эффект. По умолчанию "in".
начальный_образец, ss
Укажите номер начального сэмпла для начала применения эффекта затухания. Дефолт
это 0.
nb_samples, ns
Укажите количество сэмплов, для которых должен длиться эффект затухания. В конце
эффект постепенного появления звука на выходе будет такой же громкость, как и на входе, при
в конце переходного периода звук на выходе будет тишиной. По умолчанию 44100.
начальное время, st
Укажите время начала эффекта затухания. По умолчанию 0. Необходимо указать значение.
как продолжительность времени; видеть Время продолжительность . in ffmpeg-утилиты(1) руководство для
принятый синтаксис. Если установлено, эта опция используется вместо start_sample.
продолжительность, d
Укажите продолжительность эффекта затухания. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса. В конце эффекта постепенного появления
выходной звук будет иметь ту же громкость, что и входной, в конце затухания
при переходе выходной звук будет тишиной. По умолчанию продолжительность определяется
nb_samples. Если установлено, эта опция используется вместо nb_samples.
кривая
Установить кривую перехода.
Принимает следующие значения:
три выберите треугольный, линейный наклон (по умолчанию)
Ксин
выберите четверть синусоиды
Синь
выберите половину синусоиды
вдохновение
выберите экспоненциальную синусоиду
журнал выберите логарифмический
IPAR
выбрать перевернутую параболу
условием выбрать квадратичный
куб выберите кубический
Squ выберите квадратный корень
CBR выберите кубический корень
паритет выбрать параболу
ехр выберите экспоненциальный
иксин
выберите инвертированную четверть синусоиды
ихсин
выберите инвертированную половину синусоиды
дезе
выбрать сиденье с двойной экспонентой
Дези
выберите двойной экспоненциальный сигмоид
Примеры
· Затухание в первые 15 секунд звука:
afade = t = in: ss = 0: d = 15
· Затухание последних 25 секунд 900-секундного звука:
afade = t = out: st = 875: d = 25
формат
Установите ограничения выходного формата для входящего звука. Рамки будут вести переговоры больше всего
соответствующий формат для минимизации конверсий.
Он принимает следующие параметры:
sample_fmts
Список запрошенных примеров форматов, разделенных символом "|".
Sample_rates
Список запрошенных частот дискретизации, разделенный символом "|".
канал_макеты
Разделенный '|' список запрошенных макетов каналов.
Посмотреть Канал Планировка . in ffmpeg-утилиты(1) руководство для требуемого синтаксиса.
Если параметр не указан, допустимы все значения.
Принудительно преобразовать выходной сигнал в 8-битное беззнаковое или 16-битное стерео со знаком.
aformat = sample_fmts = u8 | s16: channel_layouts = стерео
проходной
Примените двухполюсный универсальный фильтр с центральной частотой (в Гц) частота, и фильтр-
ширина ширина. Всепроходный фильтр изменяет соотношение частоты звука к фазе.
без изменения отношения его частоты к амплитуде.
Фильтр принимает следующие параметры:
частота, f
Установите частоту в Гц.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type.
объединять
Объедините два или более аудиопотока в один многоканальный поток.
Фильтр принимает следующие параметры:
затраты
Установите количество входов. По умолчанию 2.
Если схемы каналов входов не пересекаются и, следовательно, совместимы, канал
макет вывода будет настроен соответствующим образом, и каналы будут переупорядочены как
необходимо. Если схемы каналов входов не пересекаются, на выходе будут все
каналы первого входа, затем все каналы второго входа в указанном порядке,
и расположение каналов вывода будет значением по умолчанию, соответствующим общему количеству
количество каналов.
Например, если первый вход находится в 2.1 (FL + FR + LF), а второй вход - FC + BL + BR,
тогда вывод будет в формате 5.1, с каналами в следующем порядке: a1, a2, b1, a3,
b2, b3 (a1 - первый канал первого входа, b1 - первый канал второго
ввод).
С другой стороны, если оба входа в стерео, выходные каналы будут по умолчанию.
порядок: a1, a2, b1, b2, и расположение каналов будет произвольно установлено на 4.0, что может или
может не соответствовать ожидаемому значению.
Все входы должны иметь одинаковую частоту дискретизации и формат.
Если входы не имеют одинаковой продолжительности, выход остановится на самом коротком.
Примеры
· Объединить два монофайла в стереопоток:
amovie = left.wav [l]; amovie = right.mp3 [r]; [l] [r] объединить
· Множественные слияния, предполагающие 1 видеопоток и 6 аудиопотоков в вход.mkv:
ffmpeg -i input.mkv -filter_complex "[0: 1] [0: 2] [0: 3] [0: 4] [0: 5] [0: 6] amerge = inputs = 6" -c: a pcm_s16le output.mkv
смесь
Микширует несколько аудиовходов в один выход.
Обратите внимание, что этот фильтр поддерживает только образцы с плавающей запятой ( объединять и кастрюля аудио фильтры
поддерживает множество форматов). Если смесь вход имеет целочисленные образцы, тогда образец будет
автоматически вставляется для преобразования в образцы с плавающей запятой.
Например
ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix = inputs = 3: duration = first: dropout_transition = 3 OUTPUT
будет смешивать 3 входных аудиопотока с одним выходом с той же продолжительностью, что и первый
вход и время перехода при отключении 3 секунды.
Он принимает следующие параметры:
затраты
Количество входов. Если не указано, по умолчанию используется 2.
продолжительность
Как определить конец потока.
самый длинный
Продолжительность самого длинного ввода. (дефолт)
самый короткий
Продолжительность самого короткого ввода.
первый
Продолжительность первого ввода.
dropout_transition
Время перехода в секундах для перенормировки объема при завершении входного потока.
Значение по умолчанию - 2 секунд.
анулировать
Передайте аудиоисточник без изменений на выход.
площадка
Добавьте тишину в конец аудиопотока.
Это можно использовать вместе с FFmpeg -коротчайший для расширения аудиопотоков до одинаковой длины
как видеопоток.
Ниже приводится описание принятых вариантов.
размер_пакета
Установите размер пакета молчания. Значение по умолчанию - 4096.
Pad_len
Установите количество образцов тишины, которое нужно добавить в конец. После достижения значения
поток прекращается. Этот вариант является взаимоисключающим с целая_лень.
целая_лень
Установите минимальное общее количество сэмплов в выходном аудиопотоке. Если значение равно
длиннее, чем длина входного аудиосигнала, в конец добавляется тишина, пока значение не станет равным
достиг. Этот вариант является взаимоисключающим с Pad_len.
Если ни Pad_len ни целая_лень установлен, фильтр добавит тишину в
конец входного потока на неопределенный срок.
Примеры
· Добавьте 1024 образца тишины в конец ввода:
apad = pad_len = 1024
· Убедитесь, что аудиовыход будет содержать не менее 10000 сэмплов, дополните вход
тишина, если требуется:
apad = целый_лен = 10000
· Использовать FFmpeg для заполнения аудиовхода тишиной, чтобы видеопоток всегда
результат самый короткий и будет преобразован до конца в выходной файл при использовании
самый короткий опции:
ffmpeg -i VIDEO -i AUDIO -filter_complex "[1: 0] apad" -самый короткий ВЫХОД
афазер
Добавьте эффект фазирования к входному звуку.
Фазерный фильтр создает серию пиков и впадин в частотном спектре. В
положение пиков и впадин модулируется так, что они меняются со временем, создавая
эффект размаха.
Далее следует описание принятых параметров.
in_gain
Установите входное усиление. По умолчанию 0.4.
out_gain
Установите выходное усиление. По умолчанию 0.74
задерживать
Установите задержку в миллисекундах. По умолчанию 3.0.
распад
Установить распад. По умолчанию 0.4.
скорость
Установите скорость модуляции в Гц. По умолчанию 0.5.
напишите
Установите тип модуляции. По умолчанию - треугольник.
Принимает следующие значения:
треугольная, t
синусоидальный, s
образец
Передискретизируйте входной звук до указанных параметров, используя библиотеку libswresample. Если
не указаны, тогда фильтр будет автоматически преобразовывать входные данные в
вывод.
Этот фильтр также может растягивать / сжимать аудиоданные, чтобы они соответствовали отметкам времени.
или чтобы вставить тишину / вырезать звук, чтобы он соответствовал отметкам времени, выполните комбинацию
и то, и другое или ни то, ни другое.
Фильтр принимает синтаксис [частота дискретизации:]resampler_options, Где частота дискретизации выражает
частота дискретизации и resampler_options это список ключ=ценностное пары, разделенные ":". Видеть
полный список поддерживаемых опций вы найдете в руководстве ffmpeg-resampler.
Примеры
· Передискретизация входного звука до 44100 Гц:
aresample = 44100
· Сжать / растянуть сэмплы до заданных временных меток, максимум 1000 сэмплов на
вторая компенсация:
aresample = async = 1000
асетнсэмплс
Установите количество выборок для каждого выходного аудиокадра.
Последний выходной пакет может содержать другое количество отсчетов, так как фильтр будет сброшен.
все оставшиеся сэмплы при окончании входного аудиосигнала.
Фильтр принимает следующие параметры:
nb_out_samples, n
Установите количество кадров для каждого выходного аудиокадра. Номер предназначен для обозначения
количество образцов для каждый канал. Значение по умолчанию - 1024.
подушечка, p
Если установлено значение 1, фильтр будет заполнять последний аудиокадр нулями, так что последний
кадр будет содержать то же количество сэмплов, что и предыдущие. Значение по умолчанию
1.
Например, чтобы установить количество выборок для каждого кадра равным 1234 и отключить заполнение для
последний кадр, используйте:
asetnsamples = n = 1234: p = 0
асетрат
Установите частоту дискретизации без изменения данных PCM. Это приведет к изменению скорости
и подача.
Фильтр принимает следующие параметры:
частота дискретизации, r
Установите частоту дискретизации вывода. По умолчанию 44100 Гц.
ashowinfo
Покажите строку, содержащую различную информацию для каждого входного аудиокадра. Входной звук
не модифицируется.
Показанная строка содержит последовательность пар ключ / значение вида ключ:ценностное .
На выходе отображаются следующие значения:
n (Последовательный) номер входного кадра, начиная с 0.
PTS Отметка времени представления входного кадра в единицах измерения времени; временная база
зависит от входной площадки фильтра и обычно составляет 1 /частота дискретизации.
pts_time
Отметка времени представления входного кадра в секундах.
пост позиция кадра во входном потоке, -1, если эта информация недоступна
и / или бессмысленно (например, в случае синтетического звука)
FMT Формат образца.
раскладка
Макет канала.
скорость
Частота дискретизации аудиокадра.
nb_samples
Количество отсчетов (на канал) в кадре.
контрольная сумма
Контрольная сумма Adler-32 (напечатанная в шестнадцатеричном формате) аудиоданных. Для плоского звука
данные обрабатываются так, как если бы все плоскости были объединены.
plane_checksums
Список контрольных сумм Adler-32 для каждой плоскости данных.
астатс
Отображение статистической информации о аудиоканалах во временной области. Статистика
рассчитывается и отображается для каждого аудиоканала и, если применимо, общий показатель
также дается.
Он принимает следующий вариант:
Короткая длина окна в секундах, используемая для измерения пикового и минимального среднеквадратичного значения. По умолчанию
0.05 (50 миллисекунд). Допустимый диапазон: «[0.1 - 10]».
метаданных
Установить внедрение метаданных. Все ключи метаданных имеют префикс "lavfi.astats.X",
где «X» - номер канала, начинающийся с 1, или строка «Всего». По умолчанию отключено.
Доступные ключи для каждого канала: DC_offset Min_level Max_level Min_difference
Макс_разность Средняя_разница Пиковый_уровень Среднеквадратичное_пиковое Среднеквадратичное значение Крест_фактор Плоский_фактор
Пик_счетчик Бит_глубина
и для общего: DC_offset Min_level Max_level Min_difference Max_difference
Среднее_различие Peak_level RMS_level RMS_peak RMS_trough Flat_factor Peak_count
Битовая глубина
Например, полный ключ выглядит так: lavfi.astats.1.DC_offset или это
"lavfi.astats.O Total.Peak_count".
Описание того, что означает каждая клавиша, читайте ниже.
сброс
Установите номер кадра, после которого статистика будет пересчитана. По умолчанию
отключен.
Ниже приводится описание каждого показанного параметра:
DC смещение
Смещение средней амплитуды от нуля.
Мин. уровень
Минимальный уровень выборки.
Max уровень
Максимальный уровень выборки.
Мин. разница
Минимальная разница между двумя последовательными образцами.
Max разница
Максимальная разница между двумя последовательными образцами.
среднее разница
Средняя разница между двумя последовательными образцами. Среднее значение каждой разницы
между двумя последовательными образцами.
Вершина горы уровень dB
RMS уровень dB
Стандартный пиковый и среднеквадратичный уровень, измеренный в dBFS.
RMS пик dB
RMS впадина dB
Пиковые и минимальные значения среднеквадратичного уровня, измеренные за короткий промежуток времени.
Гребень фактор
Стандартное отношение пикового уровня к среднеквадратичному уровню (примечание: не в дБ).
Плоский (XNUMXD) фактор
Равномерность (т. Е. Последовательные выборки с одинаковым значением) сигнала на пике
уровни (т.е. либо Мин. уровень or Max уровень).
Вершина горы считать
Количество раз (а не количество выборок), когда сигнал достиг Мин.
уровень or Max уровень.
Немного глубина
Общая битовая глубина звука. Количество бит, используемых для каждой выборки.
Astreamsync
Пересылайте два аудиопотока и контролируйте порядок пересылки буферов.
Фильтр принимает следующие параметры:
выражение, e
Задайте выражение, определяющее, какой поток следует перенаправить следующим: если результат
отрицательный, перенаправляется первый поток; если результат положительный или нулевой, второй
поток перенаправлен. Он может использовать следующие переменные:
b1 b2
количество буферов, переданных на данный момент в каждом потоке
s1 s2
количество проб, отправленных на данный момент в каждом потоке
t1 t2
текущая временная метка каждого потока
Значение по умолчанию - "t1-t2", что означает всегда пересылать поток, имеющий
меньшая временная метка.
Примеры
Стресс-тест "объединяется" путем случайной отправки буферов на неправильный вход, избегая при этом слишком большого количества ошибок.
большая часть десинхронизации:
amovie = file.ogg [a]; amovie = file.mp3 [b];
[a] [b] astreamsync = (2 *случайный(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] объединить
асинкт
Синхронизируйте аудиоданные с отметками времени, сжимая / растягивая их и / или отбрасывая
образцы / добавление тишины при необходимости.
Этот фильтр не создается по умолчанию, используйте образец делать сжатие / растяжку.
Он принимает следующие параметры:
компенсировать
Включите растяжение / сжатие данных, чтобы они соответствовали отметкам времени. Отключено
дефолт. Когда отключено, временные промежутки закрываются тишиной.
мин_дельта
Минимальная разница между отметками времени и аудиоданными (в секундах) для запуска
добавление / удаление образцов. Значение по умолчанию - 0.1. Если у вас несовершенная синхронизация с
этого фильтра, попробуйте установить для этого параметра значение 0.
max_comp
Максимальная компенсация в отсчетах в секунду. Актуально только при компенсации = 1. В
значение по умолчанию - 500.
first_pts
Предположим, что это значение должно быть первым PTS. Развертка по времени равна 1 / частота дискретизации. Этот
позволяет выполнять заполнение / обрезку в начале потока. По умолчанию нет никаких предположений.
сделано для ожидаемого PTS первого кадра, поэтому отступы или обрезки не выполняются. Для
Например, это может быть установлено в 0, чтобы заполнить начало тишиной, если аудиопоток
начинается после видеопотока или для обрезки любых образцов с отрицательным PTS из-за
задержка кодировщика.
атемпо
Отрегулируйте темп звука.
Фильтр принимает ровно один параметр - темп звука. Если не указано, то
фильтр примет номинальный темп 1.0. Темп должен быть в диапазоне [0.5, 2.0].
Примеры
· Замедление звука до темпа 80%:
atempo = 0.8
· Чтобы ускорить звук до темпа 125%:
atempo = 1.25
отделка
Обрежьте ввод так, чтобы вывод содержал одну непрерывную часть ввода.
Он принимает следующие параметры:
Начало
Отметка времени (в секундах) начала сохраняемого раздела. Т.е. аудиосэмпл с
отметка времени Начало будет первым образцом на выходе.
конец Укажите время первого аудиосэмпла, который будет отброшен, т. Е. Аудиосэмпла.
непосредственно перед тем, с отметкой времени конец будет последним образцом в
вывод.
start_pts
Такой же как Начало, за исключением того, что эта опция устанавливает начальную временную метку в сэмплах вместо
секунд.
конечные_точки
Такой же как конец, за исключением того, что эта опция устанавливает конечную временную метку в выборках, а не в секундах.
продолжительность
Максимальная продолжительность вывода в секундах.
start_sample
Номер первого образца, который нужно вывести.
конец_выборки
Номер первого образца, который следует отбросить.
Начало, конец и продолжительность выражаются в виде спецификации продолжительности времени; видеть Время
продолжительность . in ffmpeg-утилиты(1) руководство.
Обратите внимание, что первые два набора параметров начала / конца и продолжительность вариант посмотрите на
метка времени кадра, а параметры _sample просто подсчитывают выборки, которые проходят через
фильтр. Таким образом, start / end_pts и start / end_sample дадут разные результаты, когда
метки времени неверны, неточны или не начинаются с нуля. Также обратите внимание, что этот фильтр не
изменить отметки времени. Если вы хотите, чтобы временные метки вывода начинались с нуля, вставьте
Фильтр asetpts после фильтра atrim.
Если задано несколько параметров начала или конца, этот фильтр пытается быть жадным и сохранять все
образцы, которые соответствуют хотя бы одному из указанных ограничений. Чтобы сохранить только ту часть, которая
соответствует всем ограничениям сразу, объединяет несколько фильтров atrim.
По умолчанию все вводимые данные сохраняются. Таким образом, можно установить, например, только
конечные значения, чтобы сохранить все до указанного времени.
Примеры:
· Отбросьте все, кроме второй минуты ввода:
ffmpeg -i INPUT -af atrim = 60: 120
· Сохраните только первые 1000 образцов:
ffmpeg -i INPUT -af atrim = end_sample = 1000
полосовой
Примените двухполюсный полосовой фильтр Баттерворта с центральной частотой частота и
(3 дБ) ширина полосы. В CSG опция выбирает постоянное усиление юбки (пиковое усиление =
Q) вместо значения по умолчанию: постоянное пиковое усиление 0 дБ. Спад фильтра составляет 6 дБ на октаву.
(20 дБ за декаду).
Фильтр принимает следующие параметры:
частота, f
Установите центральную частоту фильтра. По умолчанию 3000.
CSG Постоянное усиление юбки, если установлено 1. По умолчанию - 0.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type.
Bandreject
Примените двухполюсный фильтр Баттерворта с отклонением полосы частот с центральной частотой частота и
(3 дБ) ширина полосы ширина. Спад фильтра составляет 6 дБ на октаву (20 дБ на декаду).
Фильтр принимает следующие параметры:
частота, f
Установите центральную частоту фильтра. По умолчанию 3000.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type.
бас
Увеличьте или ослабьте низкие (низкие) частоты звука с помощью двухполюсного полочного фильтра
с откликом, аналогичным реакции регуляторов тембра стандартного Hi-Fi. Это также известно как
полочный эквалайзер (EQ).
Фильтр принимает следующие параметры:
получить, g
Дайте усиление при 0 Гц. Его полезный диапазон составляет от -20 (для большого среза) до +20 (для
большой наддув). Остерегайтесь обрезания при использовании положительного усиления.
частота, f
Установите центральную частоту фильтра, чтобы ее можно было использовать для увеличения или уменьшения
частотный диапазон, который необходимо увеличить или уменьшить. Значение по умолчанию - 100 Гц.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Определите, насколько крутой переход полки фильтра.
биквадрат
Примените биквадратный БИХ-фильтр с заданными коэффициентами. Где b0, b1, b2 и a0, a1, a2
- коэффициенты числителя и знаменателя соответственно.
бс2б
Преобразование стереозвука Бауэра в бинауральное, улучшающее прослушивание стереозвука в наушниках.
аудиозаписи.
Он принимает следующие параметры:
профиль
Предустановленный уровень перекрестной подачи.
по умолчанию
Уровень по умолчанию (fcut = 700, feed = 50).
смой
Контур Чу Мой (fcut = 700, feed = 60).
Jmeier
Схема Яна Мейера (fcut = 650, feed = 95).
вырезать
Частота среза (в Гц).
подача
Уровень подачи (в Гц).
карта каналов
Переназначьте входные каналы в новые места.
Он принимает следующие параметры:
канал_макет
Расположение каналов выходного потока.
карта Сопоставьте каналы от входа к выходу. Аргументом является список отображений, разделенных символом "|",
каждый в "in_channel-out_channel " or in_channel форме. in_channel может быть либо
имя входного канала (например, FL для переднего левого) или его индекс во входном канале
раскладка. out_channel это имя выходного канала или его индекс в выходном
расположение каналов. Если out_channel не указан, то это неявно индекс, начиная с
с нулем и увеличивающейся на единицу для каждого отображения.
Если сопоставление отсутствует, фильтр будет неявно сопоставлять входные каналы с выходными.
каналы, сохраняющие индексы.
Например, предполагая, что входной MOV-файл с понижающим микшированием 5.1 +,
ffmpeg -i in.mov -filter 'channelmap = map = DL-FL | DR-FR' out.wav
создаст выходной файл WAV, помеченный как стерео, из входных каналов понижающего микширования.
Чтобы исправить 5.1-канальный WAV, неправильно закодированный в собственном порядке каналов AAC
ffmpeg -i in.wav -filter 'channelmap = 1 | 2 | 0 | 5 | 3 | 4: 5.1' out.wav
разделение каналов
Разделите каждый канал входного аудиопотока на отдельный выходной поток.
Он принимает следующие параметры:
канал_макет
Расположение каналов входящего потока. По умолчанию - "стерео".
Например, предполагая входной стереофонический файл MP3,
ffmpeg -i in.mp3 -filter_complex разбить каналы.mkv
создаст выходной файл Matroska с двумя аудиопотоками, один из которых содержит только левый
канал, а другой - правый канал.
Разделите файл 5.1 WAV на файлы для каждого канала:
ffmpeg -i in.wav -filter_complex
'channelsplit = channel_layout = 5.1 [FL] [FR] [FC] [LFE] [SL] [SR] "
-map '[FL]' front_left.wav -map '[FR]' front_right.wav -map '[FC]'
front_center.wav -map '[LFE]' lfe.wav -map '[SL]' side_left.wav -map '[SR]'
Side_right.wav
хор
Добавьте к звуку эффект хоруса.
Может издавать одиночный вокальный звук, похожий на припев, но также может применяться к инструментам.
Хорус напоминает эффект эха с короткой задержкой, но в то время как с эхо задержка
постоянный, с хорусом, он варьируется с помощью синусоидальной или треугольной модуляции. В
глубина модуляции определяет диапазон, в котором модулированная задержка воспроизводится до или после
задерживать. Следовательно, задержанный звук будет звучать медленнее или быстрее, то есть задержанный звук.
настроен вокруг оригинала, как в припеве, где вокал немного не в тональности.
Он принимает следующие параметры:
in_gain
Установите входное усиление. По умолчанию 0.4.
out_gain
Установите выходное усиление. По умолчанию 0.4.
с задержками
Установите задержки. Типичная задержка составляет от 40 мс до 60 мс.
распады
Установить распады.
скорость
Установите скорости.
глубины
Установите глубины.
Примеры
· Однократная задержка:
chorus=0.7:0.9:55:0.4:0.25:2
· Две задержки:
chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3
· Более полный припев с тремя задержками:
chorus=0.5:0.9:50|60|40:0.4|0.32|0.3:0.25|0.4|0.3:2|2.3|1.3
компанд
Сжимайте или расширяйте динамический диапазон звука.
Он принимает следующие параметры:
нападки
распады
Список времени в секундах для каждого канала, в течение которого мгновенный уровень
входной сигнал усредняется для определения его громкости. нападки относится к увеличению громкости
и распады относится к уменьшению громкости. В большинстве случаев время атаки
(реакция на усиление звука) должна быть короче, чем время затухания, потому что
человеческое ухо более чувствительно к внезапному громкому звуку, чем к внезапному тихому звуку. Типичный
значение атаки составляет 0.3 секунды, а типичное значение затухания - 0.8 секунды. Если
указанное количество атак и распадов меньше, чем количество каналов, установленное последним
Атака / затухание будет использоваться для всех оставшихся каналов.
пунктов
Список точек для передаточной функции, указанных в дБ относительно максимума.
возможная амплитуда сигнала. Каждый список ключевых моментов должен быть определен с использованием следующих
синтаксис: «x0 / y0 | x1 / y1 | x2 / y2 | ....» или «x0 / y0 x1 / y1 x2 / y2 ....»
Входные значения должны быть в строго возрастающем порядке, но передаточная функция делает это.
не обязательно монотонно подниматься. Предполагается, что точка "0/0" может быть изменена.
(по "0 / out-dBn"). Типичные значения передаточной функции: «-70 / -70 | -60 / -20».
мягкое колено
Установите радиус кривой в дБ для всех стыков. По умолчанию 0.01.
усиление
Установите дополнительное усиление в дБ, которое будет применяться во всех точках передаточной функции.
Это позволяет легко регулировать общее усиление. По умолчанию 0.
объем
Установите начальную громкость в дБ, которая будет принята для каждого канала при запуске фильтрации.
Это позволяет пользователю изначально указать номинальный уровень, чтобы, например,
очень большое усиление не применяется к начальным уровням сигнала до того, как компандирование
начал работать. Типичное значение для изначально тихого звука составляет -90 дБ. Это
по умолчанию 0.
задерживать
Установите задержку в секундах. Входной звук анализируется немедленно, но звук задерживается.
перед подачей на регулятор громкости. Задав задержку примерно равную
Время атаки / затухания позволяет фильтру эффективно работать в режиме прогнозирования, а не
реактивный режим. По умолчанию 0.
Примеры
· Создавайте музыку с тихими и громкими пассажами, подходящую для прослушивания в шумной
Окружающая среда:
compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2
Другой пример для звука с частями шепота и взрыва:
compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0
· Шумовой вентиль для случаев, когда уровень шума ниже, чем уровень сигнала:
compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1
· Вот еще один шумоподавитель, на этот раз, когда уровень шума выше, чем у
сигнал (что в некотором роде похоже на шумоподавитель):
compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1
постоянный ток
Примените сдвиг постоянного тока к звуку.
Это может быть полезно для удаления смещения постоянного тока (возможно, вызванного аппаратной проблемой в
цепочка записи) от аудио. Эффект смещения постоянного тока уменьшает запас и, следовательно,
объем. В астатс Фильтр можно использовать для определения наличия смещения постоянного тока в сигнале.
сдвиг
Установите сдвиг постоянного тока, допустимый диапазон [-1, 1]. Он указывает на величину сдвига
аудио.
лимитергейн
По желанию. Он должен иметь значение намного меньше 1 (например, 0.05 или 0.02) и используется для
предотвратить обрезку.
динаоднорм
Динамический нормализатор звука.
Этот фильтр применяет определенное усиление к входному звуку, чтобы добиться его пика.
величина до целевого уровня (например, 0 dBFS). Однако в отличие от более «простых»
алгоритмы нормализации, Dynamic Audio Normalizer * динамически * повторно регулирует усиление
коэффициент входящего звука. Это позволяет применить дополнительное усиление к «тихим» участкам
звук, избегая искажений или обрезая «громкие» участки. Другими словами:
Dynamic Audio Normalizer «выровняет» громкость тихих и громких участков в
ощущение, что громкость каждого раздела доведена до одного и того же целевого уровня. Обратите внимание, однако,
что Dynamic Audio Normalizer достигает этой цели * без * применения динамического диапазона
сжатие ". Он сохранит 100% динамического диапазона * в * каждой части аудио
.
f Установите длину кадра в миллисекундах. В диапазоне от 10 до 8000 миллисекунд. Дефолт
составляет 500 миллисекунд. Dynamic Audio Normalizer обрабатывает входящий звук в небольших размерах.
фрагменты, называемые кадрами. Это необходимо, потому что пиковая величина не имеет
значение только для одного значения выборки. Вместо этого нам нужно определить пик
величина для непрерывной последовательности выборочных значений. А "стандартный" нормализатор
просто использовал бы пиковую величину всего файла, Dynamic Audio Normalizer
определяет максимальную величину индивидуально для каждого кадра. Длина кадра
указывается в миллисекундах. По умолчанию Dynamic Audio Normalizer использует рамку
длина 500 миллисекунд, что дает хорошие результаты с большинством файлов.
Обратите внимание, что точная длина кадра в количестве отсчетов будет определяться.
автоматически, на основе частоты дискретизации отдельного входного аудиофайла.
g Установите размер окна фильтра Гаусса. В диапазоне от 3 до 301 должно быть нечетное число.
По умолчанию 31. Вероятно, самый важный параметр динамического нормализатора звука.
- это «размер окна» сглаживающего фильтра Гаусса. Размер окна фильтра
указывается в кадрах с центром вокруг текущего кадра. Ради простоты,
это должно быть нечетное число. Следовательно, значение по умолчанию 31 учитывает
текущий кадр, а также 15 предыдущих кадров и 15 последующих кадров.
Использование большего окна приводит к более сильному эффекту сглаживания и, следовательно, к меньшему усилению.
вариация, т.е. более медленная адаптация усиления. И наоборот, использование меньшего окна приводит к
более слабый эффект сглаживания и, следовательно, большее изменение усиления, т.е. более быстрое усиление
приспособление. Другими словами, чем больше вы увеличиваете это значение, тем больше динамический
Audio Normalizer будет вести себя как «традиционный» фильтр нормализации. На
Напротив, чем больше вы уменьшите это значение, тем больше будет
вести себя как компрессор динамического диапазона.
p Установите целевое пиковое значение. Это определяет наивысший допустимый уровень величины для
нормализованный аудиовход. Этот фильтр будет пытаться приблизиться к целевой пиковой величине.
как можно точнее, но в то же время гарантирует, что нормализованный
сигнал никогда не превысит пиковую величину. Максимальный местный коэффициент усиления кадра равен
налагается непосредственно величиной целевого пика. Значение по умолчанию - 0.95 и, следовательно,
оставляет запас в 5% *. Не рекомендуется превышать это значение.
m Установите максимальный коэффициент усиления. В диапазоне от 1.0 до 100.0. По умолчанию 10.0. Динамический
Audio Normalizer определяет максимально возможный (локальный) коэффициент усиления для каждого входа.
кадр, т. е. максимальный коэффициент усиления, который не приводит к отсечению или искажению.
Максимальный коэффициент усиления определяется выборкой максимальной амплитуды кадра.
Однако Dynamic Audio Normalizer дополнительно ограничивает максимальное усиление кадра.
на заранее определенный (глобальный) максимальный коэффициент усиления. Это сделано во избежание
чрезмерные коэффициенты усиления в «тихих» или почти бесшумных кадрах. По умолчанию максимальное
коэффициент усиления составляет 10.0. Для большинства входов значение по умолчанию должно быть достаточным, и
обычно не рекомендуется увеличивать это значение. Хотя для ввода с чрезвычайно
низкий общий уровень громкости, возможно, потребуется разрешить еще более высокие коэффициенты усиления. Примечание,
однако, что Dynamic Audio Normalizer не просто применяет «жесткий» порог
(т.е. значения отсечения выше порога). Вместо этого «сигмовидная» пороговая функция
будет применяться. Таким образом, коэффициенты усиления будут плавно приближаться к пороговому значению.
значение, но никогда не превышайте это значение.
r Установите целевое среднеквадратичное значение. В диапазоне от 0.0 до 1.0. По умолчанию 0.0 - отключено. По умолчанию,
динамический нормализатор звука выполняет «пиковую» нормализацию. Это означает, что
максимальный локальный коэффициент усиления для каждого кадра определяется (только) наивысшим значением кадра
образец величины. Таким образом можно максимально усилить сэмплы без
превышение максимального уровня сигнала, т.е. без клиппирования. Однако при желании
Dynamic Audio Normalizer также может учитывать среднеквадратическое значение кадра,
сокращенно RMS. В электротехнике обычно используется RMS для определения
мощность изменяющегося во времени сигнала. Поэтому считается, что RMS лучше
приближение к «воспринимаемой громкости», чем просто просмотр пика сигнала
величина. Следовательно, путем настройки всех кадров на постоянное среднеквадратичное значение, равномерное
"воспринимаемая громкость" может быть установлена. Если задано целевое среднеквадратичное значение,
локальный коэффициент усиления кадра определяется как фактор, который приведет именно к тому, что
Среднеквадратичное значение. Обратите внимание, однако, что максимальный коэффициент местного усиления по-прежнему ограничен
образец максимальной величины кадра, чтобы предотвратить обрезку.
n Включите связывание каналов. По умолчанию включен. По умолчанию Dynamic Audio
Нормализатор усилит все каналы на одинаковую величину. Это означает тот же выигрыш
коэффициент будет применяться ко всем каналам, т. е. максимально возможный коэффициент усиления равен
определяется по самому «громкому» каналу. Однако в некоторых записях может случиться так, что
громкость разных каналов неравномерна, например, один канал может быть «тише», чем
другой (и). В этом случае эту опцию можно использовать для отключения канала.
связь. Таким образом, коэффициент усиления будет определяться независимо для каждого канала,
в зависимости только от выборки наивысшей амплитуды отдельного канала. Это позволяет
согласование громкости разных каналов.
c Включите коррекцию смещения постоянного тока. По умолчанию отключено. Звуковой сигнал (во время
домен) - это последовательность выборочных значений. В Dynamic Audio Normalizer эти образцы
значения представлены в диапазоне от -1.0 до 1.0, независимо от исходного ввода
формат. Обычно аудиосигнал или "форма волны" должен быть сосредоточен вокруг нуля.
точка. Это означает, что если мы вычислим среднее значение всех выборок в файле или в
один кадр, то результат должен быть 0.0 или, по крайней мере, очень близок к этому значению. Если,
однако имеется значительное отклонение среднего значения от 0.0 в любом
положительное или отрицательное направление, это называется смещением постоянного тока или смещением постоянного тока. Поскольку
Смещение постоянного тока явно нежелательно, динамический нормализатор звука обеспечивает дополнительное смещение постоянного тока.
исправление. Если включена коррекция смещения постоянного тока, динамический нормализатор звука будет
определить среднее значение или смещение «коррекции постоянного тока» каждого входного кадра и вычесть
это значение из всех значений выборки кадра, которое гарантирует, что эти выборки
снова сосредоточился вокруг 0.0. Также, чтобы избежать "пробелов" на границах кадра,
Значения смещения коррекции постоянного тока будут плавно интерполироваться между соседними кадрами.
b Включите альтернативный граничный режим. По умолчанию отключено. Динамический звук
Нормализатор учитывает определенное окружение вокруг каждого кадра. Это включает
предыдущие кадры, а также последующие кадры. Однако для «рубежа»
кадры, расположенные в самом начале и в самом конце аудиофайла, не все
соседние кадры доступны. В частности, для первых нескольких кадров в
аудиофайл, предыдущие кадры неизвестны. И, аналогично, последние несколько
кадры в аудиофайле, последующие кадры неизвестны. Таким образом, вопрос
Возникает вопрос, какие коэффициенты усиления следует принять для пропущенных кадров в "границе"
область. Dynamic Audio Normalizer реализует два режима, чтобы справиться с этой ситуацией.
Граничный режим по умолчанию предполагает коэффициент усиления ровно 1.0 для отсутствующих кадров,
что приводит к плавному появлению и исчезновению в начале и в конце
input соответственно.
s Установите коэффициент сжатия. В диапазоне от 0.0 до 30.0. По умолчанию 0.0. По умолчанию
Dynamic Audio Normalizer не применяет "традиционное" сжатие. Это означает, что
пики сигнала не будут обрезаны, и, таким образом, будет сохранен полный динамический диапазон.
в каждом местном районе. Однако в некоторых случаях может быть желательно комбинировать
алгоритм нормализации Dynamic Audio Normalizer с более "традиционным"
сжатие. Для этой цели Dynamic Audio Normalizer предоставляет дополнительный
функция сжатия (порога). Если (и только если) функция сжатия
включен, все входные кадры будут обрабатываться функцией порога мягкого перегиба до
к фактическому процессу нормализации. Проще говоря, функция определения порога будет
отсечь все образцы, величина которых превышает определенное пороговое значение. Однако
Dynamic Audio Normalizer не просто применяет фиксированное пороговое значение. Вместо этого
пороговое значение будет корректироваться для каждого отдельного кадра. В общем, меньше
параметры приводят к более сильному сжатию и наоборот. Значения ниже 3.0 не считаются
рекомендуется, поскольку могут появиться слышимые искажения.
ушная сера
Упростите прослушивание звука в наушниках.
Этот фильтр добавляет «реплики» к стереозвуку 44.1 кГц (т.е. формат аудио компакт-диска), так что когда
при прослушивании в наушниках стереоизображение перемещается изнутри вашей головы (стандарт для
наушники) наружу и перед слушателем (стандарт для динамиков).
Портировано с SoX.
эквалайзер
Примените двухполюсный фильтр выравнивания пиков (EQ). С этим фильтром уровень сигнала на
и вокруг выбранной частоты можно увеличивать или уменьшать, в то время как (в отличие от полосы пропускания и
bandreject фильтры), что на всех остальных частотах не изменилось.
Чтобы получить сложные кривые выравнивания, этот фильтр можно использовать несколько раз,
у каждого своя центральная частота.
Фильтр принимает следующие параметры:
частота, f
Установите центральную частоту фильтра в Гц.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type.
получить, g
Установите необходимое усиление или затухание в дБ. Остерегайтесь обрезания при использовании позитивного
усиление.
Примеры
· Ослабьте 10 дБ при 1000 Гц, с полосой пропускания 200 Гц:
эквалайзер = f = 1000: width_type = h: width = 200: g = -10
· Примените усиление 2 дБ на 1000 Гц с Q 1 и ослабьте 5 дБ на 100 Гц с Q 2:
equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5
фленджер
Примените к звуку эффект флэнжера.
Фильтр принимает следующие параметры:
задерживать
Установите базовую задержку в миллисекундах. Диапазон от 0 до 30. Значение по умолчанию - 0.
глубина
Установите добавленную задержку развертки в миллисекундах. Диапазон от 0 до 10. Значение по умолчанию - 2.
движение
Установите процент регенерации (обратная связь с задержанным сигналом). Диапазон от -95 до 95. По умолчанию
значение 0.
ширина
Установите процент задержанного сигнала, смешанного с оригиналом. Диапазон от 0 до 100. По умолчанию
значение 71.
скорость
Установите количество разверток в секунду (Гц). Диапазон от 0.1 до 10. Значение по умолчанию - 0.5.
формировать
Задайте форму развернутой волны, можно треугольный or синусоидальный. Значение по умолчанию синусоидальный.
фаза
Установите процентный сдвиг развернутой волны для многоканального режима. Диапазон от 0 до 100. Значение по умолчанию.
это 25.
интерп
Установить интерполяцию линии задержки, линейный or квадратный. По умолчанию линейный.
высокая частота
Примените фильтр верхних частот с точечной частотой 3 дБ. Фильтр может быть как однополюсным, так и однополюсным.
или двухполюсный (по умолчанию). Спад фильтра составляет 6 дБ на полюс на октаву (20 дБ на октаву).
полюс за декаду).
Фильтр принимает следующие параметры:
частота, f
Установите частоту в Гц. По умолчанию 3000.
столбы p
Установите количество полюсов. По умолчанию 2.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type. Относится только к двухполюсному
фильтр. По умолчанию 0.707q дает ответ Баттерворта.
присоединиться
Объедините несколько входных потоков в один многоканальный поток.
Он принимает следующие параметры:
затраты
Количество входных потоков. По умолчанию 2.
канал_макет
Желаемый макет выходного канала. По умолчанию это стерео.
карта Сопоставьте каналы от входов к выходу. Аргументом является список отображений, разделенных символом "|",
каждый в "input_idx.in_channel-out_channel " форме. input_idx отсчитываемый от 0 индекс
входной поток. in_channel может быть либо именем входного канала (например, FL для
передний левый) или его индекс в указанном входном потоке. out_channel это имя
выходной канал.
Фильтр попытается угадать сопоставления, если они не указаны явно. Это
делает это, сначала пытаясь найти неиспользуемый соответствующий входной канал, и если это не удается,
выбирает первый неиспользуемый входной канал.
Присоединяйтесь к 3 входам (с правильно настроенными схемами каналов):
ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex join = inputs = 3 OUTPUT
Создайте вывод 5.1 из 6 одноканальных потоков:
ffmpeg -i fl -i fr -i fc -i sl -i sr -i lfe -filter_complex
'join=inputs=6:channel_layout=5.1:map=0.0-FL|1.0-FR|2.0-FC|3.0-SL|4.0-SR|5.0-LFE'
внешний
парнишка
Загрузите плагин LADSPA (Linux Audio Developer's Simple Plugin API).
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с помощью "--enable-ladspa".
файл, f
Задает имя загружаемой библиотеки подключаемых модулей LADSPA. Если переменная среды
LADSPA_PATH определен, плагин LADSPA ищется в каждом из каталогов
указывается списком, разделенным двоеточиями в LADSPA_PATH, иначе в стандартном LADSPA
пути, которые находятся в следующем порядке: ГЛАВНАЯ / .ladspa / lib /, / USR / местные / библиотека / ladspa /,
/ usr / lib / ladspa /.
Плагин, p
Определяет плагин в библиотеке. Некоторые библиотеки содержат только один плагин, но
другие содержат многие из них. Если этот параметр не установлен, фильтр отобразит все доступные плагины.
в указанной библиотеке.
управления, c
Установите '|' разделенный список элементов управления, которые представляют собой ноль или более значений с плавающей запятой
которые определяют поведение загруженного плагина (например, задержка, порог или
прирост). Элементы управления должны быть определены с использованием следующего синтаксиса:
c0 =value0| c1 =value1| c2 =value2| ..., где Valuei это значение, установленное на i-й контроль.
If контрольная установлен на "помощь", все доступные элементы управления и их допустимые диапазоны
распечатаны.
частота дискретизации, s
Укажите частоту дискретизации, по умолчанию 44100. Используется, только если у плагина нулевые входы.
nb_samples, n
Установите количество выборок на канал для каждого выходного кадра, по умолчанию 1024. Только
используется, если у плагина нулевые входы.
продолжительность, d
Установите минимальную продолжительность исходного звука. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса. Обратите внимание, что итоговая продолжительность может
быть больше указанной продолжительности, так как сгенерированный звук всегда обрезается на
конец полного кадра. Если не указано, или выраженная продолжительность отрицательна,
звук должен генерироваться вечно. Используется только в том случае, если у плагина нулевые входы.
Примеры
· Перечислите все доступные плагины в библиотеке amp (пример плагина LADSPA):
ladspa = файл = amp
· Перечислить все доступные элементы управления и их допустимые диапазоны для плагина "vcf_notch" из "VCF"
библиотека:
ladspa = f = vcf: p = vcf_notch: c = help
· Имитация звукового оборудования низкого качества с помощью плагина "Computer Music Toolkit" (CMT)
библиотека:
ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12
· Добавить реверберацию к звуку с помощью TAP-плагинов (Tom's Audio Processing plugins):
ladspa = file = tap_reverb: tap_reverb
· Генерация белого шума с амплитудой 0.2:
ladspa = файл = cmt: noise_source_white: c = c0 = .2
· Создавайте клики со скоростью 20 ударов в минуту, используя плагин «C * Click - Metronome» из «C * Audio Plugin».
Библиотека Suite »(CAPS):
ladspa = file = caps: Нажмите: c = c1 = 20 '
· Применить эффект «C * Eq10X2 - 10-полосный стереофонический эквалайзер»:
ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2
Команды
Этот фильтр поддерживает следующие команды:
cN Изменить N-ое контрольное значение.
Если указанное значение недействительно, оно игнорируется и сохраняется предыдущее.
НЧ
Примените фильтр нижних частот с точечной частотой 3 дБ. Фильтр может быть однополюсным или однополюсным.
двухполюсный (по умолчанию). Спад фильтра составляет 6 дБ на полюс на октаву (20 дБ на полюс
за десятилетие).
Фильтр принимает следующие параметры:
частота, f
Установите частоту в Гц. По умолчанию 500.
столбы p
Установите количество полюсов. По умолчанию 2.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Укажите ширину полосы фильтра в единицах width_type. Относится только к двухполюсному
фильтр. По умолчанию 0.707q дает ответ Баттерворта.
кастрюля
Микшируйте каналы с определенными уровнями усиления. Фильтр принимает схему выходного канала.
за которым следует набор определений каналов.
Этот фильтр также предназначен для эффективного переназначения каналов аудиопотока.
Фильтр принимает параметры формы: "l|переиграть|переиграть| ... "
l расположение выходных каналов или количество каналов
переиграть
спецификация выходного канала в виде:
"исходящее_имя=[усиление*]in_name[+ [усиление*]in_name...] "
исходящее_имя
выходной канал для определения, либо имя канала (FL, FR и т. д.), либо номер канала
(c0, c1 и т. д.)
усиление
мультипликативный коэффициент для канала, 1 без изменения громкости
in_name
входной канал для использования, подробности см. в out_name; нельзя смешивать названные и
пронумерованные входные каналы
Если "=" в спецификации канала заменить на "<", то усиление для этого
спецификация будет перенормирована так, чтобы общая сумма была равна 1, что позволит избежать шума отсечения.
Смешивание Примеры реализованных проектов
Например, если вы хотите выполнить понижающее микширование из стерео в моно, но с большим коэффициентом для
левый канал:
pan=1c|c0=0.9*c0+0.1*c1
Настраиваемое понижающее микширование в стерео, которое автоматически работает для 3-, 4-, 5- и 7-каналов
окружают:
панорама = стерео | FL <FL + 0.5 * FC + 0.6 * BL + 0.6 * SL | FR <FR + 0.5 * FC + 0.6 * BR + 0.6 * SR
Обратите внимание, что FFmpeg интегрирует систему понижающего микширования (и повышающего микширования) по умолчанию, которая должна быть
предпочтительнее (см. параметр "-ac"), если у вас нет особых потребностей.
Переназначение Примеры реализованных проектов
Переназначение каналов будет эффективным тогда и только тогда, когда:
*
*
Если все эти условия выполнены, фильтр уведомит пользователя («Чистый канал
обнаружено сопоставление ") и используйте оптимизированный метод без потерь для переназначения.
Например, если у вас есть источник 5.1 и вы хотите получить стереофонический аудиопоток, отбросив дополнительный
каналы:
pan = "стерео | c0 = FL | c1 = FR"
Имея один и тот же источник, вы также можете переключать передний левый и передний правый каналы и сохранять
расположение входного канала:
pan = "5.1 | c0 = c1 | c1 = c0 | c2 = c2 | c3 = c3 | c4 = c4 | c5 = c5"
Если вход представляет собой стереофонический аудиопоток, вы можете отключить звук переднего левого канала (и при этом оставить
расположение стереоканалов) с:
pan = "стерео | c1 = c1"
Тем не менее, со входом стереофонического аудиопотока вы можете скопировать правый канал в оба передних левых.
и правильно:
pan = "стерео | c0 = FR | c1 = FR"
переиграть
Фильтр сканера ReplayGain. Этот фильтр принимает аудиопоток на входе и выводит его.
без изменений. По окончании фильтрации отображается track_gain и track_peak.
Resample
Преобразуйте формат аудиосэмпла, частоту дискретизации и расположение каналов. Это не должно быть
используется напрямую.
боковая цепь
Этот фильтр действует как обычный компрессор, но может сжимать обнаруженный сигнал.
используя второй входной сигнал. Ему нужны два входных потока, и он возвращает один выходной поток.
Первый входной поток будет обрабатываться в зависимости от сигнала второго потока. Отфильтрованные
сигнал затем может быть отфильтрован другими фильтрами на более поздних этапах обработки. Видеть кастрюля и
объединять фильтр.
Фильтр принимает следующие параметры:
порог
Если сигнал второго потока поднимется выше этого уровня, это повлияет на снижение усиления.
первого потока. По умолчанию 0.125. Диапазон составляет от 0.00097563 до 1.
соотношение
Установите коэффициент уменьшения сигнала. 1: 2 означает, что если уровень повышен на 4 дБ
выше порога, после снижения он будет только на 2 дБ выше. По умолчанию 2.
Диапазон составляет от 1 до 20.
атаковать
Количество миллисекунд, в течение которых сигнал должен превысить пороговое значение перед усилением.
сокращение начинается. По умолчанию 20. Диапазон составляет от 0.01 до 2000.
освободить
Количество миллисекунд, в течение которого сигнал должен упасть ниже порогового значения, прежде чем произойдет снижение.
снова уменьшилось. По умолчанию 250. Диапазон от 0.01 до 9000.
макияж
Установите величину, на которую сигнал будет усилен после обработки. По умолчанию 2.
Диапазон от 1 до 64.
колено
Изогните острый изгиб вокруг порога, чтобы более мягко войти в режим уменьшения усиления.
По умолчанию - 2.82843. Диапазон составляет от 1 до 8.
ссылке.
Выберите, будет ли средний уровень между всеми каналами потока боковой цепи или
более громкий («максимальный») канал бокового потока влияет на снижение. По умолчанию
"в среднем".
обнаружение
Должен ли быть получен точный сигнал в случае «пика» или RMS в случае «rms».
По умолчанию установлено «среднеквадратичное значение», что в основном более плавное.
Примеры
· Пример полного ffmpeg с 2 аудиовходами, 1-й вход сжимается в зависимости от
сигнал 2-го входа, а затем сжатый сигнал для объединения со 2-м входом:
ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1: a] asplit = 2 [sc] [mix]; [0: a] [sc] sidechaincompress [compr]; [compr] [mix] amerge"
тишина
Обнаружение тишины в аудиопотоке.
Этот фильтр регистрирует сообщение, когда обнаруживает, что громкость входящего звука меньше или равна
значение допуска шума для продолжительности, большей или равной минимальному обнаруженному шуму
продолжительность.
Напечатанное время и продолжительность выражаются в секундах.
Фильтр принимает следующие параметры:
продолжительность, d
Установите продолжительность тишины до уведомления (по умолчанию 2 секунды).
шум, n
Установите допустимый уровень шума. Может быть указано в дБ (если к указанному
значение) или отношение амплитуд. По умолчанию -60 дБ или 0.001.
Примеры
· Обнаружение 5 секунд тишины с допустимым уровнем шума -50 дБ:
Silencedetect = n = -50 дБ: d = 5
· Полный пример с FFmpeg для обнаружения тишины с допуском шума 0.0001 в
тишина.mp3:
ffmpeg -i silent.mp3 -af silentdetect = noise = 0.0001 -f null -
тишина удалить
Убрать тишину с начала, середины или конца звука.
Фильтр принимает следующие параметры:
start_ periods
Это значение используется, чтобы указать, следует ли обрезать звук в начале звука. А
нулевое значение указывает, что тишину не следует обрезать с самого начала. Когда
указав ненулевое значение, он обрезает звук до тех пор, пока не обнаружит отсутствие тишины. Как обычно,
при обрезке тишины от начала аудио start_ periods будет 1 но может
можно увеличить до более высоких значений, чтобы обрезать весь звук до определенного количества без тишины
периоды. Значение по умолчанию - 0.
start_duration
Укажите количество времени, в течение которого необходимо обнаруживать отсутствие тишины, прежде чем оно прекратит обрезку
аудио. При увеличении продолжительности всплески шума можно рассматривать как тишину и
обрезаны. Значение по умолчанию - 0.
start_threshold
Это указывает, какое значение выборки следует рассматривать как тишину. Для цифрового звука
значение 0 может быть хорошим, но для аудио, записанного с аналогового сигнала, вы можете увеличить
значение для учета фонового шума. Может быть указано в дБ (если "дБ" -
добавляется к указанному значению) или отношение амплитуд. Значение по умолчанию - 0.
стоп_периоды
Установите счетчик для обрезки тишины от конца звука. Чтобы убрать тишину с
в середине файла укажите стоп_периоды это отрицательно. Затем это значение обрабатывается
как положительное значение и используется, чтобы указать, что эффект должен перезапустить обработку как
указано start_ periods, что делает его пригодным для устранения периодов тишины в
середина аудио. Значение по умолчанию - 0.
стоп_длительность
Укажите продолжительность тишины, которая должна существовать, прежде чем звук больше не будет копироваться. К
указав более высокую продолжительность, в звуке можно оставить желаемую тишину.
Значение по умолчанию 0.
стоп_порог
Это то же самое, что и start_threshold но для обрезки тишины в конце звука.
Может быть указано в дБ (если к указанному значению добавляется «дБ») или амплитуде.
соотношение. Значение по умолчанию - 0.
оставить_тишину
Это указывает на то, что стоп_длительность длина аудио должна быть оставлена нетронутой на
начало каждого периода молчания. Например, если вы хотите убрать длинные паузы
между словами, но не хочу полностью удалять паузы. Значение по умолчанию - 0.
Примеры
· В следующем примере показано, как этот фильтр можно использовать для запуска записи,
не содержать задержку при запуске, которая обычно возникает между нажатием на запись
кнопка и начало выступления:
молчание = 1: 5: 0.02
утроить
Увеличьте или уменьшите высокие (верхние) частоты звука с помощью двухполюсного полочного фильтра с
реакция аналогична реакции регуляторов тембра стандартного Hi-Fi. Это также известно как
полочный эквалайзер (EQ).
Фильтр принимает следующие параметры:
получить, g
Укажите коэффициент усиления в зависимости от того, какое из значений меньше: ~ 22 кГц и частота Найквиста. Его
полезный диапазон составляет от -20 (для большого сокращения) до +20 (для большого ускорения). Остерегаться
отсечение при использовании положительного усиления.
частота, f
Установите центральную частоту фильтра, чтобы ее можно было использовать для увеличения или уменьшения
частотный диапазон, который необходимо увеличить или уменьшить. Значение по умолчанию - 3000 Гц.
ширина_тип
Установить метод для указания ширины полосы фильтра.
h Hz
q Q-фактор
o октава
s склон
ширина, w
Определите, насколько крутой переход полки фильтра.
объем
Отрегулируйте громкость входящего звука.
Он принимает следующие параметры:
объем
Установите выражение громкости звука.
Выходные значения обрезаются до максимального значения.
Громкость звука на выходе определяется соотношением:
знак равно *
Значение по умолчанию для объем равно «1.0».
точность
Этот параметр представляет математическую точность.
Он определяет, какие форматы входных выборок будут разрешены, что влияет на точность
масштабирования объема.
фиксированной
8-битная фиксированная точка; это ограничивает формат входной выборки до U8, S16 и S32.
плавать
32-битная с плавающей точкой; это ограничивает формат входной выборки до FLT. (дефолт)
двойной
64-битная с плавающей точкой; это ограничивает формат входного образца до DBL.
переиграть
Выберите поведение при обнаружении побочных данных ReplayGain во входных кадрах.
падение
Удалите побочные данные ReplayGain, игнорируя их содержимое (по умолчанию).
игнорировать
Игнорировать побочные данные ReplayGain, но оставить их в кадре.
трек
Предпочитайте усиление трека, если оно есть.
альбом
Предпочтите альбомное усиление, если оно есть.
replaygain_preamp
Коэффициент усиления до усиления в дБ, применяемый к выбранному усилению при воспроизведении.
Значение по умолчанию для replaygain_preamp это 0.0.
Eval
Устанавливается при оценке выражения объема.
Принимает следующие значения:
консолидировать
оценивать выражение только один раз во время инициализации фильтра или когда объем
команда отправлена
рама
оценивать выражение для каждого входящего кадра
Значение по умолчанию консолидировать.
Выражение объема может содержать следующие параметры.
n номер кадра (начиная с нуля)
nb_channels
количество каналов
nb_consumed_samples
количество выборок, потребляемых фильтром
nb_samples
количество выборок в текущем кадре
пост исходное положение кадра в файле
PTS кадр ПТС
частота дискретизации
частота дискретизации
запуск
PTS в начале трансляции
старт
время в начале трансляции
t время кадра
tb временная метка временная база
объем
последнее установленное значение объема
Обратите внимание, что когда Eval на консолидировать только частота дискретизации и tb доступны переменные,
все остальные переменные будут оцениваться как NAN.
Команды
Этот фильтр поддерживает следующие команды:
объем
Измените выражение объема. Команда принимает тот же синтаксис, что и
соответствующий вариант.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
replaygain_noclip
Предотвратите обрезку, ограничив применяемое усиление.
Значение по умолчанию для replaygain_noclip это 1.
Примеры
· Уменьшите громкость входящего звука вдвое:
объем = объем = 0.5
объем = объем = 1/2
volume = volume = -6.0206дБ
Во всех приведенных выше примерах именованный ключ для объем может быть опущено, например, как в:
объем = 0.5
· Увеличьте входную мощность звука на 6 децибел, используя точность с фиксированной запятой:
громкость = громкость = 6 дБ: точность = фиксированная
· Объем затухания через 10 секунд с периодом аннигиляции 5 секунд:
volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame
Volumedetect
Определите громкость входного видео.
Фильтр не имеет параметров. Вход не модифицируется. Статистика по объему будет
быть напечатанным в журнале, когда будет достигнут конец входного потока.
В частности, он покажет средний объем (среднеквадратичный), максимальный объем (на каждый
выборочная база), и начало гистограммы значений зарегистрированного объема (от
максимальное значение для совокупной 1/1000 выборки).
Все объемы указаны в децибелах относительно максимального значения PCM.
Примеры
Вот выдержка из вывода:
[Parsed_volumedetect_0 0xa23120] mean_volume: -27 дБ
[Parsed_volumedetect_0 0xa23120] max_volume: -4 дБ
[Parsed_volumedetect_0 0xa23120] гистограмма_4db: 6
[Parsed_volumedetect_0 0xa23120] гистограмма_5db: 62
[Parsed_volumedetect_0 0xa23120] гистограмма_6db: 286
[Parsed_volumedetect_0 0xa23120] гистограмма_7db: 1042
[Parsed_volumedetect_0 0xa23120] гистограмма_8db: 2551
[Parsed_volumedetect_0 0xa23120] гистограмма_9db: 4609
[Parsed_volumedetect_0 0xa23120] гистограмма_10db: 8409
Это означает, что:
· Среднее квадратическое значение энергии составляет приблизительно -27 дБ, или 10 ^ -2.7.
· Самая большая выборка находится на уровне -4 дБ, или, точнее, между -4 дБ и -5 дБ.
· Есть 6 отсчетов при -4 дБ, 62 при -5 дБ, 286 при -6 дБ и т. Д.
Другими словами, увеличение громкости на +4 дБ не вызывает клиппирования, а увеличение на +5
дБ вызывает клиппирование для 6 сэмплов и т. д.
АУДИО ИСТОЧНИКИ
Ниже приводится описание доступных в настоящее время аудиоисточников.
бездельник
Буферизируйте аудиокадры и сделайте их доступными для цепочки фильтров.
Этот источник в основном предназначен для программного использования, в частности, через интерфейс.
определяется в libavfilter / asrc_abuffer.h.
Он принимает следующие параметры:
временная база
База времени, которая будет использоваться для отметок времени отправленных кадров. Это должно быть либо
число с плавающей запятой или в числитель/знаменатель форме.
частота дискретизации
Частота дискретизации входящих аудио буферов.
sample_fmt
Примерный формат входящего аудиобуфера. Либо название формата образца, либо его
соответствующее целочисленное представление из перечисления AVSampleFormat в
libavutil / samplefmt.h
канал_макет
Расположение каналов входящего аудиобуфера. Либо название макета канала из
channel_layout_map в libavutil / channel_layout.c или соответствующее ему целое число
представление из макросов AV_CH_LAYOUT_ * в libavutil / channel_layout.h
каналы
Количество каналов входящих аудио буферов. Если оба каналы и
канал_макет указаны, то они должны быть согласованными.
Примеры
abuffer = sample_rate = 44100: sample_fmt = s16p: channel_layout = стерео
даст указание источнику принять планарный 16-битный подписанный стереозвук на частоте 44100 Гц. Поскольку
формат сэмпла с названием "s16p" соответствует номеру 6 и раскладке каналов "стерео"
соответствует значению 0x3, это эквивалентно:
abuffer = sample_rate = 44100: sample_fmt = 6: channel_layout = 0x3
aevalsrc
Сгенерировать звуковой сигнал, заданный выражением.
Этот источник принимает на входе одно или несколько выражений (по одному для каждого канала), которые
оценивается и используется для генерации соответствующего аудиосигнала.
Этот источник принимает следующие варианты:
выражения
Установите список выражений, разделенных символом "|", для каждого отдельного канала. В случае если
канал_макет опция не указана, выбранная раскладка каналов зависит от
количество предоставленных выражений. В противном случае последнее указанное выражение применяется к
остальные выходные каналы.
канал_макет, c
Установите макет канала. Количество каналов в указанной раскладке должно быть равно
к количеству указанных выражений.
продолжительность, d
Установите минимальную продолжительность исходного звука. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса. Обратите внимание, что итоговая продолжительность может
быть больше указанной продолжительности, так как сгенерированный звук всегда обрезается на
конец полного кадра.
Если не указано, или выраженная продолжительность отрицательная, звук должен быть
создается навсегда.
nb_samples, n
Установите количество выборок на канал для каждого выходного кадра, по умолчанию 1024.
частота дискретизации, s
Укажите частоту дискретизации, по умолчанию 44100.
Каждое выражение в выражения может содержать следующие константы:
n номер оцениваемой выборки, начиная с 0
t время оцениваемой пробы, выраженное в секундах, начиная с 0
s частота дискретизации
Примеры
· Создать тишину:
aevalsrc = 0
· Сгенерировать сигнал sin с частотой 440 Гц, установить частоту дискретизации 8000 Гц:
aevalsrc = "/ sin (440 * 2 * PI * t): s = 8000"
· Сгенерируйте двухканальный сигнал, укажите расположение каналов (передний центральный + задний
Center) явно:
aevalsrc = "/ sin (420 * 2 * PI * t) | cos (430 * 2 * PI * t): c = FC | BC"
· Создать белый шум:
aevalsrc = "/ - 2+случайный(0)»
· Генерация сигнала с амплитудной модуляцией:
aevalsrc = "/ sin (10 * 2 * PI * t) * sin (880 * 2 * PI * t)"
· Генерация бинауральных ритмов 2.5 Гц на несущей 360 Гц:
aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"
Anullsrc
Нулевой источник звука возвращает необработанные звуковые кадры. В основном это полезно в качестве шаблона
и использоваться в инструментах анализа / отладки или в качестве источника фильтров, которые
игнорировать входные данные (например, фильтр sox synth).
Этот источник принимает следующие варианты:
канал_макет, cl
Определяет компоновку канала и может быть целым числом или строкой, представляющей
расположение каналов. Значение по умолчанию канал_макет это «стерео».
Проверьте определение channel_layout_map в libavutil / channel_layout.c для отображения
между строками и значениями макета канала.
частота дискретизации, r
Задает частоту дискретизации, по умолчанию 44100.
nb_samples, n
Установите количество выборок на запрошенные кадры.
Примеры
· Установите частоту дискретизации 48000 Гц и раскладку каналов AV_CH_LAYOUT_MONO.
anullsrc = r = 48000: cl = 4
· Проделайте ту же операцию с более очевидным синтаксисом:
anullsrc = r = 48000: cl = моно
Все параметры должны быть определены явно.
Flite
Синтезируйте голосовое высказывание с помощью библиотеки libflite.
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с
"--enable-libflite".
Обратите внимание, что библиотека flite не является потокобезопасной.
Фильтр принимает следующие параметры:
list_voices
Если установлено значение 1, перечислить имена доступных голосов и немедленно выйти. Дефолт
значение 0.
nb_samples, n
Установите максимальное количество выборок на кадр. Значение по умолчанию - 512.
текстовый файл
Задайте имя файла, содержащего текст для произнесения.
текст
Сделайте так, чтобы текст говорил.
голос, v
Установите голос, который будет использоваться для синтеза речи. Значение по умолчанию - «кал». Также
list_voices опцию.
Примеры
· Читать из файла Speech.txt, и синтезируйте текст стандартным флитным голосом:
flite = textfile = speech.txt
· Прочтите указанный текст, выбрав «слт» голосом:
flite = text = 'Прощай, бедняга из субподразделения, комментатором которого я являюсь': voice = slt
· Введите текст в ffmpeg:
ffmpeg -f lavfi -i flite = text = 'Прощай, бедняга из подподразделения, комментатором которого я являюсь': voice = slt
· Делать ffplay произнести указанный текст с помощью «flite» и «lavfi»:
ffplay -f lavfi flite = text = 'Больше не печалься о том, что ты сделал.'
Для получения дополнительной информации о libflite проверьте:http://www.speech.cs.cmu.edu/flite/>
их
Сгенерируйте звуковой сигнал, состоящий из синусоидальной волны с амплитудой 1/8.
Аудиосигнал точный.
Фильтр принимает следующие параметры:
частота, f
Установите несущую частоту. По умолчанию 440 Гц.
звуковой_фактор, b
Включить периодический звуковой сигнал каждую секунду с частотой звуковой_фактор раз перевозчик
частота. По умолчанию 0, что означает, что звуковой сигнал отключен.
частота дискретизации, r
Укажите частоту дискретизации, по умолчанию 44100.
продолжительность, d
Укажите продолжительность генерируемого аудиопотока.
Samples_per_frame
Установите количество выборок на выходной кадр, по умолчанию 1024.
Примеры
· Сгенерируйте простую синусоидальную волну 440 Гц:
их
· Генерация синусоидальной волны 220 Гц с звуковым сигналом 880 Гц каждую секунду в течение 5 секунд:
синус = 220: 4: d = 5
синус = f = 220: b = 4: d = 5
синус = частота = 220: beep_factor = 4: продолжительность = 5
АУДИО МОЙКИ
Ниже приводится описание доступных в настоящее время аудиоприемников.
буферная раковина
Буферизируйте аудиокадры и сделайте их доступными до конца цепочки фильтров.
Этот сток в основном предназначен для программного использования, в частности через интерфейс.
определяется в libavfilter / buffersink.h или система опций.
Он принимает указатель на структуру AVABufferSinkContext, которая определяет входящий
форматы буферов, которые будут переданы в качестве непрозрачного параметра в "avfilter_init_filter" для
инициализация.
раковина
Нулевой приемник звука; ничего не делать с входным звуком. В основном это полезно в качестве
шаблон и для использования в инструментах анализа / отладки.
ВИДЕО ФИЛЬТРЫ
Когда вы настраиваете свою сборку FFmpeg, вы можете отключить любой из существующих фильтров, используя
"- отключить фильтры". Вывод конфигурации покажет видеофильтры, включенные в ваш
строить.
Ниже приводится описание доступных на данный момент видео фильтров.
альфаэкстракт
Извлеките альфа-компонент из ввода как видео в оттенках серого. Это особенно полезно
с альфа-слияние фильтр.
альфа-слияние
Добавьте или замените альфа-компонент первичного ввода на значение оттенков серого для
второй вход. Это предназначено для использования с альфаэкстракт разрешить передачу или
хранение последовательностей кадров с альфа-каналом в формате, не поддерживающем альфа-канал
канал.
Например, чтобы восстановить полные кадры из обычного видео в кодировке YUV и отдельного
видео создано с альфаэкстракт, вы можете использовать:
фильм = in_alpha.mkv [альфа]; [вход] [альфа] alphamerge [выход]
Поскольку этот фильтр предназначен для восстановления, он работает с последовательностями кадров без
с учетом временных меток и завершается, когда любой из входных данных достигает конца потока. Это будет
вызвать проблемы, если ваш конвейер кодирования отбрасывает кадры. Если вы пытаетесь применить изображение
в качестве наложения на видеопоток рассмотрите наложение фильтр вместо этого.
задница
Такой же как субтитры фильтр, за исключением того, что он не требует, чтобы libavcodec и libavformat
Работа. С другой стороны, он ограничен файлами субтитров ASS (Advanced Substation Alpha).
Этот фильтр принимает следующие параметры в дополнение к общим параметрам из
субтитры фильтр:
формирование
Установить формовочный двигатель
Доступные значения:
автоматический
Движок формирования libass по умолчанию, лучший из имеющихся.
декриминализовано
Быстрый шейпер, не зависящий от шрифтов, который может делать только замены
комплекс
Более медленный формирователь с использованием OpenType для замен и позиционирования
По умолчанию установлено «авто».
атаденоаз
Примените Adaptive Temporal Averaging Denoiser к видеовходу.
Фильтр принимает следующие параметры:
0a Установите порог A для 1-й плоскости. По умолчанию 0.02. Допустимый диапазон от 0 до 0.3.
0b Установите порог B для 1-й плоскости. По умолчанию 0.04. Допустимый диапазон от 0 до 5.
1a Установите порог A для 2-й плоскости. По умолчанию 0.02. Допустимый диапазон от 0 до 0.3.
1b Установите порог B для 2-й плоскости. По умолчанию 0.04. Допустимый диапазон от 0 до 5.
2a Установите порог A для 3-й плоскости. По умолчанию 0.02. Допустимый диапазон от 0 до 0.3.
2b Установите порог B для 3-й плоскости. По умолчанию 0.04. Допустимый диапазон от 0 до 5.
Порог A предназначен для реакции на резкие изменения входного сигнала и порога B.
разработан, чтобы реагировать на постоянные изменения входного сигнала.
s Установите количество кадров, которые фильтр будет использовать для усреднения. По умолчанию 33. Должно быть нечетное число.
в диапазоне [5, 129].
коробка
Вычислите ограничивающую рамку для не-черных пикселей в плоскости яркости входного кадра.
Этот фильтр вычисляет ограничивающую рамку, содержащую все пиксели со значением яркости.
больше минимально допустимого значения. Параметры, описывающие ограничивающую рамку:
напечатано в журнале фильтра.
Фильтр принимает следующий вариант:
мин_знач.
Установите минимальное значение яркости. По умолчанию - 16.
черныйдетект
Обнаружение видеоинтервалов, которые (почти) полностью черные. Может быть полезно для обнаружения главы
переходы, реклама или недопустимые записи. Строки вывода содержат время для
начало, конец и продолжительность обнаруженного интервала черного, выраженная в секундах.
Для отображения строк вывода вам необходимо установить уровень логирования не ниже
Значение AV_LOG_INFO.
Фильтр принимает следующие параметры:
черный_min_duration, d
Установите минимальную продолжительность обнаружения черного, выраженную в секундах. Это должно быть не-
отрицательное число с плавающей запятой.
Значение по умолчанию 2.0.
картинка_черный_ratio_th, pic_th
Установите порог для того, чтобы считать картинку «черной». Выразите минимальное значение для
Соотношение:
/
для которых изображение считается черным. Значение по умолчанию - 0.98.
пиксель_черный_й, пикс_th
Установите порог для того, чтобы считать пиксель «черным».
Порог выражает максимальное значение яркости пикселя, для которого пиксель
считается "черным". Предоставленное значение масштабируется в соответствии со следующим уравнением:
знак равно + *
luminance_range_size и яркость_минимальное_значение зависит от формата входного видео,
диапазон составляет [0–255] для полнодиапазонных форматов YUV и [16–235] для не полнодиапазонных форматов YUV.
форматов.
Значение по умолчанию 0.10.
В следующем примере устанавливается минимальное значение максимального порога пикселей и определяется
только черные интервалы продолжительностью 2 и более секунды:
blackdetect = d = 2: pix_th = 0.00
черная рамка
Обнаружение (почти) полностью черных кадров. Может быть полезно для обнаружения главы
переходы или ролики. Строки вывода состоят из номера кадра обнаруженного
кадра, процент черноты, положение в файле, если известно, или -1 и
отметка времени в секундах.
Для отображения строк вывода вам необходимо установить уровень логирования не ниже
Значение AV_LOG_INFO.
Он принимает следующие параметры:
количество
Процент пикселей, которые должны быть ниже порогового значения; по умолчанию 98.
порог, молотить
Порог, ниже которого значение пикселя считается черным; по умолчанию 32.
смешать, смешивать
Совместите два видеокадра друг с другом.
Фильтр "blend" принимает два входных потока и выводит один поток, первый вход - это
«верхний» слой, а второй вход - «нижний» слой. Выход прекращается, когда вводится самый короткий
прекращается.
Фильтр tblend (смешение по времени) берет два последовательных кадра из одного потока, и
выводит результат, полученный путем наложения нового кадра поверх старого.
Ниже приводится описание принятых вариантов.
c0_mode
c1_mode
c2_mode
c3_mode
all_mode
Установите режим наложения для определенного пиксельного компонента или всех пиксельных компонентов в случае
all_mode. Значение по умолчанию - «нормальный».
Доступные значения для режимов компонентов:
дополнение
и
в среднем
гореть
темнеть
разница
разница128
делить
уклонение
исключение
светиться
жесткий свет
хардмикс
светлеть
линейный свет
размножаться
отрицание
"обычные"
or
наложение
феникс
прожектор
отражать
экран
мягкий свет
вычитать
яркий свет
исключающее
c0_opacity
c1_opacity
c2_opacity
c3_opacity
all_opacity
Установите прозрачность наложения для определенного пиксельного компонента или всех пиксельных компонентов в случае
all_opacity. Используется только в сочетании с режимами наложения пиксельных компонентов.
c0_expr
c1_expr
c2_expr
c3_expr
all_expr
Установите выражение наложения для определенного пиксельного компонента или всех пиксельных компонентов в случае
all_expr. Обратите внимание, что связанные параметры режима будут проигнорированы, если они установлены.
В выражениях могут использоваться следующие переменные:
N Порядковый номер отфильтрованного кадра, начиная с 0.
X
Y координаты текущего образца
W
H ширина и высота текущей фильтруемой плоскости
SW
SH Масштаб ширины и высоты в зависимости от текущей фильтруемой плоскости. Это соотношение
между соответствующим количеством пикселей плоскости яркости и пикселями текущей плоскости.
Например, для YUV4: 2: 0 значения: «1,1» для плоскости яркости и «0.5,0.5» для
плоскости цветности.
T Время текущего кадра, выраженное в секундах.
ТОП, A
Значение пиксельной составляющей в текущем местоположении для первого видеокадра (верхний слой).
НИЖНИЙ, B
Значение пиксельной составляющей в текущем местоположении для второго видеокадра (внизу
слой).
самый короткий
Принудительное завершение при завершении самого короткого ввода. По умолчанию 0. Эта опция
определен только для фильтра «наложения».
повторить
Продолжайте применять последний нижний кадр после окончания потока. Значение 0
отключить фильтр после достижения последнего кадра нижнего слоя. По умолчанию 1.
Эта опция определена только для фильтра «смешивание».
Примеры
· Применяем переход от нижнего слоя к верхнему в первые 10 секунд:
blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'
· Примените эффект шахматной доски 1x1:
blend = all_expr = 'если (eq (mod (X, 2), mod (Y, 2)), A, B)'
· Примените эффект раскрытия слева:
blend = all_expr = 'если (gte (N * SW + X, W), A, B)'
· Применить эффект раскрытия пуха:
blend = all_expr = 'если (gte (YN * SH, 0), A, B)'
· Примените эффект раскрытия вверх-влево:
blend = all_expr = 'if (gte (T * SH * 40 + Y, H) * gte ((T * 40 * SW + X) * W / H, W), A, B)'
· Отображение различий между текущим и предыдущим кадром:
tblend = all_mode = difference128
боксблур
Примените алгоритм размытия рамки к входному видео.
Он принимает следующие параметры:
яркость_радиус, lr
яркость_сила, lp
хрома_радиус, cr
хрома_сила, cp
альфа_радиус, ar
альфа_сила, ap
Ниже приводится описание принятых вариантов.
яркость_радиус, lr
хрома_радиус, cr
альфа_радиус, ar
Задайте выражение для радиуса прямоугольника в пикселях, используемого для размытия соответствующего
входная плоскость.
Значение радиуса должно быть неотрицательным числом и не должно быть больше значения
выражения «min (w, h) / 2» для плоскостей яркости и альфа, и «min (cw, ch) / 2»
для плоскостей цветности.
Значение по умолчанию для luma_radius равно «2». Если не указано, chroma_radius и альфа_радиус
по умолчанию на соответствующее значение, установленное для luma_radius.
Выражения могут содержать следующие константы:
w
h Ширина и высота ввода в пикселях.
cw
ch Ширина и высота входного цветного изображения в пикселях.
Hsub
всуб
Значения подвыборки цветности по горизонтали и вертикали. Например, для пикселя
формат "yuv422p", Hsub это 2 и всуб это 1.
яркость_сила, lp
хрома_сила, cp
альфа_сила, ap
Укажите, сколько раз фильтр размытия рамки применяется к соответствующей плоскости.
Значение по умолчанию для luma_power равно 2. Если не указано, chroma_power и альфа_сила
по умолчанию на соответствующее значение, установленное для luma_power.
Значение 0 отключит эффект.
Примеры
· Примените фильтр размытия рамки с радиусами яркости, цветности и альфа, равными 2:
boxblur = luma_radius = 2: luma_power = 1
boxblur = 2: 1
· Установите радиус яркости на 2, а радиус альфа и цветности на 0:
boxblur = 2: 1: cr = 0: ar = 0
· Установите радиусы яркости и цветности в доли от размера видео:
boxblur = luma_radius = min (h \, w) / 10: luma_power = 1: chroma_radius = min (cw \, ch) / 10: chroma_power = 1
кодекпросмотр
Визуализируйте информацию, экспортируемую некоторыми кодеками.
Некоторые кодеки могут экспортировать информацию через фреймы с использованием дополнительных данных или другими способами. Для
Например, некоторые кодеки на основе MPEG экспортируют векторы движения через экспорт_МВС флаг в
кодер-декодер флаги2 опцию.
Фильтр принимает следующий вариант:
mv Установите векторы движения для визуализации.
Доступные флаги для mv составляют:
pf прогнозируемые вперед MV P-кадров
bf прогнозируемые вперед MV B-кадров
bb обратные предсказанные MV B-кадров
Примеры
· Визуализирует разнонаправленные MV из P- и B-кадров с использованием ffplay:
ffplay -flags2 + export_mvs input.mpg -vf codecview = mv = pf + bf + bb
цветовой баланс
Измените интенсивность основных цветов (красного, зеленого и синего) входных кадров.
Фильтр позволяет настраивать входной кадр в тенях, полутонах или светлых участках.
области для баланса красно-голубой, зелено-пурпурный или сине-желтый.
Положительное значение регулировки смещает баланс в сторону основного цвета, отрицательное значение
к дополнительному цвету.
Фильтр принимает следующие параметры:
rs
gs
bs Отрегулируйте красные, зеленые и синие тени (самые темные пиксели).
rm
gm
bm Отрегулируйте средние тона красного, зеленого и синего (средние пиксели).
rh
gh
bh Отрегулируйте красный, зеленый и синий свет (самые яркие пиксели).
Допустимые диапазоны для параметров: «[-1.0, 1.0]». По умолчанию 0.
Примеры
· Добавляем к теням красный оттенок:
цветовой баланс = rs = 3
цветной ключ
Цветовая манипуляция в цветовом пространстве RGB.
Фильтр принимает следующие параметры:
цвет
Цвет, который будет заменен на прозрачность.
сходство
Процент сходства с ключевым цветом.
0.01 соответствует только точному ключевому цвету, а 1.0 соответствует всему.
бленд или сингл ориджин
Смесь в процентах.
0.0 делает пиксели полностью прозрачными или непрозрачными.
Более высокие значения приводят к полупрозрачным пикселям, чем выше прозрачность, тем больше
цвет пикселей аналогичен ключевому цвету.
Примеры
· Сделайте каждый зеленый пиксель во входном изображении прозрачным:
ffmpeg -i input.png -vf colorkey = зеленый out.png
· Наложение зеленого экрана поверх статического фонового изображения.
ffmpeg -i background.png -i video.mp4 -filter_complex "[1: v] colorkey = 0x3BBD1E: 0.3: 0.2 [ckout]; [0: v] [ckout] overlay [out]" -map "[out]" output.flv
уровни цвета
Отрегулируйте кадры видеовхода с помощью уровней.
Фильтр принимает следующие параметры:
римин
гимин
бимин
прицелиться
Отрегулируйте красную, зеленую, синюю и альфа-входную точку черного. Допустимые диапазоны для опций:
«[-1.0, 1.0]». По умолчанию 0.
Римакс
гимакс
бимакс
прицел
Отрегулируйте входную точку белого красного, зеленого, синего и альфа-каналов. Допустимые диапазоны для опций:
«[-1.0, 1.0]». По умолчанию 1.
Уровни входа используются для осветления светлых участков (яркие тона), затемнения теней (темные тона).
тона), измените баланс светлых и темных тонов.
Ромин
гомин
Бомин
Аомин
Отрегулируйте точку черного, красного, зеленого, синего и альфа-вывода. Допустимые диапазоны для опций:
«[0, 1.0]». По умолчанию 0.
Romax
гомакс
бомакс
Aomax
Отрегулируйте красную, зеленую, синюю и альфа-выходную белую точку. Допустимые диапазоны для опций:
«[0, 1.0]». По умолчанию 1.
Уровни выходного сигнала позволяют вручную выбрать ограниченный диапазон выходных уровней.
Примеры
· Сделать видеовыход темнее:
colorlevels = rimin = 0.058: gimin = 0.058: bimin = 0.058
· Увеличить контраст:
colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96
· Сделайте видеовыход светлее:
colorlevels = rimax = 0.902: gimax = 0.902: bimax = 0.902
· Увеличить яркость:
colorlevels = romin = 0.5: gomin = 0.5: bomin = 0.5
смеситель для цветных каналов
Отрегулируйте кадры видеовхода путем повторного смешивания цветовых каналов.
Этот фильтр изменяет цветовой канал, добавляя значения, связанные с другими каналами.
тех же пикселей. Например, если значение, которое нужно изменить, красное, выходное значение будет:
знак равно * + * + * + *
Фильтр принимает следующие параметры:
rr
rg
rb
ra Отрегулируйте вклад входного красного, зеленого, синего и альфа-каналов для выходного красного
канал. По умолчанию 1 для rrи 0 для rg, rb и ra.
gr
gg
gb
ga Отрегулируйте вклад входного красного, зеленого, синего и альфа-каналов для выходного зеленого
канал. По умолчанию 1 для ggи 0 для gr, gb и ga.
br
bg
bb
ba Отрегулируйте вклад входного красного, зеленого, синего и альфа-каналов для выходного синего
канал. По умолчанию 1 для bbи 0 для br, bg и ba.
ar
ag
ab
aa Отрегулируйте вклад входного красного, зеленого, синего и альфа-каналов для выходного альфа-канала
канал. По умолчанию 1 для aaи 0 для ar, ag и ab.
Допустимые диапазоны для параметров: «[-2.0, 2.0]».
Примеры
· Преобразование исходного изображения в оттенки серого:
colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3
· Имитация тонов сепии:
colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131
цветовая матрица
Преобразование цветовой матрицы.
Фильтр принимает следующие параметры:
SRC
DST Укажите исходную и целевую цветовую матрицу. Необходимо указать оба значения.
Допустимые значения:
bt709
BT.709
bt601
BT.601
смпте240м
СМПТЭ-240М
ГЦК FCC
Например, чтобы преобразовать BT.601 в SMPTE-240M, используйте команду:
colormatrix = bt601: smpte240m
копия
Скопируйте исходный источник без изменений в выходной. Это в основном полезно для целей тестирования.
урожай
Обрежьте входное видео до заданных размеров.
Он принимает следующие параметры:
w, out_w
Ширина выходного видео. По умолчанию это «iw». Это выражение оценивается только
один раз во время настройки фильтра, или когда w or out_w команда отправлена.
h, out_h
Высота выходного видео. По умолчанию это «ih». Это выражение оценивается
только один раз во время настройки фильтра или когда h or out_h команда отправлена.
x Горизонтальное положение левого края выходного видео во входном видео. Это
по умолчанию "(in_w-out_w) / 2". Это выражение оценивается покадрово.
y Вертикальное положение во входном видео верхнего края выходного видео. Это
по умолчанию "(in_h-out_h) / 2". Это выражение оценивается покадрово.
сохранить_аспект
Если установлено значение 1, соотношение сторон выходного дисплея будет таким же, как и у входного.
изменение соотношения сторон выходного образца. По умолчанию 0.
Команда out_w, out_h, x, y параметры - это выражения, содержащие следующие константы:
x
y Расчетные значения для x и y. Они оцениваются для каждого нового кадра.
в W
in_h
Ширина и высота ввода.
iw
ih Это такие же, как в W и in_h.
out_w
out_h
Выходные (обрезанные) ширина и высота.
ow
oh Это такие же, как out_w и out_h.
a так же, как iw / ih
сар соотношение сторон входного образца
но соотношение сторон экрана ввода, такое же, как (iw / ih) * сар
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
n Номер входного кадра, начиная с 0.
пост позиция в файле входного кадра, NAN, если неизвестно
t Отметка времени в секундах. Это NAN, если временная метка ввода неизвестна.
Выражение для out_w может зависеть от стоимости out_h, а выражение для out_h
может зависеть от out_w, но они не могут зависеть от x и y, так как x и y оцениваются после
out_w и out_h.
Команда x и y параметры определяют выражения для положения верхнего левого угла
выходная (необрезанная) область. Они оцениваются для каждого кадра. Если оцененное значение
недействительно, оно округляется до ближайшего допустимого значения.
Выражение для x может зависеть от y, а выражение для y может зависеть от x.
Примеры
· Область обрезки размером 100x100 на позиции (12,34).
урожай = 100: 100: 12: 34
Используя именованные параметры, приведенный выше пример становится:
урожай = w = 100: h = 100: x = 12: y = 34
· Обрежьте центральную область ввода размером 100x100:
урожай = 100: 100
· Обрежьте центральную область ввода размером 2/3 входного видео:
урожай = 2/3 * дюйм_б: 2/3 * дюйм_ч
· Обрезать центральный квадрат входного видео:
урожай = out_w = in_h
урожай = in_h
· Разделите прямоугольник так, чтобы верхний левый угол располагался в позиции 100: 100, а
правый нижний угол, соответствующий правому нижнему углу входного изображения.
урожай = in_w-100: in_h-100: 100: 100
· Обрезка по 10 пикселей от левой и правой границы и по 20 пикселей сверху и снизу.
Границы
урожай = in_w-2 * 10: in_h-2 * 20
· Оставьте только нижнюю правую четверть входного изображения:
урожай = in_w / 2: in_h / 2: in_w / 2: in_h / 2
· Высота урожая для получения греческой гармонии:
урожай = in_w: 1 / PHI * in_w
· Применить эффект дрожания:
crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(n/7)
· Применить беспорядочный эффект камеры в зависимости от отметки времени:
crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(t*10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(t*13)"
· Установите x в зависимости от значения y:
crop=in_w/2:in_h/2:y:10+10*sin(n/10)
Команды
Этот фильтр поддерживает следующие команды:
w, out_w
h, out_h
x
y Установите ширину / высоту выходного видео и горизонтальное / вертикальное положение на входе
видео. Команда принимает тот же синтаксис, что и соответствующий параметр.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
обнаружение урожая
Автоматическое определение размера кадрирования.
Он рассчитывает необходимые параметры обрезки и распечатывает рекомендуемые параметры через
система регистрации. Обнаруженные размеры соответствуют не черной области ввода.
видео.
Он принимает следующие параметры:
предел
Установите более высокий порог значения черного, который можно дополнительно указать из ничего (0)
ко всему (255 для 8-битных форматов). Значение интенсивности больше установленного
значение не считается черным. По умолчанию 24. Вы также можете указать значение.
от 0.0 до 1.0, который будет масштабироваться в зависимости от разрядности пикселя.
формат.
год
Значение, на которое должна делиться ширина / высота. По умолчанию - 16. Смещение.
автоматически настраивается для центрирования видео. Используйте 2, чтобы получить только четные размеры
(необходимо для видео формата 4: 2: 2). 16 лучше всего подходит для кодирования большинства видеокодеков.
сброс_счетчика, сброс
Установите счетчик, который определяет, через сколько кадров Cropdetect сбросит
ранее обнаруженная самая большая область видео и начните заново, чтобы определить текущую оптимальную
посевная площадь. Значение по умолчанию - 0.
Это может быть полезно, когда логотипы каналов искажают область видео. 0 означает "никогда"
reset 'и возвращает самую большую область, обнаруженную во время воспроизведения.
Кривые
Примените настройки цвета с помощью кривых.
Этот фильтр похож на инструменты кривых Adobe Photoshop и GIMP. Каждый компонент (красный,
зеленый и синий) имеет свои значения, определяемые N ключевые точки связаны друг с другом гладким
изгиб. Ось X представляет значения пикселей из входного кадра, а ось Y - новые значения.
значения пикселей, которые должны быть установлены для выходного кадра.
По умолчанию кривая компонента определяется двумя точками (0; 0) и (1; 1), Это создает
прямая линия, на которой каждое исходное значение пикселя "настраивается" на свое собственное значение, что означает
без изменений изображения.
Фильтр позволяет переопределить эти две точки и добавить еще несколько. Новая кривая (с использованием
естественная кубическая сплайновая интерполяция) будет определена так, чтобы плавно проходить через все эти новые
координаты. Новые определенные точки должны строго увеличиваться по оси x, и
их x и y значения должны быть в [0; 1] интервал. Если вычисленные кривые оказались
вне векторных пространств значения будут соответственно обрезаны.
Если в "x = 0" не определена ключевая точка, фильтр автоматически вставит (0; 0)
точка. Таким же образом, если в "x = 1" не задана ключевая точка, фильтр будет
автоматически вставить (1; 1) пункт.
Фильтр принимает следующие параметры:
заданной
Выберите одну из доступных предустановок цвета. Эту опцию можно использовать в дополнение к
r, g, b параметры; в этом случае более поздние параметры имеют приоритет перед предустановкой.
ценности. Доступные предустановки:
нет
цвет_отрицательный
перекрестный_процесс
темнее
увеличить контраст
более легкий
линейный_контраст
средний_контраст
отрицательный
сильный_контраст
марочный
По умолчанию «нет».
мастер, m
Установите основные ключевые моменты. Эти точки будут определять отображение второго прохода. это
иногда это называется отображением «яркости» или «значения». Его можно использовать с r, g, b or ВСЕ
поскольку он действует как LUT пост-обработки.
rouge, r
Установите ключевые точки для красного компонента.
зеленый, g
Установите ключевые точки для зеленого компонента.
синий, b
Установите ключевые точки для синего компонента.
ВСЕ Установите ключевые точки для всех компонентов (не включая мастер). Может использоваться дополнительно
к другим ключевым параметрам компонентов. В этом случае неустановленный компонент (ы) будет
отступить от этого ВСЕ установка.
PS-файл
Укажите файл кривых Photoshop (".asv"), из которого нужно импортировать настройки.
Чтобы избежать некоторых конфликтов синтаксиса графов фильтров, каждый список ключевых точек должен быть определен с помощью
следующий синтаксис: «x0 / y0 x1 / y1 x2 / y2 ...».
Примеры
· Слегка увеличьте средний уровень синего:
кривые = синий = '0.5 / 0.58'
· Винтажный эффект:
curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'
Здесь мы получаем следующие координаты для каждого компонента:
red "(0;0.11) (0.42;0.51) (1;0.95)"
зеленый
"(0;0) (0.50;0.48) (1;1)"
синий
"(0;0.22) (0.49;0.44) (1;0.80)"
· Предыдущий пример также может быть реализован с помощью связанной встроенной предустановки:
кривые = предустановка = винтаж
· Или просто:
кривые = винтаж
· Используйте предустановку Photoshop и переопределите точки зеленого компонента:
кривые = psfile = 'MyCurvesPresets / purple.asv': зеленый = '0.45 / 0.53'
dctdnoiz
Уменьшите шум в кадрах с помощью 2D DCT (фильтрация в частотной области).
Этот фильтр не предназначен для работы в режиме реального времени.
Фильтр принимает следующие параметры:
сигма, s
Установите постоянную сигма шума.
Эти сигма определяет жесткий порог «3 * сигма»; каждый коэффициент DCT (абсолютный
значение) ниже этого порога и будет отброшено.
Если вам нужна более продвинутая фильтрация, см. выраж.
По умолчанию 0.
перекрытие
Установите количество перекрывающихся пикселей для каждого блока. Поскольку фильтр может работать медленно, вы можете
хотите уменьшить это значение за счет менее эффективного фильтра и риска
различные артефакты.
Если перекрывающееся значение не позволяет обрабатывать всю входную ширину или высоту,
будет отображаться предупреждение, и соответствующие границы не будут отключены.
Значение по умолчанию размер блока-1, что является наилучшим возможным значением.
выражение, e
Задайте выражение коэффициента коэффициента.
Для каждого коэффициента блока DCT это выражение будет оцениваться как множитель
значение коэффициента.
Если этот параметр установлен, сигма опция будет проигнорирована.
Абсолютное значение коэффициента можно получить через c Переменная.
n Установить размер блока используя количество бит. "1 <n" определяет размер блока, какой
ширина и высота обрабатываемых блоков.
Значением по умолчанию является 3 (8x8) и может быть увеличен до 4 для размер блока размером 16x16. Примечание
что изменение этого параметра имеет огромные последствия для скорости обработки. Также
больший размер блока не обязательно означает лучшее подавление шума.
Примеры
Примените шумоподавление с сигма 4.5:
dctdnoiz = 4.5
Эту же операцию можно выполнить с помощью системы выражений:
dctdnoiz = e = 'gte (c, 4.5 * 3)'
Сильный шумоподавление с использованием размера блока «16x16»:
dctdnoiz = 15: n = 4
дебанд
Удалите артефакты полос из входного видео. Он работает, заменяя полосатые пиксели на
среднее значение ссылочных пикселей.
Фильтр принимает следующие параметры:
1 место
2 место
3 место
4 место
Установите порог обнаружения полос для каждой плоскости. По умолчанию 0.02. Допустимый диапазон
От 0.00003 до 0.5. Если разница между текущим и опорным пикселями меньше, чем
порог, он будет считаться полосатым.
диапазона, r
Диапазон обнаружения полос в пикселях. По умолчанию 16. Если положительное, случайное число в диапазоне
0 для установки значения будет использоваться. Если отрицательное, будет использоваться точное абсолютное значение. В
Диапазон определяет квадрат из четырех пикселей вокруг текущего пикселя.
направление, d
Задайте направление в радианах, от которого будут сравниваться четыре пикселя. Если положительный, случайный
направление от 0 до заданного направления будет выбрано. Если отрицательное, точное по абсолютной величине
будут выбраны. Например, направление 0, -PI или -2 * PI радиан выберет только пиксели на
одна и та же строка и -PI / 2 выберет только пиксели в одном столбце.
пятно
Если включено, текущий пиксель сравнивается со средним значением всех четырех окружающих
пикселей. По умолчанию включено. Если отключено, текущий пиксель сравнивается со всеми четырьмя
окружающие пиксели. Пиксель считается полосатым, если только все четыре разности с
окружающие пиксели меньше порогового значения.
Истребление
Удаляйте дублированные кадры через равные промежутки времени.
Фильтр принимает следующие параметры:
цикл
Установите количество кадров, из которых будет отброшен один. Установив это на N означает один
кадр в каждой партии N кадры будут отброшены. По умолчанию 5.
дюптреш
Установите порог обнаружения дубликатов. Если метрика разницы для кадра равна
меньше или равно этому значению, то он объявляется как дубликат. По умолчанию 1.1
молотить
Установить порог смены сцены. По умолчанию 15.
блоккс
Блочный
Установите размер блоков осей x и y, используемых при расчетах метрики. Больше
блоки обеспечивают лучшее подавление шума, но также хуже обнаруживают мелкие
движения. Должно быть степень двойки. По умолчанию 32.
ppsrc
Отметьте основной вход как предварительно обработанный и активируйте входной поток чистого источника. Этот
позволяет предварительно обрабатывать входные данные с помощью различных фильтров, чтобы помочь метрикам
расчет с сохранением выбора кадра без потерь. Если установлено значение 1, первая
поток предназначен для предварительно обработанного ввода, а второй поток - это чистый источник из
где выбираются сохраненные кадры. По умолчанию 0.
цветность
Установите, учитывается ли цветность при расчетах показателей. По умолчанию 1.
выкачивать
Примените к видео эффект сдувания.
Этот фильтр заменяет пиксель на локальным(3x3) среднее с учетом только
значения ниже пикселя.
Он принимает следующие варианты:
порог0
порог1
порог2
порог3
Ограничьте максимальное изменение для каждой плоскости, по умолчанию 65535. Если 0, плоскость останется
без изменений.
осуждающий
Устранение дрожания, возникающего из-за частично чересстрочного телесинового контента.
Судья может быть представлен, например, подтягивание фильтр. Если исходный источник был
частично телесинфицированный контент, то в выводе "pullup, dejudder" будет переменная
частота кадров. Может изменить записанную частоту кадров контейнера. Помимо этого изменения,
этот фильтр не влияет на видео с постоянной частотой кадров.
В этом фильтре доступен следующий вариант:
цикл
Укажите длину окна, в котором повторяется дрожание.
Принимает любое целое число больше 1. Полезные значения:
4 Если исходный был телесином от 24 до 30 кадров в секунду (фильм в NTSC).
5 Если исходный был телесином от 25 до 30 кадров в секунду (из PAL в NTSC).
20 Если смесь двух.
По умолчанию используется 4.
дело
Подавите логотип телеканала простой интерполяцией окружающих пикселей. Просто установите
прямоугольник, закрывающий логотип и наблюдающий, как он исчезает (а иногда и что-то еще более уродливое
появляются - ваш пробег может отличаться).
Он принимает следующие параметры:
x
y Укажите координаты левого верхнего угла логотипа. Их необходимо указать.
w
h Укажите ширину и высоту логотипа для очистки. Их необходимо указать.
группа, t
Укажите толщину нечеткого края прямоугольника (добавляется к w и h).
значение по умолчанию - 4.
произошел
Если установлено значение 1, на экране рисуется зеленый прямоугольник, чтобы упростить поиск нужного
x, y, w и h параметры. Значение по умолчанию - 0.
Прямоугольник рисуется на крайних пикселях, которые будут (частично) заменены на
интерполированные значения. Значения следующих пикселей непосредственно за пределами этого прямоугольника
в каждом направлении будет использоваться для вычисления интерполированных значений пикселей внутри
прямоугольник.
Примеры
· Задайте прямоугольник, покрывающий область с координатами верхнего левого угла 0,0 и размером
100х77, и тесьма размером 10:
delogo=x=0:y=0:w=100:h=77:band=10
расшатывать
Попытайтесь исправить небольшие изменения в горизонтальном и / или вертикальном смещении. Этот фильтр помогает удалить
дрожание камеры из-за того, что вы держите камеру в руках, ударились о штатив, передвигались по автомобилю и т. д.
Фильтр принимает следующие параметры:
x
y
w
h Укажите прямоугольную область для ограничения поиска векторов движения. При желании
поиск векторов движения может быть ограничен прямоугольной областью кадра
определяется его верхним левым углом, шириной и высотой. Эти параметры имеют одинаковые
то есть как фильтр рисовального ящика, который можно использовать для визуализации положения
Ограничительная рамка.
Это полезно, когда может быть затруднено одновременное движение объектов в кадре.
путают с движением камеры при поиске вектора движения.
Если какой-либо или все x, y, w и h установлены на -1, то используется полный кадр. Это позволяет
последующие параметры должны быть установлены без указания ограничивающей рамки для вектора движения
поиск.
По умолчанию - поиск по всему кадру.
rx
ry Укажите максимальную степень перемещения по осям x и y в диапазоне от 0 до 64 пикселей.
По умолчанию 16.
край
Укажите, как генерировать пиксели для заполнения пробелов по краю кадра. Доступный
значения:
пустой, 0
Заполните нулями пустые места
оригинал, 1
Исходное изображение в пустых местах
зажим 2
Значение выдавленной кромки в пустых местах
зеркало, 3
Зеркальный край в пустых местах
Значение по умолчанию зеркало.
размер блока
Укажите размер блока, который будет использоваться для поиска движения. Диапазон 4–128 пикселей, по умолчанию 8.
контраст
Укажите порог контрастности для блоков. Только блоки с более чем указанным
Контрастность (разница между самыми темными и самыми светлыми пикселями) будет учитываться. Диапазон
1-255, по умолчанию 125.
по области применения
Укажите стратегию поиска. Доступные значения:
исчерпывающий, 0
Установить исчерпывающий поиск
меньше, 1
Установите менее исчерпывающий поиск.
Значение по умолчанию комплексный.
имя файла
Если установлено, то подробный журнал поиска движения записывается в указанный файл.
OpenCL
Если установлено значение 1, укажите использование возможностей OpenCL, доступно только в том случае, если FFmpeg был
настроен с помощью "--enable-opencl". Значение по умолчанию - 0.
детелецин
Примените операцию, обратную телесину. Требуется предопределенный шаблон
указывается с помощью параметра шаблона, который должен быть таким же, как переданный в телесин
фильтр.
Этот фильтр принимает следующие параметры:
первое_поле
Вверх, t
сначала верхнее поле
дно, b
сначала нижнее поле Значение по умолчанию - «верх».
описания
Строка чисел, представляющая раскрывающийся список, который вы хотите применить. По умолчанию
значение 23.
старт_кадр
Число, представляющее положение первого кадра по отношению к телесину.
шаблон. Это нужно использовать, если поток перерезан. Значение по умолчанию - 0.
расширение
Примените к видео эффект расширения.
Этот фильтр заменяет пиксель на локальным(3x3) максимум.
Он принимает следующие варианты:
порог0
порог1
порог2
порог3
Ограничьте максимальное изменение для каждой плоскости, по умолчанию 65535. Если 0, плоскость останется
без изменений.
координаты
Флаг, указывающий на пиксель, на который нужно ссылаться. По умолчанию 255, т. Е. Все восемь пикселей
используемый.
Флаги к локальным картам с координатами 3x3 выглядят так:
1 2 3
4 5
6 7 8
ящик
Нарисуйте цветную рамку на входном изображении.
Он принимает следующие параметры:
x
y Выражения, определяющие координаты левого верхнего угла поля. По умолчанию
в 0.
ширина, w
рост, h
Выражения, определяющие ширину и высоту поля; если 0 они
интерпретируется как ширина и высота ввода. По умолчанию 0.
цвет, c
Укажите цвет поля для записи. Чтобы узнать об общем синтаксисе этой опции, отметьте
раздел «Цвет» в руководстве по ffmpeg-utils. Если используется специальное значение «инвертировать»,
цвет края рамки такой же, как у видео с инвертированной яркостью.
толщина, t
Выражение, задающее толщину края рамки. Значение по умолчанию - 3.
См. Ниже список допустимых констант.
Параметры для x, y, w и h и t являются выражениями, содержащими следующие константы:
но Соотношение сторон экрана ввода такое же, как (w / h) * сар.
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
в_ч, ih
в W, iw
Ширина и высота ввода.
сар Соотношение сторон входного образца.
x
y Координаты смещения x и y, где нарисован прямоугольник.
w
h Ширина и высота нарисованного поля.
t Толщина нарисованного бокса.
Эти константы позволяют x, y, w, h и t выражения для обозначения друг друга, поэтому вы
может, например, указать «y = x / dar» или «h = w / dar».
Примеры
· Нарисуйте черный квадрат по краю входного изображения:
ящик
· Нарисуйте прямоугольник красного цвета с непрозрачностью 50%:
drawbox = 10: 20: 200: 60:[электронная почта защищена]
Предыдущий пример можно указать как:
drawbox = x = 10: y = 20: w = 200: h = 60: color =[электронная почта защищена]
· Заполните коробку розовым цветом:
drawbox = x = 10: y = 10: w = 100: h = 100: color =[электронная почта защищена]: t = макс
· Нарисуйте 2-пиксельную красную маску 2.40: 1:
drawbox=x=-t:y=0.5*(ih-iw/2.4)-t:w=iw+t*2:h=iw/2.4+t*2:t=2:c=red
рисовать рисование
Нарисуйте график, используя входные видео или аудио метаданные.
Он принимает следующие параметры:
m1 Установите ключ метаданных 1-го кадра, из которого значения метаданных будут использоваться для построения графика.
fg1 Установите первое цветовое выражение переднего плана.
m2 Установите ключ метаданных 2-го кадра, из которого значения метаданных будут использоваться для построения графика.
fg2 Установите второе цветовое выражение переднего плана.
m3 Установите ключ метаданных 3-го кадра, из которого значения метаданных будут использоваться для построения графика.
fg3 Установите 3-е цветовое выражение переднего плана.
m4 Установите ключ метаданных 4-го кадра, из которого значения метаданных будут использоваться для построения графика.
fg4 Установите 4-е выражение цвета переднего плана.
мин Установите минимальное значение значения метаданных.
Макс Установите максимальное значение значения метаданных.
bg Установите цвет фона графика. По умолчанию белый.
Режим
Установите режим графика.
Доступные значения для режима:
бар
dot
линия
По умолчанию - «линия».
скользить
Установите режим слайда.
Доступные значения для слайда:
рама
Нарисуйте новую рамку, когда будет достигнута правая граница.
заменить
Замените старые столбцы новыми.
пролистать
Прокрутите справа налево.
прокрутка
Прокрутите слева направо.
По умолчанию это «рамка».
размер
Установите размер графика видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео размер" .
in ffmpeg-утилиты руководство. Значение по умолчанию - «900x256».
Выражения цвета переднего плана могут использовать следующие переменные:
MIN Минимальное значение значения метаданных.
MAX Максимальное значение значения метаданных.
VAL Текущее значение ключа метаданных.
Цвет определяется как 0xAABBGGRR.
Пример использования метаданных из сигнальная статистика фильтр:
signalstats, drawgraph = lavfi.signalstats.YAVG: min = 0: max = 255
Пример использования метаданных из ебур128 фильтр:
ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5
вытяжная сетка
Нарисуйте сетку на входном изображении.
Он принимает следующие параметры:
x
y Выражения, задающие координаты некоторой точки пересечения сетки
(предназначен для настройки смещения). Оба по умолчанию равны 0.
ширина, w
рост, h
Выражения, которые определяют ширину и высоту ячейки сетки, если 0 они равны
интерпретируется как входная ширина и высота, соответственно, минус "толщина", поэтому изображение
попадает в рамку. По умолчанию 0.
цвет, c
Укажите цвет сетки. Чтобы узнать об общем синтаксисе этой опции, проверьте
Раздел "Цвет" в руководстве по ffmpeg-utils. Если используется специальное значение «инвертировать»,
цвет сетки такой же, как у видео с инвертированной яркостью.
толщина, t
Выражение, задающее толщину линии сетки. Значение по умолчанию - 1.
См. Ниже список допустимых констант.
Параметры для x, y, w и h и t являются выражениями, содержащими следующие константы:
но Соотношение сторон экрана ввода такое же, как (w / h) * сар.
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
в_ч, ih
в W, iw
Ширина и высота ячейки входной сетки.
сар Соотношение сторон входного образца.
x
y Координаты x и y некоторой точки пересечения сетки (предназначены для настройки
компенсировать).
w
h Ширина и высота нарисованной ячейки.
t Толщина нарисованной ячейки.
Эти константы позволяют x, y, w, h и t выражения для обозначения друг друга, поэтому вы
может, например, указать «y = x / dar» или «h = w / dar».
Примеры
· Нарисуйте сетку с ячейкой 100x100 пикселей, толщиной 2 пикселя, красным цветом и
непрозрачность 50%:
drawgrid = ширина = 100: высота = 100: толщина = 2: цвет =[электронная почта защищена]
· Нарисуйте белую сетку 3x3 с непрозрачностью 50%:
drawgrid = w = iw / 3: h = ih / 3: t = 2: c =[электронная почта защищена]
текст
Нарисуйте текстовую строку или текст из указанного файла поверх видео, используя libfreetype
библиотека.
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с
"--enable-libfreetype". Чтобы включить резервный шрифт по умолчанию и шрифт вариант, который вам нужен
настройте FFmpeg с помощью "--enable-libfontconfig". Чтобы включить text_shaping вариант, вы
необходимо настроить FFmpeg с помощью "--enable-libfribidi".
Синтаксис
Он принимает следующие параметры:
ящик Используется для рисования рамки вокруг текста с использованием цвета фона. Значение должно быть либо 1
(включить) или 0 (выключить). Значение по умолчанию ящик это 0.
Boxborderw
Установите ширину границы, которая будет нарисована вокруг поля, используя коробкацвет. По умолчанию
Значение Boxborderw это 0.
коробкацвет
Цвет, который будет использоваться для рисования рамки вокруг текста. Чтобы узнать о синтаксисе этой опции, отметьте
раздел «Цвет» в руководстве по ffmpeg-utils.
Значение по умолчанию коробкацвет белый".
граница
Установите ширину границы, которая будет нарисована вокруг текста, используя цвет границы,
значение по умолчанию граница это 0.
цвет границы
Установите цвет, который будет использоваться для рисования границы вокруг текста. Для синтаксиса этого
вариант, проверьте раздел «Цвет» в руководстве ffmpeg-utils.
Значение по умолчанию цвет границы черный".
расширение
Выберите, как текст расширяется. Может иметь значение none, strftime (не рекомендуется) или
«нормальный» (по умолчанию). Увидеть рисоватьтекст_расширение, Текст расширение раздел ниже для
fix_bounds
Если это правда, проверьте и исправьте текстовые координаты, чтобы избежать обрезки.
Цвет шрифта
Цвет, который будет использоваться для рисования шрифтов. Чтобы узнать о синтаксисе этой опции, проверьте
Раздел "Цвет" в руководстве по ffmpeg-utils.
Значение по умолчанию Цвет шрифта черный".
Fontcolor_expr
Строка, которая раскрывается так же, как текст получить динамичный Цвет шрифта ценить. К
по умолчанию эта опция имеет пустое значение и не обрабатывается. Когда этот параметр установлен, он
переопределения Цвет шрифта опцию.
шрифт
Семейство шрифтов, которое будет использоваться для рисования текста. По умолчанию Sans.
файл шрифта
Файл шрифта, который будет использоваться для рисования текста. Путь должен быть включен. Этот параметр
является обязательным, если поддержка fontconfig отключена.
рисовать
Эта опция не существует, пожалуйста, ознакомьтесь с системой временной шкалы
альфа
Нарисуйте текст, применяя альфа-смешение. Значение может быть числом от 0.0.
и 1.0. Выражение принимает одни и те же переменные. x, y делать. Значение по умолчанию - 1.
См. Fontcolor_expr
размер шрифта
Размер шрифта, который будет использоваться для рисования текста. Значение по умолчанию размер шрифта это 16.
text_shaping
Если установлено значение 1, попытайтесь сформировать текст (например, изменить порядок следования справа налево).
левый текст и присоединитесь к арабским символам) перед его рисованием. В противном случае просто нарисуйте
текст точно такой, как указано. По умолчанию 1 (если поддерживается).
ft_load_flags
Флаги, которые будут использоваться для загрузки шрифтов.
Флаги отображают соответствующие флаги, поддерживаемые libfreetype, и представляют собой комбинацию
следующих значений:
по умолчанию
no_scale
нет_подсказок
оказывать
no_bitmap
вертикальный_макет
Force_autohint
урожая_битмап
педантичный
ignore_global_advance_width
no_recurse
ignore_transform
монохромный
линейный_дизайн
no_autohint
Значение по умолчанию - «по умолчанию».
Для получения дополнительной информации обратитесь к документации по флагам FT_LOAD_ * libfreetype.
цвет тени
Цвет, который будет использоваться для рисования тени за нарисованным текстом. Для синтаксиса
эту опцию, проверьте раздел «Цвет» в руководстве ffmpeg-utils.
Значение по умолчанию цвет тени черный".
Shadowx
смутный
Смещения x и y для положения тени текста относительно положения
текст. Они могут быть как положительными, так и отрицательными значениями. Значение по умолчанию для обоих:
"0".
начальный_номер
Номер начального кадра для переменной n / frame_num. Значение по умолчанию - «0».
размер табуляции
Размер в количестве пробелов, используемых для визуализации вкладки. Значение по умолчанию - 4.
таймкодом
Установите начальное представление временного кода в формате «чч: мм: сс [:;.] Ff». Его можно использовать
с текстовым параметром или без него. timecode_rate опция должна быть указана.
таймкод_скорость, темп, r
Установите частоту кадров временного кода (только временной код).
текст
Текстовая строка, которую нужно нарисовать. Текст должен быть последовательностью символов в кодировке UTF-8.
Этот параметр является обязательным, если с параметром не указан файл. текстовый файл.
текстовый файл
Текстовый файл, содержащий текст для рисования. Текст должен быть последовательностью в кодировке UTF-8.
символы.
Этот параметр является обязательным, если с параметром не указана текстовая строка. текст.
Если оба текст и текстовый файл указаны, выдается ошибка.
перезагружать
Если установлено в 1, текстовый файл будет перезагружаться перед каждым кадром. Обязательно обновите его
атомарно, или он может быть прочитан частично, или даже потерпеть неудачу.
x
y Выражения, которые определяют смещения, где текст будет отображаться в видео.
Рамка. Они относятся к верхней / левой границе выходного изображения.
Значение по умолчанию x и y равно «0».
См. Ниже список допустимых констант и функций.
Параметры для x и y являются выражениями, содержащими следующие константы и
функции:
но соотношение сторон экрана ввода, такое же, как (w / h) * сар
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
строка_ч, lh
высота каждой текстовой строки
основной_ч, h, H
высота ввода
main_w, w, W
ширина ввода
макс_глиф_а, восхождение
максимальное расстояние от базовой линии до наивысшей / верхней координаты сетки, используемое для
поместите точку контура глифа для всех визуализированных глифов. Это положительное значение, так как
к ориентации сетки осью Y вверх.
max_glyph_d, спуск
максимальное расстояние от базовой линии до самой низкой координаты сетки, используемой для размещения
точка контура глифа для всех визуализированных глифов. Это отрицательное значение из-за
ориентация сетки осью Y вверх.
max_glyph_h
максимальная высота глифа, то есть максимальная высота для всех глифов, содержащихся в
отображаемый текст, он эквивалентен восхождение - спуск.
max_glyph_w
максимальная ширина глифа, то есть максимальная ширина для всех глифов, содержащихся в
обработанный текст
n номер кадра ввода, начиная с 0
ранд (мин, Максимум)
вернуть случайное число, включенное между мин и Макс
сар Соотношение сторон входного образца.
t метка времени, выраженная в секундах, NAN, если метка времени ввода неизвестна
текст_ч, th
высота отображаемого текста
текст_в, tw
ширина отображаемого текста
x
y координаты смещения x и y в месте отрисовки текста.
Эти параметры позволяют x и y выражения, чтобы ссылаться друг на друга, так что вы можете
например укажите "y = x / dar".
Текст расширение
If расширение установлен на "strftime", фильтр распознает strftime () последовательности в
предоставленный текст и соответственно расширяет их. Проверьте документацию strftime (). Это
функция устарела.
If расширение установлено значение «нет», текст печатается дословно.
If расширение установлен на "нормальный" (по умолчанию), следующий механизм расширения
используется.
Символ обратной косой черты \, за которым следует любой символ, всегда расширяется до второго
характер.
Последовательность формы "% {...}" расширена. Текст в фигурных скобках - это функция
имя, за которым, возможно, следуют аргументы, разделенные ":". Если аргументы содержат специальные
символы или разделители (':' или '}'), их следует экранировать.
Обратите внимание, что они, вероятно, также должны быть экранированы как значение для текст вариант в
строка аргумента фильтра и как аргумент фильтра в описании графа фильтра, и
возможно также для оболочки, которая составляет до четырех уровней экранирования; используя текстовый файл
позволяет избежать этих проблем.
Доступны следующие функции:
выражение, e
Результат вычисления выражения.
Он должен принимать один аргумент, определяющий выражение для оценки, которое принимает
те же константы и функции, что и x и y ценности. Обратите внимание, что не все константы должны
использоваться, например, размер текста неизвестен при оценке выражения, поэтому
постоянная text_w и text_h будет иметь неопределенное значение.
expr_int_format, ЕИФ
Оцените значение выражения и выведите его как форматированное целое число.
Первый аргумент - это вычисляемое выражение, как и для выраж функции.
Второй аргумент определяет формат вывода. Допустимые значения: x, X, d и u.
Они обрабатываются точно так же, как в функции printf. Третий параметр не обязателен
и устанавливает количество позиций, занимаемых выходом. Его можно использовать для добавления отступов
с нулями слева.
гмвремя
Время работы фильтра, выраженное в UTC. Он может принимать аргумент:
a strftime () строка формата.
местное время
Время работы фильтра, выраженное в местном часовом поясе. Оно может
принять аргумент: a strftime () строка формата.
метаданных
Метаданные кадра. Он должен принимать один аргумент, определяющий ключ метаданных.
n, кадр_номер
Номер кадра, начиная с 0.
пикт_тип
Описание текущего типа изображения из 1 символа.
PTS Отметка времени текущего кадра. Может потребоваться до двух аргументов.
Первый аргумент - это формат отметки времени; по умолчанию в течение секунд используется "flt", поскольку
десятичное число с точностью до микросекунд; "hms" означает форматированный
[-] ЧЧ: ММ: СС.ммм отметка времени с точностью до миллисекунды.
Второй аргумент - это смещение, добавленное к отметке времени.
Примеры
· Нарисуйте «Тестовый текст» шрифтом FreeSerif, используя значения по умолчанию для дополнительных
параметры.
drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Test Text'"
· Нарисуйте «Тестовый текст» шрифтом FreeSerif размером 24 в позиции x = 100 и y = 50 (считая
из верхнего левого угла экрана) текст желтого цвета с красной рамкой вокруг него. Оба
текст и поле имеют непрозрачность 20%.
drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Test Text': \
х = 100: у = 50: размер шрифта = 24: цвет шрифта =[электронная почта защищена]: box = 1: boxcolor =[электронная почта защищена]"
Обратите внимание, что двойные кавычки не нужны, если пробелы не используются внутри
список параметров.
· Показать текст в центре кадра видео:
drawtext = "fontsize = 30: fontfile = FreeSerif.ttf: text = 'hello world': x = (w-text_w) / 2: y = (h-text_h) / 2"
· Показать текстовую строку, скользящую справа налево в последней строке видеокадра. В
файл ДЛИННАЯ ЛИНИЯ предполагается, что он содержит одну строку без новых строк.
drawtext = "fontsize = 15: fontfile = FreeSerif.ttf: text = LONG_LINE: y = h-line_h: x = -50 * t"
· Показать содержимое файла CREDITS от нижней части рамки и прокрутите вверх.
drawtext = "fontsize = 20: fontfile = FreeSerif.ttf: textfile = CREDITS: y = h-20 * t"
· Нарисуйте единственную зеленую букву «g» в центре входного видео. Базовая линия глифа
размещается на половине высоты экрана.
drawtext = "fontsize = 60: fontfile = FreeSerif.ttf: fontcolor = green: text = g: x = (w-max_glyph_w) / 2: y = h / 2-ascent"
· Показывать текст на 1 секунду каждые 3 секунды:
drawtext = "fontfile = FreeSerif.ttf: fontcolor = white: x = 100: y = x / dar: enable = lt (mod (t \, 3) \, 1): text = 'blink'"
· Используйте fontconfig, чтобы установить шрифт. Обратите внимание, что двоеточия нужно экранировать.
drawtext = 'fontfile = Linux Libertine O-40 \: style = Полужирный шрифт: text = FFmpeg'
· Распечатать дату кодирования в реальном времени (см. стрфтайм(3)):
drawtext = 'fontfile = FreeSans.ttf: text =% {localtime \:% a% b% d% Y}'
· Показывать постепенное появление и исчезновение текста (появление / исчезновение):
#!/ Бен / ш
DS = 1.0 # начало отображения
DE = 10.0 # конец отображения
FID = 1.5 # длительность затухания
FOD = 5 # длительность затухания
ffplay -f lavfi "цвет, drawtext = text = TEST: fontsize = 50: fontfile = FreeSerif.ttf: fontcolor_expr = ff0000% {eif \\\\: clip (255 * (1 * между (t \\, $ DS + $ FID \\, $ DE - $ FOD) + ((t - $ DS) / $ FID) * между (t \\, $ DS \\, $ DS + $ FID) + (- (t - $ DE) / $ FOD) * между (t \\, $ DE - $ FOD \\, $ DE)) \\, 0 \\, 255) \\\\: x \\\\: 2} "
Для получения дополнительной информации о libfreetype проверьте:http://www.freetype.org/>.
Для получения дополнительной информации о fontconfig проверьте:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.
Для получения дополнительной информации о libfribidi проверьте:http://fribidi.org/>.
Edgedetect
Обнаруживать и рисовать края. Фильтр использует алгоритм Canny Edge Detection.
Фильтр принимает следующие параметры:
низкокачественными
высокая
Установите нижнее и верхнее пороговые значения, используемые алгоритмом пороговой обработки Кэнни.
Высокий порог выбирает «сильные» краевые пиксели, которые затем соединяются через
8-связность со «слабыми» краевыми пикселями, выделенными низким порогом.
низкокачественными и высокая пороговые значения должны быть выбраны в диапазоне [0,1], а низкокачественными должно быть
меньше или равно высокая.
Значение по умолчанию для низкокачественными составляет «20/255», а значение по умолчанию для высокая это «50/255».
Режим
Определите режим рисования.
Провода
Нарисуйте белые / серые провода на черном фоне.
Colormix
Смешайте цвета, чтобы создать эффект краски / мультфильма.
Значение по умолчанию Провода.
Примеры
· Стандартное обнаружение края с пользовательскими значениями порога гистерезиса:
edgedetect = low = 0.1: high = 0.4
· Эффект рисования без порога:
edgedetect = mode = colormix: high = 0
eq
Установите яркость, контраст, насыщенность и приблизительную настройку гаммы.
Фильтр принимает следующие параметры:
контраст
Установите контрастное выражение. Значение должно быть значением с плавающей запятой в диапазоне от «-2.0» до 2.0.
Значение по умолчанию - 0.
яркость
Установите выражение яркости. Значение должно быть значением с плавающей запятой в диапазоне от «-1.0» до 1.0.
Значение по умолчанию - 0.
насыщение
Установите выражение насыщенности. Значение должно быть плавающим в диапазоне от 0.0 до 3.0. В
значение по умолчанию - «1».
гамма
Установите гамма-выражение. Значение должно быть плавающим в диапазоне от 0.1 до 10.0. По умолчанию
значение «1».
гамма_р
Установите гамма-выражение для красного цвета. Значение должно быть плавающим в диапазоне от 0.1 до 10.0. В
значение по умолчанию - «1».
гамма_г
Установите гамма-выражение для зеленого цвета. Значение должно быть плавающим в диапазоне от 0.1 до 10.0.
Значение по умолчанию - 1.
гамма_b
Установите гамма-выражение для синего. Значение должно быть плавающим в диапазоне от 0.1 до 10.0. В
значение по умолчанию - «1».
гамма_вес
Установите гамма-весовое выражение. Может использоваться для уменьшения эффекта высокой гаммы.
значение на ярких участках изображения, например, чтобы они не были чрезмерно увеличены и просто не выглядели
белый. Значение должно быть плавающим в диапазоне от 0.0 до 1.0. Значение 0.0 переключает гамму
коррекция полностью вниз, в то время как 1.0 оставляет ее в полной мере. По умолчанию «1».
Eval
Установите, когда выражения для яркости, контраста, насыщенности и гамма-выражения
оцениваются.
Принимает следующие значения:
инициализации
оценивать выражения только один раз во время инициализации фильтра или когда команда
обрабатывается
рама
оценивать выражения для каждого входящего кадра
Значение по умолчанию инициализации.
Выражения принимают следующие параметры:
n количество кадров входящего кадра, начиная с 0
пост байтовая позиция соответствующего пакета во входном файле, NAN, если не указано
r частота кадров входящего видео, NAN, если входная частота кадров неизвестна
t метка времени, выраженная в секундах, NAN, если метка времени ввода неизвестна
Команды
Фильтр поддерживает следующие команды:
контраст
Установите контрастное выражение.
яркость
Установите выражение яркости.
насыщение
Установите выражение насыщенности.
гамма
Установите гамма-выражение.
гамма_р
Установите выражение gamma_r.
гамма_г
Установите выражение gamma_g.
гамма_b
Установите выражение gamma_b.
гамма_вес
Установите выражение gamma_weight.
Команда принимает тот же синтаксис, что и соответствующий параметр.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
эрозия
Примените к видео эффект эрозии.
Этот фильтр заменяет пиксель на локальным(3x3) минимум.
Он принимает следующие варианты:
порог0
порог1
порог2
порог3
Ограничьте максимальное изменение для каждой плоскости, по умолчанию 65535. Если 0, плоскость останется
без изменений.
координаты
Флаг, указывающий на пиксель, на который нужно ссылаться. По умолчанию 255, т. Е. Все восемь пикселей
используемый.
Флаги к локальным картам с координатами 3x3 выглядят так:
1 2 3
4 5
6 7 8
извлекать самолеты
Извлечение компонентов цветового канала из входного видеопотока в отдельное видео в градациях серого
потоки.
Фильтр принимает следующий вариант:
самолеты
Установите самолет (ы) для извлечения.
Доступные значения для самолетов:
y
u
v
a
r
g
b
Выбор самолетов, недоступных во входных данных, приведет к ошибке. Это значит ты
Невозможно выбрать плоскости "r", "g", "b" с плоскостями "y", "u", "v" одновременно.
Примеры
· Извлечение компонентов цветового канала яркости, u и v из входного видеокадра в 3 градации серого
выходы:
ffmpeg -i video.avi -filter_complex 'extractplanes = y + u + v [y] [u] [v]' -map '[y]' y.avi -map '[u]' u.avi -map '[ v] 'v.avi
Эльбг
Примените эффект постеризации с помощью алгоритма ELBG (Enhanced LBG).
Для каждого входного изображения фильтр будет вычислять оптимальное отображение входного изображения в
вывод с учетом длины кодовой книги, то есть количества различных выходных цветов.
Этот фильтр принимает следующие параметры.
длина_кодовой_книги, l
Установите длину кодовой книги. Значение должно быть положительным целым числом и представлять число
отличных выходных цветов. Значение по умолчанию - 256.
nb_шагов, n
Установите максимальное количество итераций, которые нужно применить для вычисления оптимального отображения. В
чем выше значение, тем лучше результат и больше время вычисления. Дефолт
значение 1.
семена, s
Установите случайное начальное число, оно должно быть целым числом от 0 до UINT32_MAX. Если не
указан, или, если явно задано значение -1, фильтр попытается использовать хорошее случайное начальное число
на основе максимальных усилий.
pal8
Установите формат выходных пикселей pal8. Эта опция не работает с большей длиной кодовой книги.
чем 256
выцветать
Примените к входному видео эффект постепенного появления / исчезновения.
Он принимает следующие параметры:
типа, t
Тип эффекта может быть либо «вход» для плавного появления, либо «выход» для эффекта плавного затухания.
По умолчанию "in".
старт_кадр, s
Укажите номер кадра, с которого будет применяться эффект затухания. По умолчанию 0.
nb_frames, n
Количество кадров, на которые длится эффект затухания. В конце эффекта постепенного появления
выходное видео будет иметь ту же интенсивность, что и входное видео. В конце увядания-
out, выходное видео будет заполнено выбранным цвет. По умолчанию
25. Воспользуйтесь функционалом
альфа
Если установлено значение 1, затухать будет только альфа-канал, если он есть на входе. Значение по умолчанию - 0.
начальное время, st
Укажите метку времени (в секундах) кадра, в котором будет применен эффект затухания. Если
указаны как start_frame, так и start_time, затухание начнется в зависимости от того, что наступит
последний. По умолчанию 0.
продолжительность, d
Количество секунд, в течение которых должен длиться эффект затухания. В конце нарастания
эффект выходное видео будет иметь ту же интенсивность, что и входное видео, в конце
переход с постепенным исчезновением выходного видео будет заполнен выбранным цвет. Если
указаны как duration, так и nb_frames, используется duration. По умолчанию 0 (nb_frames
используется по умолчанию).
цвет, c
Укажите цвет выцветания. По умолчанию - «черный».
Примеры
· Затухание первых 30 кадров видео:
fade = in: 0: 30
Приведенная выше команда эквивалентна:
fade = t = in: s = 0: n = 30
· Затемнение последних 45 кадров 200-кадрового видео:
fade = out: 155: 45
fade = type = out: start_frame = 155: nb_frames = 45
· Постепенное появление первых 25 кадров и постепенное исчезновение последних 25 кадров 1000-кадрового видео:
fade = in: 0: 25, fade = out: 975: 25
· Сделайте первые 5 кадров желтыми, затем постепенно увеличивайте их с 5 по 24:
fade = in: 5: 20: color = желтый
· Прерывание альфа-канала на первых 25 кадрах видео:
fade = in: 0: 25: alpha = 1
· Сделайте первые 5.5 секунд черными, затем исчезните на 0.5 секунды:
fade = t = in: st = 5.5: d = 0.5
fffilt
Применение произвольных выражений к выборкам в частотной области
dc_Y
Отрегулируйте значение постоянного тока (усиление) плоскости яркости изображения. Фильтр принимает
целочисленное значение в диапазоне от 0 до 1000. По умолчанию установлено значение 0.
dc_U
Отрегулируйте значение постоянного тока (усиление) 1-й плоскости цветности изображения. Фильтр принимает
целочисленное значение в диапазоне от 0 до 1000. По умолчанию установлено значение 0.
dc_V
Отрегулируйте значение постоянного тока (усиление) 2-й плоскости цветности изображения. Фильтр принимает
целочисленное значение в диапазоне от 0 до 1000. По умолчанию установлено значение 0.
весомый
Установите весовое выражение частотной области для плоскости яркости.
вес_U
Установите весовое выражение частотной области для 1-й плоскости цветности.
вес_V
Установите весовое выражение частотной области для 2-й плоскости цветности.
Фильтр принимает следующие переменные:
X
Y Координаты текущего образца.
W
H Ширина и высота изображения.
Примеры
· Высокая частота:
fftfilt = dc_Y = 128: weight_Y = 'squish (1- (Y + X) / 100)'
· НЧ:
fftfilt = dc_Y = 0: weight_Y = 'squish ((Y + X) / 100-1)'
· Резкость:
fftfilt = dc_Y = 0: weight_Y = '1 + squish (1- (Y + X) / 100)'
поле
Извлеките одно поле из чересстрочного изображения с помощью арифметики шага, чтобы избежать лишних затрат.
Процессорное время. Выходные кадры помечаются как не чересстрочные.
Фильтр принимает следующие параметры:
напишите
Укажите, следует ли извлекать верхнее (если значение 0 или «верхнее») или нижнее поле.
(если значение равно 1 или «низ»).
полевой матч
Фильтр согласования полей для обратного телесина. Он предназначен для реконструкции прогрессивного
кадры из потока, прошедшего телесин. Фильтр не пропускает дублированные кадры, поэтому для достижения
за полным "соответствием поля" обратного телесина должен следовать прореживающий фильтр, такой
as Истребление в фильтрграфе.
Разделение согласования полей и прореживания в значительной степени мотивировано
возможность вставки резервного фильтра деинтерлейсинга между ними. Если источник
смешанный телесин и реальный чересстрочный контент, "fieldmatch" не сможет сопоставить
поля для частей с чересстрочной разверткой. Но эти оставшиеся прочесанные кадры будут помечены как
с чересстрочной разверткой и, таким образом, может быть устранена чересстрочной разверткой с помощью более позднего фильтра, такого как Ядиф до
уничтожение.
В дополнение к различным параметрам конфигурации "fieldmatch" может занять дополнительную секунду.
поток, активируемый через ppsrc вариант. Если включено, реконструкция кадров будет
на основе полей и кадров из этого второго потока. Это позволяет первому входу быть
предварительно обработанный, чтобы помочь различным алгоритмам фильтра, сохраняя
вывод без потерь (при условии, что поля сопоставлены правильно). Как правило, полевые
шумоподавитель или регулировка яркости / контрастности.
Обратите внимание, что этот фильтр использует те же алгоритмы, что и TIVTC / TFM (проект AviSynth) и
VIVTC / VFM (проект VapourSynth). Последний является легким клоном TFM, от которого "fieldmatch"
основан на. Хотя семантика и использование очень близки, некоторые имена поведения и параметров
может отличаться.
Команда Истребление фильтр в настоящее время работает только для ввода с постоянной частотой кадров. Если ваш ввод
смешанный телесин (30 кадров в секунду) и прогрессивный контент с более низкой частотой кадров, например 24 кадра в секунду, используют
следующая цепочка фильтров для создания необходимого потока cfr:
"dejudder, fps = 30000/1001, fieldmatch, decimate".
Фильтр принимает следующие параметры:
заказ
Укажите предполагаемый порядок полей входного потока. Доступные значения:
автоматический
Автоматическое определение четности (используйте внутреннее значение четности FFmpeg).
BFF Предположим, что сначала нижнее поле.
ПТФ Предположим сначала верхнее поле.
Обратите внимание, что иногда рекомендуется не доверять четности, объявленной потоком.
Значение по умолчанию автоматический.
Режим
Установите используемый режим или стратегию сопоставления. pc режим является самым безопасным в том смысле, что он
не будет рисковать создавать рывки из-за дублирования кадров, когда это возможно, но если есть
плохие правки или смешанные поля, при хорошем совпадении будут выводиться комбинированные кадры
может действительно существовать. С другой стороны, pcn_ub режим является наиболее рискованным с точки зрения
создает рывки, но почти всегда найдет хороший кадр, если он есть. В
другие значения находятся где-то посередине pc и pcn_ub с точки зрения риска подергивания
и создание дублирующихся кадров вместо поиска хороших совпадений в разделах с плохими изменениями,
бесхозные поля, смешанные поля и т. д.
Более подробная информация о п / ц / н / у / б доступна в п / ц / н / у / б вещества .
Доступные значения:
pc 2-стороннее согласование (p / c)
pc_n
2-стороннее сопоставление и попытка 3-го сопоставления, если все еще расчесано (p / c + n)
pc_u
2-стороннее сопоставление и попытка 3-го сопоставления (в том же порядке), если все еще расчесано (p / c + u)
pc_n_ub
2-стороннее сопоставление, попытка 3-го совпадения, если все еще расчесано, и попытка 4-го / 5-го совпадений, если
все еще расчесанный (p / c + n + u / b)
PCN 3-стороннее согласование (p / c / n)
pcn_ub
3-стороннее сопоставление и попытка 4-го / 5-го совпадений, если все 3 исходных совпадения
определяется как расчесанный (p / c / n + u / b)
Круглые скобки в конце указывают совпадения, которые будут использоваться для этого режима.
при условии, заказ=ПТФ (И поле on автоматический or топ).
По скорости pc режим на сегодняшний день самый быстрый и pcn_ub самый медленный.
Значение по умолчанию pc_n.
ppsrc
Отметьте основной поток ввода как предварительно обработанный ввод и включите вторичный ввод
stream как чистый источник для выбора полей. См. Введение в фильтр для
подробнее. Это похоже на clip2 особенность от VFM / TFM.
Значение по умолчанию - 0 (отключено).
поле
Задайте поле для соответствия. Рекомендуется установить то же значение, что и заказ
если вы не столкнетесь с ошибками сопоставления с этой настройкой. При определенных обстоятельствах
изменение поля, которое используется для сопоставления, может иметь большое влияние на сопоставление
представление. Доступные значения:
автоматический
Автоматически (то же значение, что и заказ).
нижний
Матч из нижнего поля.
топ Матч из верхнего поля.
Значение по умолчанию автоматический.
мхрома
Установите, будет ли включена цветность во время сравнения совпадений. В большинстве случаев это
рекомендуется оставить это включенным. Вы должны установить это значение на 0, только если ваш клип имеет
плохие проблемы с цветностью, такие как сильная радуга или другие артефакты. Установка этого на 0
также можно использовать для ускорения за счет некоторой точности.
Значение по умолчанию 1.
y0
y1 Они определяют полосу исключения, которая исключает линии между y0 и y1 из того
включены в поле решения о сопоставлении. Полоса исключения может использоваться для игнорирования
субтитры, логотип или другие вещи, которые могут помешать сопоставлению. y0 устанавливает
начальная строка развертки и y1 устанавливает конечную строку; все строки между ними y0 и y1
(В том числе y0 и y1) будут проигнорированы. Параметр y0 и y1 к той же стоимости будет
отключить функцию. y0 и y1 по умолчанию 0.
молотить
Установите порог обнаружения смены сцены в процентах от максимального изменения яркости.
самолет. Хорошие значения находятся в диапазоне «[8.0, 14.0]». Обнаружение смены сцены только
актуально в случае комбатч=sc. Ассортимент для молотить равно «[0.0, 100.0]».
Значение по умолчанию 12.0.
комбатч
После появления сражаться Не нет, "fieldmatch" будет учитывать полученные результаты
совпадений при принятии решения, какое совпадение использовать в качестве окончательного. Доступные значения:
нет
Нет окончательного совпадения на основе результатов причесывания.
sc Счёты используются только при обнаружении смены сцены.
полный
Все время используйте гребешки.
По умолчанию это sc.
расческа
Заставьте «fieldmatch» вычислить прочесанные метрики для определенных совпадений и распечатать их.
Этот параметр известен как микрофон в словаре TFM / VFM. Доступные значения:
нет
Никакого принудительного расчета.
PCN Силовые расчеты p / c / n.
штуцер
Заставьте расчеты p / c / n / u / b.
Значение по умолчанию нет.
молотить
Это порог объединения области, используемый для обнаружения объединенного кадра. Это по сути
определяет, насколько «сильным» или «видимым» должно быть расчесывание. Большие значения означают
расчесывание должно быть более заметным, а меньшие значения означают, что расчесывание может быть менее заметным или
сильный и все еще быть обнаруженным. Допустимые значения: от «-1» (каждый пиксель будет
обнаружен как зачесанный) до 255 (пиксель как зачесанный не будет обнаружен). Это в основном
значение разности пикселей. Хороший диапазон - «[8, 12]».
Значение по умолчанию 9.
цветность
Устанавливает, учитывается ли цветность при принятии решения о комбинированном кадре. Только отключить
это, если у вашего источника есть проблемы с цветностью (радуга и т. д.), которые вызывают проблемы
для обнаружения гребенчатого кадра с включенной цветностью. Собственно, используя цветность=0 is
обычно более надежен, за исключением случая, когда в
источник.
Значение по умолчанию 0.
блоккс
Блочный
Соответственно установите размер по оси X и оси Y окна, используемого во время прочесывания кадра.
обнаружение. Это связано с размером области, в которой Combpel пиксели
требуется, чтобы его определяли как расчесанные, чтобы кадр был объявлен расчесанным. Увидеть Combpel
описание параметра для получения дополнительной информации. Возможные значения - любое число, которое является степенью
из 2, начиная с 4 и заканчивая 512.
Значение по умолчанию 16.
Combpel
Количество прочесанных пикселей внутри любого из Блочный by блоккс размер блоков на
рамка для рамки, которая будет определена как зачесанная. Пока молотить контролирует, насколько "видны"
должно быть расчесывание, этот параметр определяет, "сколько" должно быть расчесывания в любом
локализованная область (окно, определяемое блоккс и Блочный настройки) на раме.
Минимальное значение равно 0, а максимальное - «blocky x blockx» (в этот момент кадры не будут
когда-либо быть обнаруженным как расчесанный). Этот параметр известен как MI в словаре TFM / VFM.
Значение по умолчанию 80.
п / ц / н / у / б вещества
п / к / н
Мы предполагаем следующий телесин-поток:
Верхние поля: 1 2 2 3 4
Нижние поля: 1 2 3 4 4
Цифры соответствуют прогрессивному кадру, к которому относятся поля. Здесь первые два
кадры прогрессивные, 3-я и 4-я зачесанные и так далее.
Когда "fieldmatch" настроен на выполнение сопоставления снизу (поле=нижний) вот как
этот входной поток преобразуется:
Входной поток:
Т 1 2 2 3 4
B 1 2 3 4 4 <- соответствующая ссылка
Матчи: ccnnc
Выходной поток:
Т 1 2 3 4 4
В 1 2 3 4 4
В результате сопоставления полей мы видим, что некоторые кадры дублируются. Выполнить
полный обратный телесин, вам нужно полагаться на децимационный фильтр после этой операции.
См., Например, Истребление фильтр.
Та же операция теперь соответствует из верхних полей (поле=топ) выглядит так:
Входной поток:
T 1 2 2 3 4 <- соответствующая ссылка
В 1 2 3 4 4
Матчи: ccppc
Выходной поток:
Т 1 2 2 3 4
В 1 2 2 3 4
В этих примерах мы видим, что p, c и n значит; в основном они относятся к кадру и
поле противоположной четности:
*<p совпадает с полем противоположной четности в предыдущем кадре>
*<c совпадает с полем противоположной четности в текущем кадре>
*<n совпадает с полем противоположной четности в следующем кадре>
u / b
Команда u и b соответствия немного особенные в том смысле, что они совпадают с противоположного
флаг четности. В следующих примерах мы предполагаем, что в настоящее время мы подбираем второй
рамка (верх: 2, низ: 2). В соответствии с матчем, вверху и внизу ставится крестик.
совпадающие поля.
С нижним соответствием (поле=нижний):
Матч: cpnbu
ххххх
Вверху 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Внизу 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
ххххх
Выходные кадры:
2 1 2 2 2
2 2 2 1 3
С верхним соответствием (поле=топ):
Матч: cpnbu
ххххх
Вверху 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Внизу 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
ххххх
Выходные кадры:
2 2 2 1 2
2 1 3 2 2
Примеры
Простой IVTC первого телесин-потока верхнего поля:
fieldmatch = order = tff: combmatch = none, decimate
Расширенный IVTC с резервным Ядиф для неподвижно прочесанных рамок:
fieldmatch = order = tff: combmatch = full, yadif = deint = interlaced, decimate
Порядок полей
Преобразуйте порядок полей входного видео.
Он принимает следующие параметры:
заказ
Порядок выходных полей. Допустимые значения: ПТФ сначала для верхнего поля или BFF для дна
поле в первую очередь.
Значением по умолчанию является ПТФ.
Преобразование выполняется путем смещения содержимого изображения на одну строку вверх или вниз, и
заполнение оставшейся строки соответствующим графическим содержимым. Этот метод является последовательным
с большинством преобразователей порядка поля широковещательной передачи.
Если входящее видео не помечено как чересстрочное или уже помечено как
требуемого порядка полей вывода, то этот фильтр не изменяет входящее видео.
Это очень полезно при преобразовании в материал PAL DV или из него, когда сначала идет нижнее поле.
Например:
ffmpeg -i in.vob -vf "fieldorder = bff" out.dv
FIFO
Буферизируйте входные изображения и отправляйте их по запросу.
В основном это полезно при автоматической вставке фреймворком libavfilter.
Не принимает параметров.
find_rect
Найдите прямоугольный объект
Он принимает следующие варианты:
объект
Путь к файлу изображения объекта должен быть серым 8.
порог
Порог обнаружения, по умолчанию 0.5.
мипмапов
Количество MIP-карт, по умолчанию - 3.
хмин, юмин, хмакс, умакс
Задает прямоугольник для поиска.
Примеры
· Создайте репрезентативную палитру данного видео, используя FFmpeg:
ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv
обложка_прямая
Накройте прямоугольный объект
Он принимает следующие варианты:
чехол для варгана
Путь к файлу необязательного изображения обложки должен быть в yuv420.
Режим
Установите режим покрытия.
Принимает следующие значения:
чехол для варгана
накройте его прилагаемым изображением
пятно
покрыть его интерполяцией окружающих пикселей
Значение по умолчанию пятно.
Примеры
· Создайте репрезентативную палитру данного видео, используя FFmpeg:
ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv
формат
Преобразуйте входное видео в один из указанных форматов пикселей. Libavfilter попытается
выберите тот, который подходит в качестве входных данных для следующего фильтра.
Он принимает следующие параметры:
pix_fmts
Разделенный '|' список имен форматов пикселей, например "pix_fmts = yuv420p | monow | rgb24".
Примеры
· Преобразование входного видео в юв420р формат
format = pix_fmts = yuv420p
Преобразуйте входное видео в любой из форматов в списке
format = pix_fmts = yuv420p | yuv444p | yuv410p
кадров в секунду
Преобразуйте видео в указанную постоянную частоту кадров, дублируя или отбрасывая кадры как
необходимо.
Он принимает следующие параметры:
кадров в секунду Желаемая частота кадров вывода. По умолчанию 25.
год
Метод округления.
Возможные значения:
нуль
нулевой раунд к 0
инф округлить от 0
вниз
круглый к бесконечности
up округлить до + бесконечности
возле
круглый до ближайшего
По умолчанию - «рядом».
начальное время
Предположим, что первым PTS должно быть заданное значение в секундах. Это позволяет
заполнение / обрезка в начале потока. По умолчанию не делается никаких предположений о
ожидаемый PTS первого кадра, поэтому заполнение или обрезка не выполняется. Например, это
можно установить на 0, чтобы заполнить начало дубликатами первого кадра, если видео
поток начинается после аудиопотока или для обрезки любых кадров с отрицательным PTS.
В качестве альтернативы параметры можно указать в виде плоской строки: кадров в секунду[:год].
См. Также установки фильтр.
Примеры
· Типичное использование для установки 25 кадров в секунду:
кадр / с = кадр / с = 25
· Устанавливает частоту кадров до 24 с использованием метода сокращения и округления до ближайшего:
fps = fps = фильм: круглый = рядом
фреймпак
Упакуйте два разных видеопотока в стереоскопическое видео, установив правильные метаданные на
поддерживаемые кодеки. Два представления должны иметь одинаковый размер, частоту кадров и обработку.
остановится, когда закончится более короткое видео. Обратите внимание, что вы можете удобно настроить вид
недвижимость с лестница и кадров в секунду фильтры.
Он принимает следующие параметры:
формат
Желаемый формат упаковки. Поддерживаемые значения:
СБС Виды расположены рядом друг с другом (по умолчанию).
таб Мнения расположены друг над другом.
линий
Взгляды упакованы по строкам.
столбцы
Просмотры упакованы по столбцам.
кадры
Представления чередуются по времени.
Некоторые примеры:
# Преобразование левого и правого просмотров в видео с чередованием кадров
ffmpeg -i LEFT -i RIGHT -filter_complex framepack = frameseq ВЫХОД
# Преобразование просмотров в параллельное видео с таким же выходным разрешением, что и входное
ffmpeg -i LEFT -i RIGHT -filter_complex [0: v] scale = w = iw / 2 [left], [1: v] scale = w = iw / 2 [right], [left] [right] framepack = sbs ВЫВОД
Частота кадров
Измените частоту кадров, интерполируя новые кадры вывода видео из исходных кадров.
Этот фильтр не предназначен для правильной работы с чересстрочной разверткой. Если вы хотите
измените частоту кадров чересстрочного носителя, тогда перед этим необходимо выполнить деинтерлейсинг
фильтровать и повторно чередовать после этого фильтра.
Ниже приводится описание принятых вариантов.
кадров в секунду Укажите количество кадров в секунду. Этот параметр также можно указать как значение
в одиночестве. По умолчанию 50.
интерп_старт
Укажите начало диапазона, в котором выходной кадр будет создан как линейный
интерполяция двух кадров. Диапазон значений: [0-255], значение по умолчанию - 15.
интерп_конец
Укажите конец диапазона, в котором выходной кадр будет создан как линейный
интерполяция двух кадров. Диапазон значений: [0-255], значение по умолчанию - 240.
сцена
Укажите уровень, на котором обнаруживается изменение сцены, как значение от 0 до 100 до
указать новую сцену; низкое значение отражает низкую вероятность того, что текущий кадр
представить новую сцену, а более высокое значение означает, что текущий кадр с большей вероятностью
Будь один. По умолчанию - 7.
Флаги
Укажите флаги, влияющие на процесс фильтрации.
Доступное значение для Флаги это:
Scene_change_detect, SCD
Включите обнаружение смены сцены, используя значение параметра сцена. Этот флаг
по умолчанию включен.
фреймшаг
Выбирайте по одному кадру в каждом N-м кадре.
Этот фильтр принимает следующий вариант:
шаг
Выбирать кадр после каждого «шагового» кадра. Допустимые значения - положительные целые числа выше
чем 0. Значение по умолчанию - 1.
свободный
Примените эффект frei0r к входному видео.
Чтобы включить компиляцию этого фильтра, вам необходимо установить заголовок frei0r и
настройте FFmpeg с помощью "--enable-frei0r".
Он принимает следующие параметры:
имя_фильтра
Имя загружаемого эффекта frei0r. Если переменная среды ФРЕИ0R_ПУТЬ is
определено, эффект frei0r ищется в каждом из каталогов, указанных
список, разделенный двоеточиями в FREIOR_PATH. В противном случае стандартные пути frei0r
искали в следующем порядке: ГЛАВНАЯ / .frei0r-1 / lib /, / usr / местные / библиотека / frei0r-1 /,
/ usr / lib / frei0r-1 /.
filter_params
Разделенный '|' список параметров для передачи в эффект frei0r.
Параметр эффекта frei0r может быть логическим (его значение - "y" или "n"), двойным, a
цвет (указан как R/G/B, Где R, G и B числа с плавающей запятой от 0.0 до
1.0 включительно) или описанием цвета, указанным в разделе «Цвет» в ffmpeg-
utils manual), должность (указанная как X/Y, Где X и Y числа с плавающей запятой)
и / или строку.
Количество и типы параметров зависят от загружаемого эффекта. Если параметр эффекта
не указано, устанавливается значение по умолчанию.
Примеры
· Примените эффект distort0r, установив первые два двойных параметра:
frei0r = имя_фильтра = distort0r: параметры_фильтра = 0.5 | 0.01
· Примените эффект цветопередачи, взяв цвет в качестве первого параметра:
frei0r = цветовое расстояние: 0.2 / 0.3 / 0.4
frei0r = цветопередача: фиолетовый
frei0r = colordistance: 0x112233
· Примените эффект перспективы, указав верхнее левое и верхнее правое положение изображения:
frei0r=perspective:0.2/0.2|0.8/0.2
Для получения дополнительной информации см.http://frei0r.dyne.org>
фспп
Применяйте быструю и простую постобработку. Это более быстрая версия SPP.
Он разбивает (I) DCT на горизонтальные / вертикальные проходы. В отличие от простой постобработки
фильтр, один из них выполняется один раз на блок, а не на пиксель. Это позволяет многое
более высокая скорость.
Фильтр принимает следующие параметры:
Установите качество. Эта опция определяет количество уровней для усреднения. Он принимает
целое число в диапазоне 4-5. Значение по умолчанию - 4.
qp Установите постоянный параметр квантования. Принимает целое число от 0 до 63. Если не
установлен, фильтр будет использовать QP из видеопотока (если есть).
прочность
Установите силу фильтра. Принимает целое число в диапазоне от -15 до 32. Меньшие значения означают больше
деталей, но и больше артефактов, а более высокие значения делают изображение более гладким, но также
расплывчатее. Значение по умолчанию - 0 X оптимальное значение PSNR.
use_bframe_qp
Включите использование QP из B-Frames, если установлено значение 1. Использование этой опции может вызвать
мерцание, так как B-кадры часто имеют больший QP. По умолчанию 0 (не включено).
эквалайзер
Фильтр принимает следующие параметры:
люм_выражение, люм
Установите выражение яркости.
cb_expr, cb
Установите выражение насыщенности синего.
cr_expr, cr
Установите выражение цветности красного.
альфа_выражение, a
Установите альфа-выражение.
красное_выражение, r
Установите красное выражение.
зеленый_выражение, g
Установите зеленое выражение.
синий_выражение, b
Установите синее выражение.
Цветовое пространство выбирается в соответствии с указанными параметрами. Если один из lum_expr,
cb_expr или cr_expr параметры указаны, фильтр автоматически выберет YCbCr
цветовое пространство. Если один из красное_выражение, green_expr или blue_expr параметры указаны, это будет
выберите цветовое пространство RGB.
Если одно из выражений цветности не определено, оно возвращается к другому. Если нет
указано альфа-выражение, оно будет оцениваться как непрозрачное значение. Если нет цветности
выражения указаны, они будут оценивать выражение яркости.
В выражениях могут использоваться следующие переменные и функции:
N Порядковый номер отфильтрованного кадра, начиная с 0.
X
Y Координаты текущего образца.
W
H Ширина и высота изображения.
SW
SH Масштаб ширины и высоты в зависимости от текущей фильтруемой плоскости. Это соотношение
между соответствующим количеством пикселей плоскости яркости и пикселями текущей плоскости. Например
для YUV4: 2: 0 значения: «1,1» для плоскости яркости и «0.5,0.5» для плоскостей цветности.
T Время текущего кадра, выраженное в секундах.
р (х, y)
Вернуть значение пикселя в местоположении (x,y) текущей плоскости.
люм (х, y)
Вернуть значение пикселя в местоположении (x,y) плоскости яркости.
cb (х, y)
Вернуть значение пикселя в местоположении (x,y) сине-разностной плоскости цветности.
Верните 0, если такой плоскости нет.
cr (х, y)
Вернуть значение пикселя в местоположении (x,y) красно-разностной плоскости цветности.
Верните 0, если такой плоскости нет.
г (х, y)
г (х, y)
б (х, y)
Вернуть значение пикселя в местоположении (x,y) красной / зеленой / синей составляющей.
Верните 0, если такого компонента нет.
альфа (х, y)
Вернуть значение пикселя в местоположении (x,y) альфа-плоскости. Вернуть 0, если есть
нет такого самолета.
Для функций, если x и y находятся за пределами области, значение будет автоматически обрезано до
ближний край.
Примеры
· Отразить изображение по горизонтали:
geq = p (WX \, Y)
· Сгенерируйте двумерную синусоидальную волну с углом «PI / 3» и длиной волны 100 пикселей:
geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128
· Создайте причудливый загадочный движущийся свет:
nullsrc = s = 256x256, geq =случайный(1)/hypot(X-cos(N*0.07)*W/2-W/2\,Y-sin(N*0.09)*H/2-H/2)^2*1000000*sin(N*0.02):128:128
· Создайте эффект быстрого тиснения:
format = серый, geq = lum_expr = '(p (X, Y) + (256-p (X-4, Y-4))) / 2'
· Измените компоненты RGB в зависимости от положения пикселя:
geq = r = 'X / W * r (X, Y)': g = '(1-X / W) * g (X, Y)': b = '(HY) / H * b (X, Y ) '
· Создайте радиальный градиент того же размера, что и исходный (см. Также виньетка
фильтр):
geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/гаусс(0) /гаусс(0), формат = серый
· Создайте линейный градиент для использования в качестве маски для другого фильтра, затем скомпонуйте его
наложение. В этом примере видео будет постепенно становиться более размытым сверху вниз.
нижняя часть оси Y, определяемая линейным градиентом:
ffmpeg -i input.mp4 -filter_complex "geq = lum = 255 * (Y / H), format = grey [grad]; [0: v] boxblur = 4 [blur]; [blur] [grad] alphamerge [alpha] ; [0: v] [альфа] оверлей "output.mp4
Gradfun
Исправьте артефакты полос, которые иногда появляются в почти плоских областях из-за
усечение до 8-битной глубины цвета. Интерполируйте градиенты, которые должны идти туда, где полосы
есть, и дизеринг их.
Он предназначен только для воспроизведения. Не используйте его до сжатия с потерями, потому что
сжатие имеет тенденцию терять дизеринг и возвращать полосы.
Он принимает следующие параметры:
прочность
Максимальная величина, на которую фильтр изменит любой пиксель. Это тоже
порог для обнаружения почти плоских участков. Допустимые значения от 51 до 64;
значение по умолчанию - 1.2. Значения вне диапазона будут обрезаны до допустимого диапазона.
radius
Окрестности, к которым требуется применить градиент. Больший радиус обеспечивает более плавные градиенты,
но также не позволяет фильтру изменять пиксели рядом с детализированными областями.
Допустимые значения: 8-32; значение по умолчанию - 16. Значения, выходящие за пределы допустимого диапазона, будут
обрезано до допустимого диапазона.
В качестве альтернативы параметры можно указать в виде плоской строки: прочность[:radius]
Примеры
· Примените фильтр с силой 3.5 и радиусом 8:
gradfun = 3.5: 8
· Укажите радиус, опуская силу (которая вернется к значению по умолчанию):
gradfun = радиус = 8
хомутик
Примените Hald CLUT к видеопотоку.
Первый вход - это видеопоток для обработки, а второй - это Hald CLUT. Халд
Вход CLUT может быть простой картинкой или полным видеопотоком.
Фильтр принимает следующие параметры:
самый короткий
Принудительное завершение при завершении самого короткого ввода. По умолчанию 0.
повторить
Продолжайте применять последний CLUT после окончания потока. Значение 0 отключает
фильтр после достижения последнего кадра CLUT. По умолчанию 1.
"haldclut" также имеет те же параметры интерполяции, что и лут3д (оба фильтра имеют один и тот же
внутренности).
Более подробную информацию о Hald CLUT можно найти на веб-сайте Эскила Стинберга (Hald CLUT
автор) вhttp://www.quelsolaar.com/technology/clut.html>.
Рабочий процесс Примеры реализованных проектов
Видеопоток Hald CLUT
Создание потока идентификатора Hald CLUT, измененного с различными эффектами:
ffmpeg -f lavfi -i B = 8 -vf "оттенок = H = 2 * PI * t: s = sin (2 * PI * t) +1, кривые = cross_process" -t 10 -c: v ffv1 clut.nut
Примечание: убедитесь, что вы используете кодек без потерь.
Затем используйте его с haldclut, чтобы применить его к некоторому случайному потоку:
ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0] [1] haldclut' -t 20 mandelclut.mkv
Hald CLUT будет применен к первым 10 секундам (продолжительность беспорядок.гайка), то
последнее изображение этого потока CLUT будет применено к оставшимся кадрам
ручей "Мандельброт".
Hald CLUT с превью
Предполагается, что Hald CLUT представляет собой квадратное изображение «Уровень * Уровень * Уровень» по
«Уровень * Уровень * Уровень» пикселей. Для данного Hald CLUT FFmpeg выберет максимально возможное
квадрат, начиная с верхнего левого угла изображения. Оставшиеся пиксели заполнения (нижние или
справа) будут проигнорированы. Эту область можно использовать для предварительного просмотра Hald CLUT.
Как правило, следующий сгенерированный Hald CLUT будет поддерживаться фильтром haldclut:
ffmpeg -f lavfi -i B = 8 -vf "
pad = iw + 320 [padded_clut];
smptebars = s = 320x256, разделить [a] [b];
[padded_clut] [a] overlay = W-320: h, кривые = color_negative [main];
[main] [b] overlay = W-320 "-frames: v 1 clut.png
Он содержит оригинал и предварительный просмотр эффекта цветных полос CLUT: SMPTE
отображается справа вверху и ниже тех же цветных полос, обработанных изменением цвета.
Затем эффект этого Hald CLUT можно визуализировать с помощью:
ffplay input.mkv -vf "movie = clut.png, [in] haldclut"
hflip
Переверните входное видео по горизонтали.
Например, чтобы перевернуть входное видео по горизонтали с помощью FFmpeg:
ffmpeg -i in.avi -vf "hflip" out.avi
Хистек
Этот фильтр применяет глобальное выравнивание цветовой гистограммы для каждого кадра.
Его можно использовать для исправления видео, которое имеет сжатый диапазон яркости пикселей. В
фильтр перераспределяет интенсивности пикселей, чтобы выровнять их распределение по
диапазон интенсивности. Его можно рассматривать как «автоматически настраивающийся фильтр контрастности». Этот
фильтр полезен только для исправления ухудшенного или плохо захваченного исходного видео.
Фильтр принимает следующие параметры:
прочность
Определите количество применяемой коррекции. По мере уменьшения силы
распределение яркости пикселей все больше приближается к входному кадру.
Значение должно быть числом с плавающей запятой в диапазоне [0,1] и по умолчанию равно 0.200.
интенсивность
Установите максимальную интенсивность, которая может генерироваться, и масштабируйте выходные значения
соответственно. Сила должна быть установлена по желанию, а затем интенсивность может быть
ограничено, если необходимо, чтобы избежать вымывания. Значение должно быть числом с плавающей запятой в диапазоне
[0,1] и по умолчанию 0.210.
антибандинг
Установите уровень защиты от полосатости. Если включен, фильтр будет случайным образом изменять яркость
выводить пиксели на небольшое количество, чтобы избежать полосатости гистограммы. Возможные значения:
«нет», «слабый» или «сильный». По умолчанию это «нет».
Гистограмма
Вычислите и нарисуйте гистограмму распределения цвета для входного видео.
Вычисленная гистограмма представляет собой распределение цветовых компонентов в
изображения.
Фильтр принимает следующие параметры:
Режим
Установите режим гистограммы.
Принимает следующие значения:
уровни
Стандартная гистограмма, отображающая распределение цветовых компонентов в изображении.
Отображает цветовую диаграмму для каждого цветового компонента. Показывает распределение Y, U, V,
Компоненты A или R, G, B, в зависимости от формата ввода, в текущем кадре. Ниже
На каждом графике показан измеритель шкалы цветовых компонентов.
цвет
Отображает значения цветности (размещение цветов U / V) на двухмерном графике (который
называется вектороскопом). Чем ярче пиксель в вектороскопе, тем больше пикселей
входной кадр соответствует этому пикселю (т. е. больше пикселей имеют эту цветность
ценность). Компонент V отображается на горизонтальной оси (X) с крайним левым
сторона равна V = 0, а крайняя правая сторона - V = 255. Компонент U равен
отображается на вертикальной оси (Y), верхняя часть представляет U = 0, а нижняя
представляющий U = 255.
Положение белого пикселя на графике соответствует значению цветности
пиксель входного клипа. Таким образом, график можно использовать для считывания оттенка (цвет
аромат) и насыщенность (преобладание оттенка в цвете). Как оттенок
цвет меняется, он перемещается по квадрату. В центре площади
насыщенность равна нулю, что означает, что соответствующий пиксель не имеет цвета. Если
количество определенного цвета увеличивается (при этом остальные цвета остаются неизменными)
насыщенность увеличивается, и индикатор приближается к краю квадрата.
color2
Значения цветности в вектороскопе такие же, как "цвет", но фактические значения цветности
отображается.
форма волны
График цветовых компонентов по строкам / столбцам. В строковом режиме график слева
представляет значение компонента цвета 0, а правая сторона представляет значение = 255. В
режим столбца, верхняя сторона представляет значение компонента цвета = 0, а нижняя сторона
представляет значение = 255.
Значение по умолчанию - «уровни».
уровень_высота
Установите высоту уровня в «уровнях». Значение по умолчанию - 200. Допустимый диапазон: [50, 2048].
масштаб_высота
Установите высоту цветовой шкалы в «уровнях». Значение по умолчанию - 12. Допустимый диапазон: [0, 40].
шаг
Установите шаг для режима «формы волны». Меньшие значения полезны, чтобы узнать, сколько значений
одинаковая яркость распределяется по входным строкам / столбцам. Значение по умолчанию - 10.
Допустимый диапазон: [1, 255].
waveform_mode
Установите режим для «формы волны». Может быть либо «строкой», либо «столбцом». По умолчанию - «строка».
waveform_mirror
Установите режим зеркального отображения для "формы сигнала". 0 означает без зеркалирования, 1 означает зеркальное отображение. В зеркальном
режим, более высокие значения будут представлены слева для режима "строки" и вверху
для режима «столбец». По умолчанию 0 (без зеркалирования).
Режим отображения
Установите режим отображения для «формы волны» и «уровней». Принимает следующие значения:
парад
Отображение отдельного графика для цветовых компонентов, расположенных рядом в виде «строки» волны.
режим или один под другим в режиме формы сигнала "столбец" для гистограммы "формы сигнала"
режим. Для режима гистограммы "уровни" графики компонентов цвета расположены ниже.
друг друга.
Использование этого режима отображения в режиме гистограммы "осциллограмм" позволяет легко определять цвет.
отбрасывает светлые и темные участки изображения, сравнивая контуры
верхний и нижний графики каждого сигнала. Поскольку белый, серый и черный
характеризуется точно равным количеством красных, зеленых и синих нейтральных областей
изображение должно отображать три формы волны примерно одинаковой ширины / высоты. Если не,
Коррекцию легко выполнить, отрегулировав уровень трех сигналов.
наложение
Представленная информация идентична той, что в «параде», за исключением того, что графики
представляющие компоненты цвета накладываются друг на друга.
Этот режим отображения в режиме гистограммы "осциллограмм" упрощает определение относительных
различия или сходства в перекрывающихся областях цветовых компонентов, которые
должны быть идентичными, например, нейтрально-белый, серый или черный.
По умолчанию - «парад».
level_mode
Установите режим «Уровни». Может быть «линейным» или «логарифмическим». По умолчанию "линейный".
компоненты
Установите, какие цветовые компоненты отображать для режима «уровни». По умолчанию 7.
Примеры
· Рассчитайте и начертите гистограмму:
ffplay -i ввод -vf гистограмма
hqdn3d
Это высокоточный / качественный 3D-шумоподавляющий фильтр. Он направлен на уменьшение шума изображения,
создание плавных изображений и получение действительно неподвижных изображений. Это должно усилить
сжимаемость.
Он принимает следующие необязательные параметры:
luma_spatial
Неотрицательное число с плавающей запятой, определяющее пространственную яркость. Это
по умолчанию 4.0.
chroma_spatial
Неотрицательное число с плавающей запятой, определяющее пространственную интенсивность цветности. Это
по умолчанию 3.0 *luma_spatial/ 4.0.
luma_tmp
Число с плавающей запятой, определяющее временную силу яркости. По умолчанию
6.0 *luma_spatial/ 4.0.
chroma_tmp
Число с плавающей запятой, определяющее временную силу цветности. По умолчанию
luma_tmp*chroma_spatial/luma_spatial.
hqx
Примените высококачественный фильтр увеличения, предназначенный для пиксельной графики. Этот фильтр был
изначально создан Максимом Степиным.
Он принимает следующий вариант:
n Установите размер масштабирования: 2 для «hq2x», 3 для «hq3x» и 4 для «hq4x». По умолчанию 3.
стек
Сложите входные видео по горизонтали.
Все потоки должны иметь одинаковый формат пикселей и одинаковую высоту.
Обратите внимание, что этот фильтр работает быстрее, чем при использовании наложение и площадка фильтр для создания такого же вывода.
Фильтр принимает следующий вариант:
nb_inputs
Установите количество входных потоков. По умолчанию 2.
оттенок
Измените оттенок и / или насыщенность ввода.
Он принимает следующие параметры:
h Укажите угол оттенка в градусах. Он принимает выражение и принимает значения по умолчанию
на «0».
s Задайте насыщенность в диапазоне [-10,10]. Он принимает выражение и по умолчанию
"1".
H Укажите угол оттенка в радианах. Он принимает выражение и принимает значения по умолчанию
на «0».
b Укажите яркость в диапазоне [-10,10]. Он принимает выражение и по умолчанию
"0".
h и H являются взаимоисключающими и не могут быть указаны одновременно.
Команда b, h, H и s значения параметров - это выражения, содержащие следующие константы:
n количество кадров входящего кадра, начиная с 0
PTS временная метка представления входного кадра, выраженная в единицах измерения времени
r частота кадров входящего видео, NAN, если входная частота кадров неизвестна
t метка времени, выраженная в секундах, NAN, если метка времени ввода неизвестна
tb временная база входного видео
Примеры
· Установите оттенок на 90 градусов и насыщенность на 1.0:
оттенок = h = 90: s = 1
· Та же команда, но с выражением оттенка в радианах:
оттенок = H = PI / 2: s = 1
· Поверните оттенок и измените насыщенность от 0 до 2 в течение 1 секунды:
оттенок = "H = 2 * PI * t: s = sin (2 * PI * t) +1"
· Примените 3-секундный эффект постепенного появления насыщения, начиная с 0:
оттенок = "s = min (t / 3 \, 1)"
Общее выражение плавного появления можно записать как:
оттенок = "s = min (0 \, max ((t-START) / DURATION \, 1))"
· Примените 3-секундный эффект затухания насыщения, начиная с 5-ти секунд:
оттенок = "s = max (0 \, min (1 \, (8-t) / 3))"
Общее выражение затухания можно записать как:
оттенок = "s = max (0 \, min (1 \, (START + DURATION-t) / DURATION))"
Команды
Этот фильтр поддерживает следующие команды:
b
s
h
H Измените оттенок и / или насыщенность и / или яркость входного видео. В
команда принимает тот же синтаксис, что и соответствующая опция.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
идет
Определить тип чересстрочной развертки видео.
Этот фильтр пытается определить, являются ли входные кадры чересстрочными, прогрессивными, верхними или нижними.
поле в первую очередь. Он также будет пытаться обнаружить поля, которые повторяются между соседними кадрами.
(знак телесина).
Обнаружение одиночного кадра учитывает только непосредственно соседние кадры при классификации каждого
Рамка. Обнаружение множественных кадров включает историю классификации предыдущих
кадры.
Фильтр будет регистрировать эти значения метаданных:
одиночный.текущий_кадр
Обнаружен тип текущего кадра с использованием однокадрового обнаружения. Один из: `` tff '' (вверху
поле сначала), `` bff '' (сначала нижнее поле), `` прогрессивный '' или `` неопределенный ''
сингл.tff
Кумулятивное количество кадров, определенных как верхнее поле первыми с использованием однокадрового обнаружения.
несколько.tff
Совокупное количество кадров, определенных как первое поле в верхнем поле при использовании нескольких кадров
обнаружение.
сингл.bff
Суммарное количество кадров, обнаруженных как нижнее поле первыми при использовании одиночного кадра
обнаружение.
несколько.current_frame
Обнаружен тип текущего кадра с использованием многокадрового обнаружения. Один из: `` tff '' (вверху
поле сначала), `` bff '' (сначала нижнее поле), `` прогрессивный '' или `` неопределенный ''
множественный.bff
Суммарное количество кадров, определенных как нижнее поле первыми при использовании нескольких кадров
обнаружение.
одиночный. прогрессивный
Суммарное количество кадров, обнаруженных как прогрессивные с помощью однокадрового обнаружения.
множественный. прогрессивный
Суммарное количество кадров, определенных как прогрессивные с помощью обнаружения нескольких кадров.
одиночный. неопределенный
Суммарное количество кадров, которые не удалось классифицировать с помощью однокадрового обнаружения.
множественный. неопределенный
Суммарное количество кадров, которые нельзя классифицировать с помощью нескольких кадров
обнаружение.
Repeated.current_frame
Какое поле в текущем кадре повторяется с последнего. Одно из `` ни то ни было '',
`` верх '' или `` низ ''.
повторяется. ни
Суммарное количество кадров без повторяющегося поля.
повторяется наверху
Суммарное количество кадров, в которых верхнее поле повторяется с верха предыдущего кадра.
поле.
повторяется снизу
Суммарное количество кадров с повторением нижнего поля из предыдущего кадра.
нижнее поле.
Фильтр принимает следующие параметры:
intl_thres
Установите порог чересстрочной развертки.
prog_thres
Установить прогрессивный порог.
Repeat_thres
Порог для повторного обнаружения поля.
период полураспада
Количество кадров, после которых вклад данного кадра в статистику уменьшается вдвое.
(т. е. его вклад в классификацию составляет всего 0.5). Значение по умолчанию 0 означает, что
всем просмотренным кадрам навсегда присваивается полный вес 1.0.
анализировать_interlaced_flag
Если это не 0, тогда idet будет использовать указанное количество кадров, чтобы определить,
флаг чересстрочной развертки является точным, он не учитывает неопределенные кадры. Если флаг
окажется точным, он будет использован без дальнейших вычислений, если он
окажется неточным, он будет удален без дальнейших вычислений. Этот
позволяет вставить фильтр idet как простой вычислительный метод для очистки
чересстрочный флаг
il
Отменить чередование или чередование полей.
Этот фильтр позволяет обрабатывать поля чересстрочных изображений без их деинтерлейсинга.
При отмене чередования входной кадр разбивается на 2 поля (так называемые половинки изображения). Нечетные строки
перемещаются в верхнюю половину выходного изображения, ровные строки - в нижнюю половину. Ты сможешь
обрабатывать (фильтровать) их независимо, а затем повторно чередовать их.
Фильтр принимает следующие параметры:
режим яркости, l
цвет_режим, c
альфа_режим, a
Доступные значения для luma_mode, chroma_mode и альфа_режим составляют:
нет
Ничего не делать.
деинтерлейв, d
Удалите чередование полей, поместив одно над другим.
чередование, i
Поля чередования. Обратный эффект деинтерливинга.
Значение по умолчанию - «нет».
яркость_своп, ls
хрома_своп, cs
альфа_своп, as
Поменять местами поля яркости / цветности / альфа. Обмен четных и нечетных линий. Значение по умолчанию - 0.
раздувать
Примените эффект раздувания к видео.
Этот фильтр заменяет пиксель на локальным(3x3) среднее с учетом только
значения выше, чем пиксель.
Он принимает следующие варианты:
порог0
порог1
порог2
порог3
Ограничьте максимальное изменение для каждой плоскости, по умолчанию 65535. Если 0, плоскость останется
без изменений.
чересстрочной
Простой фильтр с чересстрочной разверткой от прогрессивного содержимого. Это чередование верхнего (или нижнего)
строки из нечетных кадров с нижними (или верхними) строками из четных кадров, уменьшая вдвое частоту кадров
и сохранение высоты изображения.
Оригинальная оригинальная новая рамка
Рамка 'j' Рамка 'j + 1' (tff)
========== =========== ===================
Строка 0 --------------------> Кадр 'j' Строка 0
Строка 1 Строка 1 ----> Кадр 'j + 1' Строка 1
Строка 2 ---------------------> Кадр 'j' Строка 2
Строка 3 Строка 3 ----> Кадр 'j + 1' Строка 3
... ... ...
Новый кадр + 1 будет сгенерирован кадром 'j + 2' и кадром 'j + 3' и т. Д.
Он принимает следующие необязательные параметры:
сканирование
Это определяет, берется ли чересстрочный кадр из четного (tff - по умолчанию) или
нечетные (bff) строки прогрессивного кадра.
НЧ
Включить (по умолчанию) или отключить вертикальный фильтр нижних частот, чтобы избежать чересстрочной развертки твиттера
и уменьшить муаровый узор.
Kerndeint
Деинтерлейсинг входного видео с помощью адаптивного деинтерлинга ядра Дональда Графта. Работа над
чересстрочные части видео для создания прогрессивных кадров.
Описание принятых параметров следует ниже.
молотить
Установите порог, который влияет на допуск фильтра при определении того,
строка должна быть обработана. Это должно быть целое число в диапазоне [0,255], по умолчанию - 10.
Значение 0 приведет к применению процесса ко всем пикселям.
карта Закрасьте пиксели, превышающие пороговое значение, в белый цвет, если установлено значение 1. По умолчанию - 0.
заказ
Установите порядок полей. Поменять местами поля, если установлено 1, оставить поля в покое, если 0. По умолчанию 0.
острый
Включите дополнительную резкость, если установлено значение 1. По умолчанию - 0.
двухсторонний
Включите двухстороннее повышение резкости, если установлено значение 1. По умолчанию - 0.
Примеры
· Применить значения по умолчанию:
kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0
· Включить дополнительную резкость:
kerndeint = диез = 1
· Закрашиваем обработанные пиксели в белый цвет:
kerndeint = карта = 1
линзокоррекция
Исправьте радиальное искажение линзы
Этот фильтр можно использовать для коррекции радиального искажения, которое может возникнуть в результате использования
широкоугольные объективы и тем самым повторно исправляют изображение. Чтобы подобрать нужные параметры, можно
используйте инструменты, доступные, например, как часть opencv или просто методом проб и ошибок. Использовать
opencv использует калибровочный образец (под samples / cpp) из источников opencv и извлекает
коэффициенты k1 и k2 из полученной матрицы.
Обратите внимание, что фактически тот же фильтр доступен в инструментах с открытым исходным кодом Krita и
Digikam из проекта KDE.
В отличие от виньетка фильтр, который также можно использовать для компенсации ошибок объектива, это
фильтр исправляет искажение изображения, тогда как виньетка корректирует яркость
распределения, поэтому вы можете использовать оба фильтра вместе в определенных случаях, хотя вы
придется позаботиться о заказе, то есть о том, следует ли применять виньетирование до или
после коррекции линз.
Возможности
Фильтр принимает следующие параметры:
cx Относительная координата x фокуса изображения и, следовательно, центра
искажение. Это значение имеет диапазон [0,1] и выражается в долях изображения.
ширина.
cy Относительная координата y фокуса изображения и, следовательно, центр
искажение. Это значение имеет диапазон [0,1] и выражается в долях изображения.
высота.
k1 Коэффициент квадратичного поправочного члена. 0.5 означает отсутствие коррекции.
k2 Коэффициент двойного квадратичного поправочного члена. 0.5 означает отсутствие коррекции.
Формула, по которой генерируется поправка:
r_src = r_tgt * (1 + k1 * (r_tgt / r_0) ^ 2 + k2 * (r_tgt / r_0) ^ 4)
в котором r_0 составляет половину диагонали изображения и r_src и r_tgt расстояния от
фокус на исходном и целевом изображениях соответственно.
лут3д
Примените 3D LUT к входному видео.
Фильтр принимает следующие параметры:
файл
Задайте имя файла 3D LUT.
Поддерживаемые в настоящее время форматы:
3dl After Effects
куб
Иридас
Дат DaVinci
m3d Пандора
интерп
Выберите режим интерполяции.
Доступные значения:
ближайший
Используйте значения из ближайшей определенной точки.
трехлинейный
Интерполируйте значения, используя 8 точек, определяющих куб.
четырехгранный
Интерполируйте значения с помощью тетраэдра.
лут лутргб, лютёв
Вычислить справочную таблицу для привязки каждого входного значения компонента пикселя к выходному значению,
и примените его к входному видео.
лютёв применяет таблицу поиска к входному видео YUV, лутргб к входному видео RGB.
Эти фильтры принимают следующие параметры:
c0 установить первое выражение компонента пикселя
c1 установить второе выражение компонента пикселя
c2 установить третье выражение компонента пикселя
c3 установить выражение четвертого пиксельного компонента, соответствует альфа-компоненту
r установить красное выражение компонента
g установить выражение зеленого компонента
b установить синее выражение компонента
a выражение альфа-компонента
y установить выражение компонента Y / яркости
u установить выражение компонента U / Cb
v установить выражение компонента V / Cr
Каждый из них определяет выражение, используемое для вычисления таблицы поиска для
соответствующие значения компонентов пикселя.
Точный компонент, связанный с каждым из c* параметры зависят от формата ввода.
Команда припой фильтр требует на входе форматов пикселей YUV или RGB, лутргб требуется RGB
форматы пикселей на входе и лютёв требует YUV.
Выражения могут содержать следующие константы и функции:
w
h Ширина и высота ввода.
волна Входное значение для пиксельного компонента.
Clipval
Входное значение, привязанное к минвал-максвал .
максвал
Максимальное значение для пиксельной составляющей.
минвал
Минимальное значение для пиксельной составляющей.
негритянский
Отрицательное значение для значения компонента пикселя, обрезанное до минвал-максвал ассортимент;
это соответствует выражению «maxval-clipval + minval».
клип (val)
Вычисленное значение в волна, прикрепленный к минвал-максвал .
гаммавал (гамма)
Вычисленное значение гамма-коррекции значения компонента пикселя, обрезанное до
минвал-максвал диапазон. Это соответствует выражению
"pow ((clipval-minval) / (maxval-minval) \,гамма) * (maxval-minval) + minval "
По умолчанию все выражения имеют значение «val».
Примеры
· Отменить входное видео:
lutrgb = "r = maxval + minval-val: g = maxval + minval-val: b = maxval + minval-val"
lutyuv = "y = maxval + minval-val: u = maxval + minval-val: v = maxval + minval-val"
Вышеупомянутое такое же, как:
lutrgb = "r = negval: g = negval: b = negval"
lutyuv = "y = negval: u = negval: v = negval"
· Отрицательная яркость:
lutyuv = y = negval
· Удалите компоненты цветности, превратив видео в изображение в серых тонах:
lutyuv = "u = 128: v = 128"
· Применить эффект яркого горения:
lutyuv = "y = 2 * val"
· Удалите зеленый и синий компоненты:
lutrgb = "g = 0: b = 0"
· Установите постоянное значение альфа-канала на входе:
format = rgba, lutrgb = a = "maxval-minval / 2"
· Правильная гамма яркости с коэффициентом 0.5:
lutyuv = y = гаммавал (0.5)
· Отбросить младшие значащие биты яркости:
lutyuv = y = 'бит и (значение, 128 + 64 + 32)'
самолеты слияния
Объедините компоненты цветового канала из нескольких видеопотоков.
Фильтр принимает до 4 входных потоков и объединяет выбранные входные плоскости с выходными.
видео.
Этот фильтр принимает следующие параметры:
отображение
Установите вход для сопоставления выходной плоскости. По умолчанию 0.
Отображения указываются в виде растрового изображения. Его следует указывать в виде шестнадцатеричного числа.
в виде 0xAa [Bb [Cc [Dd]]]. 'Aa' описывает отображение для первой плоскости
выходной поток. 'A' устанавливает номер используемого входного потока (от 0 до 3), а 'a'
номер плоскости соответствующего входа для использования (от 0 до 3). Остаток от
сопоставления аналогичны, 'Bb' описывает сопоставление для второй плоскости выходного потока,
'Cc' описывает отображение для третьей плоскости выходного потока, а 'Dd' описывает
отображение для четвертой плоскости выходного потока.
формат
Установите формат выходного пикселя. По умолчанию - yuva444p.
Примеры
· Объедините три серых видеопотока одинаковой ширины и высоты в один видеопоток:
[a0][a1][a2]mergeplanes=0x001020:yuv444p
· Объединение 1-го потока yuv444p и 2-го серого видеопотока в видеопоток yuva444p:
[a0][a1]mergeplanes=0x00010210:yuva444p
· Поменять местами самолет Y и A в потоке yuva444p:
format = yuva444p, mergeplanes = 0x03010200: yuva444p
· Поменять местами плоскости U и V в потоке yuv420p:
формат = yuv420p, mergeplanes = 0x000201: yuv420p
· Преобразование клипа rgb24 в yuv444p:
формат = rgb24, mergeplanes = 0x000102: yuv444p
McDeint
Примените деинтерлейсинг с компенсацией движения.
Для ввода требуется одно поле на кадр, поэтому его следует использовать вместе с yadif = 1/3 или
эквивалент.
Этот фильтр принимает следующие параметры:
Режим
Установите режим деинтерлейсинга.
Принимает одно из следующих значений:
быстро
средний
медленной
использовать итеративную оценку движения
экстра_медленно
" У аборигенов медленной, но используйте несколько опорных кадров.
Значение по умолчанию быстро.
соотношение
Установите четность поля изображения, принятую для входящего видео. Это должно быть одно из
следующие значения:
0, ПТФ
сначала принять верхнее поле
1, BFF
сначала принять нижнее поле
Значение по умолчанию BFF.
qp Установите параметр квантования (QP) для каждого блока, используемый внутренним кодировщиком.
Более высокие значения должны привести к более плавному векторному полю движения, но менее оптимальному.
отдельные векторы. Значение по умолчанию - 1.
умереть
Отбросьте кадры, которые не сильно отличаются от предыдущего кадра, чтобы уменьшить кадр
ставка.
В основном этот фильтр используется для кодирования с очень низкой скоростью передачи данных (например, потоковая передача по коммутируемому соединению).
модем), но теоретически его можно было бы использовать для фиксации фильмов с обратным телесином.
неправильно.
Ниже приводится описание принятых вариантов.
Макс Установите максимальное количество последовательных кадров, которые могут быть отброшены (если положительный результат), или
минимальный интервал между пропущенными кадрами (если он отрицательный). Если значение равно 0,
кадр отбрасывается независимо от количества предыдущих последовательно отброшенных кадров.
Значение по умолчанию 0.
hi
lo
фрак
Установите пороговые значения сброса.
Ценности для hi и lo предназначены для блоков 8x8 пикселей и представляют фактическое значение в пикселях
различий, поэтому порог в 64 соответствует 1 единице разницы для каждого пикселя,
или то же самое, разложенное по блоку по-разному.
Кадр является кандидатом на отбрасывание, если никакие блоки 8x8 не отличаются более чем на порог.
of hi, а если не более фрак блоки (1 означает все изображение) различаются более чем на
порог lo.
Значение по умолчанию для hi 64 * 12, значение по умолчанию для lo равно 64 * 5, а значение по умолчанию для
фрак это 0.33.
NEGATE
Отменить входное видео.
Он принимает на входе целое число; если не ноль, он отрицает альфа-компонент (если есть).
Значение по умолчанию для ввода - 0.
ноформат
Заставить libavfilter не использовать какой-либо из указанных форматов пикселей для ввода в следующий
фильтр.
Он принимает следующие параметры:
pix_fmts
Разделенный '|' список имен форматов пикселей, например apix_fmts = yuv420p | monow | rgb24 ".
Примеры
· Заставить libavfilter использовать формат, отличный от юв420р для входа в vflip
фильтр:
noformat = pix_fmts = yuv420p, vflip
· Конвертируйте входное видео в любой из форматов, не указанных в списке:
noformat = yuv420p | yuv444p | yuv410p
шум
Добавить шум на кадре видеовхода.
Фильтр принимает следующие параметры:
all_seed
c0_seed
c1_seed
c2_seed
c3_seed
Установите начальное значение шума для определенного пиксельного компонента или всех пиксельных компонентов в случае
all_seed. Значение по умолчанию - 123457.
вся_сила, Падения
c0_сила, c0s
c1_сила, c1s
c2_сила, c2s
c3_сила, c3s
Установите уровень шума для определенного пиксельного компонента или всех пиксельных компонентов в случае
вся_сила. Значение по умолчанию - 0. Допустимый диапазон: [0, 100].
все_флаги, все
c0_флаги, c0f
c1_флаги, c1f
c2_флаги, c2f
c3_флаги, c3f
Установите флаги компонентов пикселей или установите флаги для всех компонентов, если all_flags, Доступный
значения для флагов компонентов:
a усредненный временной шум (более плавный)
p смешивать случайный шум с (полу) регулярным шаблоном
t временной шум (картина шума меняется между кадрами)
u равномерный шум (в противном случае гауссовский)
Примеры
Добавьте временный и равномерный шум к входному видео:
шум = alls = 20: allf = t + u
нуль
Передать видеоисточник без изменений на выход.
OCV
Примените преобразование видео с помощью libopencv.
Чтобы включить этот фильтр, установите библиотеку libopencv и заголовки и настройте FFmpeg с помощью
"--enable-libopencv".
Он принимает следующие параметры:
имя_фильтра
Имя применяемого фильтра libopencv.
filter_params
Параметры, передаваемые фильтру libopencv. Если не указано, значения по умолчанию
предполагаются.
Обратитесь к официальной документации libopencv для более точной информации:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>
Поддерживаются несколько фильтров libopencv; см. следующие подразделы.
Разбавить
Увеличьте изображение с помощью специального структурирующего элемента. Соответствует libopencv
функция "cvDilate".
Принимает параметры: struct_el|nb_iterations.
struct_el представляет собой элемент структурирования и имеет синтаксис:
смещ_по_столбцамxстроки+якорь_xxякорь_y/формировать
смещ_по_столбцам и строки представляют количество столбцов и строк структурирующего элемента,
якорь_x и якорь_y точка привязки и формировать форма структурирующего элемента.
формировать должен быть "прямоугольным", "крестообразным", "эллиптическим" или "произвольным".
Если значение для формировать является "индивидуальным", за ним должна следовать строка вида
"=имя файла". Файл с именем имя файла предполагается, что представляет собой двоичное изображение, причем каждое
печатный символ, соответствующий яркому пикселю. Когда обычай формировать используется, смещ_по_столбцам и
строки игнорируются, вместо них предполагается число или столбцы и строки прочитанного файла.
Значение по умолчанию для struct_el это «3x3 + 0x0 / rect».
nb_iterations указывает, сколько раз преобразование применяется к изображению, и
по умолчанию 1.
Некоторые примеры:
# Использовать значения по умолчанию
ocv = расширять
# Расширяем с помощью структурирующего элемента с крестиком 5x5, повторяя два раза
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2
# Считываем фигуру из файла diamond.shape, повторяя два раза.
# Файл diamond.shape может содержать набор символов, подобных этому
# *
# ***
# *****
# ***
# *
# Указанные столбцы и строки игнорируются
# но координаты точки привязки не
ocv=dilate:0x0+2x2/custom=diamond.shape|2
разъедать
Разрушьте изображение с помощью определенного структурирующего элемента. Соответствует libopencv
функция "cvErode".
Принимает параметры: struct_el:nb_iterations, с тем же синтаксисом и семантикой, что и
Разбавить фильтр.
плавный
Сгладьте входное видео.
Фильтр принимает следующие параметры: напишите|param1|param2|param3|param4.
напишите - это тип применяемого сглаженного фильтра, который должен иметь одно из следующих значений:
"blur", "blur_no_scale", "median", "gaussian" или "двусторонний". Значение по умолчанию -
"гауссовский".
Значение param1, param2, param3 и param4 зависят от гладкого типа. param1 и
param2 принимать целые положительные значения или 0. param3 и param4 принимать с плавающей запятой
значения.
Значение по умолчанию для param1 равно 3. Значение по умолчанию для остальных параметров - 0.
Эти параметры соответствуют параметрам, назначенным функции libopencv.
"cvSmooth".
наложение
Наложите одно видео поверх другого.
Он принимает два входа и один выход. Первый вход - это «основное» видео, на котором
второй вход накладывается.
Он принимает следующие параметры:
Ниже приводится описание принятых вариантов.
x
y Задайте выражение для координат x и y наложенного видео на главном
видео. По умолчанию для обоих выражений установлено значение «0». Если выражение неверно,
для него установлено огромное значение (это означает, что наложение не будет отображаться в
выходная видимая область).
eof_action
Действие при обнаружении EOF на вторичном входе; он принимает один из
следующие значения:
повторять
Повторить последний кадр (по умолчанию).
конец
Завершите оба потока.
pass
Пропустите основной ввод.
Eval
Установите, когда выражения для x и y оцениваются.
Принимает следующие значения:
инициализации
оценивать выражения только один раз во время инициализации фильтра или когда команда
обрабатывается
рама
оценивать выражения для каждого входящего кадра
Значение по умолчанию рама.
самый короткий
Если установлено в 1, принудительно завершать вывод, когда завершается самый короткий ввод. Дефолт
значение 0.
формат
Установите формат выходного видео.
Принимает следующие значения:
юв420
принудительный вывод YUV420
юв422
принудительный вывод YUV422
юв444
принудительный вывод YUV444
RGB принудительный вывод RGB
Значение по умолчанию юв420.
RGB (Устаревшее)
Если установлено значение 1, заставляет фильтр принимать входные данные в цветовом пространстве RGB. Значение по умолчанию
равно 0. Эта опция устарела, используйте формат .
повторить
Если установлено значение 1, заставьте фильтр рисовать последний кадр наложения поверх основного ввода до тех пор, пока
конец потока. Значение 0 отключает это поведение. Значение по умолчанию - 1.
Команда x и y выражения могут содержать следующие параметры.
main_w, W
основной_ч, H
Ширина и высота основного ввода.
оверлей_в, w
оверлей_ч, h
Ширина и высота ввода оверлея.
x
y Расчетные значения для x и y. Они оцениваются для каждого нового кадра.
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали выходного формата. Например для
формат пикселей "yuv422p" Hsub это 2 и всуб это 1.
n номер кадра ввода, начиная с 0
пост позиция в файле входного кадра, NAN, если неизвестно
t Отметка времени в секундах. Это NAN, если временная метка ввода неизвестна.
Обратите внимание, что n, пост, t переменные доступны только после выполнения оценки для рама,
и будет оценивать NAN, когда Eval на инициализации.
Имейте в виду, что кадры берутся из каждого входного видео в порядке отметок времени, следовательно, если их
начальные отметки времени различаются, рекомендуется передать два входа через
setpts = PTS-STARTPTS фильтр, чтобы они начинались с той же нулевой отметки времени, что и в примере
для кино фильтр делает.
Вы можете объединить в цепочку больше оверлеев, но вам следует проверить эффективность такого подхода.
Команды
Этот фильтр поддерживает следующие команды:
x
y Измените x и y ввода оверлея. Команда принимает тот же синтаксис, что и
соответствующий вариант.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
Примеры
· Нарисуйте оверлей на расстоянии 10 пикселей от нижнего правого угла основного видео:
overlay = main_w-overlay_w-10: main_h-overlay_h-10
Используя именованные параметры, приведенный выше пример становится:
overlay = x = main_w-overlay_w-10: y = main_h-overlay_h-10
· Вставьте прозрачный логотип PNG в нижний левый угол поля ввода, используя FFmpeg
инструмент с опцией "-filter_complex":
ffmpeg -i input -i logo -filter_complex 'overlay = 10: main_h-overlay_h-10' output
· Вставьте 2 разных прозрачных логотипа в формате PNG (второй логотип в правом нижнем углу), используя
FFmpeg инструмент:
ffmpeg -i input -i logo1 -i logo2 -filter_complex 'overlay = x = 10: y = Hh-10, overlay = x = Ww-10: y = Hh-10' output
· Добавить прозрачный цветной слой поверх основного видео; «ШxВ» должно указывать размер
основной вход для оверлейного фильтра:
[электронная почта защищена]:size=ШxВ [более]; [вход][над] наложение [выход]
· Воспроизвести исходное видео и отфильтрованную версию (здесь с фильтром Deshake) рядом с
сторона, использующая ffplay инструмент:
ffplay input.avi -vf 'split [a] [b]; [a] pad = iw * 2: ih [src]; [b] deshake [filter]; [src] [filter] overlay = w '
Приведенная выше команда такая же, как:
ffplay input.avi -vf 'split [b], pad = iw * 2 [src], [b] deshake, [src] overlay = w' »
· Сделайте скользящее наложение, появляющееся слева направо в верхней части экрана.
начиная с момента 2:
overlay = x = 'if (gte (t, 2), -w + (t-2) * 20, NAN)': y = 0
· Составьте вывод, поместив два входных видео бок о бок:
ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc = size = 200x100 [фон];
[0: v] setpts = PTS-STARTPTS, масштаб = 100x100 [слева];
[1: v] setpts = PTS-STARTPTS, масштаб = 100x100 [вправо];
[фон] [слева] наложение = самый короткий = 1 [фон + слева];
[фон + слева] [справа] наложение = самое короткое = 1: x = 100 [слева + справа]
"
· Замаскируйте 10-20 секунд видео, применив фильтр delogo к разделу
ffmpeg -i test.avi -codec: v: 0 wmv2 -ar 11025 -b: v 9000k
-vf '[in]split[split_main][split_delogo];[split_delogo]trim=start=360:end=371,delogo=0:0:640:480[delogoed];[split_main][delogoed]overlay=eof_action=pass[out]'
замаскированный .avi
· Соедините несколько оверлеев каскадом:
nullsrc = s = 200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb = r = 0, [bg] overlay = 0: 0 [mid0];
[in1] lutrgb = g = 0, [mid0] overlay = 100: 0 [mid1];
[in2] lutrgb = b = 0, [mid1] overlay = 0: 100 [mid2];
[in3] null, [mid2] overlay = 100: 100 [out0]
Owdenoise
Примените шумоподавитель Overcomplete Wavelet.
Фильтр принимает следующие параметры:
глубина
Установите глубину.
Большие значения глубины будут больше шуметь низкочастотные компоненты, но замедлятся
фильтрации.
Должно быть целым числом в диапазоне 8–16, по умолчанию - 8.
яркость_сила, ls
Установите силу яркости.
Должно быть двойным значением в диапазоне 0–1000, по умолчанию 1.0.
хрома_прочность, cs
Установите интенсивность цветности.
Должно быть двойным значением в диапазоне 0–1000, по умолчанию 1.0.
площадка
Добавьте отступы к входному изображению и поместите исходный вход в предоставленный x, y
координаты.
Он принимает следующие параметры:
ширина, w
рост, h
Задайте выражение для размера выходного изображения с добавленными отступами. Если
значение для ширина or высота равно 0, для вывода используется соответствующий размер ввода.
Команда ширина выражение может ссылаться на значение, установленное высота выражение и порок
наоборот.
Значение по умолчанию ширина и высота это 0.
x
y Укажите смещения для размещения входного изображения в области с заполнением с учетом
к верхней / левой границе выходного изображения.
Команда x выражение может ссылаться на значение, установленное y выражение, и наоборот.
Значение по умолчанию x и y это 0.
цвет
Укажите цвет области с заполнением. Чтобы узнать о синтаксисе этого параметра, установите флажок «Цвет».
раздел в руководстве по ffmpeg-utils.
Значение по умолчанию цвет черный".
Значение для ширина, высота, x и y параметры - это выражения, содержащие следующие
константы:
в W
in_h
Ширина и высота входного видео.
iw
ih Это такие же, как в W и in_h.
out_w
out_h
Ширина и высота вывода (размер области с заполнением), как указано в параметре ширина
и высота выражения.
ow
oh Это такие же, как out_w и out_h.
x
y Смещения по осям x и y, указанные в параметре x и y выражения или NAN, если еще нет
указано.
a так же, как iw / ih
сар соотношение сторон входного образца
но соотношение сторон экрана ввода, такое же, как (iw / ih) * сар
Hsub
всуб
Значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
Примеры
· Добавьте отступы с "фиолетовым" цветом к входному видео. Размер выходного видео
640 x 480, а верхний левый угол входного видео помещается в столбец 0, строка 40.
pad = 640: 480: 0: 40: фиолетовый
Приведенный выше пример эквивалентен следующей команде:
pad = width = 640: height = 480: x = 0: y = 40: color = фиолетовый
· Заполните ввод, чтобы получить размер, увеличенный на 3/2, и поместите ввод
видео в центре мягкой области:
pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"
· Заполните ввод, чтобы получить квадратный результат с размером, равным максимальному значению между
введите ширину и высоту и поместите входное видео в центр области с заполнением:
pad = "макс (iw \, ih): ow: (ow-iw) / 2: (oh-ih) / 2"
· Заполните вход, чтобы получить окончательное соотношение ш / в 16: 9:
pad = "ih * 16/9: ih: (ow-iw) / 2: (oh-ih) / 2"
· В случае анаморфного видео для правильной установки формата вывода изображения необходимо
необходимо использовать сар в выражении согласно соотношению:
(ih * X / ih) * sar = выходной_дар
X = выходной_дар/сар
Таким образом, предыдущий пример необходимо изменить, чтобы:
pad = "ih * 16/9 / sar: ih: (ow-iw) / 2: (oh-ih) / 2"
· Удвойте выходной размер и поместите входное видео в нижний правый угол
область вывода:
pad = "2 * iw: 2 * ih: ow-iw: oh-ih"
палитра
Сгенерируйте одну палитру для всего видеопотока.
Он принимает следующие варианты:
max_colors
Установите максимальное количество цветов для квантования в палитре. Примечание: палитра будет
по-прежнему содержат 256 цветов; неиспользуемые записи палитры будут черными.
Reserve_transparent
Создайте палитру максимум из 255 цветов и оставьте последний для прозрачности.
Сохранение цвета прозрачности полезно для оптимизации GIF. Если не установлен,
максимум цветов в палитре будет 256. Возможно, вы захотите отключить эту опцию
для автономного изображения. По умолчанию.
stats_mode
Установите режим статистики.
Принимает следующие значения:
полный
Вычислить полнокадровые гистограммы.
Разница
Вычисляйте гистограммы только для той части, которая отличается от предыдущего кадра. Это может
быть актуальным, чтобы уделять больше внимания движущейся части вашего ввода, если
фон статичен.
Значение по умолчанию полный.
Фильтр также экспортирует метаданные кадра «lavfi.color_quant_ratio» («nb_color_in /
nb_color_out "), который можно использовать для оценки степени квантования цвета
палитра. Эта информация также видна на info уровень ведения журнала.
Примеры
· Создайте репрезентативную палитру данного видео, используя FFmpeg:
ffmpeg -i input.mkv -vf палитраген палитра.png
палитра
Используйте палитру для субдискретизации входного видеопотока.
Фильтр принимает два входа: один видеопоток и палитру. Палитра должна быть 256
изображение пикселей.
Он принимает следующие варианты:
трястись
Выберите режим дизеринга. Доступные алгоритмы:
Bayer
Заказанный байеровский дизеринг 8x8 (детерминированный)
Heckbert
Дизеринг по определению Пола Хекберта в 1982 году (простое распространение ошибок). Примечание:
это дизеринг иногда считается «неправильным» и приводится в качестве справочного материала.
Floyd_steinberg
Дизеринг Флойда и Штейнгберга (распространение ошибок)
sierra2
Фрэнки Сьерра дизеринг v2 (распространение ошибок)
сьерра2_4а
Фрэнки Сьерра дизеринг v2 "Lite" (распространение ошибок)
По умолчанию это сьерра2_4а.
Bayer_scale
После появления Bayer дизеринг выбран, этот параметр определяет масштаб паттерна (как
сильно видна штриховка). Низкое значение означает более заметный узор для
меньше полос и более высокое значение означает менее заметный узор за счет большего количества полос.
Параметр должен быть целым числом в диапазоне [0,5]. По умолчанию 2.
diff_mode
Если установлено, определите зону для обработки
прямоугольник
Будет обработан только изменяющийся прямоугольник. Это похоже на GIF
механизм сжатия / обрезки. Эта опция может быть полезна для скорости, если
изменяется только часть изображения, и есть варианты использования, такие как ограничение области
диффузной ошибки трястись к прямоугольнику, ограничивающему движущуюся сцену (это
приводит к более детерминированному результату, если сцена не сильно меняется, и как
результат меньше движущегося шума и лучшее сжатие GIF).
По умолчанию это нет.
Примеры
· Используйте палитру (созданную, например, с палитра) для кодирования GIF с помощью FFmpeg:
ffmpeg -i input.mkv -i палитра.png -lavfi палитраuse output.gif
перспектива
Правильная перспектива видео, записанного не перпендикулярно экрану.
Далее следует описание принятых параметров.
x0
y0
x1
y1
x2
y2
x3
y3 Установите выражение координат для верхнего левого, верхнего правого, нижнего левого и нижнего правого
углы. Значения по умолчанию: «0: 0: W: 0: 0: H: W: H», с которой сохраняется перспектива.
без изменений. Если для параметра "смысл" установлено значение "источник", то указанные точки будут
быть отправленным в углы пункта назначения. Если для параметра "смысл" установлено значение
"destination", то углы источника будут отправлены в указанный
координаты.
В выражениях могут использоваться следующие переменные:
W
H ширина и высота кадра видео.
интерполяция
Установите интерполяцию для коррекции перспективы.
Принимает следующие значения:
линейный
кубический
Значение по умолчанию линейный.
смысл
Установите интерпретацию параметров координат.
Принимает следующие значения:
0, источник
Отправить точку в источнике, заданном заданными координатами, в углы
место назначения.
1, назначение
Отправьте углы источника в точку назначения, указанную
заданные координаты.
Значение по умолчанию источник.
фаза
Задержите чересстрочное видео на время одного поля, чтобы порядок полей изменился.
Предполагаемое использование - исправить фильмы PAL, снятые с противоположным полем.
заказ на перевод фильма в видео.
Далее следует описание принятых параметров.
Режим
Установите фазовый режим.
Принимает следующие значения:
t Порядок полей при захвате сверху-вперед, передача снизу-вперед. Фильтр задержит
нижнее поле.
b Порядок полей захвата - снизу-вперед, передача - сверху-вперед. Фильтр задержит верх
поле.
p Захват и передача с одинаковым порядком полей. Этот режим существует только для
документацию по другим параметрам, на которые можно ссылаться, но если вы действительно выберете ее,
фильтр честно ничего не сделает.
a Порядок полей захвата определяется автоматически по флажкам полей, передача - наоборот.
Фильтр выбирает среди t и b режимы покадрово с использованием флагов полей. Если
информация о поле недоступна, тогда это работает так же, как u.
u Захват неизвестного или изменчивого, передача напротив. Фильтр выбирает среди t и b на
покадрово, анализируя изображения и выбирая альтернативу,
обеспечивает наилучшее совпадение полей.
T Захват первым, передача неизвестна или переменная. Фильтр выбирает среди t и p
с помощью анализа изображений.
B Захват снизу вверх, передача неизвестна или варьируется. Фильтр выбирает среди b и p
с помощью анализа изображений.
A Захват определяется флагами поля, передача неизвестна или изменяется. Фильтр выбирает
среди t, b и p с использованием флагов полей и анализа изображений. Если нет полевой информации
доступно, тогда это работает так же, как U. Это режим "по умолчанию".
U И захват, и передача неизвестны или варьируются. Фильтр выбирает среди t, b и p
только с использованием анализа изображений.
пиксдесктест
Тестовый фильтр дескриптора формата пикселей, в основном полезен для внутреннего тестирования. Выходное видео
должно быть равно входному видео.
Например:
format = monow, pixdesctest
может использоваться для проверки определения дескриптора формата одноцветных пикселей.
pp
Включите указанную цепочку подфильтров постобработки с помощью libpostproc. Эта библиотека
должен быть автоматически выбран при сборке GPL ("--enable-gpl"). Подфильтры должны быть
разделены символом "/" и могут быть отключены добавлением "-". Каждый подфильтр и некоторые параметры
иметь короткое и длинное имя, которые могут использоваться как синонимы, т.е. dr / dering - это
то же самое.
Фильтры допускают следующие параметры:
подфильтры
Установить строку подфильтров постобработки.
Все подфильтры имеют общие параметры для определения области действия:
a / autoq
Соблюдайте команды качества для этого подфильтра.
с / хром
Также выполните фильтрацию цветности (по умолчанию).
y / nochrom
Только фильтрация яркости (без цветности).
n / noluma
Только фильтрация цветности (без яркости).
Эти параметры можно добавить после имени подфильтра, разделив их знаком «|».
Доступные подфильтры:
hb / hdeblock [| разница [| плоскостность]]
Фильтр горизонтального удаления блочности
разница
Фактор разницы, где более высокие значения означают большее снятие блокировки (по умолчанию: 32).
ровность
Порог плоскостности, когда более низкие значения означают большее снятие блокировки (по умолчанию: 39).
vb / vdeblock [| разница [| плоскостность]]
Вертикальный деблокирующий фильтр
разница
Фактор разницы, где более высокие значения означают большее снятие блокировки (по умолчанию: 32).
ровность
Порог плоскостности, когда более низкие значения означают большее снятие блокировки (по умолчанию: 39).
ha / hadeblock [| разница [| плоскостность]]
Точный горизонтальный фильтр деблокирования
разница
Фактор разницы, где более высокие значения означают большее снятие блокировки (по умолчанию: 32).
ровность
Порог плоскостности, когда более низкие значения означают большее снятие блокировки (по умолчанию: 39).
va / vadeblock [| разница [| плоскостность]]
Точный вертикальный фильтр деблокирования
разница
Фактор разницы, где более высокие значения означают большее снятие блокировки (по умолчанию: 32).
ровность
Порог плоскостности, когда более низкие значения означают большее снятие блокировки (по умолчанию: 39).
Горизонтальные и вертикальные фильтры удаления блочности имеют общие значения разницы и равномерности, поэтому
вы не можете установить разные горизонтальные и вертикальные пороги.
h1 / x1hdeblock
Экспериментальный горизонтальный деблокирующий фильтр
v1 / x1vdeblock
Экспериментальный вертикальный деблокирующий фильтр
др / деринг
Фильтр Дерингинга
tn / tmpnoise [| threshold1 [| threshold2 [| threshold3]]], временной шум редуктор
порог1
больше -> более сильная фильтрация
порог2
больше -> более сильная фильтрация
порог3
больше -> более сильная фильтрация
al / autolevels [: f / fullrange], автоматически яркость / контраст коррекция
f / полностью диапазон
Увеличьте яркость до «0-255».
фунт / linblenddeint
Линейный фильтр деинтерлейсинга смешивания, который деинтерлейсинг данного блока фильтрует все
строки с фильтром "(1 2 1)".
li / linipoldeint
Линейный интерполирующий фильтр деинтерлейсинга, который деинтерлейсинг данного блока
линейно интерполируя каждую вторую строку.
ci / cubicipoldeint
Кубический интерполирующий фильтр деинтерлейсинга устраняет чересстрочность заданного блока на кубический
интерполируя каждую вторую строку.
md / mediandeint
Медианный фильтр деинтерлейсинга, который деинтерлейсинг данного блока применяет медианное значение.
фильтровать каждую вторую строку.
fd / ffmpegdeint
Фильтр деинтерлейсинга FFmpeg, который деинтерлейсинг данного блока фильтрует каждый
вторая строка с фильтром «(-1 4 2 4 -1)».
l5 / lowpass5
Вертикально применяемый FIR фильтр деинтерлейсинга нижних частот, который деинтерлейсинг данного блока
путем фильтрации всех строк фильтром «(-1 2 6 2 -1)».
fq / forceQuant [| квантователь]
Заменяет таблицу квантователя на входе заданным вами постоянным квантователем.
квантователь
Квантизатор для использования
де / по умолчанию
Комбинация фильтров pp по умолчанию ("hb | a, vb | a, dr | a")
фа / быстро
Комбинация быстрых фильтров pp ("h1 | a, v1 | a, dr | a")
ac Комбинация высококачественных фильтров pp ("ha | a | 128 | 7, va | a, dr | a")
Примеры
· Применить горизонтальное и вертикальное удаление блочности, уменьшение шума и автоматическую яркость / контраст:
pp = hb / vb / dr / al
· Применение фильтров по умолчанию без коррекции яркости / контрастности:
пп = де / -ал
· Применить фильтры по умолчанию и временный шумоподавитель:
pp = по умолчанию / tmpnoise | 1 | 2 | 3
· Применяйте деблокирование только к яркости и включайте или выключайте вертикальное деблокирование
автоматически в зависимости от доступного процессорного времени:
пп = hb | y / vb | а
pp7
Применить фильтр постобработки 7. Это вариант SPP фильтр, аналогичный spp = 6 с 7
точка DCT, где после IDCT используется только центральная выборка.
Фильтр принимает следующие параметры:
qp Установите постоянный параметр квантования. Принимает целое число от 0 до 63. Если
не установлен, фильтр будет использовать QP из видеопотока (если есть).
Режим
Установите пороговый режим. Доступные режимы:
жесткий
Установите жесткое пороговое значение.
легонько
Установите мягкое пороговое значение (лучший эффект удаления звонка, но, вероятно, более размытый).
средний
Установите средний порог (хорошие результаты, по умолчанию).
пснр
Получите средний, максимальный и минимальный PSNR (отношение пикового сигнала к шуму) между двумя
вводить видео.
Этот фильтр принимает на вход два входных видео, первый вход считается "основным"
source и передается в выходной файл без изменений. Второй вход используется как «ссылка».
видео для вычисления PSNR.
Оба видеовхода должны иметь одинаковое разрешение и формат пикселей, чтобы этот фильтр работал.
правильно. Также предполагается, что оба входа имеют одинаковое количество кадров, которые
сравнивал по одному.
Полученный средний PSNR распечатывается через систему регистрации.
Фильтр сохраняет накопленную MSE (среднеквадратичную ошибку) каждого кадра, а в конце
обработки оно усредняется по всем кадрам одинаково, и следующая формула
применяется для получения PSNR:
PSNR = 10 * log10 (МАКС ^ 2 / СКО)
Где MAX - это среднее из максимальных значений каждого компонента изображения.
Описание принятых параметров следует ниже.
файл_статистики, f
Если указано, фильтр будет использовать указанный файл для сохранения PSNR каждого отдельного пользователя.
Рамка.
Файл напечатан, если файл_статистики выбран, содержит последовательность пар ключ / значение
форма ключ:ценностное для каждой сравниваемой пары кадров.
Ниже приводится описание каждого показанного параметра:
n порядковый номер входного кадра, начиная с 1
mse_avg
Среднеквадратичная ошибка, средняя разница между пикселями сравниваемых кадров, усредненная
по всем компонентам изображения.
мсе_й, мсе_у, мсе_в, мсе_р, мсе_г, мсе_г, mse_a
Среднеквадратичная ошибка, попиксельная средняя разница сравниваемых кадров для
компонент, указанный суффиксом.
пснр_й, пснр_у, пснр_в, пснр_р, psnr_g, пснр_б, psnr_a
Пиковое отношение сигнал / шум сравниваемых кадров для компонента, указанного в
суффикс.
Например:
фильм = ref_movie.mpg, setpts = PTS-STARTPTS [основной];
[main] [ref] psnr = "stats_file = stats.log" [out]
В этом примере обрабатываемый входной файл сравнивается с эталонным файлом.
ref_movie.mpg. PSNR каждого отдельного кадра хранится в статистика.лог.
подтягивание
Фильтр Pulldown Reversal (обратный телесин), способный обрабатывать смешанный жесткий телесин,
24000/1001 кадр / с прогрессивный и 30000/1001 кадр / с прогрессивный контент.
Подтягивающий фильтр разработан с учетом будущего контекста при принятии решений.
Этот фильтр не имеет состояния в том смысле, что он не фиксирует шаблон, которому нужно следовать, но
вместо этого он ожидает следующих полей, чтобы определить совпадения и перестроить
прогрессивные кадры.
Чтобы создавать контент с равномерной частотой кадров, вставьте фильтр кадров в секунду после подтягивания, используйте
«fps = 24000/1001», если входная частота кадров составляет 29.97 кадра в секунду, «fps = 24» для 30 кадров в секунду и (редко)
вход телесин 25 кадров в секунду.
Фильтр принимает следующие параметры:
jl
jr
jt
jb Эти параметры устанавливают количество игнорируемого мусора слева, справа, вверху и внизу.
изображения соответственно. Левый и правый - в единицах 8 пикселей, а верхний и правый
нижние - в блоках по 2 строки. По умолчанию - 8 пикселей с каждой стороны.
sb Установите строгие перерывы. Установка этого параметра на 1 снизит вероятность фильтрации
создание случайных несоответствующих кадров, но это также может привести к чрезмерному количеству
кадров, которые следует отбрасывать во время последовательностей с высоким движением. И наоборот, установив его на -1
упростит фильтрацию полей соответствия. Это может помочь при обработке видео, где
между полями есть небольшое размытие, но также может возникать чересстрочная развертка
кадры на выходе. Значение по умолчанию - 0.
mp Установите метрическую плоскость для использования. Принимает следующие значения:
l Используйте плоскость яркости.
u Используйте цветную синюю плоскость.
v Используйте цветную красную плоскость.
Этот параметр может быть установлен для использования плоскости цветности вместо плоскости яркости по умолчанию для выполнения
вычисления фильтра. Это может улучшить точность на очень чистом исходном материале, но
с большей вероятностью снизит точность, особенно если есть цветовой шум (радуга
эффект) или любое видео в градациях серого. Основная цель установки mp к плоскости цветности
для уменьшения нагрузки на ЦП и возможности использования подтягивания в реальном времени на медленных машинах.
Для достижения наилучшего результата (без дублирования кадров в выходном файле) необходимо изменить
частота кадров вывода. Например, для инверсии входа телесина NTSC:
ffmpeg -i вход -vf pullup -r 24000/1001 ...
qp
Измените параметры квантования видео (QP).
Фильтр принимает следующий вариант:
qp Задайте выражение для параметра квантования.
Выражение оценивается через eval API и может содержать, среди прочего,
следующие константы:
известный
1, если индекс не 129, 0 в противном случае.
qp Порядковый индекс от -129 до 128.
Примеры
· Некоторое уравнение вроде:
qp = 2 + 2 * sin (PI * qp)
случайный
Сбросить видеокадры из внутреннего кеша кадров в случайном порядке. Нет кадра
отброшен. Вдохновлен свободный нервный фильтр.
кадры
Задайте размер в количестве кадров внутреннего кеша в диапазоне от 2 до 512. По умолчанию - 30.
семя
Установить начальное число для генератора случайных чисел, должно быть целым числом от 0 до
«UINT32_MAX». Если не указано или явно установлено меньше 0, фильтр будет
старайтесь использовать хорошее случайное семя изо всех сил.
удалить зерно
Фильтр removegrain - это пространственный шумоподавитель для видео с прогрессивной разверткой.
m0 Установите режим для первого самолета.
m1 Установите режим для второй плоскости.
m2 Установите режим для третьего самолета.
m3 Установите режим для четвертого самолета.
Диапазон режимов от 0 до 24. Описание каждого режима приводится ниже:
0 Плоскость ввода оставьте без изменений. Дефолт.
1 Обрезает пиксель с минимумом и максимумом из 8 соседних пикселей.
2 Обрезает пиксель со вторым минимумом и максимумом из 8 соседних пикселей.
3 Обрезает пиксель с третьим минимумом и максимумом из 8 соседних пикселей.
4 Обрезает пиксель с четвертым минимумом и максимумом из 8 соседних пикселей. Этот
эквивалентен медианному фильтру.
5 Отсечение с учетом линии дает минимальные изменения.
6 Линейно-чувствительное клиппирование, промежуточное.
7 Линейно-чувствительное клиппирование, промежуточное.
8 Линейно-чувствительное клиппирование, промежуточное.
9 Подрезка с учетом линии на линии, где соседние пиксели находятся ближе всего.
10 Заменяет целевой пиксель ближайшим соседом.
11 [1 2 1] Размытие ядра по горизонтали и вертикали.
12 То же, что и в режиме 11.
13 Режим Bob, интерполирует верхнее поле из строки, где соседние пиксели являются
ближайший.
14 Режим Bob, интерполирует нижнее поле из строки, где соседние пиксели являются
ближайший.
15 Режим Bob, верхнее поле интерполируется. То же, что и 13, но с более сложной интерполяцией
Формула.
16 Режим Bob, нижнее поле интерполируется. То же, что 14, но с более сложным
формула интерполяции.
17 Обрезает пиксель с минимумом и максимумом соответственно максимумом и минимумом
каждой пары противоположных соседних пикселей.
18 Чувствительное к линии отсечение с использованием противоположных соседей, наибольшее расстояние которых от
текущий пиксель минимален.
19 Заменяет пиксель на среднее значение его 8 соседей.
20 Усредняет 9 пикселей ([1 1 1] размытие по горизонтали и вертикали).
21 Обрезает пиксели с использованием средних значений противоположного соседа.
22 То же, что и режим 21, но проще и быстрее.
23 Удаление мелких краев и ореола, но бесполезное.
24 Подобно 23.
Removelogo
Подавить логотип телеканала, используя файл изображения, чтобы определить, какие пиксели составляют
логотип. Он работает, заполняя пиксели, составляющие логотип, соседними пикселями.
Фильтр принимает следующие параметры:
имя файла, f
Установите файл растрового изображения фильтра, который может быть любым форматом изображения, поддерживаемым libavformat.
Ширина и высота файла изображения должны совпадать с шириной и высотой видеопотока.
обработанный.
Пиксели в предоставленном растровом изображении с нулевым значением не считаются частью
логотип, ненулевые пиксели считаются частью логотипа. Если вы используете белый цвет (255) для логотипа
и черный (0) для остальных, вы будете в безопасности. Для создания растрового изображения фильтра это
рекомендуется сделать снимок экрана с черной рамкой с видимым логотипом, а затем
с использованием порогового фильтра, за которым следует фильтр размытия один или два раза.
При необходимости небольшие пятна можно исправить вручную. Помните, что если пиксели логотипа не
покрыты, качество фильтра будет значительно снижено. Отметка слишком большого количества пикселей как часть
логотип не повредит так сильно, но он увеличит степень размытия, необходимую для покрытия
поверх изображения и уничтожит больше информации, чем необходимо, а лишние пиксели будут
замедлить работу на большом логотипе.
Repeatfields
Этот фильтр использует флаг repeat_field из полей заголовков Video ES и жестких повторов.
исходя из его стоимости.
обеспечить регресс, обратный
Переверните зажим.
Предупреждение. Этот фильтр требует памяти для буферизации всего клипа, поэтому рекомендуется обрезка.
Примеры
· Возьмите первые 5 секунд клипа и переверните его.
обрезка = конец = 5, обратный
вращать
Повернуть видео на произвольный угол, выраженный в радианах.
Фильтр принимает следующие параметры:
Далее следует описание дополнительных параметров.
угол, a
Задайте выражение для угла поворота входного видео по часовой стрелке,
выражается в радианах. Отрицательное значение приведет к вращению против часовой стрелки.
вращение. По умолчанию установлено значение «0».
Это выражение оценивается для каждого кадра.
out_w, ow
Установите выражение ширины вывода, значение по умолчанию - «iw». Это выражение оценивается
только один раз во время настройки.
out_h, oh
Задайте выражение выходной высоты, значение по умолчанию - «ih». Это выражение оценивается
только один раз во время настройки.
билинейной
Включить билинейную интерполяцию, если установлено значение 1, значение 0 отключает ее. Значение по умолчанию
1.
Цвет заливки, c
Установите цвет, используемый для заполнения области вывода, не покрытой повернутым изображением. Для
Общий синтаксис этой опции см. в разделе «Цвет» в руководстве по ffmpeg-utils.
Если выбрано специальное значение «нет», то фон не печатается (полезно для
пример, если фон никогда не отображается).
Значение по умолчанию - «черный».
Выражения для угла и выходного размера могут содержать следующие константы и
функции:
n порядковый номер входного кадра, начиная с 0. Это всегда NAN перед
первый кадр фильтруется.
t время в секундах входного кадра, при настройке фильтра устанавливается значение 0. Это
всегда является NAN до того, как будет отфильтрован первый кадр.
Hsub
всуб
значения подвыборки цветности по горизонтали и вертикали. Например для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
в W, iw
в_ч, ih
ширина и высота входного видео
out_w, ow
out_h, oh
ширина и высота вывода, то есть размер области с заполнением, заданный параметром
ширина и высота выражения
гниль (а)
рот (а)
минимальная ширина / высота, необходимая для полного содержания входного видео, повернутого на
a радиан.
Они доступны только при вычислении out_w и out_h выражения.
Примеры
· Поверните ввод на PI / 6 радиан по часовой стрелке:
повернуть = PI / 6
· Поверните ввод на PI / 6 радиан против часовой стрелки:
повернуть = -PI / 6
· Поверните ввод на 45 градусов по часовой стрелке:
повернуть = 45 * PI / 180
· Примените постоянное вращение с периодом T, начиная с угла PI / 3:
повернуть = PI / 3 + 2 * PI * t / T
· Сделайте вращение входного видео колеблющимся с периодом T секунд и амплитудой
радианов:
повернуть = A * sin (2 * PI / T * t)
· Поверните видео, размер вывода выбран так, чтобы все вращающееся входное видео было
всегда полностью содержится в выводе:
rotate = '2 * PI * t: ow = hypot (iw, ih): oh = ow'
· Поверните видео, уменьшите выходной размер, чтобы фон не отображался:
rotate = 2 * PI * t: ow = 'min (iw, ih) /SQRT(2) ': oh = ow: c = none
Команды
Фильтр поддерживает следующие команды:
a, угол
Задайте угловое выражение. Команда принимает тот же синтаксис, что и соответствующий
опцию.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
саб
Примените Shape Adaptive Blur.
Фильтр принимает следующие параметры:
яркость_радиус, lr
Установите силу фильтра размытия яркости, значение должно быть в диапазоне 0.1–4.0, значение по умолчанию - 1.0.
Более высокое значение приведет к более размытому изображению и более медленной обработке.
luma_pre_filter_radius, лпфр
Установите радиус предварительного фильтра яркости, значение должно быть в диапазоне 0.1–2.0, значение по умолчанию:
1.0. Воспользуйтесь функционалом
яркость_сила, ls
Установите максимальную разницу яркости между пикселями, которая будет учитываться, должна быть значением в
диапазон 0.1-100.0, значение по умолчанию - 1.0.
хрома_радиус, cr
Установите силу фильтра размытия цветности, значение должно быть в диапазоне 0.1–4.0. Большее значение
приведет к более размытому изображению и замедлению обработки.
chroma_pre_filter_radius, cpfr
Установите радиус предварительного фильтра цветности, значение должно быть в диапазоне 0.1–2.0.
хрома_прочность, cs
Установите максимальную разницу цветности между пикселями, которая будет по-прежнему учитываться, должно быть значением
в диапазоне 0.1-100.0.
Каждое значение параметра цветности, если не указано явно, устанавливается на соответствующую яркость.
значение опциона.
лестница
Масштабируйте (изменяйте размер) входного видео с помощью библиотеки libswscale.
Масштабный фильтр заставляет соотношение сторон выходного дисплея быть таким же, как и входное, путем
изменение соотношения сторон выходного образца.
Если формат входного изображения отличается от формата, запрошенного следующим фильтром,
фильтр масштабирования преобразует ввод в запрошенный формат.
Возможности
Фильтр принимает следующие параметры или любые параметры, поддерживаемые
масштабатор libswscale.
Посмотреть ffmpeg-скалер руководство для получения полного списка опций скейлера.
ширина, w
рост, h
Задайте выражение размера выходного видео. Значение по умолчанию - это входной размер.
Если значение равно 0, ширина ввода используется для вывода.
Если одно из значений равно -1, масштабный фильтр будет использовать значение, поддерживающее
соотношение сторон входного изображения, рассчитанное на основе другого указанного измерения. Если
оба они равны -1, используется размер ввода
Если одно из значений -n с n> 1, масштабный фильтр также будет использовать значение, которое
сохраняет соотношение сторон входного изображения, рассчитанное из других указанных
измерение. Однако после этого он удостоверится, что рассчитанный размер равен
делится на n и при необходимости отрегулируйте значение.
См. Ниже список допустимых констант для использования в выражении измерения.
интерл
Установите режим чересстрочной развертки. Принимает следующие значения:
1 Принудительное масштабирование с учетом чересстрочной развертки.
0 Не применяйте чересстрочное масштабирование.
-1 Выберите масштабирование с учетом чересстрочной развертки в зависимости от того, отмечены ли исходные кадры.
как чересстрочный или нет.
Значение по умолчанию 0.
Флаги
Установите флаги масштабирования libswscale. Видеть ffmpeg-скалер руководство для полного списка
ценности. Если не указано явно, фильтр применяет флаги по умолчанию.
размер, s
Установите размер видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео размер" . in
ffmpeg-утилиты руководство.
in_color_matrix
out_color_matrix
Устанавливает тип цветового пространства YCbCr на входе / выходе.
Это позволяет переопределить автоматически определенное значение, а также позволяет принудительно
конкретное значение, используемое для выхода и кодировщика.
Если не указан, тип цветового пространства зависит от формата пикселей.
Возможные значения:
автоматический
Выбирать автоматически.
bt709
Формат, соответствующий Рекомендации Международного союза электросвязи (ITU)
БТ.709.
ГЦК Установите цветовое пространство в соответствии с Федеральной комиссией по связи США.
(FCC) Свод федеральных правил (CFR), раздел 47 (2003) 73.682 (a).
bt601
Установите цветовое пространство, соответствующее:
· Рекомендация Сектора радиосвязи МСЭ (ITU-R) BT.601
· Рек. BT.470-6 (1998) Системы B, B1 и G
· Общество инженеров кино и телевидения (SMPTE) ST 170: 2004
смпте240м
Установите цветовое пространство в соответствии с SMPTE ST 240: 1999.
в диапазоне
вне_диапазона
Установить диапазон выборки входящего / выходного YCbCr.
Это позволяет переопределить автоматически определенное значение, а также позволяет принудительно
конкретное значение, используемое для выхода и кодировщика. Если не указан, диапазон зависит от
формат пикселей. Возможные значения:
автоматический
Выбирать автоматически.
jpeg / полный / ПК
Установите полный диапазон (0-255 в случае 8-битной яркости).
mpeg / tv
Установите диапазон "MPEG" (16-235 в случае 8-битной яркости).
Force_original_aspect_ratio
Включите уменьшение или увеличение ширины или высоты выходного видео, если необходимо, чтобы сохранить
исходное соотношение сторон. Возможные значения:
запрещать
Масштабируйте видео, как указано, и отключите эту функцию.
снизилось
При необходимости размеры выходного видео будут автоматически уменьшены.
недавнее увеличение
При необходимости размеры выходного видео будут автоматически увеличены.
Одним из полезных примеров использования этой опции является то, что, когда вы знаете максимум определенного устройства
допустимое разрешение, вы можете использовать это, чтобы ограничить выходное видео этим, в то время как
сохраняя соотношение сторон. Например, устройство A поддерживает воспроизведение с разрешением 1280x720, а ваше
видео - 1920x800. Используя этот параметр (установите его на уменьшение) и задав для параметра 1280x720 значение
командная строка делает вывод 1280x533.
Обратите внимание, что это отличается от указания -1 для w or h, ты все еще
необходимо указать разрешение вывода, чтобы эта опция работала.
Значения свойств w и h Опции - это выражения, содержащие следующие константы:
в W
in_h
Ширина и высота ввода
iw
ih Это такие же, как в W и in_h.
out_w
out_h
Выходные (масштабированные) ширина и высота
ow
oh Это такие же, как out_w и out_h
a Такой же как iw / ih
сар соотношение сторон входного образца
но Соотношение сторон экрана ввода. Вычисляется из "(iw / ih) * sar".
Hsub
всуб
значения подвыборки входного сигнала цветности по горизонтали и вертикали. Например для пикселя
формат "yuv422p" Hsub это 2 и всуб это 1.
ох, суб
овсуб
значения подвыборки выходного сигнала цветности по горизонтали и вертикали. Например для пикселя
формат "yuv422p" Hsub это 2 и всуб это 1.
Примеры
· Масштабируйте входное видео до размера 200x100.
масштаб = w = 200: h = 100
Это эквивалентно:
масштаб = 200: 100
или:
масштаб = 200x100
· Укажите аббревиатуру выходного размера:
scale = qcif
который также может быть записан как:
масштаб = размер = qcif
· Масштабируйте вход до 2x:
масштаб = w = 2 * iw: h = 2 * ih
· Вышеупомянутое такое же, как:
масштаб = 2 * дюйм_в: 2 * дюйм_ч
· Масштабируйте вход до 2x с принудительным чересстрочным масштабированием:
scale = 2 * iw: 2 * ih: interl = 1
· Масштабируйте ввод до половинного размера:
масштаб = w = iw / 2: h = ih / 2
· Увеличьте ширину и установите тот же размер высоты:
масштаб = 3/2 * iw: ow
· Ищите греческую гармонию:
scale = iw: 1 / PHI * iw
scale = ih * PHI: ih
· Увеличьте высоту и установите ширину 3/2 высоты:
масштаб = w = 3/2 * oh: h = 3/5 * ih
· Увеличьте размер, сделав размер кратным значениям подвыборки цветности:
scale = "trunc (3/2 * iw / hsub) * hsub: trunc (3/2 * ih / vsub) * vsub"
· Увеличьте ширину до 500 пикселей, сохраняя то же соотношение сторон, что и
вход:
scale = w = 'мин (500 \, iw * 3/2): h = -1'
Команды
Этот фильтр поддерживает следующие команды:
ширина, w
рост, h
Задайте выражение размера выходного видео. Команда принимает тот же синтаксис, что и
соответствующий вариант.
Если указанное выражение недействительно, оно сохраняет свое текущее значение.
масштаб2ref
Масштабируйте (изменяйте размер) входного видео на основе эталонного видео.
См. Доступные параметры в фильтре масштабирования, scale2ref поддерживает то же самое, но использует
справочное видео вместо основного входа в качестве основы.
Примеры
· Масштабируйте поток субтитров в соответствии с размером основного видео перед наложением
'scale2ref [b] [a]; [a] [b] overlay' »
отдельные поля
«Отдельные поля» принимают видеовход на основе кадров и разбивают каждый кадр на отдельные
компонентов, создавая новый клип половинной высоты с удвоенной частотой кадров и удвоенной частотой кадров.
количество кадров.
Этот фильтр использует информацию о преобладании полей в кадре, чтобы решить, какая из каждой пары
поля, которые нужно разместить первыми в выводе. Если он ошибается, используйте Setfield фильтровать перед
фильтр "отдельные поля".
сетдар Сетсар
Фильтр "setdar" устанавливает соотношение сторон экрана для выходного видео фильтра.
Это делается путем изменения указанного соотношения сторон выборки (также известного как пиксель) в соответствии с
следующее уравнение:
знак равно / *
Имейте в виду, что фильтр "setdar" не изменяет размер видео в пикселях.
Рамка. Кроме того, соотношение сторон экрана, установленное этим фильтром, может быть изменено более поздними фильтрами.
в цепочке фильтров, например, в случае масштабирования или если другой фильтр «setdar» или «setsar»
применяется.
Фильтр "setsar" устанавливает соотношение сторон выборки (также известного как пиксель) для выходного видео фильтра.
Обратите внимание, что в результате применения этого фильтра аспект отображения вывода
соотношение изменится в соответствии с приведенным выше уравнением.
Имейте в виду, что соотношение сторон образца, установленное фильтром "setsar", может быть изменено
более поздние фильтры в цепочке фильтров, например, если другой фильтр «сетдар» или «сетдар»
применяется.
Он принимает следующие параметры:
r, соотношение, но ("сетдар" только), сар ("сетсар" только)
Установите соотношение сторон, используемое фильтром.
Параметр может быть строкой с плавающей запятой, выражением или строкой
форма Num:день, Где Num и день числитель и знаменатель соотношения сторон.
Если параметр не указан, предполагается значение «0». Если форма
"Num:день", символ": "должен быть экранирован.
Макс Установите максимальное целочисленное значение, которое будет использоваться для выражения числителя и знаменателя, когда
уменьшение выраженного соотношения сторон экрана до рационального. Значение по умолчанию - 100.
Параметр сар это выражение, содержащее следующие константы:
E, ПИ, PHI
Это приближенные значения математических констант e (число Эйлера), pi
(Греческое пи) и фи (золотое сечение).
w, h
Ширина и высота ввода.
a Это такие же, как w / h.
сар Соотношение сторон входного образца.
но Соотношение сторон экрана ввода. Это то же самое, что и (w / h) * сар.
хсуб, всуб
Подвыборка значений цветности по горизонтали и вертикали. Например, для формата пикселей
"yuv422p" Hsub это 2 и всуб это 1.
Примеры
· Чтобы изменить соотношение сторон экрана на 16: 9, укажите одно из следующих значений:
setdar = dar = 1.77777
сетдар = дар = 16/9
setdar = dar = 1.77777
· Чтобы изменить соотношение сторон образца на 10:11, укажите:
setsar = sar = 10/11
· Чтобы установить соотношение сторон экрана 16: 9 и указать максимальное целочисленное значение 1000 в
уменьшение соотношения сторон используйте команду:
setdar = ratio = 16/9: max = 1000
Setfield
Поле силы для выходного видеокадра.
Фильтр «setfield» отмечает поле типа чересстрочной развертки для выходных кадров. Это не
изменить рамку ввода, но установить только соответствующее свойство, которое влияет на то, как
кадр обрабатывается следующими фильтрами (например, «fieldorder» или «yadif»).
Фильтр принимает следующие параметры:
Режим
Доступные значения:
автоматический
Сохраните то же свойство поля.
BFF Отметьте рамку как нижнее поле сначала.
ПТФ Отметьте фрейм как верхнее поле первым.
прог
Отметьте рамку как прогрессивную.
ShowInfo
Покажите строку, содержащую различную информацию для каждого входного видеокадра. Входное видео
не модифицируется.
Показанная строка содержит последовательность пар ключ / значение вида ключ:ценностное .
На выходе отображаются следующие значения:
n (Последовательный) номер входного кадра, начиная с 0.
PTS Отметка времени представления входного кадра, выраженная в виде числа единиц времени.
единицы. Единица измерения времени зависит от входной площадки фильтра.
pts_time
Отметка времени представления входного кадра, выраженная в секундах.
пост Положение кадра во входном потоке или -1, если эта информация
недоступны и / или бессмысленны (например, в случае синтетического видео).
FMT Имя формата пикселей.
сар Примерное соотношение сторон входного кадра, выраженное в форме Num/день.
s Размер входной рамки. Чтобы узнать о синтаксисе этой опции, проверьте "Видео размер"
. in ffmpeg-утилиты руководство.
i Тип чересстрочного режима («P» - «прогрессивный», «T» - сначала верхнее поле, «B» -
нижнее поле первым).
Iskey
Это 1, если кадр является ключевым, в противном случае - 0.
напишите
Тип изображения входного кадра («I» для I-кадра, «P» для P-кадра, «B» для
B-кадр или "?" для неизвестного типа). Также обратитесь к документации на
Перечисление "AVPictureType" и функции "av_get_picture_type_char", определенной в
libavutil / avutil.h.
контрольная сумма
Контрольная сумма Adler-32 (напечатанная в шестнадцатеричном формате) всех плоскостей входного кадра.
plane_checksum
Контрольная сумма Adler-32 (напечатанная в шестнадцатеричном формате) каждой плоскости входного кадра,
выражается в виде "[c0 c1 c2 c3]».
выставочная палитра
Отображает 256 цветов палитры каждого кадра. Этот фильтр актуален только для pal8 пиксель
форматировать кадры.
Он принимает следующий вариант:
s Установите размер поля, используемого для представления одной записи цвета палитры. По умолчанию 30 (для
блок размером 30x30 пикселей).
шаффлпланы
Переупорядочивайте и / или дублируйте видеоплоскости.
Он принимает следующие параметры:
map0
Индекс входной плоскости, которая будет использоваться в качестве первой выходной плоскости.
map1
Индекс входной плоскости, которая будет использоваться в качестве второй выходной плоскости.
map2
Индекс входной плоскости, которая будет использоваться в качестве третьей выходной плоскости.
map3
Индекс входной плоскости, которая будет использоваться в качестве четвертой выходной плоскости.
Первая плоскость имеет индекс 0. По умолчанию ввод не изменяется.
Поменяйте местами вторую и третью плоскости входа:
ffmpeg -i ВХОД -vf shuffleplanes = 0: 2: 1: 3 ВЫХОД
сигнальная статистика
Оцените различные визуальные метрики, которые помогают определить проблемы, связанные с
оцифровка аналоговых видео носителей.
По умолчанию фильтр регистрирует следующие значения метаданных:
ИМИН
Отобразите минимальное значение Y, содержащееся во входном кадре. Выражается в диапазоне
[0-255].
ЖЕЛТЫЙ
Отобразите значение Y с 10% -ным процентилем во входном кадре. Выражено в диапазоне
из [0-255].
ЯВГ
Отобразите среднее значение Y во входном кадре. Выражается в диапазоне [0-255].
ВЫСОКИЙ
Отобразите значение Y с 90% -ным процентилем во входном кадре. Выражено в диапазоне
из [0-255].
YMAX
Отобразите максимальное значение Y, содержащееся во входном кадре. Выражается в диапазоне
[0-255].
УМИН
Отобразите минимальное значение U, содержащееся во входном фрейме. Выражается в диапазоне
[0-255].
УЛОУ
Отобразите значение U в 10% процентиле во входном кадре. Выражено в диапазоне
из [0-255].
БПЛА
Отобразите среднее значение U во входном кадре. Выражается в диапазоне [0-255].
ВЫСОКИЙ
Отобразите значение U в 90% процентиле во входном кадре. Выражено в диапазоне
из [0-255].
UMAX
Отобразите максимальное значение U, содержащееся во входном кадре. Выражается в диапазоне
[0-255].
ВМИН
Отобразите минимальное значение V, содержащееся во входном кадре. Выражается в диапазоне
[0-255].
ВЛОУ
Отобразите значение V в 10% -ном процентиле во входном кадре. Выражено в диапазоне
из [0-255].
ВАВГ
Отобразите среднее значение V во входном кадре. Выражается в диапазоне [0-255].
ВЫСОКИЙ
Отобразите значение V в 90% -ном процентиле во входном кадре. Выражено в диапазоне
из [0-255].
VMAX
Отобразите максимальное значение V, содержащееся во входном кадре. Выражается в диапазоне
[0-255].
САТМИН
Отобразите минимальное значение насыщенности, содержащееся во входном кадре. Выраженный в
диапазон [0- ~ 181.02].
САТЛОУ
Отобразите значение насыщенности с 10% процентилем во входном кадре. Выражено
в диапазоне [0- ~ 181.02].
САТАВГ
Отобразите среднее значение насыщенности во входном кадре. Выражается в диапазоне
[0- ~ 181.02].
САТИЙСКИЙ
Отобразите значение насыщенности с 90% процентилем во входном кадре. Выражено
в диапазоне [0- ~ 181.02].
SATMAX
Отобразите максимальное значение насыщенности, содержащееся во входном кадре. Выраженный в
диапазон [0- ~ 181.02].
ХУМЕД
Отобразите среднее значение оттенка во входном кадре. Выражается в диапазоне
[0-360].
ХУАВГ
Отобразите среднее значение оттенка во входной рамке. Выражается в диапазоне
[0-360].
ЯДИФ
Отображение среднего значения разницы значений выборки между всеми значениями плоскости Y в
текущий кадр и соответствующие значения предыдущего кадра ввода. Выраженный в
диапазон [0-255].
UDIF
Отображение среднего значения разницы значений выборки между всеми значениями плоскости U в
текущий кадр и соответствующие значения предыдущего кадра ввода. Выраженный в
диапазон [0-255].
ВДИФ
Отображение среднего значения разницы значений выборки между всеми значениями в плоскости V в
текущий кадр и соответствующие значения предыдущего кадра ввода. Выраженный в
диапазон [0-255].
Фильтр принимает следующие параметры:
состояние
внешний состояние указать дополнительную форму анализа изображений. внешний выводить видео с
выделенный пиксель указанного типа.
Оба варианта принимают следующие значения:
все
Идентифицировать временной выбросы пикселей. А временной останец это пиксель в отличие от
соседние пиксели того же поля. Примеры временных выбросов включают
результаты пропадания видео, засорения головы или проблем с отслеживанием ленты.
вреп
Идентифицировать вертикальный линия повторение. Повторение вертикальной линии включает похожие строки
пикселей в кадре. В исходном цифровом видео повторение вертикальной линии
распространена, но такая картина необычна для видео, оцифрованного с аналогового источника.
Когда это происходит в видео, которое является результатом оцифровки аналогового источника, оно
может указывать на маскировку от компенсатора выпадения.
приносить
Определите пиксели, выходящие за пределы допустимого диапазона вещания.
цвет, c
Установите цвет выделения для внешний вариант. Цвет по умолчанию - желтый.
Примеры
· Выходные данные различных показателей видео:
ffprobe -f lavfi movie = example.mov, signalstats = "stat = tout + vrep + brng" -show_frames
· Вывод конкретных данных о минимальном и максимальном значениях плоскости Y за кадр:
ffprobe -f lavfi movie = example.mov, signalstats -show_entries frame_tags = lavfi.signalstats.YMAX, lavfi.signalstats.YMIN
· Воспроизведение видео с выделением красным цветом пикселей, находящихся за пределами диапазона вещания.
ffplay example.mov -vf signalstats = "out = brng: color = red"
· Воспроизведение видео с метаданными signalstats, нарисованными поверх кадра.
ffplay example.mov -vf signalstats = stat = brng + vrep + tout, drawtext = fontfile = FreeSerif.ttf: textfile = signalstat_drawtext.txt
Содержимое signalstat_drawtext.txt, используемое в команде:
время% {pts: hms}
Д (% {метаданные: lavfi.signalstats.YMIN} -% {метаданные: lavfi.signalstats.YMAX})
U (% {метаданные: lavfi.signalstats.UMIN} -% {метаданные: lavfi.signalstats.UMAX})
V (% {метаданные: lavfi.signalstats.VMIN} -% {метаданные: lavfi.signalstats.VMAX})
максимум насыщения:% {metadata: lavfi.signalstats.SATMAX}
умное размытие
Размытие входного видео без изменения контуров.
Он принимает следующие варианты:
яркость_радиус, lr
Установите радиус яркости. Значение параметра должно быть числом с плавающей запятой в диапазоне [0.1,5.0].
который определяет дисперсию гауссова фильтра, используемого для размытия изображения (медленнее, если
больше). Значение по умолчанию 1.0.
яркость_сила, ls
Установите силу яркости. Значение параметра должно быть числом с плавающей запятой в диапазоне [-1.0,1.0].
который настраивает размытие. Значение, включенное в [0.0,1.0], приведет к размытию изображения.
тогда как значение, включенное в [-1.0,0.0], повысит резкость изображения. Значение по умолчанию 1.0.
яркость_порог, lt
Установите порог яркости, используемый в качестве коэффициента, чтобы определить, должен ли пиксель быть
размыто или нет. Значение параметра должно быть целым числом в диапазоне [-30,30]. Ценность
0 отфильтрует все изображение, значение, включенное в [0,30], отфильтрует плоские области, а
значение, включенное в [-30,0], будет фильтровать края. Значение по умолчанию - 0.
хрома_радиус, cr
Установите радиус цветности. Значение параметра должно быть числом с плавающей запятой в диапазоне [0.1,5.0].
который определяет дисперсию гауссова фильтра, используемого для размытия изображения (медленнее, если
больше). Значение по умолчанию 1.0.
хрома_прочность, cs
Установите интенсивность цветности. Значение параметра должно быть числом с плавающей запятой в диапазоне
[-1.0,1.0], который настраивает размытие. Значение, включенное в [0.0,1.0], размывает
image, тогда как значение, включенное в [-1.0,0.0], повысит резкость изображения. Значение по умолчанию
1.0. Воспользуйтесь функционалом
цветность_порог, ct
Установите порог цветности, используемый в качестве коэффициента, чтобы определить, должен ли пиксель быть
размыто или нет. Значение параметра должно быть целым числом в диапазоне [-30,30]. Ценность
0 отфильтрует все изображение, значение, включенное в [0,30], отфильтрует плоские области, а
значение, включенное в [-30,0], будет фильтровать края. Значение по умолчанию - 0.
Если опция цветности не установлена явно, устанавливается соответствующее значение яркости.
ссим
Получите SSIM (показатель структурной схожести) между двумя входными видео.
Этот фильтр принимает на вход два входных видео, первый вход считается "основным"
source и передается в выходной файл без изменений. Второй вход используется как «ссылка».
видео для вычисления SSIM.
Оба видеовхода должны иметь одинаковое разрешение и формат пикселей, чтобы этот фильтр работал.
правильно. Также предполагается, что оба входа имеют одинаковое количество кадров, которые
сравнивал по одному.
Фильтр хранит вычисленный SSIM для каждого кадра.
Описание принятых параметров следует ниже.
файл_статистики, f
Если указано, фильтр будет использовать указанный файл для сохранения SSIM каждого отдельного пользователя.
Рамка.
Файл напечатан, если файл_статистики выбран, содержит последовательность пар ключ / значение
форма ключ:ценностное для каждой сравниваемой пары кадров.
Ниже приводится описание каждого показанного параметра:
n порядковый номер входного кадра, начиная с 1
Y, U, V, R, G, B
SSIM сравниваемых кадров для компонента, указанного суффиксом.
Все SSIM сравниваемых кадров для всего кадра.
dB То же, что и выше, но в дБ.
Например:
фильм = ref_movie.mpg, setpts = PTS-STARTPTS [основной];
[main] [ref] ssim = "stats_file = stats.log" [out]
В этом примере обрабатываемый входной файл сравнивается с эталонным файлом.
ref_movie.mpg. SSIM каждого отдельного кадра хранится в статистика.лог.
Другой пример с psnr и ssim одновременно:
ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim; [0: v] [1: v] psnr" -f null -
стерео3d
Преобразование между различными форматами стереоскопических изображений.
Фильтры допускают следующие параметры:
in Установите стереоскопический формат изображения на входе.
Доступные значения для форматов входных изображений:
сбсл
бок о бок параллельно (левый глаз левый, правый глаз правый)
сбср
бок о бок перекрестие (правый глаз левый, левый глаз правый)
сбс2л
бок о бок параллельно с разрешением половинной ширины (левый глаз левый, правый глаз правый)
сбс2р
бок о бок перекрестие с разрешением половинной ширины (правый глаз левый, левый глаз правый)
ABL вверху-внизу (левый глаз вверху, правый глаз внизу)
абр вверху-внизу (правый глаз вверху, левый глаз внизу)
AB2L
сверху-снизу с разрешением половинной высоты (левый глаз вверху, правый глаз внизу)
ab2r
сверху-снизу с разрешением половинной высоты (правый глаз вверху, левый глаз внизу)
al чередование кадров (сначала левый глаз, затем правый глаз)
ar чередование кадров (сначала правый глаз, затем левый глаз)
Значение по умолчанию сбсл.
внешний Установите формат стереоскопического изображения для вывода.
Доступные значения для форматов выходных изображений - это все входные форматы, а также:
арбитраж
анаглиф красный / сине-серый (красный фильтр на левом глазу, синий фильтр на правом глазу)
аргг
анаглиф красный / зеленый серый (красный фильтр на левом глазу, зеленый фильтр на правом глазу)
дуга
анаглифный красный / голубой серый (красный фильтр на левом глазу, голубой фильтр на правом глазу)
арка
анаглиф красный / голубой наполовину цвет (красный фильтр на левом глазу, голубой фильтр на правом глазу)
ARCC
анаглифный красный / голубой цвет (красный фильтр на левом глазу, голубой фильтр на правом глазу)
дуга
анаглиф красный / голубой цвет оптимизирован с проекцией наименьших квадратов дюбуа (красный
фильтр на левый глаз, голубой фильтр на правый глаз)
АГМГ
анаглифный зеленый / пурпурный серый (зеленый фильтр на левом глазу, пурпурный фильтр справа
глаз)
ага
анаглиф зеленый / пурпурный наполовину (зеленый фильтр на левом глазу, пурпурный фильтр на
правый глаз)
АГМК
анаглиф зеленый / пурпурный (зеленый фильтр на левом глазу, пурпурный фильтр справа
глаз)
АГМД
анаглифный зеленый / пурпурный цвет с оптимизацией наименьших квадратов проецирования дюбуа
(зеленый фильтр на левом глазу, пурпурный фильтр на правом глазу)
айбг
анаглифный желтый / сине-серый (желтый фильтр на левом глазу, синий фильтр на правом глазу)
айбх
анаглиф желтый / синий полуцвет (желтый фильтр на левом глазу, синий фильтр справа
глаз)
айбк
анаглиф желтого / синего цвета (желтый фильтр на левом глазу, синий фильтр на правом глазу)
айбд
анаглиф желто-синего цвета оптимизирован с проекцией дюбуа методом наименьших квадратов
(желтый фильтр на левом глазу, синий фильтр на правом глазу)
Irl чередующиеся ряды (левый глаз находится в верхнем ряду, правый глаз начинается в следующем ряду)
IRR чередующиеся строки (правый глаз находится в верхнем ряду, левый глаз начинается в следующем ряду)
ml моно выход (только левый глаз)
mr моно выход (только правый глаз)
Значение по умолчанию дуга.
Примеры
· Преобразование входного видео из параллельного анаглифа в желтый / синий дубуа:
stereo3d = sbsl: aybd
· Преобразование входного видео сверху снизу (левый глаз вверху, правый глаз внизу) бок о бок
перекрестный взгляд.
stereo3d = abl: sbsr
SPP
Примените простой фильтр постобработки, который сжимает и распаковывает изображение на нескольких
(или - в случае уровень 6 - все) сдвиги и усредни результаты.
Фильтр принимает следующие параметры:
Установите качество. Эта опция определяет количество уровней для усреднения. Он принимает
целое число в диапазоне 0-6. Если установлено значение 0, фильтр не действует. Значение 6
означает более высокое качество. При каждом приращении этого значения скорость уменьшается в раз.
примерно 2. Значение по умолчанию - 3.
qp Установите постоянный параметр квантования. Если не установлен, фильтр будет использовать QP из
видеопоток (если есть).
Режим
Установите пороговый режим. Доступные режимы:
жесткий
Установить жесткое пороговое значение (по умолчанию).
легонько
Установите мягкое пороговое значение (лучший эффект удаления звонка, но, вероятно, более размытый).
use_bframe_qp
Включите использование QP из B-Frames, если установлено значение 1. Использование этой опции может вызвать
мерцание, так как B-кадры часто имеют больший QP. По умолчанию 0 (не включено).
субтитры
Нарисуйте субтитры поверх входного видео с помощью библиотеки libass.
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с помощью "--enable-libass".
Этот фильтр также требует сборки с libavcodec и libavformat для преобразования переданного
subtitles в формат субтитров ASS (Advanced Substation Alpha).
Фильтр принимает следующие параметры:
имя файла, f
Задайте имя файла с субтитрами для чтения. Это необходимо указать.
оригинальный размер
Укажите размер исходного видео, для которого был составлен файл ASS.
Чтобы узнать о синтаксисе этой опции, проверьте "Видео размер" . in ffmpeg-утилиты
руководство. Из-за неправильной арифметики соотношения сторон АСС это необходимо для
правильно масштабируйте шрифты, если соотношение сторон было изменено.
каталог шрифтов
Задайте путь к каталогу, содержащему шрифты, которые может использовать фильтр. Эти шрифты
будет использоваться в дополнение к тому, что использует поставщик шрифтов.
Charenc
Установить кодировку символов ввода субтитров. Только фильтр «субтитры». Только полезно, если нет
УТФ-8.
поток_индекс, si
Установить индекс потока субтитров. Только фильтр «субтитры».
Force_style
Переопределить стиль по умолчанию или параметры информации скрипта для субтитров. Принимает строку
содержащие пары в стиле ASS «KEY = VALUE», разделенные «,».
Если первый ключ не указан, предполагается, что первое значение указывает
имя файла.
Например, для рендеринга файла суб.срт поверх входного видео используйте команду:
subtitles = sub.srt
что эквивалентно:
субтитры = имя файла = sub.srt
Чтобы отобразить поток субтитров по умолчанию из файла видео.mkvИспользуйте:
subtitles = video.mkv
Чтобы отобразить второй поток субтитров из этого файла, используйте:
subtitles = video.mkv: si = 1
Чтобы субтитры транслировались из суб.срт отображаются прозрачным зеленым цветом "DejaVu Serif", используйте:
subtitles = sub.srt: force_style = 'FontName = DejaVu Serif, PrimaryColour = & HAA00FF00'
супер2xsai
Масштабируйте ввод в 2 раза и сгладьте, используя пиксельную графику Super2xSaI (масштабирование и интерполяция).
алгоритм масштабирования.
Полезно для увеличения пиксельных изображений без снижения резкости.
свопув
Поменять местами самолет U и V.
телесина
Примените телесин процесс к видео.
Этот фильтр принимает следующие параметры:
первое_поле
Вверх, t
сначала верхнее поле
дно, b
сначала нижнее поле Значение по умолчанию - «верх».
описания
Строка чисел, представляющая раскрывающийся список, который вы хотите применить. По умолчанию
значение 23.
Некоторые типичные паттерны:
Выход NTSC (30i):
27.5р: 32222
24p: 23 (классический)
24p: 2332 (предпочтительно)
20р: 33
18р: 334
16р: 3444
Выход PAL (25i):
27.5р: 12222
24p: 222222222223 ("раскрывающийся список евро")
16.67р: 33
16р: 33333334
миниатюрами
Выберите наиболее репрезентативный кадр из заданной последовательности последовательных кадров.
Фильтр принимает следующие параметры:
n Установите размер пакета кадров для анализа; в комплекте n кадров, фильтр выберет один
из них, а затем обработать следующую партию n кадры до конца. По умолчанию 100.
Поскольку фильтр отслеживает всю последовательность кадров, больший n значение приведет к
более высокое использование памяти, поэтому высокое значение не рекомендуется.
Примеры
· Извлеките по одной картинке каждые 50 кадров:
thumbnail = 50
· Полный пример создания эскиза с FFmpeg:
ffmpeg -i in.avi -vf thumbnail, scale = 300: 200 -frames: v 1 out.png
плитка
Выложите несколько последовательных кадров вместе.
Фильтр принимает следующие параметры:
макет
Установите размер сетки (т.е. количество строк и столбцов). Для синтаксиса этого
вариант, проверьте "Видео размер" . in ffmpeg-утилиты руководство.
nb_frames
Установите максимальное количество кадров для рендеринга в данной области. Оно должно быть меньше или
равно wxh. Значение по умолчанию - 0, что означает, что будет использована вся область.
маржа
Установите внешнюю границу поля в пикселях.
набивка
Установите толщину внутренней границы (т.е. количество пикселей между кадрами). Для большего
расширенные параметры заполнения (например, разные значения для краев), см.
прокладка видеофильтра.
цвет
Укажите цвет неиспользуемой области. Чтобы узнать о синтаксисе этого параметра, установите флажок «Цвет».
раздел в руководстве по ffmpeg-utils. Значение по умолчанию цвет черный".
Примеры
· Создание тайлов PNG 8x8 для всех ключевых кадров (-skip_frame нет ключа) в фильме:
ffmpeg -skip_frame nokey -i file.avi -vf 'scale = 128: 72, tile = 8x8' -an -vsync 0 ключевых кадров% 03d.png
Команда -vsync 0 необходимо для предотвращения FFmpeg от дублирования каждого выходного кадра до
приспособить первоначально обнаруженную частоту кадров.
· Отображение 5 изображений в области размером «3x2» с 7 пикселями между ними и 2
пикселей начального поля, используя смешанные плоские и именованные параметры:
tile=3x2:nb_frames=5:padding=7:margin=2
красить
Выполняйте различные типы чересстрочной развертки временного поля.
Фреймы считаются начиная с 1, поэтому первый входной фрейм считается нечетным.
Фильтр принимает следующие параметры:
Режим
Укажите режим переплетения. Этот параметр также можно указать как значение
в одиночестве. См. Ниже список значений для этой опции.
Доступные значения:
слияние 0
Переместите нечетные кадры в верхнее поле, даже в нижнее поле, создавая
рама двойной высоты с половинной частотой кадров.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
Вывод:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
drop_odd, 1
Выводить только четные кадры, нечетные кадры отбрасываются, генерируя кадр с неизменным
высота с половинной частотой кадров.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
Вывод:
22222 44444
22222 44444
22222 44444
22222 44444
drop_even, 2
Выводить только нечетные кадры, четные кадры отбрасываются, генерируя кадр с неизменным
высота с половинной частотой кадров.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
Вывод:
11111 33333
11111 33333
11111 33333
11111 33333
подушечка, 3
Расширяйте каждый кадр до полной высоты, но заполняйте чередующиеся строки черным, создавая
кадр с двойной высотой при той же частоте кадров на входе.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
Вывод:
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
чередование_верх, 4
Чередовать верхнее поле из нечетных кадров с нижним полем из четных кадров,
создание кадра с неизменной высотой с половинной частотой кадров.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
Вывод:
11111 33333
22222 44444
11111 33333
22222 44444
чередование_внизу, 5
Чередовать нижнее поле из нечетных кадров с верхним полем из четных кадров,
создание кадра с неизменной высотой с половинной частотой кадров.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
Вывод:
22222 44444
11111 33333
22222 44444
11111 33333
интерлейс2, 6
Двойная частота кадров при неизменной высоте. Вставляются кадры, каждый из которых содержит
второе временное поле из предыдущего входного кадра и первое временное поле
из следующего кадра ввода. Этот режим основан на флаге top_field_first. Полезный
для дисплеев с чересстрочной разверткой без синхронизации полей.
------> время
Входной сигнал:
Кадр 1 Кадр 2 Кадр 3 Кадр 4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
Вывод:
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
Числовые значения не рекомендуются, но принимаются по причинам обратной совместимости.
Режим по умолчанию - «слияние».
Флаги
Укажите флаги, влияющие на процесс фильтрации.
Доступное значение для Флаги это:
low_pass_filter, влфп
Включите вертикальную фильтрацию нижних частот в фильтре. Вертикальная фильтрация нижних частот
требуется при создании адресата с чересстрочной разверткой из источника с прогрессивной разверткой.
содержит высокочастотные вертикальные детали. Фильтрация уменьшит чересстрочную развертку 'twitter'
и муаровый узор.
Вертикальную фильтрацию нижних частот можно включить только для Режим interleave_top и
interleave_bottom.
транспонировать
Транспонируйте строки со столбцами во входном видео и при необходимости переверните его.
Он принимает следующие параметры:
директория Укажите направление транспозиции.
Может принимать следующие значения:
0, 4, clock_flip
Повернуть на 90 градусов против часовой стрелки и перевернуть по вертикали (по умолчанию), то есть:
LR Ll
. . ->. .
lr Rr
1, 5, Часы
Поверните на 90 градусов по часовой стрелке, то есть:
LR lL
. . ->. .
lr rR
2, 6, часы
Повернуть на 90 градусов против часовой стрелки, то есть:
LR Rr
. . ->. .
lr Ll
3, 7, clock_flip
Повернуть на 90 градусов по часовой стрелке и перевернуть по вертикали, то есть:
LR rR
. . ->. .
lr lL
Для значений от 4 до 7 транспонирование выполняется только в том случае, если геометрия входного видео
портрет, а не пейзаж. Эти значения устарели, параметр "сквозной"
следует использовать вместо
Числовые значения не рекомендуются, и от них следует отказаться в пользу символических констант.
сквозной
Не применяйте транспонирование, если входная геометрия совпадает с геометрией, указанной в
указанное значение. Принимает следующие значения:
нет
Всегда применяйте транспонирование.
портрет
Сохранить портретную геометрию (когда высота >= ширина).
пейзаж
Сохранить геометрию ландшафта (когда ширина >= высота).
Значение по умолчанию - «нет».
Например, чтобы повернуть на 90 градусов по часовой стрелке и сохранить портретную ориентацию:
transpose = dir = 1: passthrough = portrait
Вышеупомянутая команда также может быть указана как:
transpose = 1: портрет
отделка
Обрежьте ввод так, чтобы вывод содержал одну непрерывную часть ввода.
Он принимает следующие параметры:
Начало
Укажите время начала сохраняемого раздела, т.е. кадра с меткой времени
Начало будет первым кадром в выводе.
конец Укажите время первого кадра, который будет отброшен, т.е. кадр сразу
предшествующий тому, у которого есть отметка времени конец будет последним кадром в выводе.
start_pts
Это то же самое, что и Начало, за исключением того, что этот параметр устанавливает отметку времени начала в базе времени
единиц вместо секунд.
конечные_точки
Это то же самое, что и конец, за исключением того, что эта опция устанавливает конечную временную метку в единицах временной развертки
вместо секунд.
продолжительность
Максимальная продолжительность вывода в секундах.
старт_кадр
Номер первого кадра, который нужно передать на выход.
конец_кадра
Номер первого кадра, который следует отбросить.
Начало, конец и продолжительность выражаются в виде спецификации продолжительности времени; видеть Время
продолжительность . in ffmpeg-утилиты(1) руководство для принятого синтаксиса.
Обратите внимание, что первые два набора параметров начала / конца и продолжительность вариант посмотрите на
метка времени кадра, в то время как варианты _frame просто подсчитывают кадры, которые проходят через
фильтр. Также обратите внимание, что этот фильтр не изменяет отметки времени. Если вы желаете
вывод временных меток, чтобы они начинались с нуля, вставьте фильтр setpts после подстроечного фильтра.
Если задано несколько параметров начала или конца, этот фильтр пытается быть жадным и сохраняет все
кадры, соответствующие хотя бы одному из указанных ограничений. Чтобы сохранить только ту часть, которая
соответствует всем ограничениям сразу, объединяет несколько обрезных фильтров.
По умолчанию все вводимые данные сохраняются. Таким образом, можно установить, например, только
конечные значения, чтобы сохранить все до указанного времени.
Примеры:
· Отбросьте все, кроме второй минуты ввода:
ffmpeg -i INPUT -vf trim = 60: 120
· Сохраняйте только первую секунду:
ffmpeg -i INPUT -vf trim = duration = 1
нечеткий
Увеличьте резкость или размытие входного видео.
Он принимает следующие параметры:
яркость_msize_x, lx
Установите размер матрицы яркости по горизонтали. Это должно быть нечетное целое число от 3 до 63.
значение по умолчанию - 5.
яркость_msize_y, ly
Установите размер матрицы яркости по вертикали. Это должно быть нечетное целое число от 3 до 63.
значение по умолчанию - 5.
яркость_сумма, la
Установите силу эффекта яркости. Это должно быть число с плавающей запятой, разумные значения
лежать между -1.5 и 1.5.
Отрицательные значения будут размывать входное видео, а положительные значения увеличивают его резкость.
значение нуля отключит эффект.
Значение по умолчанию 1.0.
цветность_msize_x, cx
Установите размер матрицы цветности по горизонтали. Это должно быть нечетное целое число от 3 до 63.
значение по умолчанию - 5.
цветность_msize_y, cy
Установите вертикальный размер матрицы цветности. Это должно быть нечетное целое число от 3 до 63.
значение по умолчанию - 5.
цвет_количество, ca
Установите силу эффекта цветности. Это должно быть число с плавающей запятой, разумные значения
лежать между -1.5 и 1.5.
Отрицательные значения будут размывать входное видео, а положительные значения увеличивают его резкость.
значение нуля отключит эффект.
Значение по умолчанию 0.0.
OpenCL
Если установлено значение 1, укажите использование возможностей OpenCL, доступно только в том случае, если FFmpeg был
настроен с помощью "--enable-opencl". Значение по умолчанию - 0.
Все параметры являются необязательными и по умолчанию эквивалентны строке «5: 5: 1.0: 5: 5: 0.0».
Примеры
· Применение сильного эффекта резкости яркости:
unsharp = luma_msize_x = 7: luma_msize_y = 7: luma_amount = 2.5
· Примените сильное размытие параметров яркости и цветности:
unsharp=7:7:-2:7:7:-2
УПП
Примените сверхмедленный / простой фильтр постобработки, который сжимает и распаковывает изображение.
на нескольких (или - в случае уровень 8 - все) сдвиги и усредни результаты.
Это отличается от поведения spp тем, что uspp фактически кодирует и декодирует каждый
случай с libavcodec Snow, тогда как spp использует упрощенный intra only 8x8 DCT, аналогичный
МЖПЭГ.
Фильтр принимает следующие параметры:
Установите качество. Эта опция определяет количество уровней для усреднения. Он принимает
целое число в диапазоне 0-8. Если установлено значение 0, фильтр не действует. Значение 8
означает более высокое качество. При каждом приращении этого значения скорость уменьшается в раз.
примерно 2. Значение по умолчанию - 3.
qp Установите постоянный параметр квантования. Если не установлен, фильтр будет использовать QP из
видеопоток (если есть).
вектороскоп
Отобразите 2 значения цветовых компонентов на двухмерном графике (который называется
вектороскоп).
Этот фильтр принимает следующие параметры:
Режим, m
Установите режим вектороскопа.
Принимает следующие значения:
серый
Значения серого отображаются на графике, более высокая яркость означает, что больше пикселей имеют одинаковый цвет.
значение цвета компонента в месте на графике. Это режим "по умолчанию".
цвет
Значения серого отображаются на графике. Значения окружающих пикселей, которые не
присутствующие в кадре видео, нарисованы градиентом из двух цветовых компонентов, которые установлены
по вариантам «x» и «y».
color2
Фактические значения цветовых составляющих, присутствующие в кадре видео, отображаются на графике.
color3
Подобно цвету 2, но более высокая частота тех же значений «x» и «y» на графике.
увеличивает значение другой цветовой составляющей, которая по умолчанию является яркостью
из «x» и «y».
color4
Фактические цвета, присутствующие в кадре видео, отображаются на графике. Если два разных
цвета отображаются в ту же позицию на графике, а затем цвет с более высоким значением компонента не
присутствует в графе выбрано.
x Установите, какой компонент цвета будет представлен на оси X. По умолчанию 1.
y Установите, какой компонент цвета будет представлен на оси Y. По умолчанию 2.
интенсивность, i
Установите интенсивность, используемую режимами: серый, цвет и цвет3 для увеличения яркости
компонент цвета, который представляет частоту расположения (X, Y) на графике.
конверт, e
нет
Без конверта, это по умолчанию.
мгновение
Мгновенный конверт, даже самый темный пиксель будет четко выделен.
пик
Удерживайте максимальные и минимальные значения, представленные на графике с течением времени. Таким образом вы можете
по-прежнему определять значения, выходящие за пределы допустимого диапазона, даже не глядя на вектороскоп.
пик + мгновенный
Пиковый и мгновенный конверт вместе.
видстабдетект
Проанализировать стабилизацию / расшатывание видео. Выполните проход 1 из 2, см. видстабтрансформировать для пропуска
2.
Этот фильтр создает файл с информацией о преобразовании относительного смещения и поворота.
о последующих кадрах, который затем используется видстабтрансформировать фильтр.
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с
"--enable-libvidstab".
Этот фильтр принимает следующие параметры:
результат
Задайте путь к файлу, который используется для записи информации о преобразованиях. Значение по умолчанию
преобразовывает.trf.
шаткость
Установите, насколько шатким будет видео и насколько быстрая камера. Он принимает целое число в
диапазон 1-10, значение 1 означает небольшую шаткость, значение 10 означает сильную шаткость.
Значение по умолчанию 5.
точность
Установите точность процесса обнаружения. Это должно быть значение в диапазоне 1–15. А
значение 1 означает низкую точность, значение 15 означает высокую точность. Значение по умолчанию - 15.
размер шага
Установите размер шага процесса поиска. Область около минимума сканируется с разрешением 1 пиксель.
разрешающая способность. Значение по умолчанию - 6.
минимальная контрастность
Установите минимальный контраст. Ниже этого значения локальное поле измерения отбрасывается. Должно быть
значение с плавающей запятой в диапазоне 0-1. Значение по умолчанию - 0.3.
штатив
Установите номер опорного кадра для режима штатива.
Если этот параметр включен, движение кадров сравнивается с опорным кадром в отфильтрованном
поток, идентифицируемый по указанному номеру. Идея состоит в том, чтобы компенсировать все движения в
более или менее статичную сцену и держите поле обзора абсолютно неподвижным.
Если установлено значение 0, оно отключено. Фреймы считаются начиная с 1.
произошел
Показать поля и преобразования в результирующих кадрах. Он принимает целое число в диапазоне
0-2. Значение по умолчанию - 0, что отключает любую визуализацию.
Примеры
· Используйте значения по умолчанию:
видстабдетект
· Проанализировать сильно шаткий фильм и записать результаты в файл mytransforms.trf:
vidstabdetect = шаткость = 10: точность = 15: результат = "mytransforms.trf"
· Визуализируйте результат внутренних преобразований в получившемся видео:
vidstabdetect = показать = 1
· Анализируйте видео со средней шаткостью, используя FFmpeg:
ffmpeg -i input -vf vidstabdetect = shakiness = 5: show = 1 dummy.avi
видстабтрансформировать
Стабилизация видео / расшатывание: пройти 2 из 2, см. видстабдетект для прохода 1.
Прочтите файл с информацией о преобразовании для каждого кадра и примените / скомпенсируйте их. Вместе
с видстабдетект фильтр, который можно использовать для устранения встряхивания видео. Смотрите также
<http://public.hronopik.de/vid.stab>. Важно также использовать нечеткий фильтр, см.
внизу.
Чтобы включить компиляцию этого фильтра, вам необходимо настроить FFmpeg с
"--enable-libvidstab".
Возможности
вход
Задайте путь к файлу, который используется для чтения преобразований. Значение по умолчанию преобразовывает.trf.
сглаживающий
Установите количество кадров (значение * 2 + 1), используемых для фильтрации нижних частот камеры.
движения. Значение по умолчанию - 10.
Например, число 10 означает, что используется 21 кадр (10 в прошлом и 10 в
будущее), чтобы сгладить движение в видео. Чем больше значение, тем более плавное видео,
но ограничивает ускорение камеры (движения панорамирования / наклона). 0 - особый случай
где моделируется статическая камера.
оптальго
Установите алгоритм оптимизации пути камеры.
Допустимые значения:
гаусс
фильтр нижних частот ядра Гаусса при движении камеры (по умолчанию)
средний усреднение по преобразованиям
максшифт
Установите максимальное количество пикселей для перевода кадров. Значение по умолчанию -1, что означает нет.
предел.
максимальный угол
Установите максимальный угол в радианах (градусы * PI / 180) для поворота кадров. Значение по умолчанию -1,
означает без ограничений.
урожай
Укажите, как работать с границами, которые могут быть видны из-за компенсации движения.
Доступные значения:
держать
сохранить информацию об изображении из предыдущего кадра (по умолчанию)
черный цвет
заполнить границу черным
инвертировать
Инвертировать преобразования, если установлено 1. Значение по умолчанию - 0.
относительный
Считайте преобразования относительными к предыдущему кадру, если установлено значение 1, и абсолютным, если установлено значение 0.
Значение по умолчанию 0.
зум
Установите процент для увеличения. Положительное значение приведет к эффекту увеличения, отрицательное
значение в эффекте уменьшения масштаба. Значение по умолчанию - 0 (без увеличения).
оптзум
Установите оптимальное масштабирование, чтобы не было границ.
Допустимые значения:
0 инвалид
1 определяется оптимальное значение статического масштабирования (только очень сильные движения приведут к
видимые границы) (по умолчанию)
2 определяется оптимальное значение адаптивного масштабирования (границы не видны), см.
зумскорость
Обратите внимание, что значение, указанное при увеличении, добавляется к рассчитанному здесь.
зумскорость
Установите процент для максимального увеличения каждого кадра (включается, когда оптзум установлен на 2). Диапазон
от 0 до 5, значение по умолчанию - 0.25.
Интерпол
Укажите тип интерполяции.
Доступные значения:
нет без интерполяции
линейный
линейный только горизонтальный
билинейной
линейно в обоих направлениях (по умолчанию)
бикубический
кубический в обоих направлениях (медленно)
штатив
Включите режим виртуального штатива, если установлено значение 1, что эквивалентно
«относительный = 0: сглаживание = 0». Значение по умолчанию - 0.
Используйте также вариант «штатив». видстабдетект.
отлаживать
Увеличьте уровень детализации журнала, если установлено значение 1. Также обнаруженные глобальные движения записываются в
временный файл global_motions.trf. Значение по умолчанию - 0.
Примеры
· Использовать FFmpeg для типичной стабилизации со значениями по умолчанию:
ffmpeg -i inp.mpeg -vf vidstabtransform, unsharp = 5: 5: 0.8: 3: 3: 0.4 inp_stabilized.mpeg
Обратите внимание на использование нечеткий фильтр, который рекомендуется всегда.
· Увеличьте немного больше и загрузите данные преобразования из заданного файла:
vidstabtransform = zoom = 5: input = "mytransforms.trf"
· Сделайте видео еще более сглаженным:
vidstabtransform = сглаживание = 30
вфлип
Переверните входное видео по вертикали.
Например, чтобы перевернуть видео по вертикали с помощью FFmpeg:
ffmpeg -i in.avi -vf "vflip" out.avi
виньетка
Создайте или отмените естественный эффект виньетирования.
Фильтр принимает следующие параметры:
угол, a
Задайте выражение угла линзы в радианах.
Значение обрезается в диапазоне «[0, PI / 2]».
Значение по умолчанию: «PI / 5».
x0
y0 Задайте выражения для координат центра. Соответственно по умолчанию "w / 2" и "h / 2".
Режим
Установите режим вперед / назад.
Доступные режимы:
вперед
Чем больше расстояние от центральной точки, тем темнее становится изображение.
назад
Чем больше расстояние от центральной точки, тем ярче становится изображение.
Это можно использовать для отмены эффекта виньетки, хотя здесь нет автоматического
обнаружение для извлечения линзы угол и прочие настройки (пока). Его также можно использовать
для создания эффекта жжения.
Значение по умолчанию вперед.
Eval
Установите режим оценки для выражений (угол, x0, y0).
Принимает следующие значения:
инициализации
Оценивайте выражения только один раз во время инициализации фильтра.
рама
Оцените выражения для каждого входящего кадра. Это намного медленнее, чем инициализации
режим, поскольку он требует пересчета всех масштабаторов, но позволяет
динамические выражения.
Значение по умолчанию инициализации.
трястись
Установите дизеринг, чтобы уменьшить эффекты кольцевых полос. По умолчанию 1 (включен).
внешний вид
Установите соотношение сторон виньетки. Этот параметр позволяет настроить форму виньетки.
Установка этого значения на вход SAR приведет к прямоугольному виньетированию.
следуя габаритам видео.
По умолчанию "1/1".
Expressions
Команда альфа, x0 и y0 выражения могут содержать следующие параметры.
w
h ширина и высота ввода
n номер кадра ввода, начиная с 0
PTS время PTS (Presentation TimeStamp) отфильтрованного видеокадра, выраженное в TB
единиц, NAN, если не определено
r частота кадров входящего видео, NAN, если входная частота кадров неизвестна
t PTS (временная метка представления) отфильтрованного видеокадра, выраженная в секундах,
NAN, если не определено
tb временная база входного видео
Примеры
· Применение простого сильного эффекта виньетирования:
виньетка = PI / 4
· Сделайте мерцающее виньетирование:
виньетка = 'PI / 4 +случайный(1) * PI / 50 ': eval = frame
встак
Сложите входные видео вертикально.
Все потоки должны иметь одинаковый формат пикселей и одинаковую ширину.
Обратите внимание, что этот фильтр работает быстрее, чем при использовании наложение и площадка фильтр для создания такого же вывода.
Фильтр принимает следующий вариант:
nb_inputs
Установите количество входных потоков. По умолчанию 2.
w3fdif
Деинтерлейсинг входящего видео (w3fdif означает «фильтр деинтерлейсинга полей Weston 3»).
На основе процесса, описанного Мартином Уэстоном для BBC R&D, и реализованного на основе
алгоритм деинтерлейсинга, написанный Джимом Истербруком для BBC R&D, область Weston 3
Фильтр деинтерлейсинга использует коэффициенты фильтра, рассчитанные BBC R&D.
Есть два набора коэффициентов фильтра, так называемые «простые»: и «сложные». Какой набор
Коэффициенты фильтра можно установить, передав необязательный параметр:
фильтр
Установите коэффициенты фильтра чересстрочной развертки. Принимает одно из следующих значений:
декриминализовано
Набор коэффициентов простого фильтра.
комплекс
Более сложный набор коэффициентов фильтра.
Значение по умолчанию комплекс.
дент
Укажите кадры для деинтерлейсинга. Примите одно из следующих значений:
ВСЕ Деинтерлейсинг всех кадров,
Чересстрочная
Только кадры деинтерлейсинга, помеченные как чересстрочные.
Значение по умолчанию ВСЕ.
форма волны
Монитор видеосигнала.
Монитор формы сигнала отображает интенсивность цветовой составляющей. По умолчанию только яркость. Каждый
столбец формы волны соответствует столбцу пикселей в исходном видео.
Он принимает следующие варианты:
Режим, m
Может быть либо «строкой», либо «столбцом». По умолчанию - «столбец». В строчном режиме график на
левая сторона представляет значение компонента цвета 0, а правая сторона представляет значение =
255. В режиме столбца верхняя сторона представляет значение компонента цвета = 0, а нижняя сторона.
представляет значение = 255.
интенсивность, i
Установите интенсивность. Меньшие значения полезны, чтобы узнать, сколько значений одинаковых
яркость распределяется по входным строкам / столбцам. Значение по умолчанию - 0.04. Позволил
диапазон [0, 1].
зеркало, r
Установите режим зеркального отображения. 0 означает без зеркалирования, 1 означает зеркальное отображение. В зеркальном режиме выше
значения будут представлены слева для режима «строка» и вверху для «столбца»
режим. По умолчанию - 1 (зеркальное отображение).
дисплей, d
Установите режим отображения. Принимает следующие значения:
наложение
Представленная информация идентична той, что в «параде», за исключением того, что графики
представляющие компоненты цвета накладываются друг на друга.
Этот режим отображения упрощает выявление относительных различий или сходств в
перекрывающиеся области цветовых компонентов, которые должны быть идентичными, например
как нейтральные белые, серые или черные цвета.
парад
Отображение отдельного графика для цветовых компонентов бок о бок в "строчном" режиме или по одному
под другим в режиме «столбец».
Использование этого режима отображения позволяет легко определять оттенки цвета в светлых участках и
тени изображения, сравнивая контуры верхнего и нижнего графиков
каждая форма волны. Поскольку белый, серый и черный цвета характеризуются точно равными
количество красного, зеленого и синего, нейтральные области изображения должны отображать три
формы сигналов примерно одинаковой ширины / высоты. В противном случае коррекцию выполнить несложно.
путем регулировки уровня трех сигналов.
По умолчанию - «парад».
компоненты, c
Установите, какие цветовые компоненты отображать. По умолчанию 1, что означает только яркость или красный цвет.
компонент цвета, если ввод находится в цветовом пространстве RGB. Если установлено, например, 7, он будет
отобразить все 3 (если) доступных цветовых компонента.
конверт, e
нет
Без конверта, это по умолчанию.
мгновение
Мгновенный конверт, минимальные и максимальные значения, представленные на графике, будут легко
виден даже при небольшом значении «шага».
пик
Удерживайте минимальные и максимальные значения, представленные на графике во времени. Таким образом вы можете
по-прежнему определять значения, выходящие за пределы допустимого диапазона, не глядя постоянно на осциллограммы.
пик + мгновенный
Пиковый и мгновенный конверт вместе.
фильтр, f
НЧ
Без фильтрации, это значение по умолчанию.
плоский
Яркость и цветность объединены вместе.
Квартира
То же, что и выше, но показывает разницу между синим и красным цветовыми оттенками.
цветность
Отображает только цветность.
ахрома
То же, что и выше, но показывает разницу между синим и красным цветовыми оттенками.
цвет
Отображает фактическое значение цвета на осциллограмме.
XBR
Примените высококачественный фильтр увеличения xBR, разработанный для пиксельной графики. Это
следует набору правил обнаружения краев, см.
<http://www.libretro.com/forums/viewtopic.php? f = 6 & t = 134>.
Он принимает следующий вариант:
n Установите размер масштабирования: 2 для «2xBR», 3 для «3xBR» и 4 для «4xBR». По умолчанию 3.
Ядиф
Деинтерлейсинг входящего видео («yadif» означает «еще один фильтр деинтерлейсинга»).
Он принимает следующие параметры:
Режим
Используемый режим чересстрочной развертки. Принимает одно из следующих значений:
0, send_frame
Выведите по одному кадру для каждого кадра.
1, поле_отправки
Выведите по одному кадру для каждого поля.
2, send_frame_nospatial
Как "send_frame", но пропускает проверку пространственного чересстрочного изображения.
3, send_field_nospatial
Как "send_field", но пропускает проверку пространственного чередования.
Значение по умолчанию - send_frame.
соотношение
Четность поля изображения, принятая для входного видео с чересстрочной разверткой. Он принимает один из
следующие значения:
0, ПТФ
Предположим, что верхнее поле - первое.
1, BFF
Предположим, что нижнее поле - первое.
-1, автоматический
Включить автоматическое определение четности полей.
Значение по умолчанию - «авто». Если чересстрочная развертка неизвестна или декодер не
экспортировать эту информацию, первым будет считаться верхнее поле.
дент
Укажите кадры для деинтерлейсинга. Примите одно из следующих значений:
0, ВСЕ
Деинтерлейсинг всех кадров.
1, Чересстрочная
Только кадры деинтерлейсинга, помеченные как чересстрочные.
Значение по умолчанию - «все».
зумпан
Примените эффект масштабирования и панорамирования.
Этот фильтр принимает следующие параметры:
масштабирование z
Задайте выражение масштабирования. По умолчанию 1.
x
y Задайте выражения x и y. По умолчанию 0.
d Задайте выражение продолжительности в количестве кадров. Это устанавливает количество
Эффект кадров будет длиться для одного входного изображения.
s Установите размер выходного изображения, по умолчанию - hd720.
Каждое выражение может содержать следующие константы:
в W, iw
Ширина ввода.
в_ч, ih
Высота ввода.
out_w, ow
Ширина вывода.
out_h, oh
Высота вывода.
in Количество входных кадров.
on Количество выходных кадров.
x
y Последняя вычисленная позиция 'x' и 'y' из выражения 'x' и 'y' для текущего ввода
Рамка.
px
py 'x' и 'y' последнего выходного кадра предыдущего входного кадра или 0, когда еще не было
такой фрейм (первый входной фрейм).
зум
Последнее вычисленное масштабирование из выражения 'z' для текущего кадра ввода.
пзум
Последнее вычисленное масштабирование последнего выходного кадра предыдущего входного кадра.
продолжительность
Количество кадров вывода для текущего кадра ввода. Вычисляется из выражения d для
каждый входной кадр.
производство
количество кадров вывода, созданных для предыдущего кадра ввода
a Рациональное число: ширина ввода / высота ввода
сар соотношение сторон образца
но соотношение сторон дисплея
Примеры
· Увеличьте масштаб до 1.5 и одновременно панорамируйте до некоторой точки рядом с центром изображения:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360
· Увеличение до 1.5 и панорамирование всегда в центре изображения:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
ВИДЕО ИСТОЧНИКИ
Ниже приводится описание доступных на данный момент видеоисточников.
буфер
Буферизируйте видеокадры и сделайте их доступными для цепочки фильтров.
Этот источник в основном предназначен для программного использования, в частности, через интерфейс.
определяется в libavfilter / vsrc_buffer.h.
Он принимает следующие параметры:
размер видео
Укажите размер (ширину и высоту) буферизованных видеокадров. Для синтаксиса
этот вариант, отметьте "Видео размер" . in ffmpeg-утилиты руководство.
ширина
Ширина входного видео.
высота
Высота входного видео.
pix_fmt
Строка, представляющая формат пикселей буферизованных видеокадров. Это может быть
число, соответствующее формату пикселя, или название формата пикселя.
временная база
Укажите временную базу, используемую для временных меток буферизованных кадров.
частота кадров
Укажите ожидаемую частоту кадров для видеопотока.
пиксель_аспект, сар
Примерное (пиксельное) соотношение сторон входного видео.
sws_param
Укажите дополнительные параметры, которые будут использоваться для масштабного фильтра, который автоматически
вставляется при обнаружении изменения входного размера или формата.
Например:
buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1
даст указание источнику принять видеокадры размером 320x240 и с форматом
"yuv410p", принимая 1/24 в качестве временной шкалы и квадратные пиксели (примерный формат 1: 1
соотношение). Так как формату пикселей с именем yuv410p соответствует цифра 6 (проверьте
enum определение AVPixelFormat в libavutil / pixfmt.h) этот пример соответствует:
buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1
В качестве альтернативы параметры можно указать в виде плоской строки, но этот синтаксис
устарело:
ширина:высота:pix_fmt:time_base.num:time_base.den:пиксель_aspect.num:Pixel_aspect.den[:sws_param]
Cellauto
Создайте шаблон, генерируемый элементарным клеточным автоматом.
Начальное состояние клеточного автомата можно определить через имя файла и
описания опции. Если такие параметры не указаны, начальное состояние создается случайным образом.
На каждом новом кадре новая строка в видео заполняется результатом сотового
автомат следующего поколения. Поведение при заполнении всего кадра определяется параметром
пролистать опцию.
Этот источник принимает следующие варианты:
имя файла, f
Считать начальное состояние клеточного автомата, то есть начальную строку, из указанного
файл. В файле каждый непробельный символ считается живой ячейкой,
новая строка завершит строку, а дальнейшие символы в файле будут проигнорированы.
шаблон, p
Считать начальное состояние клеточного автомата, то есть начальную строку, из указанного
строка.
Каждый непробельный символ в строке считается живой ячейкой, новой строкой.
завершит строку, и дальнейшие символы в строке будут проигнорированы.
темп, r
Установите скорость видео, то есть количество кадров, генерируемых в секунду. По умолчанию 25.
случайное_заполнение_соотношение, соотношение
Установите случайную степень заполнения для начального ряда клеточного автомата. Это плавающий
значение числа точек в диапазоне от 0 до 1, по умолчанию 1 / PHI.
Этот параметр игнорируется, если указан файл или шаблон.
случайное зерно, семя
Установить начальное число для случайного заполнения начальной строки, должно быть целым числом, включенным между
0 и UINT32_MAX. Если не указано или явно установлено на -1, фильтр попытается
используйте хорошие случайные семена из соображений максимальной эффективности.
править
Установите правило клеточного автомата, это число от 0 до 255. Значение по умолчанию
это 110.
размер, s
Установите размер выходного видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство.
If имя файла or описания указан, размер по умолчанию равен ширине
указанная строка начального состояния, а высота установлена на ширина * ФИ.
If размер установлен, он должен содержать ширину указанной строки шаблона, а
указанный образец будет центрирован в большей строке.
Если имя файла или строка шаблона не указаны, значение размера по умолчанию равно
«320x518» (используется для случайно сгенерированного начального состояния).
пролистать
Если установлено значение 1, прокрутите вывод вверх, когда все строки вывода будут
уже залит. Если установлено значение 0, новая сгенерированная строка будет записана поверх верхней строки.
сразу после заполнения нижнего ряда. По умолчанию 1.
старт_полный, полный
Если установлено значение 1, полностью заполнить вывод сгенерированными строками перед выводом
первый кадр. Это поведение по умолчанию, для отключения установите значение 0.
стежка
Если установлено значение 1, сшейте края левого и правого ряда вместе. Это по умолчанию
поведение, для отключения установите значение 0.
Примеры
· Считайте исходное состояние из описанияи укажите размер вывода 200x400.
cellauto = f = узор: s = 200x400
· Создать случайную начальную строку шириной 200 ячеек с коэффициентом заполнения 2/3:
Cellauto = ratio = 2/3: s = 200x200
· Создайте шаблон, сгенерированный правилом 18, начиная с одной живой клетки с центром в
начальный ряд шириной 100:
cellauto = p = @ s = 100x400: full = 0: rule = 18
· Укажите более детально проработанный исходный узор:
cellauto = p = '@@ @ @@': s = 100x400: full = 0: rule = 18
Мандельброт
Создайте фрактал набора Мандельброта и постепенно увеличивайте масштаб к точке, указанной с помощью
start_x и start_y.
Этот источник принимает следующие варианты:
конечные_точки
Установите значение терминальной точки. Значение по умолчанию - 400.
конечная_шкала
Установите значение терминальной шкалы. Должно быть значение с плавающей запятой. Значение по умолчанию - 0.3.
внутренний
Установите режим внутренней раскраски, то есть алгоритм, используемый для рисования фрактала Мандельброта.
внутренний регион.
Он должен принимать одно из следующих значений:
черный цвет
Установите черный режим.
сходимость
Покажи время до схождения.
Mincol
Установите цвет на основе точки, ближайшей к исходной точке итераций.
период
Установите режим периода.
Значение по умолчанию Mincol.
катапультирование
Установите значение экстренной помощи. Значение по умолчанию - 10.0.
макситер
Установите максимальное количество итераций, выполняемых алгоритмом рендеринга. Значение по умолчанию
7189. Воспользуйтесь функционалом
внешний
Установите режим внешней окраски. Он должен принимать одно из следующих значений:
iteration_count
Установите итерационный режим cound.
нормализованная_итерация_count
установить режим нормализованного подсчета итераций.
Значение по умолчанию нормализованная_итерация_count.
темп, r
Установите частоту кадров, выраженную в количестве кадров в секунду. Значение по умолчанию - «25».
размер, s
Установите размер кадра. Чтобы узнать о синтаксисе этого параметра, проверьте раздел "Размер видео" в
ffmpeg-utils руководство. Значение по умолчанию - «640x480».
start_scale
Установите начальное значение шкалы. Значение по умолчанию - 3.0.
start_x
Установите начальную позицию по оси x. Должно быть значение с плавающей запятой от -100 до 100.
Значение по умолчанию -0.743643887037158704752191506114774.
start_y
Установите начальную позицию y. Должно быть значение с плавающей запятой от -100 до 100.
Значение по умолчанию -0.131825904205311970493132056385139.
mptestsrc
Создавайте различные тестовые шаблоны, сгенерированные тестовым фильтром MPlayer.
Размер сгенерированного видео фиксированный и составляет 256x256. Этот источник полезен в
в частности для тестирования функций кодирования.
Этот источник принимает следующие варианты:
темп, r
Укажите частоту кадров исходного видео, как количество кадров, сгенерированных за
второй. Это должна быть строка в формате Frame_rate_num/Frame_rate_denцелое число
число, число с плавающей запятой или допустимое сокращение частоты кадров видео. По умолчанию
значение «25».
продолжительность, d
Установите продолжительность исходного видео. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса.
Если не указано иное или указанная продолжительность отрицательная, предполагается, что видео
создается навсегда.
тест t
Задайте номер или название теста, который нужно выполнить. Поддерживаемые тесты:
dc_luma
dc_chroma
частота_люма
частота_хрома
amp_luma
amp_chroma
CBP
mv
кольцо1
кольцо2
ВСЕ
Значение по умолчанию - «все», которое будет циклически перемещаться по списку всех тестов.
Некоторые примеры:
mptestsrc = t = dc_luma
сгенерирует тестовый шаблон "dc_luma".
frei0r_src
Предоставьте источник frei0r.
Для включения компиляции этого фильтра вам необходимо установить заголовок frei0r и настроить
FFmpeg с "--enable-frei0r".
Этот источник принимает следующие параметры:
размер
Размер создаваемого видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство.
Частота кадров
Частота кадров созданного видео. Это может быть строка вида Num/день или
Аббревиатура частоты кадров.
имя_фильтра
Имя загружаемого исходного кода frei0r. Для получения дополнительной информации о frei0r и о том, как
чтобы установить параметры, прочтите свободный в документации к видеофильтрам.
filter_params
Разделенный '|' список параметров для передачи в источник frei0r.
Например, для создания источника frei0r partik0l размером 200x200 и частотой кадров 10
который накладывается на основной ввод оверлейного фильтра:
frei0r_src = size = 200x200: framerate = 10: filter_name = partik0l: filter_params = 1234 [overlay]; [in] [overlay] оверлей
life
Создайте образ жизни.
Этот источник основан на обобщении жизненной игры Джона Конвея.
Исходный вход представляет собой сетку жизни, каждый пиксель представляет собой ячейку, которая может находиться в одном
двух возможных состояний, живого или мертвого. Каждая клетка взаимодействует со своими восемью соседями,
которые являются ячейками, смежными по горизонтали, вертикали или диагонали.
При каждом взаимодействии сетка развивается согласно принятому правилу, которое определяет
количество соседних живых клеток, которые позволят клетке остаться в живых или родиться. В править вариант
позволяет указать правило, которое следует принять.
Этот источник принимает следующие варианты:
имя файла, f
Задайте файл, из которого следует читать начальное состояние сетки. В файле каждый не-
символ пробела считается живой ячейкой, а новая строка используется для ограничения
конец каждого ряда.
Если эта опция не указана, начальная сетка генерируется случайным образом.
темп, r
Установите скорость видео, то есть количество кадров, генерируемых в секунду. По умолчанию 25.
случайное_заполнение_соотношение, соотношение
Установите коэффициент случайного заполнения для начальной случайной сетки. Это число с плавающей запятой
значение от 0 до 1, по умолчанию 1 / PHI. При указании файла игнорируется.
случайное зерно, семя
Задайте начальное число для заполнения начальной случайной сетки, оно должно быть целым числом между
0 и UINT32_MAX. Если не указано или явно установлено на -1, фильтр попытается
используйте хорошие случайные семена из соображений максимальной эффективности.
править
Установите жизненное правило.
Правило можно указать с помощью кода вида "S".NS/BNB", где NS и NB
последовательности чисел в диапазоне 0-8, NS указывает количество живых соседних ячеек
которые заставляют живую клетку оставаться в живых, и NB количество живых соседних ячеек, которые
сделать мертвую клетку живой (т.е. «родиться»). "s" и "b" могут использоваться вместо
соответственно "S" и "B".
В качестве альтернативы правило может быть задано 18-битным целым числом. 9 старших битов
используется для кодирования следующего состояния ячейки, если она активна для каждого числа живых соседей
ячеек младшие биты задают правило «заучивания» новых ячеек. Биты высшего порядка
кодировать для большего количества соседних ячеек. Например число 6153 =
«(12 << 9) +9» определяет правило «остаться в живых», равное 12, и рожденное правило «9», которое соответствует
на "S23 / B03".
Значение по умолчанию - "S23 / B3", что является правилом оригинальной игры Конвея.
сохранить клетку живой, если у нее есть 2 или 3 соседние живые клетки, и родит новую клетку, если
вокруг мертвой клетки есть три живые клетки.
размер, s
Установите размер выходного видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство.
If имя файла указан, размер по умолчанию установлен на тот же размер ввода
файл. Если размер установлен, он должен содержать размер, указанный во входном файле, и
исходная сетка, определенная в этом файле, центрируется в большей результирующей области.
Если имя файла не указано, значение размера по умолчанию равно "320x240" (используется для
случайно сгенерированная начальная сетка).
стежка
Если установлено значение 1, сшейте левый и правый края сетки вместе, а верхний и нижний
края тоже. По умолчанию 1.
плесень
Установите скорость формования ячеек. Если установлено, мертвая ячейка выйдет из цвет смерти в плесень_цвет с
шаг плесень. плесень может иметь значение от 0 до 255.
жизнь_цвет
Задайте цвет живых (или новорожденных) клеток.
цвет смерти
Установите цвет мертвых клеток. Если плесень установлен, это первый цвет, используемый для представления
мертвая клетка.
плесень_цвет
Установите цвет плесени, чтобы точно определить мертвые и заплесневелые клетки.
Чтобы узнать о синтаксисе этих трех вариантов цвета, проверьте раздел «Цвет» в файле ffmpeg-utils.
руководство.
Примеры
· Считать сетку из описанияи центрируйте его по сетке размером 300x300 пикселей:
жизнь = f = узор: s = 300x300
· Создайте случайную сетку размером 200x200 с коэффициентом заполнения 2/3:
жизнь = соотношение = 2/3: s = 200x200
· Задайте настраиваемое правило для развития случайно сгенерированной сетки:
жизнь = правило = S14 / B34
· Полный пример с эффектом медленной смерти (плесень) с использованием ffplay:
ffplay -f lavfi life=s=300x200:mold=10:r=60:ratio=0.1:death_color=#C83232:life_color=#00ff00,scale=1200:800:flags=16
все, аллюв, цвет, халдклатсрк, нуль, rgbtestsrc, бары, смптехдбары, тесты
Источник allrgb возвращает кадры размером 4096x4096 всех цветов RGB.
Источник "allyuv" возвращает кадры размером 4096x4096 всех цветов yuv.
«Цветной» источник обеспечивает однородный цвет на входе.
Источник haldclutsrc предоставляет идентификатор Hald CLUT. Смотрите также хомутик фильтр.
Источник "nullsrc" возвращает необработанные видеокадры. В основном полезно работать
в инструментах анализа / отладки или в качестве источника фильтров, которые игнорируют входные данные.
Источник "rgbtestsrc" генерирует тестовую таблицу RGB, полезную для обнаружения RGB и BGR.
вопросы. Вы должны увидеть красную, зеленую и синюю полосы сверху вниз.
Источник "smptebars" генерирует образец цветных полос на основе SMPTE Engineering.
Руководство EG 1-1990.
Источник "smptehdbars" генерирует образец цветных полос на основе SMPTE RP 219-2002.
Источник "testsrc" генерирует тестовый шаблон видео, показывая цветовой шаблон, прокрутку
градиент и отметка времени. Это в основном предназначено для тестирования.
Источники принимают следующие параметры:
цвет, c
Укажите цвет источника, доступный только в «цветном» источнике. Для синтаксиса
этого параметра проверьте раздел «Цвет» в руководстве по ffmpeg-utils.
уровень
Укажите уровень Hald CLUT, доступный только в исходном коде haldclutsrc. А
уровень «N» генерирует изображение «N * N * N» на «N * N * N» пикселей, которое будет использоваться в качестве идентичности
матрица для таблиц поиска 3D. Каждый компонент кодируется по шкале «1 / (N * N)».
размер, s
Укажите размер исходного видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «320x240».
Эта опция недоступна с фильтром haldclutsrc.
темп, r
Укажите частоту кадров исходного видео, как количество кадров, сгенерированных за
второй. Это должна быть строка в формате Frame_rate_num/Frame_rate_denцелое число
число, число с плавающей запятой или допустимое сокращение частоты кадров видео. По умолчанию
значение «25».
сар Установите примерное соотношение сторон исходного видео.
продолжительность, d
Установите продолжительность исходного видео. Видеть Время продолжительность . in
ffmpeg-утилиты(1) руководство для принятого синтаксиса.
Если не указано иное или указанная продолжительность отрицательная, предполагается, что видео
создается навсегда.
десятичные дроби n
Установите количество десятичных знаков для отображения в метке времени, доступно только в "testsrc"
источник.
Отображаемое значение метки времени будет соответствовать исходному значению метки времени.
умноженное на степень 10 указанного значения. Значение по умолчанию - 0.
Например следующее:
testsrc = duration = 5.3: size = qcif: rate = 10
сгенерирует видео длительностью 5.3 секунды, размером 176x144 и частотой кадров
10 кадров в секунду.
Следующее описание графика будет генерировать красный источник с непрозрачностью 0.2, с
размер «qcif» и частота кадров 10 кадров в секунду.
цвет = c =[электронная почта защищена]: s = qcif: r = 10
Если входной контент игнорируется, можно использовать "nullsrc". Следующая команда
генерирует шум в плоскости яркости, используя фильтр geq:
nullsrc = s = 256x256, geq =случайный(1) * 255: 128: 128
Команды
Источник "цвета" поддерживает следующие команды:
c, цвет
Установите цвет созданного изображения. Принимает тот же синтаксис, что и соответствующий цвет
опцию.
ВИДЕО МОЙКИ
Ниже приводится описание доступных в настоящее время приемников видео.
буферный канал
Буферизируйте видеокадры и сделайте их доступными в конце графа фильтра.
Этот сток в основном предназначен для программного использования, в частности через интерфейс.
определяется в libavfilter / buffersink.h или система опций.
Он принимает указатель на структуру AVBufferSinkContext, которая определяет входящий
форматы буферов, которые будут переданы в качестве непрозрачного параметра в "avfilter_init_filter" для
инициализация.
пустышка
Нулевой приемник видео: ничего не делать с входным видео. В основном это полезно в качестве
шаблон и для использования в инструментах анализа / отладки.
МУЛЬТИМЕДИА ФИЛЬТРЫ
Ниже приводится описание доступных на данный момент мультимедийных фильтров.
афазиметр
Преобразуйте входной аудиосигнал в видеовыход с отображением фазы звука.
Фильтр принимает следующие параметры:
темп, r
Установите частоту кадров вывода. Значение по умолчанию - 25.
размер, s
Установите размер видео для вывода. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «800x400».
rc
gc
bc Укажите контраст красного, зеленого и синего цветов. Значения по умолчанию - 2, 7 и 1. Допустимый диапазон
равно «[0, 255]».
MPC Задайте цвет, который будет использоваться для рисования средней фазы. Если цвет "нет",
по умолчанию, среднее значение фазы не отображается.
Фильтр также экспортирует метаданные кадра lavfi.aphasemeter.phase, которые представляют собой среднее
фаза текущего звукового кадра. Значение находится в диапазоне «[-1, 1]». «-1» означает левый и правый.
каналы полностью не совпадают по фазе, а цифра 1 означает, что каналы совпадают по фазе.
вектор
Преобразуйте входной звук в видеовыход, представляющий векторную область звука.
Фильтр используется для измерения разницы между каналами стереофонического аудиопотока. А
монофонический сигнал, состоящий из идентичных левого и правого сигналов, дает прямой
вертикальная линия. Любое стерео разделение видно как отклонение от этой линии, создающее
Фигура Лиссажу. Если появляется прямая (или отклонение от нее), но горизонтальная линия, это
указывает на то, что левый и правый каналы не совпадают по фазе.
Фильтр принимает следующие параметры:
Режим, m
Установите режим вектороскопа.
Доступные значения:
Лиссажу
Лиссажу повернулся на 45 градусов.
lissajous_xy
То же, что и выше, но без поворота.
полярный
Форма, напоминающая половину круга.
Значение по умолчанию Лиссажу.
размер, s
Установите размер видео для вывода. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «400x400».
темп, r
Установите частоту кадров вывода. Значение по умолчанию - 25.
rc
gc
bc
ac Укажите красный, зеленый, синий и альфа-контраст. Значения по умолчанию: 40, 160, 80 и
255. Допустимый диапазон: «[0, 255]».
rf
gf
bf
af Укажите красный, зеленый, синий и альфа-переход. Значения по умолчанию - 15, 10, 5 и 5.
Допустимый диапазон: «[0, 255]».
зум
Установите коэффициент масштабирования. Значение по умолчанию - 1. Допустимый диапазон: «[1, 10]».
Примеры
· Полный пример использования ffplay:
ffplay -f lavfi 'amovie = input.mp3, asplit [a] [out1];
[a] avectorscope=zoom=1.3:rc=2:gc=200:bc=10:rf=1:gf=8:bf=7 [out0]'
CONCAT
Объединяйте аудио- и видеопотоки, объединяя их друг за другом.
Фильтр работает с сегментами синхронизированных видео- и аудиопотоков. Все сегменты должны
иметь одинаковое количество потоков каждого типа, и это также будет количество потоков
на выходе.
Фильтр принимает следующие параметры:
n Установите количество сегментов. По умолчанию 2.
v Установите количество выходных видеопотоков, то есть количество видеопотоков в
каждый сегмент. По умолчанию 1.
a Установите количество выходных аудиопотоков, то есть количество аудиопотоков в
каждый сегмент. По умолчанию 0.
небезопасный
Активировать небезопасный режим: не выходить из строя, если сегменты имеют другой формат.
Фильтр имеет v+a выходы: первый v видеовыходы, затем a аудиовыходы.
Существуют nx(v+a) вводы: сначала вводы для первого сегмента в том же порядке, что и
выходы, затем входы для второго сегмента и т. д.
Связанные потоки не всегда имеют одинаковую продолжительность по разным причинам.
включая размер кадра кодека или небрежное создание. По этой причине связанные синхронизированные
потоки (например, видео и его звуковая дорожка) должны быть объединены сразу. Конкат
фильтр будет использовать продолжительность самого длинного потока в каждом сегменте (кроме последнего),
и при необходимости закройте более короткие аудиопотоки тишиной.
Чтобы этот фильтр работал правильно, все сегменты должны начинаться с отметки времени 0.
Все соответствующие потоки должны иметь одинаковые параметры во всех сегментах; фильтрация
система автоматически выберет общий формат пикселей для видеопотоков, а общий
формат сэмпла, частота дискретизации и расположение каналов для аудиопотоков, но другие настройки, такие как
как разрешение, должен быть явно преобразован пользователем.
Различная частота кадров допустима, но на выходе будет изменяться частота кадров; быть
обязательно сконфигурируйте выходной файл для его обработки.
Примеры
· Соедините начало, эпизод и финал, все в двуязычной версии (видео в
поток 0, аудио в потоках 1 и 2):
ffmpeg -i open.mkv -i episode.mkv -i end.mkv -filter_complex \
'[0:0] [0:1] [0:2] [1:0] [1:1] [1:2] [2:0] [2:1] [2:2]
concat = n = 3: v = 1: a = 2 [v] [a1] [a2] '\
-map '[v]' -map '[a1]' -map '[a2]' output.mkv
· Соедините две части, обрабатывая аудио и видео отдельно, используя (а) фильм
источники и регулировка разрешения:
фильм = part1.mp4, масштаб = 512: 288 [v1]; amovie = part1.mp4 [a1];
фильм = part2.mp4, масштаб = 512: 288 [v2]; amovie = part2.mp4 [a2];
[v1] [v2] concat [outv]; [a1] [a2] concat = v = 0: a = 1 [outa]
Обратите внимание, что на стыке произойдет рассинхронизация, если аудио- и видеопотоки не будут
имеют точно такую же продолжительность в первом файле.
ебур128
Фильтр сканера EBU R128. Этот фильтр принимает аудиопоток на входе и выводит его.
без изменений. По умолчанию он регистрирует сообщение с частотой 10 Гц с помощью функции Momentary.
громкость (обозначается буквой «M»), кратковременная громкость («S»), интегрированная громкость («I») и
Диапазон громкости («LRA»).
Фильтр также имеет видеовыход (см. XNUMX году вариант) с графиком в реальном времени, чтобы
наблюдайте за изменением громкости. Рисунок содержит зарегистрированное сообщение, упомянутое выше,
поэтому при установке этого параметра он больше не печатается, если не установлено подробное ведение журнала.
Основная область графика содержит кратковременную громкость (3 секунды анализа) и
датчик справа предназначен для мгновенной громкости (400 миллисекунд).
Подробнее о Рекомендации EBU R128 по громкости см.
<http://tech.ebu.ch/loudness>.
Фильтр принимает следующие параметры:
XNUMX году
Активируйте видеовыход. Аудиопоток передается без изменений, независимо от того, установлен ли этот параметр.
установить или нет. Если активирован, видеопоток будет первым выходным потоком. По умолчанию
0.
размер
Установите размер видео. Этот вариант предназначен только для видео. Чтобы узнать о синтаксисе этой опции,
проверить "Видео размер" . in ffmpeg-утилиты руководство. По умолчанию и минимум
разрешение составляет «640х480».
метров
Установите шкалу EBU. По умолчанию - 9. Общие значения - 9 и 18 соответственно для
Шкала шкалы EBU +9 и шкала EBU +18. Любое другое целочисленное значение между этим диапазоном
позволено.
метаданных
Установить внедрение метаданных. Если установлено значение 1, аудиовход будет сегментирован на 100 мсек.
выходные кадры, каждый из которых содержит различную информацию о громкости в метаданных. Все
ключи метаданных имеют префикс «lavfi.r128.».
По умолчанию 0.
журнал кадров
Принудительно установить уровень регистрации кадра.
Доступные значения:
info
уровень регистрации информации
подробный
уровень подробного ведения журнала
По умолчанию уровень ведения журнала установлен на info, Если XNUMX году или метаданных варианты
установлен, он переключается на подробный.
пик
Установите пиковый режим (ы).
Доступные режимы можно суммировать (опция - типа «флаг»). Возможные значения:
нет
Отключить любой пиковый режим (по умолчанию).
образец
Включите режим пика выборки.
Простой пиковый режим для поиска более высокого значения выборки. Он регистрирует сообщение для
образец-пик (обозначен «СПК»).
правда
Включите режим истинного пика.
Если этот параметр включен, поиск пиков выполняется для версии входного потока с избыточной дискретизацией.
для лучшей максимальной точности. Он регистрирует сообщение для истинного пика. (идентифицировано «ТПК»)
и истинный пик на кадр (обозначается «FTPK»). Для этого режима требуется сборка с
"libswresample".
Примеры
· График в реальном времени с использованием ffplay, с измерителем шкалы EBU +18:
ffplay -f lavfi -i "amovie = input.mp3, ebur128 = video = 1: meter = 18 [out0] [out1]"
· Провести анализ с FFmpeg:
ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -
чередование, перемежать
Временное чередование кадров с нескольких входов.
«чередование» работает с видеовходами, «чередование» - со звуком.
Эти фильтры считывают кадры с нескольких входов и отправляют самый старый кадр из очереди в
вывод.
Входные потоки должны иметь четко определенные, монотонно увеличивающиеся значения временной метки кадра.
Чтобы отправить один кадр для вывода, эти фильтры должны поставить в очередь хотя бы один кадр.
для каждого входа, поэтому они не могут работать, если один вход еще не завершен и не будет
получать входящие кадры.
Например, рассмотрим случай, когда один вход - это фильтр «выбора», который всегда пропускает входные данные.
кадры. Фильтр "чередование" продолжит чтение с этого входа, но никогда не будет
возможность отправлять новые кадры на вывод до тех пор, пока вход не отправит сигнал конца потока.
Также, в зависимости от синхронизации входов, фильтры будут пропускать кадры, если один вход
получает больше кадров, чем остальные, и очередь уже заполнена.
Эти фильтры допускают следующие параметры:
nb_inputs, n
Установите количество различных входов, по умолчанию 2.
Примеры
· Чередовать кадры, принадлежащие разным потокам, используя FFmpeg:
ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0: v] [1: v] interleave" out.avi
· Добавить мерцающий эффект размытия:
select = 'if (gt (случайный(0), 0.2), 1, 2) ': n = 2 [tmp], boxblur = 2: 2, [tmp] interleave
химическая завивка, апермы
Установите разрешения на чтение / запись для выходных кадров.
Эти фильтры в основном предназначены для разработчиков, чтобы протестировать прямой путь в следующем фильтре
в фильтрграфе.
Фильтры допускают следующие параметры:
Режим
Выберите режим разрешений.
Принимает следующие значения:
нет
Ничего не делать. Это значение по умолчанию.
ro Сделайте все выходные кадры доступными только для чтения.
rw Сделайте все выходные кадры доступными для прямой записи.
тумблер
Сделайте фрейм доступным только для чтения, если он доступен для записи, и доступным для записи, если он доступен только для чтения.
случайный
Сделайте каждый выходной кадр доступным только для чтения или записи в случайном порядке.
семя
Установите семена для случайный mode, должно быть целым числом от 0 до
«UINT32_MAX». Если не указано или явно установлено на «-1», фильтр попытается
используйте хорошие случайные семена из соображений максимальной эффективности.
Примечание: в случае автоматически вставленного фильтра между фильтром разрешений и следующим фильтром,
разрешение может быть получено не так, как ожидалось в следующем фильтре. Вставка
формат or формат фильтр перед фильтром perms / aperms может избежать этой проблемы.
Выбрать, выбрать
Выберите кадры для вывода.
Этот фильтр принимает следующие параметры:
выражение, e
Установить выражение, которое оценивается для каждого входного кадра.
Если выражение оценивается как ноль, фрейм отбрасывается.
Если результат оценки отрицательный или NaN, кадр отправляется на первый выход;
в противном случае он отправляется на выход с индексом "ceil (val) -1", предполагая, что вход
индекс начинается с 0.
Например, значение 1.2 соответствует выходу с индексом "ceil (1.2) -1 = 2-1 =
1 ", то есть второй выход.
выходы, n
Установите количество выходов. Вывод, на который нужно отправить выбранный кадр, основан на
результат оценки. Значение по умолчанию - 1.
Выражение может содержать следующие константы:
n (Последовательный) номер отфильтрованного кадра, начиная с 0.
выбранный_n
(Последовательный) номер выбранного кадра, начиная с 0.
prev_selected_n
Порядковый номер последнего выбранного кадра. Если не определено, это NAN.
TB Временная шкала входных временных меток.
PTS PTS (временная метка представления) отфильтрованного видеокадра, выраженная в TB единиц.
Если не определено, это NAN.
t PTS отфильтрованного видеокадра, выраженный в секундах. Если не определено, это NAN.
предыдущая_точка
PTS предварительно отфильтрованного видеокадра. Если не определено, это NAN.
prev_selected_pts
PTS последнего ранее отфильтрованного видеокадра. Если не определено, это NAN.
prev_selected_t
PTS последнего ранее выбранного видеокадра. Если не определено, это NAN.
start_pts
PTS первого кадра видео. Если не определено, это NAN.
start_t
Время появления первого кадра в ролике. Если не определено, это NAN.
пикт_тип (видео только)
Тип отфильтрованного кадра. Он может принимать одно из следующих значений:
I
P
B
S
SI
SP
BI
чересстрочный_тип (видео только)
Тип чередования кадров. Он может принимать одно из следующих значений:
PROGRESSIVE
Кадр прогрессивный (не чересстрочный).
ТОП-ПЕРВЫЙ
Кадр размещается сначала по верхнему полю.
НИЖНЕЕ
Фрейм - сначала нижнее поле.
consmed_sample_n (аудио только)
количество выбранных сэмплов перед текущим кадром
образцы_n (аудио только)
количество выборок в текущем кадре
частота дискретизации (аудио только)
входная частота дискретизации
ключ Это 1, если отфильтрованный кадр является ключевым кадром, в противном случае - 0.
пост позиция в файле отфильтрованного кадра, -1, если информация недоступна
(например, для синтетического видео)
сцена (видео только)
значение от 0 до 1 для обозначения новой сцены; низкое значение отражает низкую вероятность
для текущего кадра, чтобы представить новую сцену, в то время как более высокое значение означает текущую
frame с большей вероятностью будет одним (см. пример ниже)
Значение по умолчанию для выражения выбора - «1».
Примеры
· Выбрать все кадры на входе:
выберите
Пример выше такой же, как:
select = 1
· Пропустить все кадры:
select = 0
· Выбирать только I-кадры:
выберите = 'eq (pict_type \, I)'
· Выбирайте по одному кадру каждые 100:
select = 'not (mod (n \, 100))'
· Выбирать только кадры из временного интервала 10-20:
выберите = между (t \, 10 \, 20)
· Выберите только I-кадры, содержащиеся в интервале времени 10-20:
выберите = между (t \, 10 \, 20) * eq (pict_type \, I)
· Выберите кадры с минимальным расстоянием 10 секунд:
select = 'isnan (prev_selected_t) + gte (t-prev_selected_t \, 10)'
· Используйте aselect, чтобы выбрать только аудиокадры с количеством сэмплов> 100:
aselect = 'gt (образцы_n \, 100)'
· Создайте мозаику из первых сцен:
ffmpeg -i video.avi -vf select = 'gt (scene \, 0.4)', scale = 160: 120, tile -frames: v 1 preview.png
Сравнение сцена против значения от 0.3 до 0.5, как правило, является разумным выбором.
· Отправлять четные и нечетные кадры на отдельные выходы и составлять их:
select = n = 2: e = 'mod (n, 2) +1' [нечетное] [четное]; [нечетное] pad = h = 2 * ih [tmp]; [tmp] [четное] наложение = y = h
отправитьcmd, asendcmd
Отправляйте команды фильтрам в фильтре.
Эти фильтры считывают команды для отправки другим фильтрам в графе фильтров.
"sendcmd" должен быть вставлен между двумя видеофильтрами, "asendcmd" должен быть вставлен между
два звуковых фильтра, но в остальном они действуют одинаково.
Спецификация команд может быть предоставлена в аргументах фильтра с команды
параметр или в файле, указанном параметром имя файла опцию.
Эти фильтры допускают следующие параметры:
команды, c
Задайте команды для чтения и отправки другим фильтрам.
имя файла, f
Задайте имя файла команд, которые будут прочитаны и отправлены другим фильтрам.
Команды синтаксис
Описание команд состоит из последовательности спецификаций интервалов, состоящей из
список команд, которые будут выполняться при наступлении определенного события, связанного с этим интервалом.
Происходящее событие обычно - это время текущего кадра, входящее или выходящее из заданного времени.
интервал.
Интервал задается следующим синтаксисом:
[- ] ;
Временной интервал указывается Начать игру и END раз. END не является обязательным и по умолчанию
на максимальное время.
Текущее время кадра считается в пределах указанного интервала, если оно включено в
интервал [Начать игру, END), то есть когда время больше или равно Начать игру и
меньше чем END.
КОМАНДЫ состоит из последовательности одной или нескольких спецификаций команд, разделенных ",",
относящиеся к этому интервалу. Синтаксис спецификации команды определяется следующим образом:
[ ]
ФЛАГИ является необязательным и указывает тип событий, относящихся к временному интервалу, который
разрешить отправку указанной команды, и должен быть ненулевой последовательностью флагов идентификатора
разделенные знаком «+» или «|» и заключен между "[" и "]".
Распознаются следующие флаги:
вводить
Команда отправляется, когда временная метка текущего кадра входит в указанный интервал. В
другими словами, команда отправляется, когда отметка времени предыдущего кадра не была в
заданный интервал, а ток есть.
оставлять
Команда отправляется, когда временная метка текущего кадра выходит за указанный интервал. В
другими словами, команда отправляется, когда временная метка предыдущего кадра находилась в заданном
интервал, а тока нет.
If ФЛАГИ не указан, предполагается значение по умолчанию «[ввод]».
TARGET указывает цель команды, обычно имя класса фильтра или
конкретное имя экземпляра фильтра.
КОМАНДА указывает имя команды для целевого фильтра.
ARG является необязательным и указывает необязательный список аргументов для данного КОМАНДА.
Между одной спецификацией интервала и другой пробелы или последовательности символов
начиная с "#" до конца строки, игнорируются и могут использоваться для аннотирования комментариев.
Ниже приводится упрощенное BNF-описание синтаксиса спецификации команд:
:: = "войти" | "уехать"
знак равно [(+ | "|") ]
знак равно "]"] [ ]
знак равно [, ]
знак равно [- ]
знак равно [; ]
Примеры
· Укажите изменение темпа звука на 4-й секунде:
asendcmd = c = '4.0 atempo tempo 1.5', atempo
· Задайте список команд рисования текста и оттенка в файле.
# показать текст в интервале 5-10
5.0-10.0 [ввод] drawtext reinit 'fontfile = FreeSerif.ttf: text = hello world',
[оставить] drawtext reinit 'fontfile = FreeSerif.ttf: text =';
# обесцветить изображение в интервале 15-20
15.0-20.0 [ввод] оттенок s 0,
[ввод] drawtext reinit 'fontfile = FreeSerif.ttf: text = nocolor',
[оставить] оттенок s 1,
[оставить] drawtext reinit 'fontfile = FreeSerif.ttf: text = color';
# применить эффект постепенного затухания экспоненциального насыщения, начиная с момента 25
25 [ввод] оттенок s exp (25-t)
Граф фильтра, позволяющий читать и обрабатывать указанный выше список команд, хранящийся в файле.
test.cmd, можно указать с помощью:
sendcmd = f = test.cmd, drawtext = fontfile = FreeSerif.ttf: text = '', оттенок
настройки, Асетптс
Измените PTS (временную метку представления) входных кадров.
"setpts" работает с видеокадрами, "asetpts" - с аудиокадрами.
Этот фильтр принимает следующие параметры:
выраж
Выражение, которое оценивается для каждого кадра, чтобы построить его временную метку.
Выражение оценивается через eval API и может содержать следующие константы:
ЧАСТОТА КАДРОВ
частота кадров, определяется только для видео с постоянной частотой кадров
PTS Отметка времени презентации во входных данных
N Подсчет входного кадра для видео или количество использованных сэмплов, а не
включая текущий кадр для звука, начиная с 0.
NB_CONSUMED_SAMPLES
Количество использованных сэмплов без учета текущего кадра (только аудио)
НБ_ОБРАЗЦЫ, S
Количество сэмплов в текущем кадре (только аудио)
ЧАСТОТА ДИСКРЕТИЗАЦИИ, SR
Частота дискретизации звука.
НАЧАЛО
PTS первого кадра.
НАЧАТЬ
время в секундах первого кадра
ПЕРЕСЕЧЕННЫЙ
Укажите, является ли текущий кадр чересстрочным.
T время в секундах текущего кадра
POS исходная позиция в файле кадра или undefined, если не определено для текущего
рама
PREV_INPTS
Предыдущий ввод ПТС.
PREV_INT
предыдущее время ввода в секундах
PREV_OUTPTS
Предыдущий вывод ПТС.
PREV_OUTT
предыдущее время вывода в секундах
РТКВРЕМЯ
Время настенных часов (RTC) в микросекундах. Это устарело, используйте время(0) вместо этого.
РТКСТАРТ
Время настенных часов (RTC) в начале фильма в микросекундах.
TB Временная шкала входных временных меток.
Примеры
· Начните отсчет PTS с нуля
setpts = PTS-STARTPTS
· Применить эффект быстрого движения:
setpts = 0.5 * PTS
· Применить эффект замедленного движения:
setpts = 2.0 * PTS
· Установите фиксированную скорость 25 кадров в секунду:
setpts = N / (25 * ТБ)
· Установите фиксированную скорость 25 кадров в секунду с некоторым джиттером:
setpts = '1 / (25 * TB) * (N + 0.05 * sin (N * 2 * PI / 25))'
· Примените смещение на 10 секунд к входному PTS:
setpts = PTS + 10 / ТБ
· Генерировать метки времени из "живого источника" и переставлять на текущую временную базу:
setpts = '(RTCTIME - RTCSTART) / (ТБ * 1000000)'
· Создание меток времени путем подсчета выборок:
asetpts = N / SR / TB
Setb, asettb
Задайте временную шкалу, которая будет использоваться для временных меток выходных кадров. В основном это полезно для тестирования
конфигурация временной развертки.
Он принимает следующие параметры:
выражение, tb
Выражение, которое вычисляется в выходной временной развертке.
Значение для tb - арифметическое выражение, представляющее рациональное. Выражение может
содержат константы AVTB (временная развертка по умолчанию), «intb» (временная развертка ввода) и «sr»
(частота дискретизации, только аудио). Значение по умолчанию - «intb».
Примеры
· Установите развертку на 1/25:
setb = expr = 1/25
· Установите развертку на 1/10:
setb = expr = 0.1
· Установите развертку на 1001/1000:
установкаb = 1 + 0.001
· Установите временную шкалу на 2 * intb:
установитьb = 2 * intb
· Установите значение временной шкалы по умолчанию:
setb = AVTB
показать
Преобразуйте входной звук в видеовыход, представляющий частотный спектр логарифмически
(с использованием постоянного Q-преобразования с алгоритмом Брауна-Пакетта), с музыкальной шкалой тонов, от
От E0 до D # 10 (10 октав).
Фильтр принимает следующие параметры:
объем
Задайте выражение объема преобразования (множителя). Выражение может содержать
переменные:
частота, частота, f
частота, на которой оценивается преобразование
зажим времени tc
значение опции timeclamp
и функции:
a_weighting (f)
А-взвешивание равной громкости
b_weighting (f)
B-взвешивание равной громкости
c_weighting (f)
C-взвешивание равной громкости
Значение по умолчанию 16.
длина
Укажите выражение длины преобразования. Выражение может содержать переменные:
частота, частота, f
частота, на которой оценивается преобразование
зажим времени tc
значение опции timeclamp
Значение по умолчанию - «384 / f * tc / (384 / f + tc)».
зажим
Укажите ограничение времени преобразования. На низкой частоте есть компромисс между точностью
во временной и частотной областях. Если timeclamp меньше, событие во временной области
представлены более точно (например, быстрый большой барабан), в противном случае событие по частоте
домен представлен более точно (например, бас-гитара). Допустимое значение: [0.1,
1.0]. Значение по умолчанию - 0.17.
Coffclamp
Задайте преобразование coeffclamp. Если coeffclamp меньше, преобразование будет более точным,
в противном случае преобразование выполняется быстрее. Допустимое значение [0.1, 10.0]. Значение по умолчанию 1.0.
гамма
Укажите гамму. Более низкая гамма делает спектр более контрастным, более высокая гамма делает спектр более контрастным.
спектр, имеющий больший диапазон. Допустимое значение [1.0, 7.0]. Значение по умолчанию - 3.0.
gamma2
Укажите гамму гистограммы. Допустимое значение [1.0, 7.0]. Значение по умолчанию 1.0.
файл шрифта
Укажите файл шрифта для использования с freetype. Если не указано, используйте встроенный шрифт.
Цвет шрифта
Укажите выражение цвета шрифта. Это арифметическое выражение, которое должно возвращать
целочисленное значение 0xRRGGBB. Выражение может содержать переменные:
частота, частота, f
частота, на которой оценивается преобразование
зажим времени tc
значение опции timeclamp
и функции:
миди (ж)
midi число частоты f, некоторые midi числа: E0(16) C1(24) C2(36) A4(69)
г (х), г (х), б (х)
красный, зеленый и синий значение интенсивности x
Значение по умолчанию - "st (0, (midi (f) -59.5) / 12); st (1, если (между (ld(0), 0,1),
0.5-0.5 * cos (2 * PI *ld(0)), 0)); р(1-й(1)) + b (ld(1)) "
FullHD
Если установлено значение 1 (по умолчанию), размер видео составляет 1920x1080 (Full HD), если установлено значение 0, размер видео
размер видео 960х540. Используйте эту опцию, чтобы снизить нагрузку на ЦП.
кадров в секунду Укажите fps видео. Значение по умолчанию - 25.
считать
Укажите количество преобразований на кадр, чтобы количество преобразований было fps * count в секунду.
Обратите внимание, что скорость передачи аудиоданных должна делиться на количество кадров в секунду *. Значение по умолчанию - 6.
Примеры
· Воспроизведение звука при отображении спектра:
ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt [out0] '
· То же, что и выше, но с частотой 30 кадров в секунду:
ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fps = 30: count = 5 [out0] '
· Игра при 960x540 и ниже загрузке процессора:
ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fullhd = 0: count = 3 [out0] '
· A1 и его гармоники: A1, A2, (рядом) E3, A3:
ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt [out0] '
· То же, что и выше, но с большей точностью в частотной области (и медленнее):
ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt = timeclamp = 0.5 [out0] '
· B-взвешивание равной громкости
объем = 16 * b_weighting (f)
· Более низкая добротность
длина = 100 / f * tc / (100 / f + tc)
· Пользовательский цвет шрифта, C-note окрашен в зеленый цвет, остальные - в синий
fontcolor = 'if (mod (floor (midi (f) +0.5), 12), 0x0000FF, g(1)) '
· Пользовательская гамма, теперь спектр линейно зависит от амплитуды.
гамма = 2: гамма2 = 2
шоучастоты
Преобразуйте входной аудиосигнал в видеовыход, представляющий спектр мощности звука. Аудио
амплитуда отложена по оси Y, а частота - по оси X.
Фильтр принимает следующие параметры:
размер, s
Укажите размер видео. Чтобы узнать о синтаксисе этой опции, проверьте "Видео размер" .
in ffmpeg-утилиты руководство. По умолчанию 1024x512.
Режим
Установите режим отображения. Устанавливает способ представления каждого частотного бина.
Принимает следующие значения:
линия
бар
dot
По умолчанию - «бар».
масштаб
Установите масштаб амплитуды.
Принимает следующие значения:
лин Линейный масштаб.
SQRT
Масштаб квадратного корня.
ТОС
Кубическая корневая шкала.
журнал Логарифмическая шкала.
По умолчанию - «журнал».
fмасштаб
Установите частотный масштаб.
Принимает следующие значения:
лин Линейный масштаб.
журнал Логарифмическая шкала.
рлог
Обратный логарифмический масштаб.
По умолчанию "лин".
выигрышный_размер
Установите размер окна.
Принимает следующие значения:
w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536
По умолчанию "w2048"
win_func
Установите оконную функцию.
Принимает следующие значения:
прямоугольник
Бартлетт
Ханнинг
хамминг
Blackman
валлийский
Плоская вершина
bharris
Bnuttall
бханн
их
чокнутый
По умолчанию - «ханнинг».
перекрытие
Установить перекрытие окон. В диапазоне "[0, 1]". По умолчанию 1, что означает оптимальное перекрытие для
будет выбрана выбранная оконная функция.
усреднение
Установите усреднение по времени. Установка этого значения на 0 будет отображать текущие максимальные пики. По умолчанию
1, что означает, что усреднение по времени отключено.
цвет
Задайте список цветов, разделенных пробелом или знаком '|' который будет использоваться для рисования канала
частоты. Нераспознанные или отсутствующие цвета будут заменены белым цветом.
показывает спектр
Преобразуйте входной аудиосигнал в видеовыход, представляющий спектр звуковых частот.
Фильтр принимает следующие параметры:
размер, s
Укажите размер видео для вывода. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «640x512».
скользить
Укажите, как спектр должен скользить по окну.
Принимает следующие значения:
заменить
образцы снова начинаются слева, когда достигают правого
пролистать
образцы прокручиваются справа налево
полный кадр
кадры создаются только тогда, когда образцы достигают правого
Значение по умолчанию - «заменить».
Режим
Укажите режим отображения.
Принимает следующие значения:
сочетании
все каналы отображаются в одной строке
отдельный
все каналы отображаются в отдельных строках
Значение по умолчанию сочетании .
цвет
Укажите цветовой режим отображения.
Принимает следующие значения:
канал
каждый канал отображается отдельным цветом
интенсивность
каждый канал отображается с использованием одной и той же цветовой схемы
Значение по умолчанию канал.
лестница
Укажите шкалу, используемую для расчета значений интенсивности цвета.
Принимает следующие значения:
лин линейный
SQRT
квадратный корень, по умолчанию
ТОС
кубический корень
журнал логарифмический
Значение по умолчанию SQRT.
насыщение
Установите модификатор насыщенности для отображаемых цветов. Отрицательные значения предоставляют альтернативу
Цветовая схема. 0 - это совсем без насыщения. Насыщенность должна быть в диапазоне [-10.0, 10.0].
Значение по умолчанию 1.
win_func
Установить функцию окна.
Принимает следующие значения:
нет
Нет предварительной обработки образцов (не ожидайте, что это будет быстрее)
Hann
Окно Ханна
хамминг
Окно Хэмминга
Blackman
Окно Блэкмана
Значение по умолчанию - «hann».
Использование очень похоже на фильтр showwaves; см. примеры в этом разделе.
Примеры
· Большое окно с логарифмической шкалой цвета:
показывает спектр = s = 1280 x 480: масштаб = журнал
· Полный пример цветного и скользящего спектра для каждого канала с использованием ffplay:
ffplay -f lavfi 'amovie = input.mp3, asplit [a] [out1];
[a] showspectrum = mode = отдельная: цвет = интенсивность: слайд = 1: scale = cbrt [out0] '
шоуобъем
Преобразуйте громкость входящего звука в видеовыход.
Фильтр принимает следующие параметры:
темп, r
Установите скорость видео.
b Установить ширину границы, допустимый диапазон [0, 5]. По умолчанию 1.
w Установите ширину канала, допустимый диапазон [40, 1080]. По умолчанию 400.
h Установите высоту канала, допустимый диапазон [1, 100]. По умолчанию 20.
f Установите затухание, допустимый диапазон [1, 255]. По умолчанию 20.
c Установите объемное цветовое выражение.
Выражение может использовать следующие переменные:
КОЛИЧЕСТВО
Текущая максимальная громкость канала в дБ.
КАНАЛ
Номер текущего канала, начиная с 0.
t Если установлено, отображает имена каналов. По умолчанию включен.
шоу-волны
Преобразуйте входной аудиосигнал в видеовыход, представляя образцы волн.
Фильтр принимает следующие параметры:
размер, s
Укажите размер видео для вывода. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «600x240».
Режим
Установите режим отображения.
Доступные значения:
точка
Нарисуйте точку для каждого образца.
линия
Проведите вертикальную линию для каждого образца.
p2p Нарисуйте точку для каждого образца и линию между ними.
Cline
Нарисуйте центрированную вертикальную линию для каждого образца.
Значение по умолчанию - «точка».
n Установите количество образцов, которые печатаются в одном столбце. Большее значение будет
уменьшить частоту кадров. Должно быть положительное целое число. Эта опция может быть установлена только в том случае, если
ценность для скорость явно не указано.
темп, r
Установите (приблизительную) частоту кадров вывода. Это делается путем установки опции n, По умолчанию
значение «25».
Split_channels
Укажите, должны ли каналы отображаться отдельно или внахлест. Значение по умолчанию - 0.
Примеры
· Одновременный вывод звука из входного файла и соответствующего видеоизображения
время:
amovie = a.mp3, asplit [out0], showwaves [out1]
· Создайте синтетический сигнал и покажите его с помощью шоу-волн, задав частоту кадров 30
кадров в секунду:
aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]
шоувейвспик
Преобразуйте входной звук в один видеокадр, представляющий образцы волн.
Фильтр принимает следующие параметры:
размер, s
Укажите размер видео для вывода. Чтобы узнать о синтаксисе этой опции, проверьте "Видео
размер" . in ffmpeg-утилиты руководство. Значение по умолчанию - «600x240».
Split_channels
Укажите, должны ли каналы отображаться отдельно или внахлест. Значение по умолчанию - 0.
Примеры
· Извлечь разделенное на канал представление формы волны всей аудиодорожки в
Изображение 1024x800 с использованием FFmpeg:
ffmpeg -i audio.flac -lavfi showwavespic = split_channels = 1: s = 1024x800 waveform.png
расколоть, расщепленный
Разделите вход на несколько одинаковых выходов.
«asplit» работает с аудиовходом, «сплит» - с видео.
Фильтр принимает один параметр, который указывает количество выходов. Если
не указано, по умолчанию - 2.
Примеры
· Создайте два отдельных выхода из одного и того же входа:
[in] split [out0] [out1]
· Чтобы создать 3 или более выходов, вам необходимо указать количество выходов, например:
[in] asplit = 3 [out0] [out1] [out2]
· Создайте два отдельных выхода из одного и того же входа, один обрезанный и один заполненный:
[в] сплит [сплит-аут1] [сплит-аут2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];
· Создайте 5 копий входящего звука с FFmpeg:
ffmpeg -i ВХОД -filter_complex asplit = 5 ВЫХОД
змк, азмк
Получать команды, отправленные через клиент libzmq, и пересылать их фильтрам в
фильтрграф.
«zmq» и «azmq» работают как сквозные фильтры. "zmq" необходимо вставить между двумя видео
фильтры, "azmq" между двумя звуковыми фильтрами.
Чтобы включить эти фильтры, вам необходимо установить библиотеку libzmq и заголовки и настроить
FFmpeg с "--enable-libzmq".
Для получения дополнительной информации о libzmq см .:http://www.zeromq.org/>
Фильтры «zmq» и «azmq» работают как сервер libzmq, который принимает сообщения, отправленные через
сетевой интерфейс, определяемый привязка_адрес опцию.
Полученное сообщение должно быть в форме:
[ ]
TARGET указывает цель команды, обычно имя класса фильтра или
конкретное имя экземпляра фильтра.
КОМАНДА указывает имя команды для целевого фильтра.
ARG является необязательным и указывает список необязательных аргументов для данного КОМАНДА.
После получения сообщение обрабатывается, и соответствующая команда вводится в
Фильтрграф. В зависимости от результата фильтр отправит ответ клиенту,
принятие формата:
СООБЩЕНИЕ не является обязательным.
Примеры
смотреть на инструменты / zmqsend для примера клиента zmq, который можно использовать для отправки команд
обрабатываются этими фильтрами.
Рассмотрим следующий граф фильтра, созданный с помощью ffplay
ffplay -dumpgraph 1 -f lavfi "
цвет = s = 100x100: c = красный [l];
цвет = s = 100x100: c = синий [r];
nullsrc = s = 200x100, zmq [bg];
[bg] [l] оверлей [bg + l];
[bg + l] [r] overlay = x = 100 "
Чтобы изменить цвет левой части видео, можно использовать следующую команду:
echo Parsed_color_0 c желтым | инструменты / zmqsend
Чтобы изменить правую сторону:
echo Parsed_color_1 c розовым | инструменты / zmqsend
МУЛЬТИМЕДИА ИСТОЧНИКИ
Ниже приводится описание доступных на данный момент мультимедийных источников.
фильм
Это то же самое, что и кино источник, за исключением того, что по умолчанию он выбирает аудиопоток.
кино
Чтение аудио- и / или видеопотока из контейнера фильма.
Он принимает следующие параметры:
имя файла
Имя ресурса для чтения (не обязательно файл; это также может быть устройство или
поток, доступ к которому осуществляется через какой-то протокол).
имя_формата, f
Определяет формат, предполагаемый для чтения фильма, и может быть либо именем
контейнер или устройство ввода. Если не указан, формат определяется из имя_фильма
или зондированием.
точка_искания, sp
Указывает точку поиска в секундах. Кадры будут выводиться, начиная с этого поиска
точка. Параметр оценивается с помощью "av_strtod", поэтому числовое значение может быть
с суффиксом IS. Значение по умолчанию - «0».
потоки, s
Задает потоки для чтения. Можно указать несколько потоков, разделенных знаком «+». В
source будет иметь столько же выходов в том же порядке. Синтаксис объяснен в
раздел `` Спецификаторы потока '' в руководстве по ffmpeg. Два специальных имени: "dv" и
«da» указывает, соответственно, видео- и аудиопоток по умолчанию (наиболее подходящий). По умолчанию
«dv» или «da», если фильтр называется «amovie».
поток_индекс, si
Задает индекс видеопотока для чтения. Если значение -1, наиболее подходящий
видеопоток будет выбран автоматически. Значение по умолчанию - «-1». Устарело. Если
фильтр называется «amovie», он выбирает звук вместо видео.
поиска
Указывает, сколько раз читать поток последовательно. Если значение меньше 1,
поток будет читаться снова и снова. Значение по умолчанию - «1».
Обратите внимание, что когда фильм зацикливается, временные метки источника не изменяются, поэтому он будет
генерировать немонотонно увеличивающиеся временные метки.
Это позволяет наложить второе видео поверх основного ввода графа фильтров, как показано на
этот график:
ввод -----------> deltapts0 -> оверлей -> вывод
^
|
фильм -> масштаб -> deltapts1 ------- +
Примеры
· Пропустить 3.2 секунды с начала файла AVI в формате .avi и наложить его поверх
ввод с пометкой "in":
movie = in.avi: seek_point = 3.2, scale = 180: -1, setpts = PTS-STARTPTS [больше];
[in] setpts = PTS-STARTPTS [главная];
[main] [over] overlay = 16:16 [out]
· Прочтите с устройства video4linux2 и наложите его поверх ввода, помеченного «in»:
фильм = / dev / video0: f = video4linux2, scale = 180: -1, setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [главная];
[main] [over] overlay = 16:16 [out]
· Прочитать первый видеопоток и аудиопоток с id 0x81 с dvd.vob; видео
подключается к контактной площадке с именем «видео», а звук подключается к контактной площадке с именем
"аудио":
movie = dvd.vob: s = v: 0 + # 0x81 [видео] [аудио]
Используйте ffmpeg-all онлайн с помощью сервисов onworks.net