InglêsFrancêsEspanhol

Ad


favicon do OnWorks

ffplay-all - Online na nuvem

Execute ffplay-all no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando ffplay-all que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


ffplay - reprodutor de mídia FFplay

SINOPSE


ffplay [opções] [Arquivo de entrada]

DESCRIÇÃO


FFplay é um reprodutor de mídia muito simples e portátil que usa as bibliotecas FFmpeg e o SDL
biblioteca. É usado principalmente como um teste para as várias APIs FFmpeg.

OPÇÕES


Todas as opções numéricas, se não for especificado de outra forma, aceitam uma string que representa um
número como entrada, que pode ser seguido por um dos prefixos da unidade SI, por exemplo: 'K',
'M' ou 'G'.

Se 'i' for anexado ao prefixo da unidade SI, o prefixo completo será interpretado como um
prefixo de unidade para múltiplos binários, que são baseados em potências de 1024 em vez de potências de
1000. Anexar 'B' ao prefixo da unidade SI multiplica o valor por 8. Isso permite usar,
por exemplo: 'KB', 'MiB', 'G' e 'B' como sufixos numéricos.

As opções que não aceitam argumentos são opções booleanas e definem o valor correspondente
para verdade. Eles podem ser definidos como falsos prefixando o nome da opção com "não". Por exemplo
usar "-nofoo" definirá a opção booleana com o nome "foo" como false.

Corrente especificadores
Algumas opções são aplicadas por fluxo, por exemplo, taxa de bits ou codec. Especificadores de fluxo são usados ​​para
especificar precisamente a quais fluxos uma determinada opção pertence.

Um especificador de fluxo é uma string geralmente anexada ao nome da opção e separada dele
por dois pontos. Por exemplo, "-codec: a: 1 ac3" contém o especificador de fluxo "a: 1", que corresponde ao
segundo fluxo de áudio. Portanto, ele selecionaria o codec ac3 para o segundo fluxo de áudio.

Um especificador de fluxo pode combinar vários fluxos, de modo que a opção seja aplicada a todos
eles. Por exemplo, o especificador de fluxo em "-b: a 128k" corresponde a todos os fluxos de áudio.

Um especificador de fluxo vazio corresponde a todos os fluxos. Por exemplo, "-codec copy" ou "-codec:
copy "copiaria todos os streams sem reencodificar.

As formas possíveis de especificadores de fluxo são:

índice_stream
Corresponde ao fluxo com este índice. Por exemplo, "-threads: 1 4" definiria a contagem de threads para
o segundo fluxo para 4.

stream_type[:índice_stream]
stream_type é um dos seguintes: 'v' ou 'V' para vídeo, 'a' para áudio, 's' para
subtítulo, 'd' para dados e 't' para anexos. 'v' corresponde a todos os streams de vídeo, 'V'
corresponde apenas a streams de vídeo que não são imagens anexadas, miniaturas de vídeo ou capa
artes. Se índice_stream é fornecido, então ele corresponde ao número do fluxo índice_stream disto
modelo. Caso contrário, ele corresponde a todos os fluxos deste tipo.

p:ID_do_programa[:índice_stream]
If índice_stream é fornecido, então ele combina o fluxo com o número índice_stream no
programa com o id ID_do_programa. Caso contrário, ele corresponde a todos os fluxos do programa.

#stream_id or i:stream_id
Combine o fluxo por id de fluxo (por exemplo, PID no contêiner MPEG-TS).

m:chave[:valor]
Corresponde streams com a tag de metadados chave tendo o valor especificado. Se valor não é
fornecido, combina fluxos que contêm a tag fornecida com qualquer valor.

u Corresponde streams com configuração utilizável, o codec deve ser definido e o essencial
informações como dimensão do vídeo ou taxa de amostragem de áudio devem estar presentes.

Note que em ffmpeg, a correspondência por metadados só funcionará corretamente para arquivos de entrada.

Generic opções
Essas opções são compartilhadas entre as ferramentas ff *.

-L Mostrar licença.

-h, - ?, -ajuda, --Socorro [arg]
Mostre ajuda. Um parâmetro opcional pode ser especificado para imprimir a ajuda sobre um item específico.
Se nenhum argumento for especificado, apenas as opções básicas (não avançadas) da ferramenta serão mostradas.

Valores possíveis de arg são:

longo
Imprima opções de ferramentas avançadas, além das opções de ferramentas básicas.

cheio
Imprima uma lista completa de opções, incluindo opções compartilhadas e privadas para codificadores,
decodificadores, demuxers, muxers, filtros, etc.

decodificador =nome_decodificador
Imprime informações detalhadas sobre o decodificador denominado nome_decodificador. Use o - decodificadores
opção para obter uma lista de todos os decodificadores.

codificador =nome_do_codificador
Imprime informações detalhadas sobre o codificador chamado nome_do_codificador. Use o - codificadores
opção para obter uma lista de todos os codificadores.

demuxer =demuxer_name
Imprime informações detalhadas sobre o demuxer chamado demuxer_name. Use o -formatos
opção para obter uma lista de todos os demuxers e muxers.

muxer =muxer_name
Imprime informações detalhadas sobre o muxer nomeado muxer_name. Use o -formatos
opção para obter uma lista de todos os muxers e demuxers.

filtro =nome_do_filtro
Imprime informações detalhadas sobre o nome do filtro nome_do_filtro. Use o -filtros
opção para obter uma lista de todos os filtros.

-versão
Mostrar versão.

-formatos
Mostra os formatos disponíveis (incluindo dispositivos).

-dispositivos
Mostrar dispositivos disponíveis.

-codecs
Mostra todos os codecs conhecidos pelo libavcodec.

Observe que o termo 'codec' é usado em toda esta documentação como um atalho para
o que é mais corretamente chamado de formato de fluxo de bits de mídia.

- decodificadores
Mostrar os decodificadores disponíveis.

- codificadores
Mostra todos os codificadores disponíveis.

-bsfs
Mostrar filtros de fluxo de bits disponíveis.

-protocolos
Mostra os protocolos disponíveis.

-filtros
Mostrar filtros libavfilter disponíveis.

-pix_fmts
Mostra os formatos de pixel disponíveis.

-amostra_fmts
Mostra os formatos de amostra disponíveis.

- layouts
Mostrar nomes de canais e layouts de canais padrão.

-cores
Mostra os nomes das cores reconhecidas.

-fontes dispositivo[,opt1=val1[,opt2=val2] ...]
Mostra fontes autodetectadas do dispositivo de entrada. Alguns dispositivos podem fornecer sistema
nomes de fontes dependentes que não podem ser detectados automaticamente. A lista retornada não pode ser
assumido como sempre completo.

ffmpeg -sources pulse, server = 192.168.0.4

- pias dispositivo[,opt1=val1[,opt2=val2] ...]
Mostra coletores detectados automaticamente do dispositivo de saída. Alguns dispositivos podem fornecer sistema
nomes de coletores dependentes que não podem ser detectados automaticamente. A lista retornada não pode ser assumida
estar sempre completo.

ffmpeg -sinks pulse, server = 192.168.0.4

-loglevel [repetir +]nível de log | -v [repetir +]nível de log
Defina o nível de registro usado pela biblioteca. Adicionar "repeat +" indica que repetido
a saída do log não deve ser compactada na primeira linha e a mensagem "Última mensagem repetida n
vezes "linha será omitida." repetir "também pode ser usado sozinho. Se" repetir "for usado
sozinho, e sem nenhum nível de log anterior definido, o nível de log padrão será usado. Se múltiplo
parâmetros de nível de log são fornecidos, usando 'repeat' não mudará o nível de log. nível de log
é uma string ou um número que contém um dos seguintes valores:

quieto, -8
Não mostre absolutamente nada; fique em silencio.

pânico, 0
Mostrar apenas erros fatais que podem levar o processo a travar, como e afirmar
fracasso. Atualmente não é usado para nada.

fatal, 8
Mostre apenas erros fatais. Estes são erros após os quais o processo absolutamente não pode
continue depois.

erro, 16
Mostra todos os erros, incluindo aqueles que podem ser recuperados.

Aviso, 24
Mostra todos os avisos e erros. Qualquer mensagem relacionada a possivelmente incorreta ou
eventos inesperados serão mostrados.

informação, 32
Mostra mensagens informativas durante o processamento. Isso é além de avisos e
erros. Este é o valor padrão.

verboso, 40
O mesmo que "info", mas mais detalhado.

depurar, 48
Mostra tudo, incluindo informações de depuração.

vestígio, 56

Por padrão, o programa registra em stderr, se a coloração for suportada pelo terminal,
cores são usadas para marcar erros e avisos. A coloração do log pode ser desabilitada configurando o
variável de ambiente AV_LOG_FORCE_NOCOLOR or NO_COLOR, ou pode ser forçado definindo o
variável de ambiente AV_LOG_FORCE_COLOR. O uso da variável de ambiente NO_COLOR
está obsoleto e será eliminado na versão seguinte do FFmpeg.

-relatório
Despeje a linha de comando completa e a saída do console em um arquivo chamado
"program-YYYYMMDD-HHMMSS.log " no diretório atual. Este arquivo pode ser útil para
relatório de erros. Também implica "-loglevel verbose".

Configurando a variável de ambiente FFREREL para qualquer valor tem o mesmo efeito. Se o
valor é uma sequência ':' - chave separada = valor, essas opções afetarão o relatório;
os valores das opções devem ser escapados se contiverem caracteres especiais ou as opções
delimitador ':' (veja a seção `` Citando e escapando '' no manual ffmpeg-utils).

As seguintes opções são reconhecidas:

lima
defina o nome do arquivo a ser usado para o relatório; % p é expandido para o nome do
programa,% t é expandido para um carimbo de data / hora, "%%" é expandido para um "%" simples

nível
defina o nível de detalhamento do log usando um valor numérico (consulte "-loglevel").

Por exemplo, para gerar um relatório para um arquivo denominado ffreport.log usando um nível de registro de 32
(alias para o nível de registro "info"):

FFREPORT = file = ffreport.log: level = 32 ffmpeg -i input output

Erros na análise da variável de ambiente não são fatais e não aparecerão no
relatar.

-hide_banner
Suprimir a impressão de banner.

Todas as ferramentas FFmpeg irão normalmente mostrar um aviso de copyright, opções de construção e biblioteca
versões. Esta opção pode ser usada para suprimir a impressão dessas informações.

-cpuflags bandeiras (global)
Permite definir e limpar sinalizadores de CPU. Esta opção destina-se a testes. Não use
a menos que você saiba o que está fazendo.

ffmpeg -cpuflags -sse + mmx ...
ffmpeg -cpuflags mmx...
ffmpeg -cpuflags 0 ...

Os sinalizadores possíveis para esta opção são:

x86
Hmm
mmxext
ess
sse2
sse2lento
sse3
sse3lento
ssse3
átomo
sse4.1
sse4.2
avx
avx2
xop
fma3
fma4
3d agora
3dnonext
IMC1
IMC2
cmov
ARM
armv5te
braçov6
braçov6t2
vfp
vfpv3
néon
estabelecer
AAArch64
braçov8
vfp
néon
PowerPC
Altivec
Específico Processadores
Pentium2
Pentium3
Pentium4
k6
k62
athlon
Athlonxp
k8
-opencl_bench
Esta opção é usada para avaliar todos os dispositivos OpenCL disponíveis e imprimir os resultados.
Esta opção está disponível apenas quando o FFmpeg foi compilado com "--enable-opencl".

Quando o FFmpeg é configurado com "--enable-opencl", as opções para o OpenCL global
o contexto é definido por meio de -opencl_options. Veja a seção "Opções OpenCL" no ffmpeg-
manual dos utilitários para a lista completa de opções com suporte. Entre outras, essas opções
incluem a capacidade de selecionar uma plataforma e dispositivo específicos para executar o código OpenCL
sobre. Por padrão, o FFmpeg será executado no primeiro dispositivo da primeira plataforma. Enquanto o
opções para o contexto global OpenCL fornecem flexibilidade ao usuário na seleção do
Dispositivo OpenCL de sua escolha, a maioria dos usuários provavelmente gostaria de selecionar o mais rápido
Dispositivo OpenCL para seu sistema.

Esta opção auxilia na seleção da configuração mais eficiente, identificando
o dispositivo apropriado para o sistema do usuário. O benchmark integrado é executado em todos os
Dispositivos OpenCL e o desempenho é medido para cada dispositivo. Os dispositivos no
a lista de resultados é classificada com base em seu desempenho com o dispositivo mais rápido listado
primeiro. O usuário pode posteriormente invocar ffmpeg usando o dispositivo considerado mais
apropriado via -opencl_options para obter o melhor desempenho para o OpenCL
código acelerado.

O uso típico para usar o dispositivo OpenCL mais rápido envolve as seguintes etapas.

Execute o comando:

ffmpeg -opencl_bench

Anote o ID da plataforma (pidx) e ID do dispositivo (didx) do primeiro, ou seja, dispositivo mais rápido
na lista. Selecione a plataforma e o dispositivo usando o comando:

ffmpeg -opencl_options platform_idx = : device_idx = ...

-opencl_options opções (global)
Defina as opções do ambiente OpenCL. Esta opção só está disponível quando FFmpeg foi
compilado com "--enable-opencl".

opções deve ser uma lista de chave=valor pares de opções separados por ':'. Veja o `` OpenCL
Seção de opções '' no manual ffmpeg-utils para a lista de opções suportadas.

Opções AV
Essas opções são fornecidas diretamente pelo libavformat, libavdevice e libavcodec
bibliotecas. Para ver a lista de opções AV disponíveis, use o -Socorro opção. Eles são
separados em duas categorias:

genérico
Essas opções podem ser definidas para qualquer contêiner, codec ou dispositivo. As opções genéricas são
listado em opções de AVFormatContext para contêineres / dispositivos e em AVCodecContext
opções para codecs.

privado
Essas opções são específicas para determinado contêiner, dispositivo ou codec. Opções privadas
estão listados em seus contêineres / dispositivos / codecs correspondentes.

Por exemplo, para gravar um cabeçalho ID3v2.3 em vez de um ID3v2.4 padrão em um arquivo MP3, use
que o id3v2_versão opção privada do muxer MP3:

ffmpeg -i input.flac -id3v2_versão 3 saída.mp3

Todas as opções AV do codec são por fluxo e, portanto, um especificador de fluxo deve ser anexado a
Eles.

Note o -nenhuma opção sintaxe não pode ser usada para opções AV booleanas, use -Opção 0/-Opção 1.

Nota: a antiga maneira não documentada de especificar AVOptions por transmissão adicionando v / a / s ao
o nome das opções agora está obsoleto e será removido em breve.

a Principal opções
-x largura
Força a largura exibida.

-y altura
Força a altura exibida.

-s tamanho
Defina o tamanho do quadro (WxH ou abreviatura), necessário para vídeos que não contêm um cabeçalho
com o tamanho do quadro como YUV cru. Esta opção foi substituída por privado
opções, tente -video_size.

-fs Comece no modo de tela inteira.

-a Desative o áudio.

-vn Desative o vídeo.

-sn Desative as legendas.

-ss postar
Procurar postar. Observe que na maioria dos formatos não é possível buscar exatamente, então ffplay
irá procurar o ponto de busca mais próximo de postar.

postar deve ser uma especificação de duração de tempo, consulte que o Horário duração seção in que o
ffmpeg-utils(1) manual.

-t duração
Jogar duração segundos de áudio / vídeo.

duração deve ser uma especificação de duração de tempo, consulte que o Horário duração seção in que o
ffmpeg-utils(1) manual.

-bytes
Busca por bytes.

-nodisp
Desative a exibição gráfica.

-f fmt
Forçar formato.

-window_title título
Defina o título da janela (o padrão é o nome do arquivo de entrada).

-ciclo número
Repete a reprodução do filme vezes. 0 significa para sempre.

-mostrar modo
Defina o modo de exibição a ser usado. Valores disponíveis para modo são:

0, vídeo
mostrar vídeo

1, ondas
mostrar ondas de áudio

2, rdft
mostrar banda de frequência de áudio usando RDFT ((inversa) Real Discrete Fourier Transform)

O valor padrão é "video", se o vídeo não estiver presente ou não puder ser reproduzido "rdft" é
selecionado automaticamente.

Você pode alternar entre os modos de exibição disponíveis pressionando a tecla w.

-vf filtro gráfico
Crie o filtro especificado por filtro gráfico e use-o para filtrar o fluxo de vídeo.

filtro gráfico é uma descrição do filtro a ser aplicado ao fluxo, e deve ter
uma única entrada de vídeo e uma única saída de vídeo. No gráfico de filtro, a entrada é
associado ao rótulo "entrada", e a saída ao rótulo "saída". Veja o ffmpeg-
filtros manual para obter mais informações sobre a sintaxe do filtro gráfico.

Você pode especificar este parâmetro várias vezes e percorrer o especificado
filtros gráficos junto com os modos de exibição pressionando a tecla w.

-af filtro gráfico
filtro gráfico é uma descrição do filtro a ser aplicado ao áudio de entrada. Use o
opção "-filters" para mostrar todos os filtros disponíveis (incluindo fontes e sumidouros).

-i Arquivo de entrada
Leia Arquivo de entrada.

Avançado opções
-pix_fmt formato
Defina o formato do pixel. Esta opção foi substituída por opções privadas, tente
-formato_pixel.

-Estatísticas
Imprime várias estatísticas de reprodução, em particular mostra a duração do stream, o codec
parâmetros, a posição atual no fluxo e a sincronização de áudio / vídeo
deriva. Está ativado por padrão; para desativá-lo explicitamente, você precisa especificar "-nostats".

-velozes
Otimizações não compatíveis com as especificações.

-genpts
Gerar pts.

-sincronizar tipo
Defina o relógio mestre para áudio ("type = audio"), vídeo ("type = video") ou externo
("tipo = ext"). O padrão é áudio. O relógio mestre é usado para controlar áudio-vídeo
sincronização. A maioria dos reprodutores de mídia usa áudio como relógio mestre, mas em alguns casos
(streaming ou transmissão de alta qualidade) é necessário mudar isso. Esta opção é
usado principalmente para fins de depuração.

-ast audio_stream_specifier
Selecione o fluxo de áudio desejado usando o especificador de fluxo fornecido. O riacho
especificadores são descritos no Corrente especificadores capítulo. Se esta opção não for
especificado, o "melhor" fluxo de áudio é selecionado no programa do já selecionado
stream de vídeo.

-vst video_stream_specifier
Selecione o fluxo de vídeo desejado usando o especificador de fluxo fornecido. O riacho
especificadores são descritos no Corrente especificadores capítulo. Se esta opção não for
especificado, o "melhor" stream de vídeo é selecionado.

-sst subtítulo_transmissor_especificador
Selecione o fluxo de legenda desejado usando o especificador de fluxo fornecido. O riacho
especificadores são descritos no Corrente especificadores capítulo. Se esta opção não for
especificado, o "melhor" fluxo de legenda é selecionado no programa do já
vídeo ou áudio selecionado.

-saída automática
Saia quando o vídeo terminar de ser reproduzido.

-exitonkeydown
Saia se qualquer tecla for pressionada.

-exitonmousedown
Saia se algum botão do mouse for pressionado.

-codec:especificador de mídia nome_codec
Força uma implementação de decodificador específico para o fluxo identificado por especificador de mídia,
que pode assumir os valores "a" (áudio), "v" (vídeo) e legenda "s".

-acodec nome_codec
Força um decodificador de áudio específico.

-vcodec nome_codec
Força um decodificador de vídeo específico.

-scodec nome_codec
Força um decodificador de legenda específico.

-auto rotação
Gire automaticamente o vídeo de acordo com os metadados do arquivo. Ativado por padrão, use
-sem autorrotação para desativá-lo.

-framedrop
Remova os quadros de vídeo se o vídeo estiver fora de sincronia. Ativado por padrão se o relógio mestre for
não definido para vídeo. Use esta opção para habilitar a queda de quadros para todos os relógios principais
fontes, use -noframedrop para desativá-lo.

-infbuf
Não limite o tamanho do buffer de entrada, leia o máximo de dados possível da entrada como
assim que possível. Habilitado por padrão para fluxos em tempo real, onde os dados podem ser descartados
se não for lido a tempo. Use esta opção para habilitar buffers infinitos para todas as entradas, use
-noinfbuf para desativá-lo.

Enquanto jogar
q, CES
Sair.

f Alternar para o modo tela cheia.

p, SPC
Pausa.

a Ciclo do canal de áudio no programa atual.

v Ciclo de canal de vídeo.

t Ciclo de canal de legenda no programa atual.

c Programa de ciclo.

w Ciclo de filtros de vídeo ou modos de exibição.

s Passe para o próximo quadro.

Faça uma pausa se o fluxo ainda não estiver pausado, passe para o próximo quadro de vídeo e faça uma pausa.

esquerda direita
Retroceda / avance 10 segundos.

baixo cima
Busca para trás / para frente 1 minuto.

página para baixo / página up
Procure o capítulo anterior / seguinte. ou se não houver capítulos, procure para trás / para a frente
minutos 10.

mouse clique
Procure a porcentagem no arquivo correspondente à fração da largura.

SINTAXE


Esta seção documenta a sintaxe e os formatos empregados pelas bibliotecas e ferramentas FFmpeg.

Citando e escapando
FFmpeg adota o seguinte mecanismo de citação e escape, a menos que seja explicitamente especificado.
As seguintes regras são aplicadas:

· ' e \ são caracteres especiais (usados ​​respectivamente para citar e escapar). No
além deles, pode haver outros caracteres especiais, dependendo do específico
sintaxe onde o escape e aspas são empregados.

· Um caractere especial é escapado prefixando-o com um \.

· Todos os personagens colocados entre '' são incluídos literalmente na string analisada. o
personagem de citação ' em si não pode ser citado, então você pode precisar fechar a citação e
escapar disso.

· Espaços em branco à esquerda e à direita, a menos que escapados ou citados, são removidos do
string analisada.

Observe que você pode precisar adicionar um segundo nível de escape ao usar a linha de comando ou um
script, que depende da sintaxe da linguagem de shell adotada.

A função "av_get_token" definida em libavutil / avstring.h pode ser usado para analisar um token
citado ou com escape de acordo com as regras definidas acima.

A ferramenta ferramentas / ffescape na árvore de origem do FFmpeg pode ser usado para citar automaticamente ou
escapar uma string em um script.

Exemplos

· Escape a string "Crime d'Amour" contendo o caractere especial "'":

Crime d \ 'Amour

· A string acima contém uma citação, então o "'" precisa ser escapado ao citá-la:

'Crime d' \ '' Amour '

· Incluir espaços em branco à esquerda ou à direita usando aspas:

'esta string começa e termina com espaços em branco'

· Escapar e citar podem ser misturados:

'A string' \ 'string \' 'é uma string'

· Para incluir um literal \ você pode usar escape ou citação:

'c: \ foo' pode ser escrito como c: \\ foo

Data
A sintaxe aceita é:

[(AAAA-MM-DD | AAAAMMDD) [T | t | ]] ((HH: MM: SS [.m ...]]]) | (HHMMSS [.m ...]]])) [Z]
agora

Se o valor for "agora", leva a hora atual.

A hora é a hora local, a menos que Z seja acrescentado, caso em que é interpretado como UTC. Se o
a parte ano-mês-dia não é especificada, ela usa o ano-mês-dia atual.

Horário duração
Existem duas sintaxes aceitas para expressar a duração do tempo.

[-] [ :] : [. ...]

HH expressa o número de horas, MM o número de minutos para um máximo de 2 dígitos, e
SS o número de segundos para um máximo de 2 dígitos. o m no final expressa decimal
valor para SS.

or

[-] + [. ...]

S expressa o número de segundos, com a parte decimal opcional m.

Em ambas as expressões, o opcional - indica duração negativa.

Exemplos

Os exemplos a seguir têm duração de tempo válida:

55 55 segundos

12:03:45
12 horas, 03 minutos e 45 segundos

23.189
23.189 segundos

Vídeo tamanho
Especifique o tamanho do vídeo de origem, pode ser uma string da forma larguraxaltura, Ou o
nome de uma abreviatura de tamanho.

As seguintes abreviações são reconhecidas:

NTSC
720x480

amigo 720x576

qntsc
352x240

qpal
352x288

sntsc
640x480

spal
768x576

filme
352x240

filme ntsc
352x240

sqcif
128x96

qcif
176x144

cif 352x288

4cif
704x576

16cif
1408x1152

qqvga
160x120

qvga
320x240

vga 640x480

svga
800x600

xga 1024x768

uxga
1600x1200

qxga
2048x1536

sxga
1280x1024

qsxga
2560x2048

hsxga
5120x4096

wvga
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

2k bemol
1998x1080

2kscópio
2048x858

4k 4096x2160

4k bemol
3996x2160

4kscópio
4096x1716

Nhd 640x360

hqvga
240x160

wqvga
400x240

fwqvga
432x240

hvga
480x320

QHD 960x540

2kdci
2048x1080

4kdci
4096x2160

uhd2160
3840x2160

uhd4320
7680x4320

Vídeo taxas
Especifique a taxa de quadros de um vídeo, expressa como o número de quadros gerados por segundo.
Tem que ser uma string no formato frame_rate_num/frame_rate_den, um número inteiro, um
número flutuante ou uma abreviatura de taxa de quadros de vídeo válida.

As seguintes abreviações são reconhecidas:

NTSC
30000/1001

amigo 25/1

qntsc
30000/1001

qpal
25/1

sntsc
30000/1001

spal
25/1

filme
24/1

filme ntsc
24000/1001

Relação
Uma proporção pode ser expressa como uma expressão ou na forma numerador:denominador.

Observe que uma proporção com valor infinito (1/0) ou negativo é considerada válida, então você deve
verifique o valor retornado se desejar excluir esses valores.

O valor indefinido pode ser expresso usando a string "0: 0".

Cor
Pode ser o nome de uma cor conforme definido abaixo (correspondência sem distinção entre maiúsculas e minúsculas) ou um
Sequência "[0x | #] RRGGBB [AA]", possivelmente seguida por @ e uma string representando o alfa
componente.

O componente alfa pode ser uma string composta por "0x" seguido por um número hexadecimal ou
um número decimal entre 0.0 e 1.0, que representa o valor de opacidade (0x00 or 0.0
significa completamente transparente, 0xff or 1.0 completamente opaco). Se o componente alfa for
não especificado então 0xff é assumido.

A corda acaso resultará em uma cor aleatória.

Os seguintes nomes de cores são reconhecidos:

AliceBlue
0xF0F8FF

AntiguidadeBranco
0xFAEBD7

Aqua
0x00FFFF

água-marinha
0x7FFFD4

Azul
0xF0FFFF

Beje
0xF5F5DC

Bisque
0xFFE4C4

Preto
0x000000

Amendoim
0xFFEBCD

Azul
0x0000FF

BlueViolet
0x8A2BE2

Brown
0xA52A2A

burlywood
0xDEB887

CadetBlue
0x5F9EA0

Cor verde-amarelada
0x7FFF00

chocolate
0xD2691E

Coral
0xFF7F50

CornflowerBlue
0x6495ED

Seda de milho
0xFFF8DC

Crimson
0xDC143C

Ciano
0x00FFFF

Azul escuro
0x00008B

DarkCyan
0x008B8B

DarkGoldenRod
0xB8860B

Cinza escuro
0xA9A9A9

Verde escuro
0x006400

Caqui Escuro
0xBDB76B

DarkMagenta
0x8B008B

DarkOliveGreen
0x556B2F

Laranja escuro
0xFF8C00

DarkOrchid
0x9932CC

Vermelho escuro
0x8B0000

DarkSalmon
0xE9967A

DarkSeaGreen
0x8FBC8F

DarkSlateBlue
0x483D8B

DarkSlateGray
0x2F4F4F

DarkTurquoise
0x00CED1

DarkViolet
0x9400D3

Rosa escuro
0xFF1493

DeepSkyBlue
0x00BFFFF

DimGray
0x696969

DodgerBlue
0x1E90FF

tijolo refratário
0xB22222

FloralBranco
0xFFFAF0

Verde floresta
0x228B22

Fúcsia
0xFF00FF

Gainsboro
0xDCDCDC

GhostWhite
0xF8F8FF

Dourado
0xFFD700

vara de ouro
0xDAA520

Gray
0x808080

Verde
0x008000

Verde amarelo
0xADFF2F

Melada
0xF0FFF0

Rosa quente
0xFF69B4

IndianRed
0xCD5C5C

Índigo
0x4B0082

Marfim
0xFFFFF0

Caqui
0xF0E68C

Lavanda /Alfazema
0xE6E6FA

LavandaBlush
0xFFF0F5

Gramado verde
0x7CFC00

LemonChiffon
0xFFFACD

Azul claro
0xADD8E6

LightCoral
0xF08080

Ciano claro
0xE0FFFF

LightGoldenRodAmarelo
0xFAFAD2

Lightgreen
0x90EE90

Cinza claro
0xD3D3D3

Luz rosa
0xFFB6C1

LightSalmão
0xFFA07A

LightSeaGreen
0x20B2AA

LightSkyBlue
0x87CEFA

LightSlateGray
0x778899

LightSteelBlue
0xB0C4DE

Luz amarela
0xFFFFE0

Lima
0x00FF00

Verde limão
0x32CD32

Linho
0xFAF0E6

Magenta
0xFF00FF

Maroon
0x800000

MédioAquaMarine
0x66CDAA

MediumBlue
0x0000CD

MediumOrchid
0xBA55D3

MediumPurple
0x9370D8

MediumSeaGreen
0x3CB371

MediumSlateBlue
0x7B68EE

MediumSpringGreen
0x00FA9A

MédioTurquesa
0x48D1CC

MediumVioletRed
0xC71585

Azul da meia noite
0x191970

Creme de Menta
0xF5FFFA

MistyRose
0xFFE4E1

Mocassim
0xFFE4B5

NavajoBranco
0xFFDEAD

marinha
0x000080

OldLace
0xFDF5E6

Olive
0x808000

olivedrab
0x6B8E23

Laranja
0xFFA500

OrangeRed
0xFF4500

Orquídea
0xDA70D6

PaleGoldenRod
0xEEE8AA

palegreen
0x98FB98

PálidoTurquesa
0xAFEEE

PaleVioletRed
0xD87093

Papaya Whip
0xFFEFD5

Pêssego
0xFFDAB9

Peru
0xCD853F

Rosa
0xFFC0CB

Ameixa
0xDDA0DD

Pó azul
0xB0E0E6

Roxa
0x800080

Vermelho 0xFF0000

RosyBrown
0xBC8F8F

RoyalBlue
0x4169E1

Saddlebrown
0x8B4513

Salmão
0xFA8072

SandyBrown
0xF4A460

Verde Mar
0x2E8B57

Concha do mar
0xFFF5EE

Sienna
0xA0522D

Prata
0xC0C0C0

Céu azul
0x87CEEB

Azul ardósia
0x6A5ACD

Ardósia cinza
0x708090

Neve
0xFFFAFA

Primavera verde
0x00FF7F

SteelBlue
0x4682B4

Bronzeado 0xD2B48C

Cerceta
0x008080

cardo
0xD8BFD8

Tomate
0xFF6347

Turquesa
0x40E0D0

Violeta
0xEE82EE

Trigo
0xF5DEB3

Branco
0xFFFFFF

Fumaça branca
0xF5F5F5

Amarelo
0xFFFF00

Amarelo verde
0x9ACD32

Canal traçado
Um layout de canal especifica a disposição espacial dos canais em um multicanal
fluxo de áudio. Para especificar um layout de canal, o FFmpeg usa uma sintaxe especial.

Os canais individuais são identificados por um id, conforme fornecido pela tabela abaixo:

FL dianteiro esquerdo

FR frente direita

FC centro da frente

LFE baixa freqüência

BL atrás esquerda

BR de volta à direita

FLC frente à esquerda do centro

FRC frente à direita do centro

BC centro de trás

SL lado esquerdo

SR lado direito

TC centro superior

TFL superior esquerdo

TFC centro frontal superior

TFR superior direito

TBL topo traseiro esquerdo

TBC topo traseiro centro

TBR topo traseiro direito

DL downmix esquerdo

DR misturar certo

WL esquerda ampla

WR ampla direita

SDL cercar direto para a esquerda

SDR cercar direto à direita

LFE2
baixa frequência 2

As composições de layout de canal padrão podem ser especificadas usando os seguintes identificadores:

mono
FC

estéreo
FL + FR

2.1 FL + FR + LFE

3.0 FL + FR + FC

3.0 (voltar)
FL + FR + BC

4.0 FL + FR + FC + BC

quad
FL + FR + BL + BR

quad (lado)
FL + FR + SL + SR

3.1 FL + FR + FC + LFE

5.0 FL + FR + FC + BL + BR

5.0 (lado)
FL + FR + FC + SL + SR

4.1 FL + FR + FC + LFE + BC

5.1 FL + FR + FC + LFE + BL + BR

5.1 (lado)
FL + FR + FC + LFE + SL + SR

6.0 FL + FR + FC + BC + SL + SR

6.0 (frente)
FL + FR + FLC + FRC + SL + SR

hexagonal
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 (frente)
FL + FR + LFE + FLC + FRC + SL + SR

7.0 FL + FR + FC + BL + BR + SL + SR

7.0 (frente)
FL + FR + FC + FLC + FRC + SL + SR

7.1 FL + FR + FC + LFE + BL + BR + SL + SR

7.1 (amplo)
FL + FR + FC + LFE + BL + BR + FLC + FRC

7.1 (lado largo)
FL + FR + FC + LFE + FLC + FRC + SL + SR

octogonal
FL + FR + FC + BL + BR + BC + SL + SR

downmix
DL + DR

Um layout de canal personalizado pode ser especificado como uma sequência de termos, separados por '+' ou '|'.
Cada termo pode ser:

· O nome de um layout de canal padrão (por exemplo mono, estéreo, 4.0, quad, 5.0, Etc)

· O nome de um único canal (por exemplo FL, FR, FC, LFE, Etc)

· Um número de canais, em decimal, opcionalmente seguido por 'c', resultando no padrão
layout do canal para esse número de canais (veja a função
"av_get_default_channel_layout")

· Uma máscara de layout de canal, em hexadecimal começando com "0x" (ver as macros "AV_CH_ *" em
libavutil / channel_layout.h.

A partir da versão 53 da libavutil, o caractere final "c" para especificar um número de
canais serão necessários, enquanto uma máscara de layout de canal também pode ser especificada como um
número decimal (se e somente se não for seguido por "c").

Veja também a função "av_get_channel_layout" definida em libavutil / channel_layout.h.

EXPRESSÃO AVALIAÇÃO


Ao avaliar uma expressão aritmética, FFmpeg usa um avaliador de fórmula interno,
implementado através do libavutil / eval.h interface.

Uma expressão pode conter operadores unários binários, constantes e funções.

Duas expressões expr1 e expr2 podem ser combinados para formar outra expressão "expr1;expr2".
expr1 e expr2 são avaliados por sua vez, e a nova expressão avalia o valor de
expr2.

Os seguintes operadores binários estão disponíveis: "+", "-", "*", "/", "^".

Os seguintes operadores unários estão disponíveis: "+", "-".

As seguintes funções estão disponíveis:

abs (x)
Calcule o valor absoluto de x.

acos (x)
Calcular arco-cosseno de x.

asin (x)
Calcular arco-seno de x.

atan (x)
Arco de cálculo tangente de x.

entre (x, min máx.)
Retorne 1 se x é maior que ou igual a minutos e menor ou igual a max, 0
de outra forma.

bitand (x, y)
bitor (x, y)
Calcular bit a bit e / ou operação em x e y.

Os resultados da avaliação de x e y são convertidos em inteiros antes de executar
a operação bit a bit.

Observe que tanto a conversão para inteiro quanto a conversão de volta para ponto flutuante podem
perder precisão. Cuidado com resultados inesperados para grandes números (geralmente 2 ^ 53 e
maior).

ceil (expr)
Arredonde o valor da expressão expr para cima, até o número inteiro mais próximo. Por exemplo,
"ceil (1.5)" é "2.0".

clipe (x, min máx.)
Devolve o valor de x cortado entre minutos e max.

cos (x)
Calcular cosseno de x.

cosh (x)
Calcular cosseno hiperbólico de x.

eq (x, y)
Retorne 1 se x e y são equivalentes, 0 caso contrário.

exp (x)
Calcular exponencial de x (com base "e", o número de Euler).

andar (expr)
Arredonde o valor da expressão expr para baixo até o número inteiro mais próximo. Por exemplo,
"floor (-1.5)" é "-2.0".

gauss (x)
Computar função de Gauss de x, correspondendo a "exp (-x * x / 2) / sqrt (2 * PI)".

gcd (x, y)
Retorne o maior divisor comum de x e y. Se ambos x e y são 0 ou um ou ambos
são menores que zero, então o comportamento é indefinido.

gt (x, y)
Retorne 1 se x é melhor que y, 0 caso contrário.

gte (x, y)
Retorne 1 se x é maior que ou igual a y, 0 caso contrário.

hipot (x, y)
Esta função é semelhante à função C com o mesmo nome; retorna "sqrt (x*x +
y*y) ", o comprimento da hipotenusa de um triângulo retângulo com lados de comprimento x e y,
ou a distância do ponto (x, y) da origem.

if (x, y)
Avaliação x, e se o resultado for diferente de zero retornar o resultado da avaliação de y,
retorna 0 caso contrário.

if (x, y, z)
Avaliação x, e se o resultado for diferente de zero retornar o resultado da avaliação de y, Caso contrário
o resultado da avaliação de z.

ifnot (x, y)
Avaliação x, e se o resultado for zero retornar o resultado da avaliação de y, Retorna
0 caso contrário.

ifnot (x, y, z)
Avaliação x, e se o resultado for zero, retorne o resultado da avaliação de y, caso contrário, o
resultado da avaliação de z.

isinf (x)
Retorne 1.0 se x é +/- INFINITY, 0.0 caso contrário.

isnan (x)
Retorne 1.0 se x é NAN, 0.0 caso contrário.

ld (var)
Carregue o valor da variável interna com número var, que foi previamente armazenado
com st (var, expr) A função retorna o valor carregado.

log (x)
Calcule o logaritmo natural de x.

lt (x, y)
Retorne 1 se x é menor que y, 0 caso contrário.

lte (x, y)
Retorne 1 se x é menor ou igual a y, 0 caso contrário.

max (x, y)
Retorna o máximo entre x e y.

sirigaita, y)
Retorna o máximo entre x e y.

mod (x, y)
Calcule o restante da divisão de x by y.

não (expr)
Retorne 1.0 se expr é zero, 0.0 caso contrário.

pow (x, y)
Calcule o poder de x elevado y, é equivalente a "(x) ^ (y) ".

imprimir (t)
imprimir (t, l)
Imprime o valor da expressão t com loglevel l. Se l não é especificado, então um padrão
nível de log é usado. Retorna o valor da expressão impressa.

Imprime t com nível de log l

aleatório (x)
Retorne um valor pseudoaleatório entre 0.0 e 1.0. x é o índice do interno
variável que será usada para salvar a semente / estado.

root (expr, máx.)
Encontre um valor de entrada para o qual a função representada por expr com argumento ld(0) is
0 no intervalo 0 ..max.

A expressão em expr deve denotar uma função contínua ou o resultado é indefinido.

ld(0) é usado para representar o valor de entrada da função, o que significa que o dado
expressão será avaliada várias vezes com vários valores de entrada que o
expressão pode acessar através de ld(0). Quando a expressão é avaliada como 0, então o
o valor de entrada correspondente será retornado.

sin (x)
Calcular o seno de x.

nascimento (x)
Calcular o seno hiperbólico de x.

sqrt (expr)
Calcule a raiz quadrada de expr. Isso é equivalente a "(expr) ^. 5 ".

squish (x)
Calcule a expressão "1 / (1 + exp (4 * x))".

st (var, exp)
Armazene o valor da expressão expr em uma variável interna. var especifica o
número da variável onde armazenar o valor, e é um valor que varia de 0 a
9. A função retorna o valor armazenado na variável interna. Nota, variáveis
atualmente não são compartilhados entre expressões.

bronzeado (x)
Calcule a tangente de x.

tanh (x)
Calcule a tangente hiperbólica de x.

Taylor (expr, x)
Taylor (expr, x, identidade)
Avalie uma série de Taylor em x, dada uma expressão que representa o "ld (id)" - th
derivada de uma função em 0.

Quando a série não converge, o resultado é indefinido.

ld (id) é usado para representar a ordem derivada em expr, o que significa que o dado
expressão será avaliada várias vezes com vários valores de entrada que o
expressão pode ser acessada por meio de "ld (id)". Se id não é especificado, então 0 é assumido.

Observe, quando você tem as derivadas em y em vez de 0, "taylor (expr, xy)" pode ser
usava.

tempo(0)
Retorna o tempo atual (relógio de parede) em segundos.

trunc (expr)
Arredonde o valor da expressão expr em direção a zero para o número inteiro mais próximo. Por exemplo,
"trunc (-1.5)" é "-1.0".

enquanto (cond, exp)
Avalie a expressão expr enquanto a expressão cond é diferente de zero e retorna o valor
dos últimos expr avaliação, ou NAN se cond sempre foi falso.

As seguintes constantes estão disponíveis:

PI área do disco da unidade, aproximadamente 3.14

E exp(1) (número de Euler), aproximadamente 2.718

PHI proporção áurea (1+sqrt(5)) / 2, aproximadamente 1.618

Supondo que uma expressão seja considerada "verdadeira" se tiver um valor diferente de zero, observe que:

"*" funciona como AND

"+" funciona como OU

Por exemplo, a construção:

if (A AND B), então C

é equivalente a:

if (A * B, C)

Em seu código C, você pode estender a lista de funções unárias e binárias e definir
constantes reconhecidas, de modo que estejam disponíveis para suas expressões.

O avaliador também reconhece os prefixos das unidades do Sistema Internacional. Se 'i' for anexado
após o prefixo, são usados ​​prefixos binários, que são baseados em potências de 1024 em vez de
potências de 1000. O postfix 'B' multiplica o valor por 8 e pode ser acrescentado após um
prefixo da unidade ou usado sozinho. Isso permite usar, por exemplo, 'KB', 'MiB', 'G' e 'B' como
número postfix.

Segue-se a lista de prefixos do Sistema Internacional disponíveis, com indicação do
poderes correspondentes de 10 e de 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

OPENCL OPÇÕES


Quando o FFmpeg é configurado com "--enable-opencl", é possível definir as opções para
o contexto global OpenCL.

A lista de opções com suporte é a seguinte:

opções_de_construção
Defina as opções de construção usadas para compilar os kernels registrados.

Consulte a referência "Versão da especificação OpenCL: 1.2 capítulo 5.6.4".

plataforma_idx
Selecione o índice da plataforma para executar o código OpenCL.

O índice especificado deve ser um dos índices na lista de dispositivos que pode ser
obtido com "ffmpeg -opencl_bench" ou "av_opencl_get_device_list ()".

dispositivo_idx
Selecione o índice do dispositivo usado para executar o código OpenCL.

O índice especificado deve ser um dos índices na lista de dispositivos que pode ser
obtido com "ffmpeg -opencl_bench" ou "av_opencl_get_device_list ()".

CODEC OPÇÕES


libavcodec fornece algumas opções globais genéricas, que podem ser definidas em todos os codificadores e
decodificadores. Além disso, cada codec pode suportar as chamadas opções privadas, que são específicas
para um determinado codec.

Às vezes, uma opção global pode afetar apenas um tipo específico de codec e pode ser
sem sentido ou ignorado por outro, então você precisa estar ciente do significado do especificado
opções. Além disso, algumas opções são destinadas apenas para decodificação ou codificação.

As opções podem ser definidas especificando -opção valor nas ferramentas FFmpeg, ou definindo o
valor explicitamente nas opções "AVCodecContext" ou usando o libavutil / opt.h API para
uso programático.

A lista de opções com suporte segue:

b número inteiro (codificação, áudio, vídeo)
Defina a taxa de bits em bits / s. O valor padrão é 200K.

ab número inteiro (codificação, áudio)
Defina a taxa de bits de áudio (em bits / s). O valor padrão é 128K.

bt número inteiro (codificação, vídeo)
Defina a tolerância da taxa de bits de vídeo (em bits / s). No modo de uma passagem, a tolerância da taxa de bits especifica
o quanto ratecontrol está disposto a se desviar do valor de taxa de bits médio desejado. Esse
não está relacionado à taxa de bits mín. / máx. Abaixar demais a tolerância tem um efeito adverso
na qualidade.

bandeiras bandeiras (decodificação / codificação, áudio, vídeo, legendas)
Defina sinalizadores genéricos.

Valores possíveis:

mv4 Use quatro vetores de movimento por macrobloco (MPEG4).

qpel
Use 1/4 de compensação de movimento pel.

laço
Use filtro de loop.

qescala
Use qscale fixo.

gmc Use o gmc.

mv0 Sempre tente um mb com mv = <0,0>.

entrada_preservada
pass1
Use o controle de taxa de 2 passes internos no modo de primeira passagem.

pass2
Use o controle de taxa de 2 passes interno no modo de segundo passe.

cinza
Apenas decodifique / codifique tons de cinza.

emu_edge
Não desenhe bordas.

psnr
Defina variáveis ​​de erro [?] Durante a codificação.

truncado
Naq Normalize a quantização adaptativa.

ildct
Use DCT entrelaçado.

baixo_atraso
Forçar atraso baixo.

cabeçalho_global
Coloque cabeçalhos globais em extradados em vez de cada quadro-chave.

bitexato
Grave apenas dados independentes de plataforma, construção e tempo. (exceto (I) DCT). Esse
garante que as somas de verificação de arquivos e dados sejam reproduzíveis e correspondam entre as plataformas.
Seu uso principal é para testes de regressão.

aic Aplicar H263 avançado intra codificação / previsão mpeg4 ac.

cbp Obsoleto, use as opções privadas mpegvideo.

qprd
Obsoleto, use as opções privadas mpegvideo.

laço
Aplique estimativa de movimento entrelaçado.

cgop
Use gop fechado.

me_método número inteiro (codificação, vídeo)
Defina o método de estimativa de movimento.

Valores possíveis:

zero
estimativa de movimento zero (mais rápido)

cheio
estimativa de movimento total (mais lento)

epz
Estimativa de movimento EPZS (padrão)

esa estimativa de movimento esa (alias para completo)

borda
estimativa de movimento tesa

dia estimativa de movimento dia (apelido para epzs)

log estimativa de movimento de log

phods
estimativa de movimento phods

x1 Estimativa de movimento X1

feitiço estimativa de movimento hexadecimal

humh umh estimativa de movimento

iter
estimativa de movimento iter

extradata_size número inteiro
Defina o tamanho dos extradados.

base_tempo racional número
Defina a base de tempo do codec.

É a unidade de tempo fundamental (em segundos) em termos de quais carimbos de data / hora de quadro são
representado. Para conteúdo de fps fixo, a base de tempo deve ser "1 / frame_rate" e o carimbo de data / hora
os incrementos devem ser idênticos 1.

g número inteiro (codificação, vídeo)
Defina o grupo de tamanho da imagem. O valor padrão é 12.

ar número inteiro (decodificação / codificação, áudio)
Defina a taxa de amostragem de áudio (em Hz).

ac número inteiro (decodificação / codificação, áudio)
Defina o número de canais de áudio.

corte fora número inteiro (codificação, áudio)
Defina a largura de banda de corte.

tamanho_quadro número inteiro (codificação, áudio)
Defina o tamanho do quadro de áudio.

Cada frame enviado, exceto o último, deve conter exatamente amostras frame_size por
canal. Pode ser 0 quando o codec tem CODEC_CAP_VARIABLE_FRAME_SIZE definido, nesse caso
o tamanho do quadro não é restrito. É definido por alguns decodificadores para indicar constante
tamanho do quadro.

número do quadro número inteiro
Defina o número do quadro.

atraso número inteiro
qcomp flutuar (codificação, vídeo)
Defina a compressão da escala do quantizador de vídeo (VBR). É usado como uma constante no
equação de controle de proporção. Intervalo recomendado para rc_eq padrão: 0.0-1.0.

q desfoque flutuar (codificação, vídeo)
Defina o desfoque da escala do quantizador de vídeo (VBR).

qmin número inteiro (codificação, vídeo)
Defina a escala mínima do quantizador de vídeo (VBR). Deve ser incluído entre -1 e 69, valor padrão
é 2.

qmax número inteiro (codificação, vídeo)
Defina a escala máxima do quantizador de vídeo (VBR). Deve ser incluído entre -1 e 1024, padrão
o valor é 31.

diferença número inteiro (codificação, vídeo)
Defina a diferença máxima entre a escala do quantizador (VBR).

bf número inteiro (codificação, vídeo)
Defina o número máximo de quadros B entre quadros não-B.

Deve ser um número inteiro entre -1 e 16. 0 significa que os quadros B estão desabilitados. Se um valor
de -1 for usado, ele escolherá um valor automático dependendo do codificador.

O valor padrão é 0.

b_qfator flutuar (codificação, vídeo)
Defina o fator qp entre os quadros P e B.

estratégia_rc número inteiro (codificação, vídeo)
Defina o método de controle de taxa.

b_estratégia número inteiro (codificação, vídeo)
Defina a estratégia para escolher entre quadros I / P / B.

ps número inteiro (codificação, vídeo)
Defina o tamanho da carga útil RTP em bytes.

mv_bits número inteiro
cabeçalho_bits número inteiro
i_tex_bits número inteiro
p_tex_bits número inteiro
eu conto número inteiro
contagem_p número inteiro
pular_contar número inteiro
misc_bits número inteiro
frame_bits número inteiro
codec_tag número inteiro
erro bandeiras (decodificação, vídeo)
A solução alternativa não foi detectada automaticamente pelos bugs do codificador.

Valores possíveis:

AutoDetect
velho_msmpeg4
alguns arquivos msmpeg4v3 gerados por lavc antigos (sem detecção automática)

xvid_ilace
Bug de entrelaçamento Xvid (autodetectado se fourcc == XVIX)

ump4
(autodetectado se fourcc == UMP4)

sem_padding
bug de preenchimento (autodetectado)

amv
ac_vlc
bug ilegal de vlc (autodetectado por fourcc)

qpel_chroma
padrão_qpel
qpel padrão antigo (detectado automaticamente por fourcc / versão)

qpel_chroma2
tamanho_de_bloco_direto
bug direct-qpel-blocksize (autodetectado por fourcc / versão)

Beira
bug de preenchimento de borda (autodetectado por fourcc / versão)

hpel_chroma
dc_clip
ms Solução alternativa para vários bugs nos decodificadores corrompidos da Microsoft.

tronco
quadros trancados

lelim número inteiro (codificação, vídeo)
Definir limite de eliminação de coeficiente único para luminância (valores negativos também
considere o coeficiente DC).

celim número inteiro (codificação, vídeo)
Definir limite de eliminação de coeficiente único para crominância (valores negativos também
considere o coeficiente dc)

rigoroso número inteiro (decodificação / codificação, áudio, vídeo)
Especifique como seguir estritamente os padrões.

Valores possíveis:

muito
estritamente em conformidade com uma versão mais antiga mais estrita da especificação ou software de referência

rigoroso
estritamente em conformidade com todas as coisas nas especificações, não importando as consequências

normal
não oficial
permitir extensões não oficiais

experimental
permitir coisas experimentais não padronizadas, experimentais (inacabado / trabalho em
progresso / não bem testado) decodificadores e codificadores. Nota: os decodificadores experimentais podem
representam um risco de segurança, não use isso para decodificar entradas não confiáveis.

b_qoffset flutuar (codificação, vídeo)
Defina o deslocamento QP entre os quadros P e B.

err_detectar bandeiras (decodificação, áudio, vídeo)
Defina sinalizadores de detecção de erros.

Valores possíveis:

verificar
verificar CRCs incorporados

fluxo de bits
detectar desvios de especificação de fluxo de bits

amortecer
detectar comprimento de fluxo de bits impróprio

explodir
abortar a decodificação na detecção de erros menores

ignorar_err
ignore os erros de decodificação e continue decodificando. Isso é útil se você quiser
analisa o conteúdo de um vídeo e, portanto, deseja que tudo seja decodificado, não importa
o que. Esta opção não resultará em um vídeo agradável de assistir no caso de
erros.

cuidadoso
considere coisas que violam as especificações e não foram vistas como erros

compatível
considerar todas as não conformidades de especificações como erros

agressivo
considere coisas que um codificador lógico não deve fazer como um erro

has_b_frames número inteiro
block_align número inteiro
mpeg_quant número inteiro (codificação, vídeo)
Use quantizadores MPEG em vez de H.263.

qsquish flutuar (codificação, vídeo)
Como manter o quantizador entre qmin e qmax (0 = clipe, 1 = uso diferenciável
função).

rc_qmod_amp flutuar (codificação, vídeo)
Defina a modulação do quantizador experimental.

rc_qmod_freq número inteiro (codificação, vídeo)
Defina a modulação do quantizador experimental.

rc_override_count número inteiro
rc_eq corda (codificação, vídeo)
Defina a equação de controle de taxa. Ao calcular a expressão, além do padrão
funções definidas na seção 'Avaliação de Expressão', as seguintes funções são
disponível: bits2qp (bits), qp2bits (qp). Além disso, as seguintes constantes estão disponíveis:
iTex pTex tex mv fCode iCount mcVar var isI isP isP isB avgQP qComp avgIITex avgPITex
avgPPTex avgBPTex avgTex.

taxa máxima número inteiro (codificação, áudio, vídeo)
Defina a tolerância de taxa de bits máxima (em bits / s). Requer bufsize para ser definido.

taxa mínima número inteiro (codificação, áudio, vídeo)
Defina a tolerância de taxa de bits mínima (em bits / s). Mais útil na configuração de uma codificação CBR. Isto é
de pouca utilidade em outras circunstâncias.

tamanho grande número inteiro (codificação, áudio, vídeo)
Defina o tamanho do buffer de controle de proporção (em bits).

rc_buf_agressividade flutuar (codificação, vídeo)
Atualmente inútil.

i_qfator flutuar (codificação, vídeo)
Defina o fator QP entre os quadros P e I.

i_qoffset flutuar (codificação, vídeo)
Defina o deslocamento QP entre os quadros P e I.

rc_init_cplx flutuar (codificação, vídeo)
Defina a complexidade inicial para codificação de 1 passagem.

dct número inteiro (codificação, vídeo)
Defina o algoritmo DCT.

Valores possíveis:

auto
selecionar automaticamente um bom (padrão)

fastint
inteiro rápido

int inteiro exato

Hmm
Altivec
faan
ponto flutuante AAN DCT

máscara_lumi flutuar (codificação, vídeo)
Comprima as áreas brilhantes com mais força do que as médias.

tcplx_mask flutuar (codificação, vídeo)
Defina o mascaramento de complexidade temporal.

scplx_mask flutuar (codificação, vídeo)
Defina o mascaramento de complexidade espacial.

máscara_p flutuar (codificação, vídeo)
Defina o mascaramento interno.

máscara_escura flutuar (codificação, vídeo)
Comprima as áreas escuras com mais força do que as médias.

idc número inteiro (decodificação / codificação, vídeo)
Selecione a implementação IDCT.

Valores possíveis:

auto
int
simples
simplesmmx
simples automático
Escolha automaticamente um IDCT compatível com o simples

braço
Altivec
sh4
braço simples
simplearmv5te
braço simplesv6
simplório
alfa simples
ipp
xvidmmx
Faani
ponto flutuante AAN IDCT

fatia_contagem número inteiro
ec bandeiras (decodificação, vídeo)
Defina a estratégia de ocultação de erros.

Valores possíveis:

palpite_mvs
Pesquisa de vetor de movimento iterativo (MV) (lento)

desbloquear
use filtro de desbloqueio forte para MBs danificados

favor_inter
favorece a previsão do quadro anterior em vez do atual

bits_por_amostra_codificada número inteiro
antes número inteiro (codificação, vídeo)
Defina o método de previsão.

Valores possíveis:

esquerda
avião
mediana
aspecto racional número (codificação, vídeo)
Defina a proporção da amostra.

depurar bandeiras (decodificação / codificação, áudio, vídeo, legendas)
Imprima informações de depuração específicas.

Valores possíveis:

pict
informação da foto

rc controle de taxa

fluxo de bits
tipo_mb
tipo de macrobloco (MB)

qp parâmetro de quantização por bloco (QP)

mv vetor de movimento

dct_coeff
green_metadata
exibe metadados de complexidade para o próximo quadro, GoP ou por um determinado período.

pular
código de início
pts
er reconhecimento de erro

mmco
operações de controle de gerenciamento de memória (H.264)

erros
vis_qp
visualize o parâmetro de quantização (QP), QP inferior são tingidos de verde

vis_mb_type
visualizar tipos de bloco

buffers
alocações de buffer de imagem

thread_ops
operações de rosqueamento

nome
pular compensação de movimento

vismv número inteiro (decodificação, vídeo)
Visualize vetores de movimento (MVs).

Esta opção está obsoleta; em vez disso, consulte o filtro codecview.

Valores possíveis:

pf MVs previstos para a frente de quadros P

bf MVs previstos para frente de quadros B

bb MVs previstos retroativamente de quadros B

cmp número inteiro (codificação, vídeo)
Defina a função de comparação pel me completa.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
subcmp número inteiro (codificação, vídeo)
Defina a função de comparação sub pel me.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
mbcmp número inteiro (codificação, vídeo)
Defina a função de comparação de macrobloco.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
ildctcmp número inteiro (codificação, vídeo)
Defina a função de comparação dct entrelaçada.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
tamanho_dia número inteiro (codificação, vídeo)
Defina o tipo e o tamanho do diamante para a estimativa de movimento.

último_pred número inteiro (codificação, vídeo)
Defina a quantidade de preditores de movimento do quadro anterior.

primeiro número inteiro (codificação, vídeo)
Defina a estimativa de pré-movimento.

pré-comp número inteiro (codificação, vídeo)
Defina a função de comparação de estimativa de pré-movimento.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
pré_dia_size número inteiro (codificação, vídeo)
Defina o tipo e o tamanho do diamante para a pré-passagem de estimativa de movimento.

subq número inteiro (codificação, vídeo)
Defina a qualidade da estimativa de movimento sub pel.

dtg_active_format número inteiro
eu_range número inteiro (codificação, vídeo)
Defina o intervalo de vetores de movimento limite (1023 para o DivX player).

íbias número inteiro (codificação, vídeo)
Defina o enviesamento intra quant.

pbias número inteiro (codificação, vídeo)
Defina o viés interquântico.

color_table_id número inteiro
qualidade_global número inteiro (codificação, áudio, vídeo)
codificador número inteiro (codificação, vídeo)
Valores possíveis:

vlc codificador de comprimento variável / codificador huffman

ac codificador aritmético

cru bruto (sem codificação)

rle codificador run-length

esvaziar
codificador baseado em deflate

contexto número inteiro (codificação, vídeo)
Defina o modelo de contexto.

fatia_flags número inteiro
xvmc_aceleração número inteiro
mbd número inteiro (codificação, vídeo)
Defina o algoritmo de decisão do macrobloco (modo de alta qualidade).

Valores possíveis:

simples
usar mbcmp (padrão)

pedaços
use menos bits

rd use a melhor taxa de distorção

stream_codec_tag número inteiro
sc_threshold número inteiro (codificação, vídeo)
Defina o limiar de mudança de cena.

lmin número inteiro (codificação, vídeo)
Defina o fator de intervalo mínimo (VBR).

lmax número inteiro (codificação, vídeo)
Defina o fator de lagrange máximo (VBR).

nr número inteiro (codificação, vídeo)
Defina a redução de ruído.

rc_init_ocupação número inteiro (codificação, vídeo)
Defina o número de bits que devem ser carregados no buffer rc antes do início da decodificação.

bandeiras2 bandeiras (decodificação / codificação, áudio, vídeo)
Valores possíveis:

rápido
Permitir truques de aceleração não compatíveis com as especificações.

beber
Obsoleto, use as opções privadas mpegvideo.

nada
Pule a codificação de fluxo de bits.

ignorar colheita
Ignore as informações de corte dos sps.

cabeçalho_local
Coloque cabeçalhos globais em cada quadro-chave em vez de extradados.

pedaços
Os dados do quadro podem ser divididos em vários blocos.

mostre tudo
Mostra todos os quadros antes do primeiro quadro-chave.

pular
Obsoleto, use as opções privadas mpegvideo.

exportação_mvs
Exportar vetores de movimento em dados colaterais de quadro (consulte "AV_FRAME_DATA_MOTION_VECTORS")
para codecs que o suportam. Veja também doc / examples / export_mvs.c.

erro número inteiro (codificação, vídeo)
qns número inteiro (codificação, vídeo)
Obsoleto, use as opções privadas mpegvideo.

tópicos número inteiro (decodificação / codificação, vídeo)
Valores possíveis:

auto
detectar um bom número de tópicos

eu_limiar número inteiro (codificação, vídeo)
Defina o limite de estimativa de movimento.

mb_threshold número inteiro (codificação, vídeo)
Defina o limite do macrobloco.

dc número inteiro (codificação, vídeo)
Defina intra_dc_precision.

nssew número inteiro (codificação, vídeo)
Defina o peso nsse.

skip_top número inteiro (decodificação, vídeo)
Defina o número de linhas de macrobloco no topo que são ignoradas.

pular_bottom número inteiro (decodificação, vídeo)
Defina o número de linhas de macrobloco na parte inferior que são ignoradas.

perfis número inteiro (codificação, áudio, vídeo)
Valores possíveis:

desconhecido
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
dts_es
dts_96_24
dts_hd_hra
dts_hd_ma
nível número inteiro (codificação, áudio, vídeo)
Valores possíveis:

desconhecido
baixa resolução número inteiro (decodificação, áudio, vídeo)
Decodifique em 1 = 1/2, 2 = 1/4, 3 = 1/8 resoluções.

skip_threshold número inteiro (codificação, vídeo)
Definir limite de salto de quadro.

pular_fator número inteiro (codificação, vídeo)
Defina o fator de salto de quadro.

skip_exp número inteiro (codificação, vídeo)
Definir expoente de salto de quadro. Os valores negativos se comportam de forma idêntica à
positivos, exceto que a pontuação é normalizada. Valores positivos existem principalmente
por razões de compatibilidade e não são tão úteis.

pular cmp número inteiro (codificação, vídeo)
Defina a função de comparação de salto de quadro.

Valores possíveis:

triste soma das diferenças absolutas, rápido (padrão)

ess soma dos erros quadrados

sáb
soma das diferenças absolutas de Hadamard transformadas

dct soma das diferenças absolutas transformadas de DCT

psnr
soma dos erros de quantização quadrada (evitar, baixa qualidade)

bocado número de bits necessários para o bloco

rd taxa de distorção ideal, lenta

zero
0

contra
soma das diferenças verticais absolutas

vsse
soma das diferenças verticais quadradas

nsse
soma de preservação de ruído das diferenças quadradas

w53 5/3 wavelet, usado apenas na neve

w97 9/7 wavelet, usado apenas na neve

dctmax
chroma
máscara_de_fronteira flutuar (codificação, vídeo)
Aumente o quantizador para macroblocos próximos às bordas.

mblmin número inteiro (codificação, vídeo)
Defina o fator de lagrange do macrobloco mínimo (VBR).

mblmax número inteiro (codificação, vídeo)
Defina o fator de lagrange do macrobloco máximo (VBR).

mepc número inteiro (codificação, vídeo)
Defina a compensação de penalidade de taxa de bits de estimativa de movimento (1.0 = 256).

skip_loop_filter número inteiro (decodificação, vídeo)
skip_idct número inteiro (decodificação, vídeo)
pular_frame número inteiro (decodificação, vídeo)
Faça com que o decodificador descarte o processamento dependendo do tipo de quadro selecionado pela opção
valor.

skip_loop_filter pula a filtragem de loop de quadro, skip_idct pula quadro
IDCT / desquantização, pular_frame pula a decodificação.

Valores possíveis:

Nenhum
Não descarte nenhum quadro.

omissão
Descarte quadros inúteis como quadros de tamanho 0.

Noref
Descarte todos os quadros que não sejam de referência.

bidir
Descarte todos os quadros bidirecionais.

não, não
Descarte todos os quadros, exceto os quadros-chave.

todos os Descarte todos os quadros.

O valor padrão é omissão.

bidir_refine número inteiro (codificação, vídeo)
Refine os dois vetores de movimento usados ​​em macroblocos bidirecionais.

escala_brd número inteiro (codificação, vídeo)
Reduza os quadros para a decisão dinâmica de quadros B.

keyint_min número inteiro (codificação, vídeo)
Defina o intervalo mínimo entre os frames IDR.

árbitros número inteiro (codificação, vídeo)
Defina os referenciais a serem considerados para a compensação de movimento.

deslocamento de croma número inteiro (codificação, vídeo)
Defina o deslocamento de qp de croma de luma.

treliça número inteiro (codificação, áudio, vídeo)
Defina a quantização ideal de distorção de taxa.

fator_sc número inteiro (codificação, vídeo)
Defina o valor multiplicado por qscale para cada quadro e adicionado a scene_change_score.

mv0_threshold número inteiro (codificação, vídeo)
b_sensibilidade número inteiro (codificação, vídeo)
Ajuste a sensibilidade de b_frame_strategy 1.

nível de compressão número inteiro (codificação, áudio, vídeo)
min_prediction_order número inteiro (codificação, áudio)
max_prediction_order número inteiro (codificação, áudio)
timecode_frame_start número inteiro (codificação, vídeo)
Defina o número inicial do quadro do timecode GOP, em formato de quadro não descartável.

request_channels número inteiro (decodificação, áudio)
Defina o número desejado de canais de áudio.

bits_per_raw_sample número inteiro
canal_layout número inteiro (decodificação / codificação, áudio)
Valores possíveis:

request_channel_layout número inteiro (decodificação, áudio)
Valores possíveis:

rc_max_vbv_use flutuar (codificação, vídeo)
rc_min_vbv_use flutuar (codificação, vídeo)
ticks_per_frame número inteiro (decodificação / codificação, áudio, vídeo)
color_primaries número inteiro (decodificação / codificação, vídeo)
color_trc número inteiro (decodificação / codificação, vídeo)
espaço colorido número inteiro (decodificação / codificação, vídeo)
Gama de cores número inteiro (decodificação / codificação, vídeo)
Se usado como parâmetro de entrada, serve como uma dica para o decodificador, que intervalo de cores o
entrada tem.

chroma_sample_location número inteiro (decodificação / codificação, vídeo)
log_level_offset número inteiro
Defina o deslocamento do nível de registro.

fatias número inteiro (codificação, vídeo)
Número de fatias, usado na codificação paralelizada.

tipo_thread bandeiras (decodificação / codificação, vídeo)
Selecione quais métodos de multithreading usar.

Uso de quadro aumentará o atraso de decodificação em um quadro por thread, para que os clientes
não pode fornecer quadros futuros não deve usá-lo.

Valores possíveis:

fatia
Decodifique mais de uma parte de um único quadro de uma vez.

O multithreading usando fatias funciona apenas quando o vídeo foi codificado com fatias.

quadro
Decodifique mais de um quadro de uma vez.

O valor padrão é fatia + moldura.

audio_service_type número inteiro (codificação, áudio)
Defina o tipo de serviço de áudio.

Valores possíveis:

ma Serviço de áudio principal

ef Efeito

vi Deficientes visuais

hi Deficientes auditivos

di Diálogo

co Comentário

em Urgência

vo Voice Over

ka Karaoke

request_sample_fmt amostra_fmt (decodificação, áudio)
Definir decodificadores de áudio de formato de amostra deve preferir. O valor padrão é "nenhum".

pacote_timebase racional número
sub_charenc codificação (decodificação, legendas)
Defina a codificação de caracteres das legendas de entrada.

ordem do Campo ordem do Campo (vídeo)
Defina / substitua a ordem dos campos do vídeo. Valores possíveis:

progressivo
Vídeo progressivo

tt Vídeo entrelaçado, campo superior codificado e exibido primeiro

bb Vídeo entrelaçado, campo inferior codificado e exibido primeiro

tb Vídeo entrelaçado, codificado na parte superior primeiro, exibido na parte inferior primeiro

bt Vídeo entrelaçado, parte inferior codificada primeiro, parte superior exibida primeiro

skip_alpha número inteiro (decodificação, vídeo)
Defina como 1 para desativar o processamento alfa (transparência). Isso funciona como o cinza bandeira em
que o bandeiras opção que ignora as informações de croma em vez de alfa. O padrão é 0.

codec_whitelist Lista (entrada)
"," Lista separada de decodificadores permitidos. Por padrão, todos são permitidos.

dump_separator corda (entrada)
Separador usado para separar os campos impressos na linha de comando sobre o Fluxo
parâmetros. Por exemplo, para separar os campos com novas linhas e recuo:

ffprobe -dump_separator "
" -eu ~ / videos / matrixbench_mpeg2.mpg

DECODIFICADORES


Os decodificadores são elementos configurados no FFmpeg que permitem a decodificação de fluxos multimídia.

Quando você configura sua construção FFmpeg, todos os decodificadores nativos suportados são ativados por
predefinição. Os decodificadores que requerem uma biblioteca externa devem ser ativados manualmente por meio do
opção "--enable-lib" correspondente. Você pode listar todos os decodificadores disponíveis usando o
configure a opção "--list-decoders".

Você pode desabilitar todos os decodificadores com a opção de configuração "--disable-decoders" e
habilitar / desabilitar seletivamente decodificadores únicos com as opções "--enable-decoder =DECODER " /
"--disable-decoder =DECODER ".

A opção "-decoders" das ferramentas ff * exibirá a lista de decodificadores habilitados.

VÍDEOS DECODIFICADORES


Segue uma descrição de alguns dos decodificadores de vídeo atualmente disponíveis.

HEVC
Decodificador HEVC / H.265.

Note o skip_loop_filter a opção tem efeito apenas no nível "todos".

vídeo bruto
Decodificador de vídeo bruto.

Este decodificador decodifica streams de vídeo raw.

Opções

topo top_field_first
Especifique o tipo de campo assumido do vídeo de entrada.

-1 o vídeo é considerado progressivo (padrão)

0 campo inferior primeiro é assumido

1 top-field-first é assumido

AUDIO DECODIFICADORES


Segue uma descrição de alguns dos decodificadores de áudio disponíveis atualmente.

ac3
Decodificador de áudio AC-3.

Este decodificador implementa parte de ATSC A / 52: 2010 e ETSI TS 102 366, bem como o
RealAudio 3 não documentado (também conhecido como dnet).

AC-3 Decoder Opções

-drc_scale valor
Fator de escala de faixa dinâmica. O fator a ser aplicado aos valores da faixa dinâmica do AC-3
Stream. Este fator é aplicado exponencialmente. Existem 3 fatores de escala notáveis
gamas:

escala_drc == 0
RDC desativado. Produz áudio de gama completa.

0 < escala_drc <= 1
DRC habilitado. Aplica uma fração do valor do fluxo DRC. A reprodução de áudio é
entre o alcance total e a compressão total.

escala_drc > 1
DRC habilitado. Aplica-se drc_scale assimetricamente. Os sons altos são totalmente comprimidos.
Sons suaves são aprimorados.

flac
Decodificador de áudio FLAC.

Este decodificador visa implementar a especificação FLAC completa da Xiph.

FLAC Decoder opções

-use_buggy_lpc
O codificador lavc FLAC usado para produzir fluxos de buggy com altos valores lpc (como o
valor padrão). Esta opção torna possível decodificar tais fluxos corretamente por
usando a velha lógica lpc com erros do lavc para decodificação.

sintetizador de ondas
Sintetizador de onda interno.

Este decodificador gera padrões de onda de acordo com sequências predefinidas. Seu uso é puramente
interno e o formato dos dados que aceita não é documentado publicamente.

libcelt
Wrapper do decodificador libcelt.

A libcelt permite que a libavcodec decodifique o codec de áudio Xiph CELT com atraso ultrabaixo. Requer
a presença dos cabeçalhos libcelt e da biblioteca durante a configuração. Você precisa
configure explicitamente a construção com "--enable-libcelt".

libgsm
Wrapper do decodificador libgsm.

libgsm permite que libavcodec decodifique o codec de áudio de taxa total GSM. Requer a presença de
os cabeçalhos libgsm e a biblioteca durante a configuração. Você precisa configurar explicitamente o
construir com "--enable-libgsm".

Este decodificador suporta o GSM comum e a variante da Microsoft.

libilbc
invólucro do decodificador libilbc.

libilbc permite que libavcodec decodifique o codec de áudio iLBC (Internet Low Bitrate Codec).
Requer a presença de cabeçalhos e biblioteca libilbc durante a configuração. Você precisa
configure explicitamente a construção com "--enable-libilbc".

Opções

A opção a seguir é suportada pelo wrapper libilbc.

aumentar
Habilite o aprimoramento do áudio decodificado quando definido como 1. O valor padrão é 0
(Desativado).

libopencore-amrnb
Wrapper do decodificador libopencore-amrnb.

libopencore-amrnb permite que libavcodec decodifique o áudio Adaptive Multi-Rate Narrowband
codec. Usá-lo requer a presença dos cabeçalhos libopencore-amrnb e biblioteca durante
configuração. Você precisa configurar explicitamente a construção com
"--enable-libopencore-amrnb".

Existe um decodificador FFmpeg nativo para AMR-NB, para que os usuários possam decodificar AMR-NB sem isso
biblioteca.

libopencore-amrwb
Wrapper do decodificador libopencore-amrwb.

libopencore-amrwb permite que libavcodec decodifique o áudio Adaptive Multi-Rate Wideband
codec. Seu uso requer a presença dos cabeçalhos libopencore-amrwb e da biblioteca durante
configuração. Você precisa configurar explicitamente a construção com
"--enable-libopencore-amrwb".

Existe um decodificador FFmpeg nativo para AMR-WB, para que os usuários possam decodificar AMR-WB sem este
biblioteca.

libopus
empacotador do decodificador libopus.

libopus permite que libavcodec decodifique o Opus Interactive Audio Codec. Requer o
presença dos cabeçalhos libopus e da biblioteca durante a configuração. Você precisa explicitamente
configure a construção com "--enable-libopus".

Existe um decodificador nativo FFmpeg para Opus, para que os usuários possam decodificar Opus sem esta biblioteca.

LEGENDAS DECODIFICADORES


dvbsub
Opções

computação_clut
-1 Calcule a clut se nenhuma CLUT correspondente estiver no fluxo.

0 Nunca computar CLUT

1 Sempre calcule a CLUT e substitua aquela fornecida no fluxo.

dvb_substream
Seleciona o subfluxo dvb ou todos os subfluxos se -1, que é o padrão.

dvdsub
Este codec decodifica as legendas de bitmap usadas em DVDs; as mesmas legendas também podem ser encontradas
em pares de arquivos VobSub e em alguns arquivos Matroska.

Opções

palete
Especifique a paleta global usada pelos bitmaps. Quando armazenado no VobSub, a paleta é
normalmente especificado no arquivo de índice; no Matroska, a paleta é armazenada no codec
extra-data no mesmo formato que em VobSub. Em DVDs, a paleta é armazenada no IFO
arquivo e, portanto, não disponível ao ler arquivos VOB despejados.

O formato desta opção é uma string contendo 16 números hexadecimais de 24 bits
(sem o prefixo 0x) separados por vírgulas, por exemplo "0d00ee, ee450d, 101010, eaeaea,
0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, 7b2a0e, 0d950c, 0f007b, cf0dec,
cfa80c, 7c127b ".

ifo_palette
Especifique o arquivo IFO do qual a paleta global é obtida. (experimental)

forçado_subs_only
Decodifique apenas entradas de legendas marcadas como forçadas. Alguns títulos são forçados e não forçados
legendas na mesma faixa. Definir este sinalizador como 1 apenas manterá o forçado
legendas. O valor padrão é 0.

libzvbi-teletexto
Libzvbi permite que libavcodec decodifique páginas de teletexto DVB e legendas de teletexto DVB.
Requer a presença dos cabeçalhos libzvbi e da biblioteca durante a configuração. Você precisa
configure explicitamente a construção com "--enable-libzvbi".

Opções

txt_page
Lista de números de página de teletexto a descodificar. Você pode usar a string especial * para corresponder a todos
Páginas. As páginas que não correspondem à lista especificada são eliminadas. O valor padrão é *.

txt_chop_top
Descarta a linha superior do teletexto. O valor padrão é 1.

formato_txt
Especifica o formato das legendas decodificadas. O decodificador de teletexto é capaz de
decodificar as páginas de teletexto para bitmaps ou texto simples, você deve usar "bitmap" para
páginas de teletexto, porque certos gráficos e cores não podem ser expressos de forma simples
texto. Você pode usar "texto" para legendas baseadas em teletexto se o seu aplicativo puder manipular
legendas baseadas em texto simples. O valor padrão é bitmap.

txt_esquerda
Deslocamento X dos bitmaps gerados, o padrão é 0.

txt_top
Deslocamento Y dos bitmaps gerados, o padrão é 0.

txt_chop_spaces
Corta espaços à esquerda e à direita e remove linhas vazias do texto gerado.
Esta opçãoéútil para legendas baseadas em teletexto onde podem estar presentes espaços vazios
no início ou no final das linhas ou linhas vazias podem estar presentes entre as
linhas de legenda por causa de caracteres de teletexto de tamanho duplo. O valor padrão é 1.

txt_duração
Define a duração da exibição das páginas de teletexto decodificadas ou legendas em milissegundos.
O valor padrão é 30000, que é 30 segundos.

txt_transparente
Forçar fundo transparente dos bitmaps de teletexto gerados. O valor padrão é 0
o que significa um fundo opaco (preto).

BITSTREAM FILTROS


Quando você configura sua compilação FFmpeg, todos os filtros de fluxo de bits suportados são ativados por
predefinição. Você pode listar todos os disponíveis usando a opção de configuração "--list-bsfs".

Você pode desabilitar todos os filtros de fluxo de bits usando a opção de configuração "--disable-bsfs", e
habilite seletivamente qualquer filtro de fluxo de bits usando a opção "--enable-bsf = BSF", ou você pode
desative um filtro de fluxo de bits específico usando a opção "--disable-bsf = BSF".

A opção "-bsfs" das ferramentas ff * irá mostrar a lista de todos os fluxos de bits suportados
filtros incluídos em sua construção.

As ferramentas ff * têm uma opção -bsf aplicada por fluxo, obtendo uma lista separada por vírgulas de
filtros, cujos parâmetros seguem o nome do filtro após '='.

ffmpeg -i INPUT -c: v copy -bsf: v filter1 [= opt1 = str1 / opt2 = str2] [, filter2] OUTPUT

Abaixo está uma descrição dos filtros de fluxo de bits atualmente disponíveis, com seus
parâmetros, se houver.

aac_adtstoasc
Converta MPEG-2/4 AAC ADTS em filtro de fluxo de bits de configuração específica de áudio MPEG-4.

Este filtro cria um MPEG-4 AudioSpecificConfig a partir de um cabeçalho MPEG-2/4 ADTS e remove
o cabeçalho ADTS.

Isso é necessário, por exemplo, ao copiar um fluxo AAC de um contêiner ADTS AAC bruto para um
FLV ou um arquivo MOV / MP4.

chomp
Remova o preenchimento de zero no final de um pacote.

dump_extra
Adicione extradados ao início dos pacotes filtrados.

O argumento adicional especifica quais pacotes devem ser filtrados. Aceita o
valores:

a adicione extradados a todos os pacotes de chaves, mas apenas se cabeçalho_local é definido no bandeiras2 codec
campo de contexto

k adicione extradados a todos os pacotes de chaves

e adicionar extradados a todos os pacotes

Se não for especificado, é assumido k.

Por exemplo o seguinte ffmpeg comando força um cabeçalho global (desativando assim
cabeçalhos de pacote) nos pacotes H.264 gerados pelo codificador "libx264", mas os corrige
adicionando o cabeçalho armazenado em extradados aos pacotes de chaves:

ffmpeg -i INPUT -map 0 -flags: v + global_header -c: v libx264 -bsf: v dump_extra out.ts

h264_mp4toannexb
Converta um fluxo de bits H.264 do modo com prefixo de comprimento para iniciar o modo com prefixo de código (como
definido no anexo B da especificação ITU-T H.264).

Isso é exigido por alguns formatos de streaming, normalmente o formato de fluxo de transporte MPEG-2
("MPEGTS").

Por exemplo, para remuxar um arquivo MP4 contendo um fluxo H.264 para o formato MPEGTS com ffmpeg,
você pode usar o comando:

ffmpeg -i INPUT.mp4 -codec copy -bsf: v h264_mp4toannexb OUTPUT.ts

imxdump
Modifica o fluxo de bits para caber em MOV e ser utilizável pelo decodificador Final Cut Pro. Esse
filtro se aplica apenas ao codec mpeg2video e provavelmente não é necessário para o Final Cut Pro 7
e mais recentes com o apropriado -tag: v.

Por exemplo, para remuxar 30 MB / s NTSC IMX para MOV:

ffmpeg -i input.mxf -c cópia -bsf: v imxdump -tag: v mx3n output.mov

mjpeg2jpeg
Converta pacotes MJPEG / AVI1 em pacotes JPEG / JFIF completos.

MJPEG é um codec de vídeo em que cada quadro de vídeo é essencialmente uma imagem JPEG. o
quadros individuais podem ser extraídos sem perda, por exemplo,

ffmpeg -i ../some_mjpeg.avi -c: v copiar frames_% d.jpg

Infelizmente, esses pedaços são imagens JPEG incompletas, porque não têm o segmento DHT
necessário para a decodificação. Citando de
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:

Avery Lee, escrevendo no grupo de notícias rec.video.desktop em 2001, comentou que "MJPEG, ou
pelo menos o MJPEG em AVIs tendo o MJPG fourcc, é JPEG restrito com um fixo - e
* omitido * - tabela Huffman. O JPEG deve ser o espaço de cores YCbCr, deve ser 4: 2: 2 e
deve usar codificação Huffman básica, não aritmética ou progressiva. . . . Você pode de fato
extrair os quadros MJPEG e decodificá-los com um decodificador JPEG normal, mas você tem que
acrescente o segmento DHT a eles, ou então o decodificador não terá nenhuma ideia de como descompactar
os dados. A tabela exata necessária é fornecida na especificação OpenDML. "

Este filtro de fluxo de bits corrige o cabeçalho dos quadros extraídos de um fluxo MJPEG
(carregando o ID do cabeçalho AVI1 e sem um segmento DHT) para produzir JPEG totalmente qualificado
imagens.

ffmpeg -i mjpeg-movie.avi -c: v cópia -bsf: v mjpeg2jpeg frame_% d.jpg
exiftran -i -9 frame * .jpg
ffmpeg -i frame_% d.jpg -c: v copy rotated.avi

mjpega_dump_header
movsub
mp3_header_decompress
mpeg4_unpack_bframes
Descompacte B-frames compactados no estilo DivX.

B-frames compactados no estilo DivX não são MPEG-4 válidos e foram apenas uma solução para o problema
Vídeo para subsistema Windows. Eles usam mais espaço, podem causar pequenos problemas de sincronização AV, exigem
mais poder de CPU para decodificar (a menos que o jogador tenha alguma fila de imagens decodificadas para compensar
o estilo de quadro 2,0,2,0 por pacote) e causar problemas se copiado em um contêiner padrão
como mp4 ou mpeg-ps / ts, porque os decodificadores MPEG-4 podem não ser capazes de decodificá-los, uma vez que eles
não são MPEG-4 válidos.

Por exemplo, para consertar um arquivo AVI contendo um fluxo MPEG-4 com B-frames compactados no estilo DivX
utilização ffmpeg, você pode usar o comando:

ffmpeg -i INPUT.avi -codec copy -bsf: v mpeg4_unpack_bframes OUTPUT.avi

barulho
Danifica o conteúdo dos pacotes sem danificar o recipiente. Pode ser usado para fuzzing ou
teste de resiliência / ocultação de erro.

Parâmetros: uma string numeral, cujo valor está relacionado à frequência com que os bytes de saída serão
modificado. Portanto, valores menores ou iguais a 0 são proibidos, e quanto menor, mais
bytes frequentes serão modificados, com 1 significando que cada byte é modificado.

ffmpeg -i INPUT -c cópia -bsf ruído [= 1] output.mkv

aplica a modificação a cada byte.

remover_extra

FORMATO OPÇÕES


A biblioteca libavformat fornece algumas opções globais genéricas, que podem ser definidas em todos os
muxers e demuxers. Além disso, cada muxer ou demuxer pode suportar os chamados privados
opções, que são específicas para aquele componente.

As opções podem ser definidas especificando -opção valor nas ferramentas FFmpeg, ou definindo o
valor explicitamente nas opções "AVFormatContext" ou usando o libavutil / opt.h API para
uso programático.

A lista de opções com suporte é a seguinte:

avioflags bandeiras (input / output)
Valores possíveis:

diretamente
Reduza o armazenamento em buffer.

sonda número inteiro (entrada)
Defina o tamanho de sondagem em bytes, ou seja, o tamanho dos dados a serem analisados ​​para obter o fluxo
em formação. Um valor mais alto permitirá detectar mais informações caso sejam
disperso no fluxo, mas aumentará a latência. Deve ser um número inteiro não menor
de 32. É 5000000 por padrão.

tamanho do pacote número inteiro (saída)
Defina o tamanho do pacote.

bandeiras bandeiras (input / output)
Defina sinalizadores de formato.

Valores possíveis:

ignidx
Ignore o índice.

busca rápida
Habilite buscas rápidas, mas imprecisas para alguns formatos.

genptos
Gerar PTS.

nofilina
Não preencha os valores ausentes que podem ser calculados com exatidão.

noparso
Desative o AVParsers, isso também precisa de "+ nofillin".

igndts
Ignore o DTS.

descartar corrupção
Descarte os quadros corrompidos.

sortdts
Tente intercalar os pacotes de saída por DTS.

guarda-roupa
Não mescle dados secundários.

latino-americano
Habilite a carga útil RTP MP4A-LATM.

sem buffer
Reduza a latência introduzida pelo buffer opcional

bitexato
Grave apenas dados independentes de plataforma, construção e tempo. Isso garante que o arquivo
e as somas de verificação de dados são reproduzíveis e combinam entre as plataformas. Seu uso principal
é para teste de regressão.

see2any número inteiro (entrada)
Permitir a busca de frames não-chave no nível do demuxer quando compatível, se definido como 1. Padrão
é 0.

analisado número inteiro (entrada)
Especifique quantos microssegundos são analisados ​​para testar a entrada. Um valor mais alto irá
permitem detectar informações mais precisas, mas aumentará a latência. O padrão é
5,000,000 microssegundos = 5 segundos.

chave criptográfica hexadecimal corda (entrada)
Defina a chave de descriptografia.

indexmem número inteiro (entrada)
Defina a memória máxima usada para o índice de carimbo de data / hora (por fluxo).

rtbufsize número inteiro (entrada)
Defina a memória máxima usada para o buffer de frames em tempo real.

fdebug bandeiras (input / output)
Imprima informações de depuração específicas.

Valores possíveis:

ts
max_delay número inteiro (input / output)
Defina o atraso máximo de muxing ou demuxing em microssegundos.

fpsprobesize número inteiro (entrada)
Defina o número de quadros usados ​​para testar fps.

audio_preload número inteiro (saída)
Defina microssegundos pelos quais os pacotes de áudio devem ser intercalados anteriormente.

pedaço_duração número inteiro (saída)
Defina microssegundos para cada pedaço.

tamanho do pedaço número inteiro (saída)
Defina o tamanho em bytes para cada pedaço.

err_detectar, f_err_detect bandeiras (entrada)
Defina sinalizadores de detecção de erros. "f_err_detect" está obsoleto e deve ser usado apenas via
que o ffmpeg ferramenta.

Valores possíveis:

verificar
Verifique os CRCs incorporados.

fluxo de bits
Detecte desvios de especificação de fluxo de bits.

amortecer
Detecte comprimento de fluxo de bits impróprio.

explodir
Abortar a decodificação na detecção de erros menores.

cuidadoso
Considere coisas que violam as especificações e não foram vistas na natureza como
erros.

compatível
Considere todas as não conformidades de especificações como erros.

agressivo
Considere coisas que um codificador lógico não deve fazer como um erro.

max_interleave_delta número inteiro (saída)
Defina a duração máxima do buffer para intercalação. A duração é expressa em
microssegundos e o padrão é 1000000 (1 segundo).

Para garantir que todos os fluxos sejam intercalados corretamente, libavformat irá esperar até que
tem pelo menos um pacote para cada fluxo antes de realmente gravar qualquer pacote no
arquivo de saída. Quando alguns fluxos são "esparsos" (ou seja, há grandes lacunas entre
pacotes sucessivos), isso pode resultar em buffer excessivo.

Este campo especifica a diferença máxima entre os carimbos de data / hora do primeiro e
o último pacote na fila de muxing, acima do qual libavformat produzirá um pacote
independentemente de ter colocado um pacote na fila para todos os fluxos.

Se definido como 0, libavformat continuará armazenando pacotes em buffer até que tenha um pacote para
cada fluxo, independentemente da diferença máxima de carimbo de data / hora entre os
pacotes.

use_wallclock_as_timestamps número inteiro (entrada)
Use o relógio de parede como carimbos de data / hora.

Avoid_negative_ts número inteiro (saída)
Valores possíveis:

make_non_negative
Mude os carimbos de data / hora para torná-los não negativos. Observe também que isso afeta apenas
carimbos de data / hora negativos principais e carimbos de data / hora negativos não monotônicos.

fazer_zero
Mude os carimbos de data / hora para que o primeiro seja 0.

auto (Padrão)
Permite a mudança quando exigido pelo formato de destino.

inválido
Desativa a mudança de carimbo de data / hora.

Quando a mudança está habilitada, todos os carimbos de data / hora de saída são deslocados na mesma quantidade. Áudio,
vídeo, dessincronização de legendas e diferenças de timestamp relativas são preservadas
em comparação a como eles teriam sido sem mudar.

skip_initial_bytes número inteiro (entrada)
Defina o número de bytes a pular antes de ler o cabeçalho e os quadros se definido como 1. O padrão é
0.

correct_ts_overflow número inteiro (entrada)
Corrija estouros de carimbo de data / hora único se definido como 1. O padrão é 1.

flush_packets número inteiro (saída)
Libere o fluxo de E / S subjacente após cada pacote. O padrão 1 o habilita e tem o
efeito de redução da latência; 0 desativa e pode aumentar ligeiramente o desempenho em
alguns casos.

saída_ts_offset compensar (saída)
Defina a diferença de tempo de saída.

compensar deve ser uma especificação de duração de tempo, consulte que o Horário duração seção in que o
ffmpeg-utils(1) manual.

O deslocamento é adicionado pelo muxer aos carimbos de data / hora de saída.

Especificar um deslocamento positivo significa que os fluxos correspondentes são atrasados ​​pelo
duração de tempo especificada em compensar. O valor padrão é 0 (o que significa que nenhum deslocamento é
aplicado).

formato_lista_branca Lista (entrada)
"," Lista separada de demuxers permitidos. Por padrão, todos são permitidos.

dump_separator corda (entrada)
Separador usado para separar os campos impressos na linha de comando sobre o Fluxo
parâmetros. Por exemplo, para separar os campos com novas linhas e recuo:

ffprobe -dump_separator "
" -eu ~ / videos / matrixbench_mpeg2.mpg

Formato transmitir canais especificadores
Especificadores de fluxo de formato permitem a seleção de um ou mais fluxos que correspondem
propriedades.

As formas possíveis de especificadores de fluxo são:

índice_stream
Corresponde ao fluxo com este índice.

stream_type[:índice_stream]
stream_type é um dos seguintes: 'v' para vídeo, 'a' para áudio, 's' para legenda, 'd'
para dados e 't' para anexos. Se índice_stream é fornecido, então ele corresponde ao
número do fluxo índice_stream deste tipo. Caso contrário, ele corresponde a todos os fluxos deste
tipo.

p:ID_do_programa[:índice_stream]
If índice_stream é fornecido, então ele combina o fluxo com o número índice_stream no
programa com o id ID_do_programa. Caso contrário, ele corresponde a todos os fluxos do programa.

#stream_id
Corresponde ao fluxo por um ID específico de formato.

A semântica exata dos especificadores de fluxo é definida pelo
função "avformat_match_stream_specifier ()" declarada no libavformat / avformat.h
cabeçalho.

DEMUXADORES


Demuxers são elementos configurados no FFmpeg que podem ler os fluxos de multimídia de um
tipo específico de arquivo.

Quando você configura sua construção FFmpeg, todos os demuxers suportados são habilitados por padrão.
Você pode listar todos os disponíveis usando a opção de configuração "--list-demuxers".

Você pode desabilitar todos os demuxers usando a opção de configuração "--disable-demuxers", e
habilitar seletivamente um único demuxer com a opção "--enable-demuxer =DEMUXER ", ou desabilitar
com a opção "--disable-demuxer =DEMUXER ".

A opção "-formats" das ferramentas ff * exibirá a lista de demuxers habilitados.

Segue-se a descrição de alguns dos demuxers atualmente disponíveis.

aa
Desmuxador de formato audível 2, 3 e 4.

Este demuxer é usado para demuxar arquivos Audible Format 2, 3 e 4 (.aa).

maçãhttp
Demuxer Apple HTTP Live Streaming.

Este demuxer apresenta todos os AVStreams de todos os streams variantes. O campo id é definido para o
número de índice da variante de taxa de bits. Definindo os sinalizadores de descarte em AVStreams (pressionando 'a'
ou 'v' em ffplay), o chamador pode decidir quais fluxos variantes realmente receber. o
a taxa de bits total da variante à qual o stream pertence está disponível em uma chave de metadados
denominado "variant_bitrate".

apng
Demuxer do Animated Portable Network Graphics.

Este demuxer é usado para demuxar arquivos APNG. Todos os cabeçalhos, exceto a assinatura PNG, até (mas
não incluindo) o primeiro bloco fcTL é transmitido como extradados. Os quadros são então divididos
como sendo todos os pedaços entre dois fcTL, ou entre os últimos pedaços fcTL e IEND.

-ignore_loop bool
Ignore a variável de loop no arquivo, se configurada.

-max_fps int
Taxa de quadros máxima em quadros por segundo (0 para sem limite).

-default_fps int
Taxa de quadros padrão em quadros por segundo quando nenhum é especificado no arquivo (0 significa
o mais rápido possível).

asf
Demuxer de formato de sistemas avançados.

Este demuxer é usado para demuxar arquivos ASF e fluxos de rede MMS.

-no_resync_search bool
Não tente sincronizar novamente procurando um determinado código de início opcional.

concat
Demuxer de script de concatenação virtual.

Este demuxer lê uma lista de arquivos e outras diretivas de um arquivo de texto e os desmuxa
um após o outro, como se todos os seus pacotes tivessem sido misturados.

Os carimbos de data / hora nos arquivos são ajustados de forma que o primeiro arquivo comece em 0 e cada próximo
o arquivo começa onde o anterior termina. Observe que isso é feito globalmente e pode causar
lacunas se todos os fluxos não tiverem exatamente o mesmo comprimento.

Todos os arquivos devem ter os mesmos streams (mesmos codecs, mesma base de tempo, etc.).

A duração de cada arquivo é usada para ajustar os carimbos de data / hora do próximo arquivo: se o
a duração está incorreta (porque foi calculada usando a taxa de bits ou porque o arquivo é
truncado, por exemplo), pode causar artefatos. A diretiva "duração" pode ser usada para
sobrescrever a duração armazenada em cada arquivo.

Sintaxe

O script é um arquivo de texto em ASCII estendido, com uma diretiva por linha. Linhas vazias,
espaços e linhas que começam com '#' são ignorados. A seguinte diretiva é
reconhecido:

"Arquivo caminho"
Caminho para um arquivo a ser lido; caracteres especiais e espaços devem ser escapados com barra invertida
ou aspas simples.

Todas as diretivas subsequentes relacionadas a arquivos se aplicam a esse arquivo.

"ffconcat versão 1.0 "
Identifique o tipo e a versão do script. Ele também define o seguro opção para 1 se fosse para
seu padrão -1.

Para fazer o FFmpeg reconhecer o formato automaticamente, esta diretiva deve aparecer exatamente
como está (sem espaço extra ou marca de ordem de byte) na primeira linha do script.

"duração difícil"
Duração do arquivo. Essas informações podem ser especificadas no arquivo; especificando-o
aqui pode ser mais eficiente ou ajudar se a informação do arquivo não estiver disponível
ou preciso.

Se a duração for definida para todos os arquivos, então é possível buscar na totalidade
vídeo concatenado.

"no ponto timestamp"
No ponto do arquivo. Quando o demuxer abre o arquivo, ele procura instantaneamente
carimbo de data / hora especificado. A busca é feita para que todos os fluxos possam ser apresentados com sucesso
no ponto.

Esta diretiva funciona melhor com codecs intra frame, porque para os não intra frame
você geralmente obterá pacotes extras antes do ponto de entrada real e do conteúdo decodificado
provavelmente conterá quadros antes do ponto de entrada também.

Para cada arquivo, os pacotes antes do ponto de entrada do arquivo terão carimbos de data / hora menores que o
data e hora de início calculada do arquivo (negativo no caso do primeiro arquivo), e o
a duração dos arquivos (se não for especificada pela diretiva "duração") será reduzida
com base em seu ponto de entrada especificado.

Por causa de pacotes potenciais antes do ponto In especificado, os carimbos de data / hora do pacote podem
sobreposição entre dois arquivos concatenados.

"marcar mais pontos que timestamp"
Ponto de saída do arquivo. Quando o demuxer atinge o timestamp de decodificação especificado em
qualquer um dos streams, ele o trata como uma condição de fim de arquivo e pula o atual
e todos os pacotes restantes de todos os fluxos.

O ponto de saída é exclusivo, o que significa que o demuxer não emitirá pacotes com um
timestamp de decodificação maior ou igual ao ponto de saída.

Esta diretiva funciona melhor com codecs intra-quadro e formatos onde todos os fluxos são
firmemente intercalado. Para codecs não intraquadro, você geralmente obterá
pacotes com data e hora de apresentação após o ponto de saída, portanto, o conteúdo decodificado irá
muito provavelmente também contém quadros após o ponto de saída. Se seus streams não estão estreitos
intercalado, você pode não obter todos os pacotes de todos os fluxos antes do ponto de saída e você
só poderá decodificar o fluxo mais antigo até o ponto de saída.

A duração dos arquivos (se não for especificada pela diretiva "duração") será
reduzido com base em seu ponto de saída especificado.

"file_packet_metadata chave = valor"
Metadados dos pacotes do arquivo. Os metadados especificados serão definidos para cada arquivo
pacote. Você pode especificar esta diretiva várias vezes para adicionar vários metadados
entradas.

"Stream"
Apresente um fluxo no arquivo virtual. Todas as diretivas subsequentes relacionadas ao fluxo
aplicam-se ao último fluxo introduzido. Algumas propriedades de streams devem ser definidas para
permitem identificar os fluxos correspondentes nos subarquivos. Se nenhum fluxo for definido em
o script, os fluxos do primeiro arquivo são copiados.

"exact_stream_id id"
Defina a id do stream. Se esta diretiva for fornecida, a string com o
ids correspondentes nos subarquivos serão usados. Isso é especialmente útil para MPEG-PS
(VOB), em que a ordem dos fluxos não é confiável.

Opções

Este demuxer aceita a seguinte opção:

seguro
Se definido como 1, rejeita caminhos de arquivo não seguros. Um caminho de arquivo é considerado seguro se não
contém uma especificação de protocolo e é relativo e todos os componentes contêm apenas
caracteres do conjunto de caracteres portáteis (letras, dígitos, ponto, sublinhado e
hífen) e não tem ponto no início de um componente.

Se definido como 0, qualquer nome de arquivo é aceito.

O padrão é -1, é equivalente a 1 se o formato foi detectado automaticamente e 0
de outra forma.

auto_convert
Se definido como 1, tente realizar conversões automáticas em dados de pacote para tornar os fluxos
concatenável. O padrão é 1.

Atualmente, a única conversão é adicionar o filtro de fluxo de bits h264_mp4toannexb para
Transmissões H.264 em formato MP4. Isso é necessário, em particular se houver resolução
alterações.

flv
Demuxer do Adobe Flash Video Format.

Este demuxer é usado para demuxar arquivos FLV e fluxos de rede RTMP.

-flv_metadados bool
Aloque os fluxos de acordo com o conteúdo da matriz onMetaData.

libgme
A biblioteca Game Music Emu é uma coleção de emuladores de arquivos de música de videogame.

Vejohttp://code.google.com/p/game-music-emu/> para mais informações.

Alguns arquivos possuem várias faixas. O demuxer escolherá a primeira faixa por padrão. o
track_index opção pode ser usada para selecionar uma faixa diferente. Os índices de trilha começam em 0. O
demuxer exporta o número de faixas como faixas entrada de metadados.

Para arquivos muito grandes, o tamanho máximo pode ser necessário ajustar a opção.

libquvi
Reproduza mídia de serviços de Internet usando o projeto quvi.

O demuxer aceita um formato opção de solicitar uma qualidade específica. É por padrão definido como
melhor.

Vejohttp://quvi.sourceforge.net/> para mais informações.

O FFmpeg precisa ser compilado com "--enable-libquvi" para que este demuxer seja habilitado.

gif
Demuxer de GIF animado.

Aceita as seguintes opções:

min_atraso
Defina o atraso mínimo válido entre os quadros em centésimos de segundos. O intervalo é de 0 a
6000. O valor padrão é 2.

max_gif_delay
Defina o atraso máximo válido entre os quadros em centésimos de segundos. O intervalo é de 0 a
65535. O valor padrão é 65535 (quase onze minutos), o valor máximo permitido por
a especificação.

atraso_padrão
Defina o atraso padrão entre os quadros em centésimos de segundos. O intervalo é de 0 a 6000.
O valor padrão é 10.

ignorar_loop
Os arquivos GIF podem conter informações para repetir um certo número de vezes (ou infinitamente).
If ignorar_loop é definido como 1, então a configuração de loop da entrada será ignorada e
looping não ocorrerá. Se definido como 0, então ocorrerá um loop e fará o ciclo do número
de vezes de acordo com o GIF. O valor padrão é 1.

Por exemplo, com o filtro de sobreposição, coloque um GIF em loop infinito sobre outro vídeo:

ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay = shortest = 1 out.mkv

Observe que no exemplo acima, a opção mais curta para o filtro de sobreposição é usada para encerrar o
saída de vídeo no comprimento do arquivo de entrada mais curto, que neste caso é entrada.mp4 as
o GIF neste exemplo faz um loop infinito.

image2
Demuxer de arquivo de imagem.

Este demuxer lê de uma lista de arquivos de imagem especificados por um padrão. A sintaxe e
o significado do padrão é especificado pela opção Tipo de Padrão.

O padrão pode conter um sufixo que é usado para determinar automaticamente o formato de
as imagens contidas nos arquivos.

O tamanho, o formato do pixel e o formato de cada imagem devem ser iguais para todos os
arquivos na sequência.

Este demuxer aceita as seguintes opções:

framerate
Defina a taxa de quadros para o fluxo de vídeo. O padrão é 25.

laço
Se definido como 1, faz um loop na entrada. O valor padrão é 0.

Tipo de Padrão
Selecione o tipo de padrão usado para interpretar o nome do arquivo fornecido.

Tipo de Padrão aceita um dos seguintes valores.

Nenhum
Desative a correspondência de padrões, portanto, o vídeo conterá apenas os
imagem. Você deve usar esta opção se não quiser criar sequências de
várias imagens e seus nomes de arquivo podem conter caracteres de padrão especial.

seqüência
Selecione um tipo de padrão de sequência, usado para especificar uma sequência de arquivos indexados por
números sequenciais.

Um padrão de sequência pode conter a string "% d" ou "% 0Nd ", que especifica o
posição dos caracteres que representam um número sequencial em cada nome de arquivo
correspondido pelo padrão. Se a forma "% d0Nd "é usado, a string que representa o
número em cada nome de arquivo é preenchido com 0 e N é o número total de dígitos preenchidos com 0
representando o número. O caractere literal '%' pode ser especificado no padrão
com a string "%%".

Se o padrão de sequência contém "% d" ou "% 0Nd ", o primeiro nome do arquivo
lista especificada pelo padrão deve conter um número contido inclusive entre
número_inicial e número_inicial+intervalo_número_inicial-1 e todos os seguintes números
deve ser sequencial.

Por exemplo, o padrão "img-% 03d.bmp" corresponderá a uma sequência de nomes de arquivos do
formulário img-001.bmp, img-002.bmp, ..., img-010.bmpetc .; o padrão
"i %% m %% g-% d.jpg" loading = "preguiçoso" irá corresponder a uma sequência de nomes de arquivo do formulário i% m% g-1.jpg,
i% m% g-2.jpg, ..., i% m% g-10.jpg, etc.

Observe que o padrão não deve conter necessariamente "% d" ou "% 0Nd ", por exemplo para
converter um único arquivo de imagem img.jpeg você pode empregar o comando:

ffmpeg -i img.jpeg img.png

glob
Selecione um tipo de padrão de curinga glob.

O padrão é interpretado como um padrão "glob ()". Isso só é selecionável se
libavformat foi compilado com suporte a globbing.

sequência_glob (descontinuada, precisarão be removido)
Selecione um padrão de sequência / curinga glob misturado.

Se sua versão do libavformat foi compilada com suporte a globbing, e o
padrão fornecido contém pelo menos um metacaractere glob entre "% *? [] {}" que é
precedido por um "%" sem escape, o padrão é interpretado como um padrão "glob ()",
caso contrário, é interpretado como um padrão de sequência.

Todos os caracteres especiais glob "% *? [] {}" Devem ser prefixados com "%". Para escapar de um
literal "%" você deve usar "%%".

Por exemplo, o padrão "foo -% *. Jpeg" irá corresponder a todos os nomes de arquivos prefixados por
"foo-" e terminando com ".jpeg", e "foo -%?%?% ?. jpeg" irá corresponder a todos os
nomes de arquivos prefixados com "foo-", seguido por uma sequência de três caracteres, e
terminando com ".jpeg".

Este tipo de padrão está obsoleto em favor de glob e seqüência.

O valor padrão é sequência_glob.

formato_pixel
Defina o formato de pixel das imagens a serem lidas. Se não for especificado, o formato do pixel é
adivinhada a partir do primeiro arquivo de imagem na sequência.

número_inicial
Defina o índice do arquivo correspondente ao padrão de arquivo de imagem para começar a ler.
O valor padrão é 0.

intervalo_número_inicial
Defina o intervalo de intervalo de índice para verificar ao procurar o primeiro arquivo de imagem no
sequência, começando de número_inicial. O valor padrão é 5.

ts_from_file
Se definido como 1, definirá o carimbo de data / hora do quadro para a hora de modificação do arquivo de imagem. Observe que
a monotonia dos carimbos de data / hora não é fornecida: as imagens vão na mesma ordem que sem isso
opção. O valor padrão é 0. Se definido como 2, definirá o timestamp do quadro para a modificação
hora do arquivo de imagem na precisão de nanossegundos.

tamanho do vídeo
Defina o tamanho do vídeo das imagens a serem lidas. Se não for especificado, o tamanho do vídeo é adivinhado
do primeiro arquivo de imagem na sequência.

Exemplos

· Usar ffmpeg para criar um vídeo a partir das imagens na sequência de arquivos img-001.jpeg,
img-002.jpeg, ..., assumindo uma taxa de quadros de entrada de 10 quadros por segundo:

ffmpeg -framerate 10 -i 'img-% 03d.jpeg' out.mkv

· Como acima, mas comece lendo um arquivo com índice 100 na sequência:

ffmpeg -framerate 10 -start_number 100 -i 'img-% 03d.jpeg' out.mkv

· Leia as imagens que correspondem ao padrão glob "* .png" loading = "lazy", ou seja, todos os arquivos que terminam com
o sufixo ".png" loading = "preguiçoso":

ffmpeg -framerate 10 -pattern_type glob -i "* .png" loading = "preguiçoso" out.mkv

mov / mp4 / 3gp / Quicktme
Demuxer Quicktime / MP4.

Este demuxer aceita as seguintes opções:

enable_drefs
Habilita o carregamento de trilhas externas, desabilitado por padrão. Habilitando isso pode
teoricamente vaza informações em alguns casos de uso.

use_absolute_path
Permite o carregamento de trilhas externas por meio de caminhos absolutos, desativado por padrão. Possibilitando
isso representa um risco de segurança. Só deve ser habilitado se a fonte for conhecida como não
malicioso.

MPEGTS
Demuxer de fluxo de transporte MPEG-2.

Este demuxer aceita as seguintes opções:

tamanho_ressincronizado
Defina o limite de tamanho para procurar uma nova sincronização. O valor padrão é 65536.

fix_teletext_pts
Substitua os valores PTS e DTS do pacote de teletexto com os carimbos de data / hora calculados a partir do
PCR do primeiro programa do qual o fluxo de teletexto faz parte e não é descartado.
O valor padrão é 1, defina esta opção para 0 se você quiser que seu pacote de teletexto PTS e DTS
valores intocados.

ts_packetsize
Opção de saída carregando o tamanho do pacote bruto em bytes. Mostra o pacote bruto detectado
tamanho, não pode ser definido pelo usuário.

scan_all_pmts
Digitalize e combine todos os PMTs. O valor é um número inteiro com valor de -1 a 1 (-1 significa
configuração automática, 1 significa habilitado, 0 significa desabilitado). O valor padrão é -1.

vídeo bruto
Demuxer de vídeo cru.

Este demuxer permite a leitura de dados de vídeo brutos. Uma vez que não há cabeçalho especificando o
parâmetros de vídeo assumidos, o usuário deve especificá-los para poder decodificar o
dados corretamente.

Este demuxer aceita as seguintes opções:

framerate
Defina a taxa de quadros do vídeo de entrada. O valor padrão é 25.

formato_pixel
Defina o formato de pixel de vídeo de entrada. O valor padrão é "yuv420p".

tamanho do vídeo
Defina o tamanho do vídeo de entrada. Este valor deve ser especificado explicitamente.

Por exemplo, para ler um arquivo rawvideo input.raw com ffplay, assumindo um formato de pixel de
"rgb24", um tamanho de vídeo de "320x240" e uma taxa de quadros de 10 imagens por segundo, use o
comando:

ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw

sbg
Demuxer de script SBaGen.

Este demuxer lê a linguagem de script usada por SBaGenhttp://uazu.net/sbagen/> para
gerar sessões de batidas binaurais. Um script SBG se parece com isso:

-AUTO
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
desligado: -
AGORA == a
+0: ​​07: 00 == b
+0: ​​14: 00 == a
+0: ​​21: 00 == b
+0: ​​30: 00 de desconto

Um script SBG pode misturar carimbos de data / hora absolutos e relativos. Se o script usar apenas
carimbos de data / hora absolutos (incluindo o horário de início do script) ou apenas relativos, então é
o layout é fixo e a conversão é direta. Por outro lado, se o script
mistura os dois tipos de carimbo de data / hora, então o Estamos referência para carimbos de data / hora relativos será
tirado da hora atual do dia no momento em que o script é lido e o layout do script
será congelado de acordo com essa referência. Isso significa que se o script for diretamente
tocado, os tempos reais corresponderão aos carimbos de data / hora absolutos até o controlador de som
precisão do relógio, mas se o usuário de alguma forma pausar a reprodução ou buscar, todos os tempos serão
mudou de acordo.

legendas
Legendas JSON usadas parahttp://www.ted.com/>.

O TED não fornece links para as legendas, mas eles podem ser adivinhados na página. o
lima tools / bookmarklets.html da árvore de origem FFmpeg contém um bookmarklet para expor
Eles.

Este demuxer aceita a seguinte opção:

hora_início
Defina a hora de início da palestra TED, em milissegundos. O padrão é 15000 (15s). Isto é
usado para sincronizar as legendas com os vídeos para download, porque eles incluem um 15s
introdução.

Exemplo: converta as legendas para um formato que a maioria dos jogadores entenda:

ffmpeg -eu http://www.ted.com/talks/subtitles/id/1/lang/en talk1-pt.srt

METADATA


O FFmpeg é capaz de despejar metadados de arquivos de mídia em um texto simples do tipo INI codificado em UTF-8
arquivo e carregue-o de volta usando o muxer / demuxer de metadados.

O formato do arquivo é o seguinte:

1. Um arquivo consiste em um cabeçalho e uma série de tags de metadados divididos em seções, cada uma
em sua própria linha.

2. O cabeçalho é um ; FFMETADATA string, seguido por um número de versão (agora 1).

3. As tags de metadados têm o formato chave = valor

4. Imediatamente após o cabeçalho segue os metadados globais

5. Após os metadados globais, pode haver seções com metadados por fluxo / por capítulo.

6. Uma seção começa com o nome da seção em maiúsculas (ou seja, STREAM ou CAPÍTULO) em
colchetes ([, ]) e termina com a próxima seção ou final do arquivo.

7. No início de uma seção de capítulo, pode haver uma base de tempo opcional a ser usada para
valores inicial / final. Deve estar na forma TIMEBASE =Números/dia, Onde Números e dia são inteiros.
Se a base de tempo estiver ausente, os tempos de início / término serão considerados em milissegundos.

A seguir, uma seção de capítulo deve conter os horários de início e término do capítulo no formulário INICIAR =Números,
END =Números, Onde Números é um número inteiro positivo.

8. Linhas vazias e linhas começando com ; or # são ignorados.

9. Chaves de metadados ou valores contendo caracteres especiais (=, ;, #, \ e uma nova linha) deve
ser escapado com uma barra invertida \.

10. Observe que os espaços em branco nos metadados (por exemplo Foo = Barra) é considerado parte do
tag (no exemplo acima a chave é Foo , o valor é
Barra).

Um arquivo ffmetadata pode ter a seguinte aparência:

; FFMETADATA1
title = bike \\ shed
; este é um comentário
artista = equipe de trolls FFmpeg

[CAPÍTULO]
TIMEBASE = 1/1000
START = 0
# capítulo termina às 0:01:00
END = 60000
título = capítulo \ # 1
[FLUXO]
title = multi \
linha

Usando o ffmetadata muxer e demuxer é possível extrair metadados de uma entrada
arquivo para um arquivo ffmetadata e, em seguida, transcodifique o arquivo em um arquivo de saída com o
arquivo ffmetadata editado.

Extraindo um arquivo ffmetadata com ffmpeg acontece da seguinte forma:

ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE

A reinserção das informações de metadados editadas do arquivo FFMETADATAFILE pode ser feita como:

ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec cópia OUTPUT

PROTOCOLOS


Os protocolos são elementos configurados no FFmpeg que permitem o acesso a recursos que requerem
protocolos específicos.

Quando você configura sua construção FFmpeg, todos os protocolos suportados são habilitados por padrão.
Você pode listar todos os disponíveis usando a opção de configuração "--list-protocolos".

Você pode desabilitar todos os protocolos usando a opção de configuração "--disable -ocols", e
habilitar seletivamente um protocolo usando a opção "--enable-protocol =PROTOCOLO", ou você pode
desabilite um protocolo particular usando a opção "--disable-protocol =PROTOCOLO".

A opção "-protocols" das ferramentas ff * exibirá a lista de protocolos suportados.

Segue uma descrição dos protocolos atualmente disponíveis.

async
Wrapper de preenchimento de dados assíncronos para fluxo de entrada.

Preencha os dados em um thread de segundo plano, para desacoplar a operação de E / S do thread de demux.

assíncrono:
assíncrono:http://host/resource
assíncrono: cache:http://host/resource

bluray
Leia a lista de reprodução BluRay.

As opções aceitas são:

ângulo
Ângulo BluRay

capítulo
Iniciar o capítulo (1 ... N)

lista
Lista de reprodução para ler (BDMV / PLAYLIST / ?????. Mpls)

Exemplos:

Leia a lista de reprodução mais longa do BluRay montado em / mnt / bluray:

bluray: / mnt / bluray

Leia o ângulo 2 da lista de reprodução 4 do BluRay montado em / mnt / bluray, comece no capítulo 2:

-lista de reprodução 4 -angle 2 -capítulo 2 bluray: / mnt / bluray

esconderijo
Wrapper de cache para fluxo de entrada.

Armazene o fluxo de entrada em um arquivo temporário. Traz capacidade de busca para transmissões ao vivo.

cache:

concat
Protocolo de concatenação física.

Leia e busque muitos recursos em sequência, como se fossem um recurso único.

Um URL aceito por este protocolo tem a sintaxe:

concat: | | ... |

onde URL1, URL2, ..., URLN são os urls do recurso a ser concatenado, cada um
possivelmente especificando um protocolo distinto.

Por exemplo, para ler uma sequência de arquivos split1.mpeg, split2.mpeg, split3.mpeg com ffplay
use o comando:

concat ffplay: split1.mpeg \ | split2.mpeg \ | split3.mpeg

Observe que pode ser necessário escapar o caractere "|" que é especial para muitas conchas.

cripto
Protocolo de leitura de fluxo criptografado AES.

As opções aceitas são:

chave Defina o bloco binário da chave de descriptografia AES a partir da representação hexadecimal fornecida.

iv Defina o bloco binário do vetor de inicialização de descriptografia AES do hexadecimal fornecido
representação.

Formatos de URL aceitos:

cripto:
cripto +

dados,
Dados in-line no URI. Verhttp://en.wikipedia.org/wiki/Data_URI_scheme>.

Por exemplo, para converter um arquivo GIF fornecido em linha com ffmpeg:

ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png

lima
Protocolo de acesso ao arquivo.

Ler ou gravar em um arquivo.

O URL de um arquivo pode ter o formato:

Arquivo:

onde nome do arquivo é o caminho do arquivo a ser lido.

Um URL que não possui um prefixo de protocolo será considerado um URL de arquivo. Dependendo
o build, um URL que se parece com um caminho do Windows com a letra da unidade no início
também será assumido como sendo um URL de arquivo (normalmente não é o caso em compilações do tipo Unix
sistemas).

Por exemplo, para ler de um arquivo entrada.mpeg com ffmpeg use o comando:

arquivo ffmpeg -i: input.mpeg output.mpeg

Este protocolo aceita as seguintes opções:

truncar
Truncar arquivos existentes na gravação, se definido como 1. Um valor de 0 evita o truncamento.
O valor padrão é 1.

tamanho do bloco
Defina o tamanho máximo do bloco da operação de E / S, em bytes. O valor padrão é "INT_MAX", que
resulta em não limitar o tamanho do bloco solicitado. Definir este valor razoavelmente baixo
melhora o tempo de reação da solicitação de encerramento do usuário, o que é valioso para arquivos em
médio.

ftp
FTP (protocolo de transferência de arquivos).

Leia ou escreva em recursos remotos usando o protocolo FTP.

A seguinte sintaxe é necessária.

ftp: // [usuário [: senha] @] servidor [: porta] /path/to/remote/resource.mpeg

Este protocolo aceita as seguintes opções.

tempo limite
Defina o tempo limite em microssegundos de operações de I / O de soquete usadas pelo nível baixo subjacente
Operação. Por padrão, é definido como -1, o que significa que o tempo limite não foi especificado.

ftp-senha anônima
Senha usada ao fazer login como usuário anônimo. Normalmente, um endereço de e-mail deve ser
usava.

ftp-write-searchable
Controle a busca da conexão durante a codificação. Se definido como 1, o recurso é
suposto ser pesquisável, se definido como 0 é assumido como não pesquisável. Valor padrão
é 0.

NOTA: O protocolo pode ser usado como saída, mas é recomendado não fazê-lo, a menos que seja especial
cuidado é tomado (testes, configuração personalizada do servidor, etc.). Diferentes servidores FTP se comportam
de maneira diferente durante a operação de busca. As ferramentas ff * podem produzir conteúdo incompleto devido a
limitações do servidor.

gopher
Protocolo Gopher.

hls
Leia o fluxo segmentado compatível com Apple HTTP Live Streaming como um uniforme. O M3U8
listas de reprodução que descrevem os segmentos podem ser recursos HTTP remotos ou arquivos locais, acessados
usando o protocolo de arquivo padrão. O protocolo aninhado é declarado especificando "+proto"
após o nome do esquema de URI hls, onde proto é "arquivo" ou "http".

hls +http://host/path/to/remote/resource.m3u8
hls + arquivo: //path/to/local/resource.m3u8

O uso deste protocolo é desencorajado - o demuxer hls deve funcionar tão bem (se não,
informe os problemas) e é mais completo. Para usar o demuxer hls, basta
use os URLs diretos para os arquivos m3u8.

http
HTTP (protocolo de transferência de hipertexto).

Este protocolo aceita as seguintes opções:

procurável
Controle de busca de conexão. Se definido como 1, o recurso deve ser
buscável, se definido como 0 é assumido como não procurável, se definido como -1 ele tentará
autodetectar se for pesquisável. O valor padrão é -1.

postagem_pedaço
Se definido como 1, use a codificação de transferência em partes para as postagens, o padrão é 1.

tipo de conteúdo
Defina um tipo de conteúdo específico para as mensagens POST.

cabeçalhos
Definir cabeçalhos HTTP personalizados, pode substituir cabeçalhos padrão integrados. O valor deve ser um
string que codifica os cabeçalhos.

múltiplas_requests
Use conexões persistentes se definido como 1, o padrão é 0.

dados de postagem
Defina dados de postagem HTTP personalizados.

facilidade de agente
user_agent
Substitua o cabeçalho User-Agent. Se não for especificado, o protocolo usará uma string
descrevendo a construção do libavformat. ("Lavf / ")

tempo limite
Defina o tempo limite em microssegundos de operações de I / O de soquete usadas pelo nível baixo subjacente
Operação. Por padrão, é definido como -1, o que significa que o tempo limite não foi especificado.

mime_type
Exporte o tipo MIME.

gelado Se definido como 1, solicite metadados ICY (SHOUTcast) do servidor. Se o servidor suportar
isso, os metadados devem ser recuperados pelo aplicativo lendo o
ice_metadata_headers e ice_metadata_packet opções. O padrão é 1.

ice_metadata_headers
Se o servidor suportar metadados ICY, ele conterá a resposta HTTP específica de ICY
cabeçalhos, separados por caracteres de nova linha.

ice_metadata_packet
Se o servidor suportar metadados ICY, e gelado foi definido como 1, contém o último
pacote de metadados vazio enviado pelo servidor. Deve ser pesquisado em intervalos regulares por
aplicativos interessados ​​em atualizações de metadados mid-stream.

bolinhos
Defina os cookies a serem enviados em solicitações futuras. O formato de cada cookie é o mesmo
como o valor de um campo de resposta HTTP Set-Cookie. Vários cookies podem ser delimitados por
um caractere de nova linha.

compensar
Defina o deslocamento inicial do byte.

end_offset
Tente limitar a solicitação a bytes anteriores a esse deslocamento.

método
Quando usado como uma opção do cliente, ele define o método HTTP para a solicitação.

Quando usado como uma opção de servidor, ele define o método HTTP que será esperado do
os clientes). Se o método HTTP esperado e o recebido não corresponderem ao do cliente
receberá uma resposta Bad Request. Quando não definido, o método HTTP não é verificado para
agora. Isso será substituído pela detecção automática no futuro.

ouço
Se definido como 1, ativa o servidor HTTP experimental. Isso pode ser usado para enviar dados quando usado
como uma opção de saída, ou ler dados de um cliente com HTTP POST quando usado como uma entrada
opção. Se definido como 2, ativa o servidor HTTP experimental de vários clientes. Ainda não é
implementado em ffmpeg.c ou ffserver.c e, portanto, não deve ser usado como uma linha de comando
opção.

# Lado do servidor (envio):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http: // :

# Lado do cliente (recebimento):
ffmpeg -i http: // : -c copiar somefile.ogg

# O cliente também pode ser feito com wget:
wget http: // : -O somefile.ogg

# Lado do servidor (recebimento):
ffmpeg -listen 1 -i http: // : -c copiar somefile.ogg

# Lado do cliente (envio):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http: // :

# O cliente também pode ser feito com wget:
wget --post-file = somefile.ogg http: // :

HTTP Cookies

Algumas solicitações HTTP serão negadas, a menos que os valores do cookie sejam passados ​​com a solicitação. o
bolinhos opção permite que esses cookies sejam especificados. No mínimo, cada cookie deve
especifique um valor junto com um caminho e domínio. Solicitações HTTP que correspondem ao domínio
e o caminho incluirá automaticamente o valor do cookie no campo de cabeçalho do cookie HTTP.
Vários cookies podem ser delimitados por uma nova linha.

A sintaxe necessária para reproduzir um fluxo especificando um cookie é:

ffplay -cookies "nlqptid = nltid = tsn; caminho = /; domínio = somedomain.com;" http://somedomain.com/somestream.m3u8

Icecast
Protocolo Icecast (transmitir para servidores Icecast)

Este protocolo aceita as seguintes opções:

gênero_gelo
Defina o gênero do stream.

nome_gelo
Defina o nome do stream.

gelo_descrição
Defina a descrição do stream.

gelo_url
Defina o URL do site do stream.

gelo_público
Defina se o stream deve ser público. O padrão é 0 (não público).

user_agent
Substitua o cabeçalho User-Agent. Se não for especificado, uma string no formato "Lavf / "
será usada.

senha
Defina a senha do ponto de montagem do Icecast.

tipo de conteúdo
Defina o tipo de conteúdo do stream. Deve ser definido se for diferente de audio / mpeg.

legado_icecast
Isso ativa o suporte para versões do Icecast <2.4.0, que não são compatíveis com HTTP PUT
método, mas o método SOURCE.

icecast: // [ [: ] @] : /

mmst
Protocolo MMS (Microsoft Media Server) sobre TCP.

mmsh
Protocolo MMS (Microsoft Media Server) sobre HTTP.

A sintaxe necessária é:

mmsh: // [: ] [/ ] [/ ]

md5
Protocolo de saída MD5.

Calcula o hash MD5 dos dados a serem gravados e, ao fechar, grava isso no
saída designada ou stdout se nenhum for especificado. Pode ser usado para testar muxers sem
escrever um arquivo real.

Seguem alguns exemplos.

# Grave o hash MD5 do arquivo AVI codificado no arquivo output.avi.md5.
ffmpeg -i input.flv -f avi -y md5: output.avi.md5

# Grave o hash MD5 do arquivo AVI codificado no stdout.
ffmpeg -i entrada.flv -f avi -y md5:

Observe que alguns formatos (normalmente MOV) requerem que o protocolo de saída seja pesquisável, então eles
irá falhar com o protocolo de saída MD5.

tubo
Protocolo de acesso ao canal UNIX.

Leia e escreva a partir de canais UNIX.

A sintaxe aceita é:

tubo:[ ]

número é o número correspondente ao descritor de arquivo do tubo (por exemplo, 0 para stdin, 1
para stdout, 2 para stderr). Se número não é especificado, por padrão, o arquivo stdout
o descritor será usado para escrita, stdin para leitura.

Por exemplo, para ler stdin com ffmpeg:

cat test.wav | ffmpeg -i pipe: 0
# ... isso é o mesmo que ...
cat test.wav | tubo ffmpeg -i:

Para escrever para stdout com ffmpeg:

ffmpeg -i test.wav -f avi pipe: 1 | cat> test.avi
# ... isso é o mesmo que ...
ffmpeg -i test.wav -f avi pipe: | cat> test.avi

Este protocolo aceita as seguintes opções:

tamanho do bloco
Defina o tamanho máximo do bloco da operação de E / S, em bytes. O valor padrão é "INT_MAX", que
resulta em não limitar o tamanho do bloco solicitado. Definir este valor razoavelmente baixo
melhora o tempo de reação da solicitação de rescisão do usuário, o que é valioso se os dados
a transmissão é lenta.

Observe que alguns formatos (normalmente MOV), requerem que o protocolo de saída seja pesquisável, então
eles falharão com o protocolo de saída do pipe.

rtmp
Protocolo de mensagens em tempo real.

O Real-Time Messaging Protocol (RTMP) é usado para streaming de conteúdo multimídia em um
Rede TCP / IP.

A sintaxe necessária é:

rtmp: // [ : @] [: ] [/ ] [/ ] [/ ]

Os parâmetros aceitos são:

nome de usuário
Um nome de usuário opcional (principalmente para publicação).

senha
Uma senha opcional (principalmente para publicação).

servidor
O endereço do servidor RTMP.

porta
O número da porta TCP a ser usada (o padrão é 1935).

app É o nome do aplicativo a ser acessado. Geralmente corresponde ao caminho onde
o aplicativo é instalado no servidor RTMP (por exemplo /sob demanda/, / flash / live /, Etc.)
Você também pode substituir o valor analisado do URI por meio da opção "rtmp_app".

caminho de jogo
É o caminho ou nome do recurso a ser reproduzido com referência ao aplicativo
Especificado em app, pode ser prefixado por "mp4:". Você pode substituir o valor analisado de
o URI por meio da opção "rtmp_playpath" também.

ouço
Atua como um servidor, ouvindo uma conexão de entrada.

tempo limite
Tempo máximo de espera pela conexão de entrada. Implica ouvir.

Além disso, os parâmetros a seguir podem ser definidos por meio de opções de linha de comando (ou no código por meio de
"AVOption" s):

rtmp_app
Nome do aplicativo a ser conectado ao servidor RTMP. Esta opção substitui o parâmetro
especificado no URI.

rtmp_buffer
Defina o tempo de buffer do cliente em milissegundos. O padrão é 3000.

rtmp_conn
Parâmetros de conexão AMF arbitrários extras, analisados ​​a partir de uma string, por exemplo, como "B: 1
S: authMe O: 1 NN: código: 1.23 NS: sinalizador: ok O: 0 ". Cada valor é prefixado por um único
caractere que denota o tipo, B para booleano, N para número, S para string, O para objeto,
ou Z para nulo, seguido por dois pontos. Para booleanos, os dados devem ser 0 ou 1 para
FALSE ou TRUE, respectivamente. Da mesma forma para objetos, os dados devem ser 0 ou 1 para terminar ou
começar um objeto, respectivamente. Os itens de dados em subobjetos podem ser nomeados, prefixando o
digite com 'N' e especifique o nome antes do valor (ou seja, "NB: myFlag: 1"). Esse
A opção pode ser usada várias vezes para construir sequências AMF arbitrárias.

rtmp_flashver
Versão do plugin Flash usado para executar o reprodutor SWF. O padrão é LNX 9,0,124,2.
(Ao publicar, o padrão é FMLE / 3.0 (compatível; ).)

rtmp_flush_interval
Número de pacotes liberados na mesma solicitação (somente RTMPT). O padrão é 10.

rtmp_live
Especifique que a mídia é uma transmissão ao vivo. Não retomar ou buscar em transmissões ao vivo é
possível. O valor padrão é "qualquer", o que significa que o assinante primeiro tenta jogar
a transmissão ao vivo especificada no caminho de jogo. Se uma transmissão ao vivo com esse nome não for encontrada,
ele reproduz o fluxo gravado. Os outros valores possíveis são "ao vivo" e "gravado".

rtmp_pageurl
URL da página da web na qual a mídia foi incorporada. Por padrão, nenhum valor será enviado.

rtmp_playpath
Identificador de fluxo para reproduzir ou publicar. Esta opção substitui o parâmetro especificado
no URI.

rtmp_subscribe
Nome da transmissão ao vivo para se inscrever. Por padrão, nenhum valor será enviado. É só
enviado se a opção for especificada ou se rtmp_live for definido como live.

rtmp_swfhash
Hash SHA256 do arquivo SWF descompactado (32 bytes).

rtmp_swfsize
Tamanho do arquivo SWF descompactado, necessário para SWFVerification.

rtmp_swfurl
URL do player SWF para a mídia. Por padrão, nenhum valor será enviado.

rtmp_swfverify
URL para o arquivo swf do jogador, calcule o hash / tamanho automaticamente.

rtmp_tcurl
URL do stream de destino. O padrão é proto: // host [: porta] / app.

Por exemplo, para ler com ffplay um recurso multimídia chamado "amostra" do aplicativo
"vod" de um servidor RTMP "myserver":

ffplay rtmp: // myserver / vod / sample

Para publicar em um servidor protegido por senha, passando os nomes do playpath e do aplicativo separadamente:

ffmpeg -re -i -f flv -rtmp_playpath some / long / path -rtmp_app long / app / name rtmp: // nome de usuário: senha @ myserver /

rtmp
Protocolo de mensagens em tempo real criptografado.

O protocolo de mensagens em tempo real criptografado (RTMPE) é usado para streaming de multimídia
conteúdo em primitivas criptográficas padrão, consistindo em chave Diffie-Hellman
troca e HMACSHA256, gerando um par de chaves RC4.

rtmps
Protocolo de mensagens em tempo real por meio de uma conexão SSL segura.

O protocolo de mensagens em tempo real (RTMPS) é usado para streaming de conteúdo multimídia em
uma conexão criptografada.

rtmpt
Protocolo de mensagens em tempo real encapsulado por meio de HTTP.

O protocolo de mensagens em tempo real encapsulado por HTTP (RTMPT) é usado para streaming
conteúdo multimídia em solicitações HTTP para atravessar firewalls.

rtmpte
Protocolo de mensagens em tempo real criptografado encapsulado por meio de HTTP.

O protocolo de mensagens em tempo real criptografado encapsulado por meio de HTTP (RTMPTE) é usado para
streaming de conteúdo multimídia em solicitações HTTP para atravessar firewalls.

rtmpts
Protocolo de mensagens em tempo real encapsulado por meio de HTTPS.

O protocolo de mensagens em tempo real encapsulado por meio de HTTPS (RTMPTS) é usado para streaming
conteúdo multimídia em solicitações HTTPS para atravessar firewalls.

libsmbclient
libsmbclient permite manipular recursos de rede CIFS / SMB.

A seguinte sintaxe é necessária.

smb: // [[domínio:] usuário [: senha @]] servidor [/ compartilhamento [/ caminho [/ arquivo]]]

Este protocolo aceita as seguintes opções.

tempo limite
Defina o tempo limite em milissegundos de operações de I / O de soquete usadas pelo nível baixo subjacente
Operação. Por padrão, é definido como -1, o que significa que o tempo limite não foi especificado.

truncar
Truncar arquivos existentes na gravação, se definido como 1. Um valor de 0 evita o truncamento.
O valor padrão é 1.

grupo de trabalho
Defina o grupo de trabalho usado para fazer conexões. Por padrão, o grupo de trabalho não é especificado.

Para mais informações, veja:http://www.samba.org/>.

libsh
Protocolo de transferência segura de arquivos via libssh

Leia ou grave em recursos remotos usando o protocolo SFTP.

A seguinte sintaxe é necessária.

sftp: // [usuário [: senha] @] servidor [: porta] /path/to/remote/resource.mpeg

Este protocolo aceita as seguintes opções.

tempo limite
Defina o tempo limite de operações de E / S de soquete usadas pela operação de baixo nível subjacente. Por
o padrão é definido como -1, o que significa que o tempo limite não foi especificado.

truncar
Truncar arquivos existentes na gravação, se definido como 1. Um valor de 0 evita o truncamento.
O valor padrão é 1.

chave privada
Especifique o caminho do arquivo que contém a chave privada a ser usada durante a autorização. Por
libssh padrão procura por chaves no ~ / .ssh / diretório.

Exemplo: reproduza um arquivo armazenado em um servidor remoto.

ffplaysftp: // usuário: senha @ endereço_do_servidor: 22 / home / usuário / recurso.mpeg

librtmp rtmp, rtmpe, rtmps, rtmpt, rtmpte
Protocolo de mensagens em tempo real e suas variantes com suporte por meio de librtmp.

Requer a presença dos cabeçalhos e biblioteca librtmp durante a configuração. Você precisa
configure explicitamente a construção com "--enable-librtmp". Se ativado, isso substituirá o
protocolo RTMP nativo.

Este protocolo fornece a maioria das funções de cliente e algumas funções de servidor necessárias para oferecer suporte
RTMP, RTMP encapsulado em HTTP (RTMPT), RTMP criptografado (RTMPE), RTMP sobre SSL / TLS (RTMPS) e
variantes encapsuladas desses tipos criptografados (RTMPTE, RTMPTS).

A sintaxe necessária é:

: // [: ] [/ ] [/ ]

onde rtmp_proto é uma das cadeias de caracteres "rtmp", "rtmpt", "rtmpe", "rtmps", "rtmpte",
"rtmpts" correspondente a cada variante RTMP, e servidor, porta, app e caminho de jogo têm o
mesmo significado conforme especificado para o protocolo nativo RTMP. opções contém uma lista de espaço-
opções separadas do formulário chave=onda.

Veja a página de manual librtmp (man 3 librtmp) para mais informações.

Por exemplo, para transmitir um arquivo em tempo real para um servidor RTMP usando ffmpeg:

ffmpeg -re -i meuarquivo -f flv rtmp: // myserver / live / mystream

Para reproduzir o mesmo fluxo usando ffplay:

ffplay "rtmp: // myserver / live / mystream live = 1"

rtp
Protocolo de transporte em tempo real.

A sintaxe necessária para um URL RTP é: rtp: //hostname[:porta] [?opção=onda...]

porta especifica a porta RTP a ser usada.

As seguintes opções de URL são suportadas:

ttl =n
Defina o valor TTL (Time-To-Live) (somente para multicast).

rtcpport =n
Defina a porta RTCP remota para n.

localrtpport =n
Defina a porta RTP local para n.

localrtcpport =n'
Defina a porta RTCP local para n.

pkt_size =n
Defina o tamanho máximo do pacote (em bytes) para n.

conectar = 0 | 1
Faça um "conectar ()" no soquete UDP (se definido como 1) ou não (se definido como 0).

fontes =ip[,ip]
Lista os endereços IP de origem permitidos.

bloco =ip[,ip]
Lista os endereços IP de origem não permitidos (bloqueados).

write_to_source = 0 | 1
Envie pacotes para o endereço de origem do último pacote recebido (se definido como 1) ou para um
endereço remoto padrão (se definido como 0).

localport =n
Defina a porta RTP local para n.

Esta é uma opção obsoleta. Em vez de, localrtpport deve ser usado.

Anotações importantes:

1. E se rtcpport não estiver definido, a porta RTCP será definida para o valor da porta RTP mais 1.

2. E se localrtpport (a porta RTP local) não está definida, nenhuma porta disponível será usada para
as portas RTP e RTCP locais.

3. E se localrtcpport (a porta RTCP local) não está configurada, será configurada para a porta RTP local
valor mais 1.

rtsp
Protocolo de transmissão em tempo real.

RTSP não é tecnicamente um manipulador de protocolo em libavformat, é um demuxer e muxer. O
demuxer suporta RTSP normal (com dados transferidos por RTP; isto é usado por ex.
Apple e Microsoft) e Real-RTSP (com dados transferidos por RDT).

O muxer pode ser usado para enviar um fluxo usando RTSP ANNOUNCE para um servidor que o suporte
(atualmente Darwin Streaming Server e Mischa Spiegelmock's
<https://github.com/revmischa/rtsp-server>).

A sintaxe necessária para um url RTSP é:

rtsp: // [: ] /

As opções podem ser definidas no ffmpeg/ffplay linha de comando, ou definido no código via "AVOption" s ou em
"avformat_open_input".

As seguintes opções são suportadas.

pausa_inicial
Não comece a reproduzir o stream imediatamente se estiver definido como 1. O valor padrão é 0.

rtsp_transport
Defina os protocolos de transporte RTSP.

Ele aceita os seguintes valores:

udp Use UDP como protocolo de transporte inferior.

tcp Use TCP (intercalação dentro do canal de controle RTSP) como transporte inferior
protocolo.

udp_multicast
Use UDP multicast como protocolo de transporte inferior.

http
Use o túnel HTTP como protocolo de transporte inferior, o que é útil para passar
procurações.

Vários protocolos de transporte inferiores podem ser especificados, nesse caso, eles são tentados um
de cada vez (se a configuração de um falhar, o próximo é tentado). Para o muxer, apenas o
tcp e udp opções são suportadas.

rtsp_flags
Defina sinalizadores RTSP.

Os seguintes valores são aceitos:

filtro_src
Aceite pacotes apenas de endereço e porta de mesmo nível negociado.

ouço
Atua como um servidor, ouvindo uma conexão de entrada.

prefira_tcp
Tente primeiro o TCP para transporte RTP, se o TCP estiver disponível como transporte RTSP RTP.

O valor padrão é Nenhum.

permitidos_media_types
Defina os tipos de mídia para aceitar do servidor.

Os seguintes sinalizadores são aceitos:

vídeo
auditivo
dados,

Por padrão, ele aceita todos os tipos de mídia.

min_port
Defina a porta UDP local mínima. O valor padrão é 5000.

max_port
Defina a porta UDP local máxima. O valor padrão é 65000.

tempo limite
Defina o tempo limite máximo (em segundos) para aguardar as conexões de entrada.

Um valor de -1 significa infinito (padrão). Esta opção implica o rtsp_flags definido para
ouço.

reorder_queue_size
Defina o número de pacotes para armazenar em buffer para manipulação de pacotes reordenados.

tempo limite
Defina o tempo limite de E / S do soquete TCP em microssegundos.

facilidade de agente
Substituir o cabeçalho do agente do usuário. Se não for especificado, o padrão é libavformat
string de identificador.

Ao receber dados sobre UDP, o demuxer tenta reordenar os pacotes recebidos (uma vez que eles
podem chegar fora de serviço ou os pacotes podem se perder totalmente). Isso pode ser desabilitado definindo
o atraso máximo de demuxing para zero (por meio do campo "max_delay" de AVFormatContext).

Ao assistir streams Real-RTSP com múltiplas taxas de bits com ffplay, os fluxos a serem exibidos podem ser
escolhido com "-vst" n e "-ast" n para vídeo e áudio, respectivamente, e pode ser ligado
a mosca pressionando "v" e "a".

Exemplos

Todos os exemplos a seguir fazem uso do ffplay e ffmpeg ferramentas.

· Assistir a uma transmissão via UDP, com um atraso máximo de reordenamento de 0.5 segundos:

ffplay -max_delay 500000 -rtsp_transport udp rtsp: //server/video.mp4

· Assistir a um fluxo encapsulado em HTTP:

ffplay -rtsp_transport http rtsp: //server/video.mp4

· Envie um stream em tempo real para um servidor RTSP, para que outros assistam:

ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp: //server/live.sdp

· Receba um stream em tempo real:

ffmpeg -rtsp_flags listen -i rtsp: //ownaddress/live.sdp

seiva
Protocolo de anúncio de sessão (RFC 2974). Este não é tecnicamente um manipulador de protocolo em
libavformat, é um muxer e demuxer. É usado para sinalização de fluxos RTP, por
anunciar o SDP para os fluxos regularmente em uma porta separada.

mulher

A sintaxe para um URL SAP fornecido ao muxer é:

seiva:// [: ] [? ]

Os pacotes RTP são enviados para destino no porto portaou para a porta 5004 se nenhuma porta for
Especificadas. opções é uma lista separada por "&". As seguintes opções são suportadas:

announce_addr =endereço
Especifique o endereço IP de destino para enviar os anúncios. Se omitido, o
os anúncios são enviados para o endereço multicast de anúncio SAP comumente usado
224.2.127.254 (sap.mcast.net), ou ff0e :: 2: 7ffe se destino é um endereço IPv6.

announce_port =porta
Especifique a porta para enviar os anúncios; o padrão é 9875 se não for especificado.

ttl =ttl
Especifique o valor de tempo de vida para os anúncios e pacotes RTP, o padrão é 255.

same_port =0 | 1
Se definido como 1, envia todos os fluxos RTP no mesmo par de portas. Se zero (o padrão), todos
streams são enviados em portas exclusivas, com cada stream em um número de porta 2 maior do que o
anterior. VLC / Live555 requer que seja definido como 1, para poder receber o fluxo.
A pilha RTP em formato libav para recebimento requer que todos os fluxos sejam enviados em um único
Portos.

Seguem exemplos de linhas de comando.

Para transmitir um fluxo na sub-rede local, para assistir no VLC:

ffmpeg -re -i -f sap sap: //224.0.0.255? same_port = 1

Da mesma forma, para assistir em ffplay:

ffmpeg -re -i -f sap sap: //224.0.0.255

E para assistir em ffplay, sobre IPv6:

ffmpeg -re -i -f sap sap: // [ff0e :: 1: 2: 3: 4]

Desmuxer

A sintaxe para um URL SAP fornecido ao demuxer é:

seiva://[ ] [: ]

endereço é o endereço multicast para ouvir anúncios, se omitido, o padrão
224.2.127.254 (sap.mcast.net) é usado. porta é a porta ouvida, 9875 se
omitido.

O demuxers escuta os anúncios no endereço e porta fornecidos. Uma vez
anúncio for recebido, ele tenta receber aquele fluxo específico.

Seguem exemplos de linhas de comando.

Para reproduzir o primeiro stream anunciado no endereço multicast SAP normal:

ffplay sap: //

Para reproduzir o primeiro stream anunciado em um endereço multicast SAP IPv6 padrão:

ffplay sap: // [ff0e :: 2: 7ffe]

sctp
Protocolo de transmissão de controle de fluxo.

A sintaxe de URL aceita é:

sctp: // : [? ]

O protocolo aceita as seguintes opções:

ouço
Se definido com qualquer valor, escuta uma conexão de entrada. A conexão de saída é feita por
padrão.

max_streams
Defina o número máximo de fluxos. Por padrão, nenhum limite é definido.

SrTP
Protocolo de transporte seguro em tempo real.

As opções aceitas são:

srtp_in_suite
srtp_out_suite
Selecione conjuntos de codificação de entrada e saída.

Valores suportados:

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
Defina os parâmetros de codificação de entrada e saída, que são expressos por um codificado em base64
representação de um bloco binário. Os primeiros 16 bytes deste bloco binário são usados ​​como
chave mestra, os seguintes 14 bytes são usados ​​como sal mestra.

subarquivo
Extraia virtualmente um segmento de um arquivo ou outro fluxo. O fluxo subjacente deve ser
procurável.

Opções aceitas:

começo
Comece o deslocamento do segmento extraído, em bytes.

final Deslocamento final do segmento extraído, em bytes.

Exemplos:

Extraia um capítulo de um arquivo DVD VOB (setores inicial e final obtidos externamente e
multiplicado por 2048):

subarquivo ,, início, 153391104, fim, 268142592 ,,: / media / dvd / VIDEO_TS / VTS_08_1.VOB

Reproduza um arquivo AVI diretamente de um arquivo TAR:

subarquivo ,, start, 183241728, end, 366490624 ,,: archive.tar

tcp
Protocolo de Controle de Transmissão.

A sintaxe necessária para um url TCP é:

tcp: // : [? ]

opções contém uma lista de & opções separadas do formulário chave=onda.

A lista de opções com suporte segue.

ouvir =1 | 0
Ouça uma conexão de entrada. O valor padrão é 0.

tempo limite =microssegundos
Defina o tempo limite de erro de aumento, expresso em microssegundos.

Esta opção só é relevante no modo de leitura: se nenhum dado chegou em mais do que este tempo
intervalo, aumento de erro.

listen_timeout =milissegundos
Defina o tempo limite de escuta, expresso em milissegundos.

O exemplo a seguir mostra como configurar uma conexão TCP de escuta com ffmpeg, o que é
então acessado com ffplay:

ffmpeg -i -f tcp: // : ?ouço
ffplay tcp: // :

tls
Segurança da camada de transporte (TLS) / Secure Sockets Layer (SSL)

A sintaxe necessária para um url TLS / SSL é:

tls: // : [? ]

Os seguintes parâmetros podem ser definidos por meio de opções de linha de comando (ou em código por meio de "AVOption" s):

ca_arquivo, cafile =nome do arquivo
Um arquivo contendo certificados raiz de autoridade de certificação (CA) para tratar como confiáveis. Se
a biblioteca TLS vinculada contém um padrão que pode não precisar ser especificado para
verificação para funcionar, mas nem todas as bibliotecas e configurações têm padrões embutidos.
o arquivo deve estar no formato OpenSSL PEM.

tls_verify =1 | 0
Se habilitado, tente verificar o par com o qual estamos nos comunicando. Observe, se estiver usando
OpenSSL, isso atualmente só garante que o certificado de mesmo nível seja assinado por um dos
os certificados raiz no banco de dados CA, mas não valida que o
certificado realmente corresponde ao nome do host ao qual estamos tentando nos conectar. (Com GnuTLS,
o nome do host também é validado.)

Isso é desabilitado por padrão, pois requer que um banco de dados CA seja fornecido pelo
chamador em muitos casos.

arquivo_cert, cert =nome do arquivo
Um arquivo contendo um certificado a ser usado no handshake com o par. (Quando
operando como servidor, no modo de escuta, isso é mais frequentemente exigido pelo par, enquanto
certificados de cliente são obrigatórios apenas em certas configurações.)

arquivo_chave, chave =nome do arquivo
Um arquivo que contém a chave privada do certificado.

ouvir =1 | 0
Se habilitado, escuta as conexões na porta fornecida e assume a função de servidor em
o aperto de mão em vez da função do cliente.

Exemplo de linhas de comando:

Para criar um servidor TLS / SSL que serve um fluxo de entrada.

ffmpeg -i -f tls: // : ? ouvir & cert = & chave =

Para reproduzir um fluxo do servidor TLS / SSL usando ffplay:

ffplay tls: // :

udp
Protocolo de datagrama do usuário.

A sintaxe necessária para um URL UDP é:

udp: // : [? ]

opções contém uma lista de & opções separadas do formulário chave=onda.

Caso o threading esteja habilitado no sistema, um buffer circular é usado para armazenar o
dados de entrada, o que permite reduzir a perda de dados devido a saturações de buffer de soquete UDP.
A tamanho_fifo e superação_não fatal as opções estão relacionadas a este buffer.

A lista de opções com suporte segue.

buffer_size =tamanho
Defina o tamanho máximo do buffer de soquete UDP em bytes. Isso é usado para definir o
receber ou enviar tamanho do buffer, dependendo para que o socket é usado. O padrão é
64 KB. Veja também tamanho_fifo.

localport =porta
Substitua a porta UDP local para vincular.

localaddr =addr
Escolha o endereço IP local. Isso é útil, por exemplo, se enviar multicast e o host tiver
interfaces múltiplas, onde o usuário pode escolher por qual interface enviar
especificando o endereço IP dessa interface.

pkt_size =tamanho
Defina o tamanho em bytes dos pacotes UDP.

reutilizar =1 | 0
Permitir ou proibir explicitamente a reutilização de soquetes UDP.

ttl =ttl
Defina o valor de tempo de vida (apenas para multicast).

conectar =1 | 0
Inicialize o soquete UDP com "connect ()". Neste caso, o endereço de destino
não pode ser alterado com ff_udp_set_remote_url posteriormente. Se o endereço de destino não for
conhecida no início, esta opção também pode ser especificada em ff_udp_set_remote_url. Isto
permite descobrir o endereço de origem dos pacotes com getsockname, e faz
escreve return com AVERROR (ECONNREFUSED) se "destino inacessível" for recebido.
Para receber, isso dá o benefício de apenas receber pacotes do especificado
endereço / porta do par.

fontes =endereço[,endereço]
Receber apenas pacotes enviados para o grupo multicast de um dos IPs do remetente especificado
Endereços.

bloco =endereço[,endereço]
Ignora os pacotes enviados ao grupo multicast dos endereços IP do remetente especificados.

fifo_size =unidades
Defina o tamanho do buffer circular de recebimento de UDP, expresso como um número de pacotes com tamanho
de 188 bytes. Se não for especificado, o padrão é 7 * 4096.

overrun_nonfatal =1 | 0
Sobreviver no caso de UDP receber saturação de buffer circular. O valor padrão é 0.

tempo limite =microssegundos
Defina o tempo limite de erro de aumento, expresso em microssegundos.

Esta opção só é relevante no modo de leitura: se nenhum dado chegou em mais do que este tempo
intervalo, aumento de erro.

broadcast =1 | 0
Permitir ou proibir explicitamente a transmissão UDP.

Observe que a transmissão pode não funcionar corretamente em redes com uma tempestade de transmissão
protecção.

Exemplos

· Usar ffmpeg para transmitir via UDP para um endpoint remoto:

ffmpeg -i -f udp: // :

· Usar ffmpeg para transmitir em formato MPEGTS sobre UDP usando pacotes UDP de 188 tamanhos, usando um
buffer de entrada grande:

ffmpeg -i -f mpegts udp: // : ? pkt_size = 188 & buffer_size = 65535

· Usar ffmpeg para receber por UDP de um endpoint remoto:

ffmpeg -i udp: // [ ]: ...

unix
Soquete local Unix

A sintaxe necessária para um URL de soquete Unix é:

unix: //

Os seguintes parâmetros podem ser definidos por meio de opções de linha de comando (ou em código por meio de "AVOption" s):

tempo limite
Tempo limite em ms.

ouço
Crie o soquete Unix no modo de escuta.

DISPOSITIVO OPÇÕES


A biblioteca libavdevice fornece a mesma interface que libavformat. Ou seja, uma entrada
dispositivo é considerado como um demuxer e um dispositivo de saída como um muxer, e a interface
e as opções genéricas do dispositivo são as mesmas fornecidas pelo libavformat (veja os formatos ffmpeg
manual).

Além disso, cada dispositivo de entrada ou saída pode suportar as chamadas opções privadas, que são
específico para esse componente.

As opções podem ser definidas especificando -opção valor nas ferramentas FFmpeg, ou definindo o
valor explicitamente nas opções "AVFormatContext" do dispositivo ou usando o libavutil / opt.h API
para uso programático.

INPUT DISPOSITIVOS


Os dispositivos de entrada são elementos configurados no FFmpeg que permitem acessar os dados que chegam
de um dispositivo multimídia conectado ao seu sistema.

Quando você configura sua construção FFmpeg, todos os dispositivos de entrada suportados são ativados por
predefinição. Você pode listar todos os disponíveis usando a opção de configuração "--list-indevs".

Você pode desabilitar todos os dispositivos de entrada usando a opção de configuração "--disable-indevs", e
habilitar seletivamente um dispositivo de entrada usando a opção "--enable-indev =INDEV", ou você pode
desabilite um dispositivo de entrada particular usando a opção "--disable-indev =INDEV".

A opção "-dispositivos" das ferramentas ff * exibirá a lista de dispositivos de entrada suportados.

Segue uma descrição dos dispositivos de entrada atualmente disponíveis.

alsa
Dispositivo de entrada ALSA (Advanced Linux Sound Architecture).

Para habilitar este dispositivo de entrada durante a configuração, você precisa do libasound instalado em seu
sistema.

Este dispositivo permite a captura de um dispositivo ALSA. O nome do dispositivo a ser capturado deve
ser um identificador de cartão ALSA.

Um identificador ALSA tem a sintaxe:

hw: [, [, ]]

onde o DEV e SUBDESV. os componentes são opcionais.

Os três argumentos (em ordem: CARTÃO,DEV,SUBDESV.) especificar o número do cartão ou identificador, dispositivo
número e número do subdispositivo (-1 significa qualquer um).

Para ver a lista de cartões atualmente reconhecidos pelo seu sistema, verifique os arquivos
/ proc / asound / cards e / proc / asound / devices.

Por exemplo, para capturar com ffmpeg a partir de um dispositivo ALSA com cartão id 0, você pode executar o
comando:

ffmpeg -f alsa -i hw: 0 alsaout.wav

Para mais informações, veja:http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>

Opções

taxa de amostragem
Defina a taxa de amostragem em Hz. O padrão é 48000.

canais
Defina o número de canais. O padrão é 2.

fundação
Dispositivo de entrada AVFoundation.

AVFoundation é a estrutura atualmente recomendada pela Apple para streamgrabbing no OSX> =
10.7, bem como no iOS. O antigo framework QTKit foi marcado como obsoleto desde OSX
versão 10.7.

O nome do arquivo de entrada deve ser fornecido na seguinte sintaxe:

-i "[[VIDEO]: [ÁUDIO]]"

A primeira entrada seleciona a entrada de vídeo, enquanto a última seleciona a entrada de áudio. o
stream deve ser especificado pelo nome do dispositivo ou o índice do dispositivo conforme mostrado pelo dispositivo
Lista. Alternativamente, o dispositivo de entrada de vídeo e / ou áudio pode ser escolhido por índice usando o

B <-video_device_index E INDEXE >

e / ou

B <-audio_device_index E INDEXE >

, substituindo qualquer nome de dispositivo ou índice fornecido no nome do arquivo de entrada.

Todos os dispositivos disponíveis podem ser enumerados usando -list_dispositivos verdadeiro, listando todos os dispositivos
nomes e índices correspondentes.

Existem dois aliases de nome de dispositivo:

"padrão"
Selecione o dispositivo padrão AVFoundation do tipo correspondente.

"Nenhum"
Não registre o tipo de mídia correspondente. Isso é equivalente a especificar um vazio
nome do dispositivo ou índice.

Opções

AVFoundation oferece suporte às seguintes opções:

-list_dispositivos
Se definido como verdadeiro, uma lista de todos os dispositivos de entrada disponíveis é fornecida, mostrando todos os dispositivos
nomes e índices.

-video_device_index
Especifique o dispositivo de vídeo por seu índice. Substitui qualquer coisa fornecida no nome do arquivo de entrada.

-audio_device_index
Especifique o dispositivo de áudio por seu índice. Substitui qualquer coisa fornecida no nome do arquivo de entrada.

-formato_pixel
Solicite que o dispositivo de vídeo use um formato de pixel específico. Se o formato especificado for
não suportado, uma lista de formatos disponíveis é fornecida e o primeiro nesta lista é
usado em seu lugar. Os formatos de pixel disponíveis são: "monob, rgb555be, rgb555le, rgb565be,
rgb565le, rgb24, bgr24, 0rgb, bgr0, 0bgr, rgb0,
bgr48be, uyvy422, yuva444p, yuva444p16le, yuv444p, yuv422p16, yuv422p10, yuv444p10,
yuv420p, nv12, yuyv422, cinza "

-taxa de quadros
Defina a taxa de captura de quadros. O padrão é "ntsc", correspondendo a uma taxa de quadros de
"30000/1001".

-tamanho do vídeo
Defina o tamanho do quadro de vídeo.

-captura_cursor
Capture o ponteiro do mouse. O padrão é 0.

-capture_mouse_clicks
Capture os cliques do mouse na tela. O padrão é 0.

Exemplos

· Imprima a lista de dispositivos compatíveis com AVFoundation e saia:

$ ffmpeg -f avfoundation -list_devices true -i ""

· Grave vídeo do dispositivo de vídeo 0 e áudio do dispositivo de áudio 0 para out.avi:

$ ffmpeg -f avfoundation -i "0: 0" out.avi

· Grave vídeo do dispositivo de vídeo 2 e áudio do dispositivo de áudio 1 para out.avi:

$ ffmpeg -f avfoundation -video_device_index 2 -i ": 1" out.avi

· Grave o vídeo do dispositivo de vídeo padrão do sistema usando o formato de pixel bgr0 e faça
não gravar nenhum áudio em out.avi:

$ ffmpeg -f avfoundation -pixel_format bgr0 -i "padrão: nenhum" out.avi

bktr
Dispositivo de entrada de vídeo BSD.

Opções

framerate
Defina a taxa de quadros.

tamanho do vídeo
Defina o tamanho do quadro de vídeo. O padrão é "vga".

padrão
Os valores disponíveis são:

amigo
NTSC
seco
palito
palma da mão
NTSCJ

decklink
O dispositivo de entrada decklink fornece recursos de captura para dispositivos Blackmagic DeckLink.

Para habilitar este dispositivo de entrada, você precisa do Blackmagic DeckLink SDK e você precisa
configure com os "--extra-cflags" e "--extra-ldflags" apropriados. No Windows, você
precisa executar os arquivos IDL por meio de Widl.

DeckLink é muito exigente quanto aos formatos que suporta. O formato do pixel é uyvy422 ou v210,
a taxa de quadros e o tamanho do vídeo devem ser determinados para o seu dispositivo com -list_formatos 1. Áudio
a taxa de amostragem é sempre 48 kHz e o número de canais pode ser 2, 8 ou 16.

Opções

dispositivos_lista
Se definido para verdadeiro, imprima uma lista de dispositivos e saia. Padrões para falso.

lista_formatos
Se definido para verdadeiro, imprima uma lista de formatos suportados e saia. Padrões para falso.

bm_v210
Se definido para 1, o vídeo é capturado em v10 de 210 bits em vez de uyvy422. Nem todas Blackmagic
dispositivos suportam esta opção.

Exemplos

· Lista de dispositivos de entrada:

ffmpeg -f decklink -list_devices 1 -i manequim

· Lista os formatos suportados:

ffmpeg -f decklink -list_formats 1 -i 'Intensity Pro'

· Capture videoclipe em 1080i50 (formato 11):

ffmpeg -f decklink -i 'Intensity Pro @ 11' -acodec copy -vcodec copy output.avi

· Capture videoclipe em 1080i50 10 bits:

ffmpeg -bm_v210 1 -f decklink -i 'Mini gravador UltraStudio @ 11' -acodec copy -vcodec copy output.avi

dshow
Dispositivo de entrada Windows DirectShow.

O suporte ao DirectShow é habilitado quando o FFmpeg é construído com o projeto mingw-w64. Atualmente
apenas dispositivos de áudio e vídeo são suportados.

Vários dispositivos podem ser abertos como entradas separadas, mas também podem ser abertos no mesmo
entrada, o que deve melhorar o sincronismo entre eles.

O nome de entrada deve estar no formato:

= [: = ]

onde TIPO pode ser auditivo or vídeo e NOME é o nome do dispositivo ou alternativa
nome ..

Opções

Se nenhuma opção for especificada, os padrões do dispositivo serão usados. Se o dispositivo não
apoiar as opções solicitadas, ele não abrirá.

tamanho do vídeo
Defina o tamanho do vídeo no vídeo capturado.

framerate
Defina a taxa de quadros no vídeo capturado.

taxa de amostragem
Defina a taxa de amostragem (em Hz) do áudio capturado.

tamanho da amostra
Defina o tamanho da amostra (em bits) do áudio capturado.

canais
Defina o número de canais no áudio capturado.

dispositivos_lista
Se definido para verdadeiro, imprima uma lista de dispositivos e saia.

opções_de_lista
Se definido para verdadeiro, imprima uma lista das opções do dispositivo selecionado e saia.

número_do_dispositivo_de_vídeo
Defina o número do dispositivo de vídeo para dispositivos com o mesmo nome (começa em 0, o padrão é 0).

número_do_dispositivo_de_áudio
Defina o número do dispositivo de áudio para dispositivos com o mesmo nome (começa em 0, o padrão é 0).

formato_pixel
Selecione o formato de pixel a ser usado pelo DirectShow. Isso só pode ser definido quando o vídeo
codec não está definido ou definido como rawvideo.

audio_buffer_size
Defina o tamanho do buffer do dispositivo de áudio em milissegundos (o que pode afetar diretamente a latência,
dependendo do dispositivo). O padrão é usar o tamanho do buffer padrão do dispositivo de áudio
(normalmente alguns múltiplos de 500 ms). Definir este valor muito baixo pode degradar
atuação. Veja também
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v = vs. 85) .aspx>

video_pin_name
Selecione o pino de captura de vídeo para usar por nome ou nome alternativo.

audio_pin_name
Selecione o pino de captura de áudio para usar por nome ou nome alternativo.

crossbar_video_input_pin_number
Selecione o número do pino de entrada de vídeo para o dispositivo de barra transversal. Isso será direcionado para a barra transversal
pino de saída do decodificador de vídeo do dispositivo. Observe que alterar este valor pode afetar o futuro
invocações (define um novo padrão) até que ocorra a reinicialização do sistema.

crossbar_audio_input_pin_number
Selecione o número do pino de entrada de áudio para o dispositivo de barra transversal. Isso será direcionado para a barra transversal
pino de saída do decodificador de áudio do dispositivo. Observe que alterar este valor pode afetar o futuro
invocações (define um novo padrão) até que ocorra a reinicialização do sistema.

show_video_device_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles alterem as propriedades e configurações do filtro de vídeo manualmente. Observação
que para dispositivos de barra transversal, ajustar os valores nesta caixa de diálogo pode ser necessário às vezes para
alternar entre PAL (25 fps) e NTSC (29.97) taxas de quadros de entrada, tamanhos, entrelaçamento,
etc. Alterar esses valores pode permitir diferentes taxas de varredura / taxas de quadros e evitar
barras verdes na parte inferior, linhas de varredura piscando etc. Observe que, com alguns dispositivos,
alterar essas propriedades também pode afetar chamadas futuras (define novos padrões) até
reinicialização do sistema ocorre.

show_audio_device_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles alterem as propriedades e configurações do filtro de áudio manualmente.

show_video_crossbar_connection_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles modifiquem manualmente os roteamentos dos pinos da barra transversal, quando abre um dispositivo de vídeo.

show_audio_crossbar_connection_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles modifiquem manualmente os roteamentos dos pinos da barra transversal, quando abre um dispositivo de áudio.

show_analog_tv_tuner_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles modifiquem manualmente os canais e as frequências da TV.

show_analog_tv_tuner_audio_dialog
Se definido para verdadeiro, antes do início da captura, pop-up uma caixa de diálogo de exibição para o usuário final,
permitindo que eles modifiquem manualmente o áudio da TV (como mono x estéreo, idioma A, B ou C).

audio_device_load
Carregue um dispositivo de filtro de captura de áudio do arquivo em vez de procurá-lo pelo nome. Pode
carregue parâmetros adicionais também, se o filtro suportar a serialização de seus
propriedades para. Para usar isso, uma fonte de captura de áudio deve ser especificada, mas pode ser
qualquer coisa, mesmo um falso.

audio_device_save
Salve o dispositivo de filtro de captura de áudio usado atualmente e seus parâmetros (se o filtro
suporta) para um arquivo. Se existir um arquivo com o mesmo nome, ele será sobrescrito.

video_device_load
Carregue um dispositivo de filtro de captura de vídeo do arquivo em vez de pesquisá-lo por nome. Pode
carregue parâmetros adicionais também, se o filtro suportar a serialização de seus
propriedades para. Para usar isso, uma fonte de captura de vídeo deve ser especificada, mas pode ser
qualquer coisa, mesmo um falso.

video_device_save
Salve o dispositivo de filtro de captura de vídeo usado atualmente e seus parâmetros (se o filtro
suporta) para um arquivo. Se existir um arquivo com o mesmo nome, ele será sobrescrito.

Exemplos

· Imprima a lista de dispositivos compatíveis com DirectShow e saia:

$ ffmpeg -list_devices true -f dshow -i manequim

· Abra o dispositivo de vídeo Câmara:

$ ffmpeg -f dshow -i video = "Câmera"

· Abra o segundo dispositivo de vídeo com o nome Câmara:

$ ffmpeg -f dshow -video_device_number 1 -i video = "Câmera"

· Abra o dispositivo de vídeo Câmara e dispositivo de áudio Microfone:

$ ffmpeg -f dshow -i video = "Câmera": audio = "Microfone"

· Imprima a lista de opções com suporte no dispositivo selecionado e saia:

$ ffmpeg -list_options true -f dshow -i video = "Câmera"

· Especifique os nomes dos pinos para capturar por nome ou nome alternativo, especifique o dispositivo alternativo
nome:

$ 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"

· Configurar um dispositivo de barra transversal, especificando pinos de barra transversal, permitir que o usuário ajuste o vídeo
capturar propriedades na inicialização:

$ ffmpeg -f dshow -show_video_device_dialog true -crossbar_video_input_pin_number 0
-crossbar_audio_input_pin_number 3 -i video = "AVerMedia BDA Analog Capture": audio = "AVerMedia BDA Analog Capture"

dv1394
Dispositivo de entrada Linux DV 1394.

Opções

framerate
Defina a taxa de quadros. O padrão é 25.

padrão
Os valores disponíveis são:

amigo
NTSC

O valor padrão é "ntsc".

fbdev
Dispositivo de entrada do framebuffer do Linux.

O framebuffer do Linux é uma camada de abstração independente de hardware gráfico para mostrar gráficos
em um monitor de computador, normalmente no console. É acessado por meio de um dispositivo de arquivo
nó, normalmente / dev / fb0.

Para obter informações mais detalhadas, leia o arquivo Documentation / fb / framebuffer.txt incluído em
a árvore de origem do Linux.

Veja tambémhttp://linux-fbdev.sourceforge.net/>, e fbset(1).

Para gravar a partir do dispositivo framebuffer / dev / fb0 com ffmpeg:

ffmpeg -f fbdev -framerate 10 -i / dev / fb0 out.avi

Você pode fazer uma única captura de tela com o comando:

ffmpeg -f fbdev -framerate 1 -i / dev / fb0 -frames: v 1 screenshot.jpeg

Opções

framerate
Defina a taxa de quadros. O padrão é 25.

gdiggrab
Dispositivo de captura de tela baseado em Win32 GDI.

Este dispositivo permite capturar uma região da tela no Windows.

Existem duas opções para o nome de arquivo de entrada:

área de trabalho

or

título =

A primeira opção irá capturar toda a área de trabalho ou uma região fixa da área de trabalho. o
a segunda opção irá, em vez disso, capturar o conteúdo de uma única janela, independentemente de seu
posição na tela.

Por exemplo, para pegar toda a área de trabalho usando ffmpeg:

ffmpeg -f gdigrab -framerate 6 -i desktop out.mpg

Pegue uma região de 640x480 na posição "10,20":

ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i desktop out.mpg

Pegue o conteúdo da janela chamada "Calculadora"

ffmpeg -f gdigrab -framerate 6 -i title = Calculadora out.mpg

Opções

desenhar_mouse
Especifique se deseja desenhar o ponteiro do mouse. Use o valor 0 para não desenhar o ponteiro.
O valor padrão é 1.

framerate
Defina a taxa de captura de quadros. O valor padrão é "ntsc", correspondendo a uma taxa de quadros de
"30000/1001".

mostrar_região
Mostra a região capturada na tela.

If mostrar_região é especificado com 1, então a região agarrada será indicada em
tela. Com esta opção, é fácil saber o que está sendo pego, mesmo que apenas uma parte
da tela é capturado.

Observe que mostrar_região é incompatível com a captura do conteúdo de uma única janela.

Por exemplo:

ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i desktop out.mpg

tamanho do vídeo
Defina o tamanho do quadro de vídeo. O padrão é capturar a tela inteira se área de trabalho is
selecionado, ou o tamanho total da janela, se title = window_title é selecionado.

deslocamento_x
Ao capturar uma região com tamanho do vídeo, defina a distância da borda esquerda do
tela ou desktop.

Observe que o cálculo do deslocamento é feito a partir do canto superior esquerdo do monitor principal em
Janelas. Se você tiver um monitor posicionado à esquerda do monitor principal, você
precisará usar um negativo deslocamento_x valor para mover a região para esse monitor.

deslocamento_y
Ao capturar uma região com tamanho do vídeo, defina a distância da borda superior do
tela ou desktop.

Observe que o cálculo do deslocamento é feito a partir do canto superior esquerdo do monitor principal em
Janelas. Se você tiver um monitor posicionado acima do monitor principal, precisará
use um negativo deslocamento_y valor para mover a região para esse monitor.

sim61883
Dispositivo de entrada FireWire DV / HDV usando libiec61883.

Para habilitar este dispositivo de entrada, você precisa de libiec61883, libraw1394 e libavc1394 instalados em
Seu sistema. Use a opção de configuração "--enable-libiec61883" para compilar com o dispositivo
ativado.

O dispositivo de captura iec61883 suporta a captura de um dispositivo de vídeo conectado via IEEE1394
(FireWire), usando libiec61883 e a nova pilha Linux FireWire (juju). Este é o padrão
Método de entrada DV / HDV no Linux Kernel 2.6.37 e posterior, uma vez que a antiga pilha FireWire era
removido.

Especifique a porta FireWire a ser usada como arquivo de entrada ou "auto" para escolher a primeira porta
conectado.

Opções

tipo de vídeo
Substitua a detecção automática de DV / HDV. Isso só deve ser usado se a detecção automática não
trabalho, ou se o uso de um tipo de dispositivo diferente deve ser proibido. Tratando um DV
dispositivo como HDV (ou vice-versa) não funcionará e resultará em comportamento indefinido. o
valores auto, dv e HD são suportados.

dvbuffer
Defina o tamanho máximo do buffer para dados de entrada, em quadros. Para DV, este é um exato
valor. Para HDV, não é um quadro exato, pois o HDV não tem um tamanho de quadro fixo.

guiadv
Selecione o dispositivo de captura especificando seu GUID. A captura só será realizada
do dispositivo especificado e falhará se nenhum dispositivo com o GUID fornecido for encontrado. Isto é
útil selecionar a entrada se vários dispositivos estiverem conectados ao mesmo tempo. Olhar
em / sys / bus / firewire / devices para descobrir os GUIDs.

Exemplos

· Pegue e mostre a entrada de um dispositivo FireWire DV / HDV.

ffplay -f iec61883 -i automático

· Pegue e grave a entrada de um dispositivo FireWire DV / HDV, usando um buffer de pacote de 100000
pacotes se a fonte for HDV.

ffmpeg -f iec61883 -i auto -hdvbuffer 100000 saída.mpg

tomada
Dispositivo de entrada JACK.

Para habilitar este dispositivo de entrada durante a configuração, você precisa do libjack instalado em seu
sistema.

Um dispositivo de entrada JACK cria um ou mais clientes graváveis ​​JACK, um para cada canal de áudio,
com nome Nome do cliente:entrada_N, Onde Nome do cliente é o nome fornecido pelo aplicativo,
e N é um número que identifica o canal. Cada cliente gravável enviará o
dados adquiridos para o dispositivo de entrada FFmpeg.

Depois de criar um ou mais clientes legíveis JACK, você precisa conectá-los a um
ou mais clientes graváveis ​​JACK.

Para conectar ou desconectar clientes JACK, você pode usar o jack_connect e jack_disconnect
programas, ou através de uma interface gráfica, por exemplo com qjackctl.

Para listar os clientes JACK e suas propriedades, você pode invocar o comando jack_lsp.

Segue um exemplo que mostra como capturar um cliente JACK legível com ffmpeg.

# Crie um cliente JACK gravável com o nome "ffmpeg".
$ ffmpeg -f jack -i ffmpeg -y out.wav

# Inicie o cliente de leitura jack_metro de amostra.
$ jack_metro -b 120 -d 0.2 -f 4000

# Liste os clientes JACK atuais.
$ jack_lsp-c
sistema: capture_1
sistema: capture_2
sistema: playback_1
sistema: playback_2
ffmpeg: input_1
metro: 120_bpm

# Conecte metro ao cliente gravável ffmpeg.
$ jack_connect metro: 120_bpm ffmpeg: input_1

Para mais informações, leia:http://jackaudio.org/>

Opções

canais
Defina o número de canais. O padrão é 2.

Lavfi
Dispositivo virtual de entrada Libavfilter.

Este dispositivo de entrada lê dados dos pads de saída abertos de um gráfico de filtro libavfilter.

Para cada saída aberta do gráfico de filtro, o dispositivo de entrada criará um fluxo correspondente
que é mapeado para a saída gerada. Atualmente, apenas dados de vídeo são suportados. o
filtergraph é especificado através da opção gráfico.

Opções

gráfico
Especifique o filtro gráfico a ser usado como entrada. Cada saída de vídeo aberta deve ser rotulada por um
string única da forma "outN", Onde N é um número começando de 0 correspondendo a
o fluxo de entrada mapeado gerado pelo dispositivo. A primeira saída sem etiqueta é
automaticamente atribuído ao rótulo "out0", mas todos os outros precisam ser especificados
explicitamente.

O sufixo "+ subcc" pode ser anexado ao rótulo de saída para criar um fluxo extra com
os pacotes de closed captions anexados a essa saída (experimental; apenas para EIA-608 /
CEA-708 por enquanto). Os streams subcc são criados após todos os streams normais, no
ordem do fluxo correspondente. Por exemplo, se houver "out19 + subcc",
"out7 + subcc" e até "out42", o stream # 43 é subcc para stream # 7 e stream # 44
é subcc para o fluxo # 19.

Se não for especificado, o padrão é o nome do arquivo especificado para o dispositivo de entrada.

arquivo_grafo
Defina o nome do arquivo do filtro a ser lido e enviado aos outros filtros. Sintaxe
do filtro é o mesmo que aquele especificado pela opção gráfico.

gráfico de despejo
Despejar o gráfico para o stderr.

Exemplos

· Crie um stream de vídeo colorido e reproduza-o com ffplay:

ffplay -f lavfi -graph "color = c = pink [out0]" dummy

· Como no exemplo anterior, mas use o nome do arquivo para especificar a descrição do gráfico, e
omita o rótulo "out0":

ffplay -f lavfi color = c = rosa

· Crie três fontes diferentes de filtros de teste de vídeo e reproduza-as:

ffplay -f lavfi -graph "testsrc [out0]; testsrc, hflip [out1]; testsrc, negate [out2]" test3

· Ler um fluxo de áudio de um arquivo usando a fonte amovie e reproduzi-lo com ffplay:

ffplay -f lavfi "amovie = test.wav"

· Ler um stream de áudio e um stream de vídeo e reproduzi-lo com ffplay:

ffplay -f lavfi "movie = test.avi [out0]; amovie = test.wav [out1]"

· Despejar frames decodificados em imagens e legendas em um arquivo (experimental):

ffmpeg -f lavfi -i "movie = test.ts [out0 + subcc]" -map v frame% 08d.png -map s -c copy -f rawvideo subcc.bin

libcdio
Dispositivo de entrada de CD de áudio baseado em libcdio.

Para habilitar este dispositivo de entrada durante a configuração, você precisa do libcdio instalado em seu
sistema. Requer a opção de configuração "--enable-libcdio".

Este dispositivo permite a reprodução e captura de um CD de áudio.

Por exemplo, para copiar com ffmpeg todo o CD de áudio em / dev / sr0, você pode executar o comando:

ffmpeg -f libcdio -i / dev / sr0 cd.wav

Opções

velocidade
Defina a velocidade de leitura da unidade. O valor padrão é 0.

A velocidade é a unidade de velocidade especificada do CD-ROM. A velocidade é definida através do libcdio
função "cdio_cddap_speed_set". Em muitas unidades de CD-ROM, especificando um valor muito grande
resultará no uso da velocidade mais rápida.

paranóia_mode
Defina sinalizadores de modo de recuperação de paranóia. Ele aceita um dos seguintes valores:

desabiltar
verificar
sobreposição
nunca pule
cheio

O valor padrão é desabiltar.

Para obter mais informações sobre os modos de recuperação disponíveis, consulte o projeto paranóia
documentação.

libdc1394
Dispositivo de entrada IIDC1394, baseado em libdc1394 e libraw1394.

Requer a opção de configuração "--enable-libdc1394".

abertura
O dispositivo de entrada OpenAL fornece captura de áudio em todos os sistemas com um OpenAL 1.1 funcional
implementação.

Para habilitar este dispositivo de entrada durante a configuração, você precisa de cabeçalhos e bibliotecas OpenAL
instalado em seu sistema e precisa configurar o FFmpeg com "--enable-openal".

Cabeçalhos e bibliotecas OpenAL devem ser fornecidos como parte de sua implementação OpenAL, ou
como um download adicional (um SDK). Dependendo de sua instalação, você pode precisar especificar
sinalizadores adicionais por meio de "--extra-cflags" e "--extra-ldflags" para permitir a construção
sistema para localizar os cabeçalhos e bibliotecas OpenAL.

Segue uma lista incompleta de implementações do OpenAL:

Criatividade
A implementação oficial do Windows, fornecendo aceleração de hardware com suporte
dispositivos e reserva de software. Verhttp://openal.org/>.

OpenAL Suave
Implementação de software portátil de código aberto (LGPL). Inclui back-ends para a maioria
APIs de som comuns nos sistemas operacionais Windows, Linux, Solaris e BSD. Ver
<http://kcat.strangesoft.net/openal.html>.

Apple
OpenAL faz parte do Core Audio, a interface oficial do Mac OS X Audio. Ver
<http://developer.apple.com/technologies/mac/audio-and-video.html>

Este dispositivo permite a captura de um dispositivo de entrada de áudio controlado por OpenAL.

Você precisa especificar o nome do dispositivo a ser capturado no nome de arquivo fornecido. Se o
string vazia for fornecida, o dispositivo selecionará automaticamente o dispositivo padrão. Você pode
obtenha a lista dos dispositivos suportados usando a opção dispositivos_lista.

Opções

canais
Defina o número de canais no áudio capturado. Apenas os valores 1 (monoaural) e 2
(estéreo) são atualmente suportados. Padrões para 2.

tamanho da amostra
Defina o tamanho da amostra (em bits) do áudio capturado. Apenas os valores 8 e 16 e guarante que os mesmos estão
atualmente suportado. Padrões para 16.

taxa de amostragem
Defina a taxa de amostragem (em Hz) do áudio capturado. Padrões para 44.1k.

dispositivos_lista
Se definido para verdadeiro, imprima uma lista de dispositivos e saia. Padrões para falso.

Exemplos

Imprima a lista de dispositivos compatíveis com OpenAL e saia:

$ ffmpeg -list_devices true -f openal -i dummy out.ogg

Capturar do dispositivo OpenAL DR-BT101 via PulseAudio:

$ ffmpeg -f openal -i 'DR-BT101 via PulseAudio' out.ogg

Capture do dispositivo padrão (observe a string vazia '' como o nome do arquivo):

$ ffmpeg -f openal -i '' out.ogg

Capture de dois dispositivos simultaneamente, gravando em dois arquivos diferentes, dentro do mesmo
ffmpeg comando:

$ ffmpeg -f openal -i 'DR-BT101 via PulseAudio' out1.ogg -f openal -i 'ALSA Padrão' out2.ogg

Nota: nem todas as implementações OpenAL suportam captura múltipla simultânea - experimente o
mais recente OpenAL Soft se o acima não funcionar.

Centro
Abra o dispositivo de entrada do sistema de som.

O nome do arquivo a ser fornecido ao dispositivo de entrada é o nó do dispositivo que representa a entrada OSS
dispositivo, e geralmente é definido como / dev / dsp.

Por exemplo, para pegar de / dev / dsp utilização ffmpeg use o comando:

ffmpeg -f oss -i / dev / dsp /tmp/oss.wav

Para obter mais informações sobre OSS, consulte:http://manuals.opensound.com/usersguide/dsp.html>

Opções

taxa de amostragem
Defina a taxa de amostragem em Hz. O padrão é 48000.

canais
Defina o número de canais. O padrão é 2.

pulso
Dispositivo de entrada PulseAudio.

Para habilitar este dispositivo de saída, você precisa configurar o FFmpeg com "--enable-libpulse".

O nome do arquivo a ser fornecido ao dispositivo de entrada é um dispositivo de origem ou a string "padrão"

Para listar os dispositivos de origem do PulseAudio e suas propriedades, você pode invocar o comando
pacto Lista fontes.

Mais informações sobre o PulseAudio podem ser encontradas emhttp://www.pulseaudio.org>.

Opções

servidor
Conecte-se a um servidor PulseAudio específico, especificado por um endereço IP. Servidor padrão
é usado quando não fornecido.

nome
Especifique o nome do aplicativo que o PulseAudio usará ao mostrar clientes ativos, por
o padrão é a string "LIBAVFORMAT_IDENT".

nome_do_stream
Especifique o nome do stream que o PulseAudio usará ao mostrar os streams ativos, por padrão
é "registro".

taxa de amostragem
Especifique a taxa de amostragem em Hz, por padrão 48 kHz é usado.

canais
Especifique os canais em uso, por padrão 2 (estéreo) é definido.

tamanho_quadro
Especifique o número de bytes por quadro; por padrão, é definido como 1024.

tamanho_do_fragmento
Especifique o fragmento de buffer mínimo no PulseAudio, isso afetará o áudio
latência. Por padrão, ele não está definido.

relógio de parede
Defina o PTS inicial usando a hora atual. O padrão é 1.

Exemplos

Grave um stream do dispositivo padrão:

ffmpeg -f pulso -i default /tmp/pulse.wav

qtkit
Dispositivo de entrada QTKit.

O nome do arquivo passado como entrada é analisado para conter um nome de dispositivo ou índice. o
o índice do dispositivo também pode ser fornecido usando -video_device_index. Um determinado índice de dispositivo irá
substituir qualquer nome de dispositivo fornecido. Se o dispositivo desejado consistir apenas em números, use
-video_device_index para identificá-lo. O dispositivo padrão será escolhido se uma string vazia
ou o nome do dispositivo "padrão" é fornecido. Os dispositivos disponíveis podem ser enumerados usando
-lista_dispositivos.

ffmpeg -f qtkit -i "0" out.mpg

ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg

ffmpeg -f qtkit -i "default" out.mpg

ffmpeg -f qtkit -list_devices true -i ""

Opções

taxa de quadros
Defina a taxa de quadros. O padrão é 30.

dispositivos_lista
Se definido como "verdadeiro", imprime uma lista de dispositivos e sai. O padrão é "falso".

video_device_index
Selecione o dispositivo de vídeo por índice para dispositivos com o mesmo nome (começa em 0).

sdio
dispositivo de entrada sndio.

Para habilitar este dispositivo de entrada durante a configuração, você precisa do libsndio instalado em seu
sistema.

O nome do arquivo a ser fornecido ao dispositivo de entrada é o nó do dispositivo que representa o sndio
dispositivo de entrada, e geralmente é definido como / dev / audio0.

Por exemplo, para pegar de / dev / audio0 utilização ffmpeg use o comando:

ffmpeg -f sndio -i / dev / audio0 /tmp/oss.wav

Opções

taxa de amostragem
Defina a taxa de amostragem em Hz. O padrão é 48000.

canais
Defina o número de canais. O padrão é 2.

vídeo4linux2, v4l2
Dispositivo de entrada de vídeo Video4Linux2.

"v4l2" pode ser usado como apelido para "video4linux2".

Se o FFmpeg for construído com suporte a v4l-utils (usando o configure "--enable-libv4l2"
), é possível usá-lo com a opção de dispositivo de entrada "-use_libv4l2".

O nome do dispositivo a ser obtido é um nó de dispositivo de arquivo, geralmente os sistemas Linux tendem a
criará automaticamente esses nós quando o dispositivo (por exemplo, uma webcam USB) for conectado ao
sistema, e tem um nome do tipo / dev / videoN, Onde N é um número associado ao
dispositivo.

Dispositivos Video4Linux2 geralmente suportam um conjunto limitado de larguraxaltura tamanhos e taxas de quadros.
Você pode verificar quais são compatíveis usando -list_formatos todos os para dispositivos Video4Linux2. Algum
dispositivos, como placas de TV, oferecem suporte a um ou mais padrões. É possível listar todos os
padrões suportados usando -list_standards todos os.

A base de tempo para os carimbos de data / hora é 1 microssegundo. Dependendo da versão do kernel e
configuração, os carimbos de data / hora podem ser derivados do relógio de tempo real (origem no Unix
Epoch) ou o relógio monotônico (origem geralmente no momento da inicialização, não afetado por NTP ou manual
mudanças no relógio). o - timestamps abs or -ts abs opção pode ser usada para forçar
conversão em relógio de tempo real.

Alguns exemplos de uso do dispositivo video4linux2 com ffmpeg e ffplay:

· Lista os formatos suportados para um dispositivo video4linux2:

ffplay -f video4linux2 -list_formats all / dev / video0

· Pegue e mostre a entrada de um dispositivo video4linux2:

ffplay -f video4linux2 -framerate 30 -video_size hd720 / dev / video0

· Pegue e grave a entrada de um dispositivo video4linux2, deixe a taxa de quadros e tamanho como
previamente definido:

ffmpeg -f video4linux2 -input_format mjpeg -i / dev / video0 out.mpeg

Para obter mais informações sobre Video4Linux, verifiquehttp://linuxtv.org/>.

Opções

padrão
Defina o padrão. Deve ser o nome de um padrão compatível. Para obter uma lista do
padrões suportados, use o lista_padrões opção.

canal
Defina o número do canal de entrada. O padrão é -1, o que significa usar o previamente selecionado
canal.

tamanho do vídeo
Defina o tamanho do quadro de vídeo. O argumento deve ser uma string no formato WIDTHxHEIGHT ou um
abreviatura de tamanho válida.

formato_pixel
Selecione o formato de pixel (válido apenas para entrada de vídeo bruto).

Formato de entrada
Defina o formato de pixel preferido (para vídeo bruto) ou um nome de codec. Esta opção permite
um para selecionar o formato de entrada, quando vários estiverem disponíveis.

framerate
Defina a taxa de quadros de vídeo preferida.

lista_formatos
Liste os formatos disponíveis (formatos de pixel, codecs e tamanhos de quadro suportados) e saia.

Os valores disponíveis são:

todos os Mostra todos os formatos disponíveis (compactados e não compactados).

cru Mostra apenas formatos de vídeo bruto (não compactado).

comprimido
Mostra apenas formatos compactados.

lista_padrões
Liste os padrões suportados e saia.

Os valores disponíveis são:

todos os Mostra todos os padrões suportados.

carimbos de data/hora, ts
Defina o tipo de carimbo de data / hora para quadros isolados.

Os valores disponíveis são:

omissão
Use carimbos de data / hora do kernel.

abs Use carimbos de data / hora absolutos (relógio de parede).

mono2abs
Força a conversão de carimbos de data / hora monotônicos em absolutos.

O valor padrão é "default".

use_libv4l2
Use as funções de conversão libv4l2 (v4l-utils). O padrão é 0.

vfwcap
Dispositivo de entrada de captura VfW (Vídeo para Windows).

O nome do arquivo passado como entrada é o número do driver de captura, variando de 0 a 9. Você pode
use "list" como nome de arquivo para imprimir uma lista de drivers. Qualquer outro nome de arquivo será interpretado
como número do dispositivo 0.

Opções

tamanho do vídeo
Defina o tamanho do quadro de vídeo.

framerate
Defina a taxa de captura de quadros. O valor padrão é "ntsc", correspondendo a uma taxa de quadros de
"30000/1001".

x11grab
Dispositivo de entrada de vídeo X11.

Para habilitar este dispositivo de entrada durante a configuração, você precisa do libxcb instalado em seu sistema.
Ele será detectado automaticamente durante a configuração.

Alternativamente, a opção de configuração --enable-x11grab existe para usuários Xlib legados.

Este dispositivo permite capturar uma região de um monitor X11.

O nome do arquivo passado como entrada tem a sintaxe:

[ ]: . [+ , ]

hostname:número_exibição.número_tela especifica o nome de exibição X11 da tela a ser capturada
de. hostname pode ser omitido e o padrão é "localhost". A variável de ambiente
DISPLAY contém o nome de exibição padrão.

x_offset e deslocamento_y especifique os deslocamentos da área agarrada em relação ao canto superior esquerdo
borda da tela do X11. Eles são padronizados para 0.

Verifique a documentação do X11 (por exemplo homem X) para obter informações mais detalhadas.

Use o xdpyinfo programa para obter informações básicas sobre as propriedades do seu X11
display (por exemplo, grep para "nome" ou "dimensões").

Por exemplo, para pegar de : 0.0 utilização ffmpeg:

ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 out.mpg

Agarre na posição "10,20":

ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg

Opções

desenhar_mouse
Especifique se deseja desenhar o ponteiro do mouse. Um valor de 0 especifica não desenhar o
ponteiro. O valor padrão é 1.

siga_mouse
Faça a área agarrada seguir o mouse. O argumento pode ser "centrado" ou uma série de
pixels PÍXEIS.

Quando é especificado com "centrado", a região de captura segue o ponteiro do mouse
e mantém o ponteiro no centro da região; caso contrário, a região segue apenas quando
o ponteiro do mouse alcança dentro PÍXEIS (maior que zero) para a borda da região.

Por exemplo:

ffmpeg -f x11grab -follow_mouse centrado -framerate 25 -video_size cif -i: 0.0 out.mpg

A seguir apenas quando o ponteiro do mouse atingir 100 pixels na borda:

ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i: 0.0 out.mpg

framerate
Defina a taxa de captura de quadros. O valor padrão é "ntsc", correspondendo a uma taxa de quadros de
"30000/1001".

mostrar_região
Mostra a região capturada na tela.

If mostrar_região é especificado com 1, então a região agarrada será indicada em
tela. Com esta opção, é fácil saber o que está sendo pego, mesmo que apenas uma parte
da tela é capturado.

região_fronteira
Defina a espessura da borda da região se -show_region 1 é usado. O intervalo é de 1 a 128 e
o padrão é 3 (apenas x11grab baseado em XCB).

Por exemplo:

ffmpeg -f x11grab -show_region 1 -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg

Com o siga_mouse:

ffmpeg -f x11grab -follow_mouse centered -show_region 1 -framerate 25 -video_size cif -i: 0.0 out.mpg

tamanho do vídeo
Defina o tamanho do quadro de vídeo. O valor padrão é "vga".

use_shm
Use a extensão MIT-SHM para memória compartilhada. O valor padrão é 1. Pode ser necessário
para desabilitá-lo para monitores remotos (somente x11grab legado).

pegar_x agarrar Opção AV

A sintaxe é:

-grab_x -grab_y

Defina as coordenadas da região de captura. Eles são expressos como deslocamento do canto superior esquerdo
da janela do X11. O valor padrão é 0.

RESAMPLER OPÇÕES


O reamostrador de áudio oferece suporte às seguintes opções nomeadas.

As opções podem ser definidas especificando -opção valor nas ferramentas FFmpeg, opção=valor para o
um filtro de amostra, definindo o valor explicitamente nas opções "SwrContext" ou usando o
libavutil / opt.h API para uso programático.

EU, in_channel_count
Defina o número de canais de entrada. O valor padrão é 0. Definir este valor não é
obrigatório se o layout do canal correspondente in_channel_layout é definido.

oh, out_channel_count
Defina o número de canais de saída. O valor padrão é 0. Definir este valor não é
obrigatório se o layout do canal correspondente out_channel_layout é definido.

uh, contagem_de_canais_usados
Defina o número de canais de entrada usados. O valor padrão é 0. Esta opção é usada apenas
para remapeamento especial.

isr, taxa_de_amostra
Defina a taxa de amostragem de entrada. O valor padrão é 0.

osr, taxa_de_amostra_out
Defina a taxa de amostragem de saída. O valor padrão é 0.

isf, in_sample_fmt
Especifique o formato da amostra de entrada. Ele é definido por padrão como "nenhum".

osf, out_sample_fmt
Especifique o formato da amostra de saída. Ele é definido por padrão como "nenhum".

tsf, amostra_interna_fmt
Defina o formato de amostra interno. O valor padrão é "nenhum". Isso será automaticamente
escolhido quando não está definido explicitamente.

ic, in_channel_layout
ocl, out_channel_layout
Defina o layout do canal de entrada / saída.

See que o Canal traçado seção in que o ffmpeg-utils(1) manual para a sintaxe necessária.

manilha, center_mix_level
Defina o nível de mixagem central. É um valor expresso em decibel, e deve estar no
intervalo [-32,32].

Slev, surround_mix_level
Defina o nível de mixagem surround. É um valor expresso em decibel, e deve estar no
intervalo [-32,32].

lfe_mix_level
Defina a mistura LFE em um nível não LFE. É usado quando há uma entrada LFE, mas não LFE
saída. É um valor expresso em decibel, e deve estar no intervalo [-32,32].

rmvol, volume_rematriz
Defina o volume do rematrix. O valor padrão é 1.0.

rematriz_maxval
Defina o valor de saída máximo para rematrix. Isso pode ser usado para evitar cortes vs.
impedindo a redução do volume Um valor de 1.0 impede o corte.

bandeiras, swr_flags
Defina os sinalizadores usados ​​pelo conversor. O valor padrão é 0.

Ele suporta os seguintes sinalizadores individuais:

res forçar reamostragem, este sinalizador força a reamostragem a ser usada mesmo quando a entrada e
as taxas de amostragem de saída correspondem.

dither_scale
Defina a escala de pontilhamento. O valor padrão é 1.

método_dither
Defina o método de pontilhamento. O valor padrão é 0.

Valores suportados:

retangular
selecione pontilhamento retangular

triangular
selecione pontilhamento triangular

triangular_hp
selecione pontilhamento triangular com passagem alta

Lipshitz
selecionar vibração de modelagem de ruído labial

shibata
selecione o dither de modelagem de ruído shibata

baixo_shibata
selecione dither de modelagem de ruído shibata baixo

alto_shibata
selecione alto ruído de shibata para modelagem de pontilhamento

f_ponderado
selecione o pontilhamento de modelagem de ruído ponderado f

modificado_e_pesado
selecione o pontilhamento de modelagem de ruído ponderado e modificado

melhorado_e_pesado
selecione o pontilhamento de modelagem de ruído ponderado e aprimorado

reamostrador
Defina o mecanismo de reamostragem. O valor padrão é swr.

Valores suportados:

Swr selecione o SW Resampler nativo; precisão de opções de filtro e cheby não são
aplicável neste caso.

soxr
selecione o Reamostrador SoX (quando disponível); compensação e opções de filtro
filter_size, phase_shift, filter_type & kaiser_beta, não são aplicáveis ​​neste
caso.

tamanho_do_filtro
Apenas para swr, defina o tamanho do filtro de reamostragem, o valor padrão é 32.

mudança de fase
Para swr apenas, defina a mudança de fase de reamostragem, o valor padrão é 10 e deve estar no
intervalo [0,30].

linear_interp
Use a interpolação linear se definido como 1, o valor padrão é 0.

corte fora
Ajuste da frequência de corte (swr: ponto de 6dB; soxr: ponto de 0dB) proporção; deve ser um valor flutuante
entre 0 e 1. O valor padrão é 0.97 com swr e 0.91 com soxr (que, com um
taxa de amostragem de 44100, preserva toda a banda de áudio em 20 kHz).

precisão
Somente para soxr, a precisão em bits para os quais o sinal reamostrado será calculado.
O valor padrão de 20 (que, com pontilhamento adequado, é apropriado para um
profundidade de bits de destino de 16) fornece 'Alta qualidade' do SoX; um valor de 28 dá SoX's
'Qualidade muito alta'.

cheby
Somente para soxr, seleciona rolloff de banda passante nenhum (Chebyshev) e precisão superior
aproximação para razões 'irracionais'. O valor padrão é 0.

async
Apenas para swr, sincronização de áudio simples de 1 parâmetro para carimbos de data / hora usando alongamento, compressão,
enchimento e corte. Definir como 1 permitirá o preenchimento e corte, maior
valores representam a quantidade máxima em amostras em que os dados podem ser estendidos ou
espremido a cada segundo. O valor padrão é 0, portanto, nenhuma compensação é aplicada para fazer
as amostras correspondem aos carimbos de data / hora de áudio.

primeiros_pts
Apenas para swr, suponha que os primeiros pts devam ter este valor. A unidade de tempo é 1 / amostra
avaliar. Isso permite o preenchimento / corte no início do fluxo. Por padrão, não
suposição é feita sobre os pontos esperados do primeiro quadro, portanto, nenhum preenchimento ou corte é
feito. Por exemplo, isso poderia ser definido como 0 para preencher o início com silêncio se um
o stream de áudio começa após o stream de vídeo ou para cortar quaisquer amostras com pontos negativos
devido ao atraso do codificador.

min_comp
Para swr apenas, defina a diferença mínima entre carimbos de data / hora e dados de áudio (em
segundos) para acionar o alongamento / compressão / preenchimento ou corte dos dados para torná-los
coincidir com os carimbos de data / hora. O padrão é que esticar / apertar / preencher e cortar é
Desativado (min_comp = "FLT_MAX").

min_hard_comp
Para swr apenas, defina a diferença mínima entre carimbos de data / hora e dados de áudio (em
segundos) para acionar a adição / remoção de amostras para fazer com que correspondam aos carimbos de data / hora. Esse
opção efetivamente é um limite para selecionar entre rígido (corte / preenchimento) e suave
(apertar / esticar) compensação. Observe que toda compensação é desabilitada por padrão
NFT`s min_comp. O padrão é 0.1.

duração_comp
Apenas para swr, defina a duração (em segundos) sobre a qual os dados são estendidos / comprimidos para fazer
ele corresponde aos carimbos de data / hora. Deve ser um valor flutuante duplo não negativo, o valor padrão é
1.0.

max_soft_comp
Apenas para swr, defina o fator máximo pelo qual os dados são estendidos / comprimidos para corresponder
os carimbos de data / hora. Deve ser um valor flutuante duplo não negativo, o valor padrão é 0.

codificação_matriz
Selecione a codificação estéreo com matriz.

Ele aceita os seguintes valores:

Nenhum
Selecione nenhum

Dolby
selecione Dolby

dplii
selecione Dolby Pro Logic II

O valor padrão é "nenhum".

tipo_filtro
Para swr apenas, selecione o tipo de filtro de reamostragem. Isso afeta apenas as operações de reamostragem.

Ele aceita os seguintes valores:

cúbico
selecione cúbico

blackman_nuttall
selecione Blackman Nuttall Windowed Sinc

imperador
selecione Kaiser Windowed Sinc

kaiser_beta
Apenas para swr, defina o valor Kaiser Window Beta. Deve ser um número inteiro no intervalo [2,16],
o valor padrão é 9.

saída_amostra_bits
Apenas para swr, defina o número de bits de amostra de saída usados ​​para pontilhamento. Deve ser um inteiro
no intervalo [0,64], o valor padrão é 0, o que significa que não é usado.

ESCALA OPÇÕES


O escalonador de vídeo oferece suporte às seguintes opções nomeadas.

As opções podem ser definidas especificando -opção valor nas ferramentas FFmpeg. Para uso programático,
eles podem ser definidos explicitamente nas opções "SwsContext" ou através do libavutil / opt.h API.

sws_flags
Defina os sinalizadores do scaler. Isso também é usado para definir o algoritmo de escalonamento. Apenas um único
algoritmo deve ser selecionado.

Ele aceita os seguintes valores:

rápido_bilinear
Selecione o algoritmo de escalonamento bilinear rápido.

bilinear
Selecione o algoritmo de escala bilinear.

bicúbico
Selecione o algoritmo de escala bicúbica.

experimental
Selecione o algoritmo de escalonamento experimental.

vizinho
Selecione o algoritmo de redimensionamento do vizinho mais próximo.

área
Selecione o algoritmo de redimensionamento da área de média.

Bicublin
Selecione o algoritmo de escala bicúbica para o componente luma, bilinear para croma
componentes.

gauss
Selecione o algoritmo de reescalonamento gaussiano.

sincero
Selecione o algoritmo de reescalonamento sinc.

Lanços
Selecione o algoritmo de reescalonamento de lanczos.

estriado
Selecione o algoritmo de redimensionamento de spline bicúbica natural.

imprimir_info
Habilite o registro de impressão / depuração.

Preciso
Habilite o arredondamento preciso.

full_chroma_int
Habilite a interpolação de croma completa.

full_chroma_inp
Selecione a entrada de croma total.

bitexato
Habilite a saída do bitexact.

srcw
Defina a largura da fonte.

srch
Defina a altura da fonte.

dstw
Defina a largura do destino.

dsth
Defina a altura do destino.

formato_src
Defina o formato do pixel de origem (deve ser expresso como um número inteiro).

formato_dst
Defina o formato do pixel de destino (deve ser expresso como um número inteiro).

intervalo_src
Selecione o intervalo da fonte.

intervalo_dst
Selecione o intervalo de destino.

parâmetro0, param1
Defina os parâmetros do algoritmo de escalonamento. Os valores especificados são específicos de algumas escalas
algoritmos e ignorados por outros. Os valores especificados são números de ponto flutuante
valores.

sws_dither
Defina o algoritmo de pontilhamento. Aceita um dos seguintes valores. O valor padrão é
auto.

auto
escolha automática

Nenhum
sem hesitação

Bayer
indecisão de Bayer

ed dither de difusão de erro

a_dither
pontilhamento aritmético, baseado em adição

x_dither
pontilhamento aritmético, baseado em xor (padronização mais aleatória / menos aparente que
a_dither).

mistura alfabética
Defina a mistura alfa a ser usada quando a entrada tiver alfa, mas a saída não.
O valor padrão é Nenhum.

uniforme_cor
Misture em uma cor de fundo uniforme

tabuleiro de damas
Misture em um tabuleiro de xadrez

Nenhum
Sem mistura

FILTRAGEM INTRODUÇÃO


A filtragem no FFmpeg é habilitada por meio da biblioteca libavfilter.

No libavfilter, um filtro pode ter várias entradas e várias saídas. Para ilustrar o
tipo de coisas que são possíveis, consideramos o seguinte filtro gráfico.

[a Principal]
entrada -> divisão ---------------------> sobreposição -> saída
| ^
| [tmp] [flip] |
+ -----> cortar -> vflip ------- +

Este gráfico de filtro divide o fluxo de entrada em dois fluxos e, em seguida, envia um fluxo através do
filtro de corte e o filtro vflip, antes de mesclá-lo de volta com o outro fluxo
sobrepondo-o no topo. Você pode usar o seguinte comando para fazer isso:

ffmpeg -i INPUT -vf "split [main] [tmp]; [tmp] crop = iw: ih / 2: 0: 0, vflip [flip]; [main] [flip] overlay = 0: H / 2" OUTPUT

O resultado será que a metade superior do vídeo é espelhada na metade inferior do
saída de vídeo.

Filtros na mesma cadeia linear são separados por vírgulas e cadeias lineares distintas de
os filtros são separados por ponto e vírgula. Em nosso exemplo, cortar, vflip estão em uma cadeia linear,
divisão e sobreposição estão separadamente em outro. Os pontos onde as cadeias lineares se juntam são
rotulados por nomes entre colchetes. No exemplo, o filtro de divisão gera
duas saídas que estão associadas aos rótulos [a Principal] e [tmp].

O fluxo enviado para a segunda saída de divisão, rotulado como [tmp], é processado por meio do
colheita filtro, que corta a metade inferior do vídeo e, em seguida, verticalmente
invertido. o sobreposição o filtro recebe a primeira saída inalterada do filtro dividido
(que foi rotulado como [a Principal]), e sobrepõe em sua metade inferior a saída gerada pelo
cortar, vflip cadeia de filtros.

Alguns filtros recebem uma lista de parâmetros: eles são especificados após o nome do filtro
e um sinal de igual e são separados um do outro por dois pontos.

Existem os chamados fonte filtros que não têm uma entrada de áudio / vídeo, e lavatório
filtros que não terá saída de áudio / vídeo.

GRÁFICO


A gráfico2ponto programa incluído no FFmpeg ferramentas diretório pode ser usado para analisar um
descrição do filtro gráfico e emitir uma representação textual correspondente no ponto
língua.

Invoque o comando:

gráfico2ponto -h

para ver como usar gráfico2ponto.

Você pode então passar a descrição do ponto para o ponto programa (do pacote graphviz de
programas) e obter uma representação gráfica do filtro.

Por exemplo, a sequência de comandos:

eco | \
tools / graph2dot -o graph.tmp && \
dot -Tpng graph.tmp -o graph.png && \
exibir gráfico.png

pode ser usado para criar e exibir uma imagem que representa o gráfico descrito pelo
GRAPH_DESCRIPTION fragmento. Observe que esta string deve ser um gráfico completo e independente,
com suas entradas e saídas definidas explicitamente. Por exemplo, se sua linha de comando for de
a forma:

ffmpeg -i infile -vf scale = 640: 360 outfile

os GRAPH_DESCRIPTION string deverá estar no formato:

nullsrc, scale = 640: 360, nullsink

você também pode precisar definir o nullsrc parâmetros e adicionar um formato filtrar a fim de
simular um arquivo de entrada específico.

FILTERGRAFO DESCRIÇÃO


Um filtergraph é um gráfico direcionado de filtros conectados. Pode conter ciclos, e aí
pode haver vários links entre um par de filtros. Cada link tem um teclado de entrada de um lado
conectando-o a um filtro do qual ele obtém sua entrada, e um pad de saída no outro
lado conectando-o a um filtro que aceita sua saída.

Cada filtro em um filtergraph é uma instância de uma classe de filtro registrada no
aplicativo, que define os recursos e o número de pads de entrada e saída do
filtro.

Um filtro sem pads de entrada é chamado de "fonte", e um filtro sem pads de saída é
chamado de "pia".

Gráfico de filtro sintaxe
Um filtro gráfico tem uma representação textual, que é reconhecida pelo -filtro/-vf/-af e
-filtro_complexo opções em ffmpeg e -vf/-af in ffplay, E por o
função "avfilter_graph_parse_ptr ()" definida em libavfilter / avfilter.h.

Uma cadeia de filtros consiste em uma sequência de filtros conectados, cada um conectado ao
anterior na sequência. Uma cadeia de filtros é representada por uma lista de "," - separados
descrições de filtro.

Um filtro gráfico consiste em uma sequência de cadeias de filtros. Uma sequência de cadeias de filtros é
representado por uma lista de descrições de cadeias de filtros separadas por ";".

Um filtro é representado por uma string no formato:
[in_link_1] ... [in_link_N]nome_do_filtro=argumentos[out_link_1] ... [out_link_M]

nome_do_filtro é o nome da classe de filtro da qual o filtro descrito é uma instância
de, e deve ser o nome de uma das classes de filtro registradas no programa. o
o nome da classe de filtro é opcionalmente seguido por uma string "=argumentos".

argumentos é uma string que contém os parâmetros usados ​​para inicializar o filtro
instância. Pode ter um de dois formatos:

· A ':' - lista separada de chave = valor pares.

· A ':' - lista separada de valor. Neste caso, as chaves são consideradas a opção
nomes na ordem em que são declarados. Por exemplo, o filtro "fade" declara três opções em
este pedido -- tipo, quadro_inicial e nb_frames. Então a lista de parâmetros em: 0: 30 significa
que o valor in é atribuído à opção tipo, 0 para quadro_inicial e 30 para
nb_frames.

· A ':' - lista separada de direto misto valor e longo chave = valor pares. O direto valor
deve preceder o chave = valor pares, e seguem a mesma ordem de restrições do
ponto anterior. A seguir chave = valor os pares podem ser definidos em qualquer ordem preferida.

Se o valor da opção em si é uma lista de itens (por exemplo, o filtro "formato" pega uma lista de
formatos de pixel), os itens na lista são geralmente separados por |.

A lista de argumentos pode ser citada usando o caractere ' como marca inicial e final, e
o personagem \ para escapar os caracteres dentro do texto citado; caso contrário, o argumento
string é considerado terminado quando o próximo caractere especial (pertencente ao conjunto
[] = ;,) é encontrado.

O nome e os argumentos do filtro são opcionalmente precedidos e seguidos por uma lista de
rótulos de link. Um rótulo de link permite nomear um link e associá-lo a uma saída de filtro
ou teclado de entrada. Os rótulos anteriores in_link_1 ... in_link_N, estão associados ao filtro
pads de entrada, os seguintes rótulos out_link_1 ... out_link_M, estão associados à saída
almofadas.

Quando dois rótulos de link com o mesmo nome são encontrados no filtro, um link entre o
pad de entrada e saída correspondente é criado.

Se um bloco de saída não estiver rotulado, ele é vinculado por padrão à primeira entrada não rotulada
almofada do próximo filtro na cadeia de filtros. Por exemplo na cadeia de filtros

nullsrc, split [L1], [L2] overlay, nullsink

a instância do filtro de divisão tem dois pads de saída, e a instância do filtro de sobreposição tem duas entradas
almofadas. O primeiro bloco de saída da divisão é identificado como "L1", o primeiro bloco de entrada da sobreposição é
rotulado como "L2", e o segundo bloco de saída de divisão está vinculado ao segundo bloco de entrada de
sobreposição, que não estão marcadas.

Em uma descrição de filtro, se o rótulo de entrada do primeiro filtro não for especificado, "em" é
assumido; se o rótulo de saída do último filtro não for especificado, "out" será assumido.

Em uma cadeia de filtros completa, todas as almofadas de entrada e saída de filtro não rotuladas devem ser
conectado. Um gráfico de filtro é considerado válido se todas as almofadas de entrada e saída do filtro de
todas as cadeias de filtros estão conectadas.

Libavfilter irá inserir automaticamente escada filtros onde a conversão de formato é necessária.
É possível especificar sinalizadores swscale para aqueles scalers inseridos automaticamente por
prefixando "sws_flags =bandeiras;" para a descrição do filtro gráfico.

Aqui está uma descrição BNF da sintaxe do gráfico de filtro:

:: = sequência de caracteres alfanuméricos e '_'
:: = "[" "]"
:: = [ ]
:: = sequência de caracteres (possivelmente entre aspas)
:: = [ ] ["=" ] [ ]
:: = [, ]
:: = [sws_flags = ;] [; ]

Notas on filtro gráfico escapando
A composição da descrição do gráfico de filtro envolve vários níveis de escape. Ver que o "Citando
e escapando " seção in que o ffmpeg-utils(1) manual para mais informações sobre o
procedimento de escape empregado.

Um escape de primeiro nível afeta o conteúdo de cada valor de opção de filtro, que pode conter
o caractere especial ":" usado para separar valores, ou um dos caracteres de escape "\ '".

Um escape de segundo nível afeta toda a descrição do filtro, que pode conter o
caracteres de escape "\ '" ou os caracteres especiais "[] ,;" usado pelo filtro
descrição.

Finalmente, quando você especifica um gráfico de filtro em uma linha de comando do shell, você precisa realizar um
escape de terceiro nível para os caracteres especiais do shell contidos nele.

Por exemplo, considere a seguinte string a ser incorporada no texto desenhado filtro
descrição texto valor:

esta é uma 'string': pode conter um ou mais caracteres especiais

Esta string contém o caractere de escape especial "'" e o caractere especial ":", portanto
ele precisa ser escapado desta maneira:

text = isto é uma \ 'string \' \: pode conter um ou mais caracteres especiais

Um segundo nível de escape é necessário ao incorporar a descrição do filtro em um
descrição do gráfico de filtro, para escapar de todos os caracteres especiais do gráfico de filtro. Assim
o exemplo acima torna-se:

drawtext = text = esta é uma \\\ 'string \\\' \\: pode conter um \, ou mais \, caracteres especiais

(note que além dos caracteres especiais de escape "\ '", também "," deve ser
escapou).

Finalmente, um nível adicional de escape é necessário ao escrever a descrição do gráfico de filtro
em um comando shell, que depende das regras de escape do shell adotado. Por exemplo,
assumindo que "\" é especial e precisa ser escapado com outro "\", a string anterior
finalmente resultará em:

-vf "drawtext = text = esta é uma \\\\\\ 'string \\\\\\' \\\\: pode conter um \\, ou mais \\, caracteres especiais"

LINHA DO TEMPO EDIÇÃO


Alguns filtros suportam um genérico permitir opção. Para os filtros que suportam a edição da linha do tempo,
esta opção pode ser definida para uma expressão que é avaliada antes de enviar um quadro para o
filtro. Se a avaliação for diferente de zero, o filtro será habilitado, caso contrário, o quadro
será enviado inalterado para o próximo filtro no filtro gráfico.

A expressão aceita os seguintes valores:

t carimbo de data / hora expresso em segundos, NAN se o carimbo de data / hora de entrada for desconhecido

n número sequencial do quadro de entrada, começando em 0

postar a posição no arquivo do quadro de entrada, NAN se desconhecido

w
h largura e altura do quadro de entrada do vídeo

Além disso, esses filtros suportam um permitir comando que pode ser usado para redefinir o
expressão.

Como qualquer outra opção de filtragem, o permitir opção segue as mesmas regras.

Por exemplo, para habilitar um filtro de desfoque (desfoque inteligente) de 10 segundos a 3 minutos e um
curvas filtro começando em 3 segundos:

smartblur = ativar = 'entre (t, 10,3 * 60)',
curvas = ativar = 'gte (t, 3)': predefinição = cross_process

AUDIO FILTROS


Quando você configura sua compilação FFmpeg, você pode desabilitar qualquer um dos filtros existentes usando
"--disable-filters". A saída de configuração mostrará os filtros de áudio incluídos em seu
construir.

Abaixo está uma descrição dos filtros de áudio disponíveis atualmente.

desvanecer-se transversalmente
Aplique cross fade de um fluxo de entrada de áudio para outro fluxo de entrada de áudio. A Cruz
fade é aplicado por uma duração especificada perto do final do primeiro stream.

O filtro aceita as seguintes opções:

nb_amostras, ns
Especifique o número de amostras para as quais o efeito de cross fade deve durar. No fim
do efeito cross fade, o primeiro áudio de entrada ficará completamente silencioso. O padrão é
44100.

duração, d
Especifique a duração do efeito de cross fade. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita. Por padrão, a duração é determinada
by nb_samples. Se definida, esta opção é usada em vez de nb_samples.

sobreposição, o
O final do primeiro stream deve se sobrepor ao início do segundo stream. O padrão é habilitado.

curva1
Defina a curva para a transição cross fade para o primeiro fluxo.

curva2
Defina a curva para a transição cross fade para o segundo fluxo.

Para a descrição dos tipos de curvas disponíveis, consulte desaparecer descrição do filtro.

Exemplos

· Cross fade de uma entrada para outra:

ffmpeg -i primeiro.flac -i segundo.flac -filter_complex acrossfade = d = 10: c1 = exp: c2 = exp output.flac

· Cross fade de uma entrada para outra, mas sem sobreposição:

ffmpeg -i first.flac -i second.flac -filter_complex acrossfade = d = 10: o = 0: c1 = exp: c2 = exp output.flac

um atraso
Atrase um ou mais canais de áudio.

As amostras no canal atrasado são preenchidas com silêncio.

O filtro aceita a seguinte opção:

atrasos
Defina a lista de atrasos em milissegundos para cada canal separado por '|'. Pelo menos um
atraso maior que 0 deve ser fornecido. Atrasos não utilizados serão silenciosamente ignorados. Se
o número de atrasos fornecidos é menor do que o número de canais que todos os canais restantes irão
não ser atrasado.

Exemplos

· Atrasar o primeiro canal em 1.5 segundos, o terceiro canal em 0.5 segundos e deixar o
segundo canal (e quaisquer outros canais que possam estar presentes) inalterado.

adelay = 1500 | 0 | 500

eco
Aplique eco ao áudio de entrada.

Os ecos são sons refletidos e podem ocorrer naturalmente entre montanhas (e às vezes grandes
edifícios) ao falar ou gritar; efeitos de eco digital emulam este comportamento e são
frequentemente usado para ajudar a preencher o som de um único instrumento ou vocal. A diferença de fuso horário
entre o sinal original e a reflexão está o "atraso" e o volume do
sinal refletido é a "decadência". Vários ecos podem ter diferentes atrasos e diminuições.

Segue uma descrição dos parâmetros aceitos.

em_ganho
Defina o ganho de entrada do sinal refletido. O padrão é 0.6.

out_gain
Defina o ganho de saída do sinal refletido. O padrão é 0.3.

atrasos
Definir a lista de intervalos de tempo em milissegundos entre o sinal original e as reflexões
separados por '|'. O intervalo permitido para cada "atraso" é "(0 - 90000.0]". O padrão é 1000.

decai
Defina a lista de alturas dos sinais refletidos separados por '|'. Intervalo permitido para cada
"decadência" é "(0 - 1.0]". O padrão é 0.5.

Exemplos

· Faça soar como se houvesse o dobro de instrumentos do que realmente está tocando:

aecho = 0.8: 0.88: 60: 0.4

· Se o atraso for muito curto, soará como um robô (metálico) tocando música:

aecho = 0.8: 0.88: 6: 0.4

· Um atraso maior soará como um concerto ao ar livre nas montanhas:

aecho = 0.8: 0.9: 1000: 0.3

· O mesmo que acima, mas com mais uma montanha:

aecho=0.8:0.9:1000|1800:0.3|0.25

eval
Modifica um sinal de áudio de acordo com as expressões especificadas.

Este filtro aceita uma ou mais expressões (uma para cada canal), que são avaliadas
e usado para modificar um sinal de áudio correspondente.

Ele aceita os seguintes parâmetros:

expressões
Defina a lista de expressões separadas por '|' para cada canal separado. Se o número de
canais de entrada é maior do que o número de expressões, o último especificado
expressão é usada para os canais de saída restantes.

canal_layout, c
Defina o layout do canal de saída. Se não for especificado, o layout do canal é especificado pelo
número de expressões. Se definido para mesmo, ele usará por padrão o mesmo canal de entrada
layout.

Cada expressão em expressões pode conter as seguintes constantes e funções:

ch número do canal da expressão atual

n número da amostra avaliada, a partir de 0

s taxa de amostragem

t tempo da amostra avaliada expresso em segundos

nb_in_channels
nb_out_channels
número de canais de entrada e saída

val (CH)
o valor do canal de entrada com número CH

Nota: este filtro é lento. Para um processamento mais rápido, você deve usar um filtro dedicado.

Exemplos

· Meio volume:

aeval = val (ch) / 2: c = mesmo

· Inverter fase do segundo canal:

aeval =onda(0) | -onda(1)

desaparecer
Aplique efeito fade-in / out ao áudio de entrada.

Segue uma descrição dos parâmetros aceitos.

tipo, t
Especifique o tipo de efeito, pode ser "in" para fade-in ou "out" para fade-out
efeito. O padrão é "in".

amostra_inicial, ss
Especifique o número da amostra inicial para começar a aplicar o efeito de fade. Predefinição
é 0.

nb_amostras, ns
Especifique o número de amostras para as quais o efeito de esmaecimento deve durar. No final de
efeito de fade-in, o áudio de saída terá o mesmo volume do áudio de entrada, no
No final da transição de fade-out, o áudio de saída será silenciado. O padrão é 44100.

hora_inicial, st
Especifique a hora de início do efeito de esmaecimento. O padrão é 0. O valor deve ser especificado
como uma duração de tempo; Vejo que o Horário duração seção in que o ffmpeg-utils(1) manual para
a sintaxe aceita. Se definida, esta opção é usada em vez de amostra_inicial.

duração, d
Especifique a duração do efeito de esmaecimento. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita. No final do efeito fade-in, o
o áudio de saída terá o mesmo volume do áudio de entrada, no final do fade-out
transição, o áudio de saída será silencioso. Por padrão, a duração é determinada por
nb_samples. Se definida, esta opção é usada em vez de nb_samples.

curva
Defina a curva para a transição de esmaecimento.

Ele aceita os seguintes valores:

tri selecione inclinação triangular e linear (padrão)

qsin
selecione o quarto da onda senoidal

hsin
selecione metade da onda senoidal

inspiração
selecione a onda senoidal exponencial

log selecione logarítmico

indústria
selecione parábola invertida

aqui selecione quadrático

cubo selecione cúbico

quadrado selecione raiz quadrada

cbr selecione raiz cúbica

pela selecione a parábola

exp selecione exponencial

iqsin
selecione o quarto invertido da onda senoidal

Ihsin
selecione a metade invertida da onda senoidal

desejar
selecione assento exponencial duplo

desi
selecione sigmóide dupla exponencial

Exemplos

· Fade nos primeiros 15 segundos de áudio:

afade = t = in: ss = 0: d = 15

· Fade out nos últimos 25 segundos de um áudio de 900 segundos:

afade = t = out: st = 875: d = 25

formato
Defina as restrições de formato de saída para o áudio de entrada. A estrutura vai negociar mais
formato apropriado para minimizar conversões.

Ele aceita os seguintes parâmetros:

amostra_fmts
Uma lista separada por '|' de formatos de amostra solicitados.

taxas_amostra
Uma lista separada por '|' de taxas de amostragem solicitadas.

canais_layouts
Uma lista separada por '|' de layouts de canais solicitados.

See que o Canal traçado seção in que o ffmpeg-utils(1) manual para a sintaxe necessária.

Se um parâmetro for omitido, todos os valores são permitidos.

Força a saída para estéreo não sinalizado de 8 bits ou sinalizado de 16 bits

aformat = sample_fmts = u8 | s16: channel_layouts = stereo

tudo passa
Aplique um filtro passa-tudo de dois pólos com frequência central (em Hz) freqüência, e filtrar-
largura largura. Um filtro passa-tudo muda a frequência do áudio para a relação de fase
sem mudar sua freqüência para relação de amplitude.

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência em Hz.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type.

Amerge
Junte dois ou mais streams de áudio em um único stream multicanal.

O filtro aceita as seguintes opções:

inputs
Defina o número de entradas. O padrão é 2.

Se os layouts de canal das entradas forem separados e, portanto, compatíveis, o canal
layout da saída será definido em conformidade e os canais serão reordenados como
necessário. Se os layouts de canal das entradas não forem separados, a saída terá todos
os canais da primeira entrada, em seguida, todos os canais da segunda entrada, nessa ordem,
e o layout do canal de saída será o valor padrão correspondente ao total
número de canais.

Por exemplo, se a primeira entrada for 2.1 (FL + FR + LF) e a segunda entrada for FC + BL + BR,
então a saída será em 5.1, com os canais na seguinte ordem: a1, a2, b1, a3,
b2, b3 (a1 é o primeiro canal da primeira entrada, b1 é o primeiro canal da segunda
entrada).

Por outro lado, se ambas as entradas estiverem em estéreo, os canais de saída estarão no padrão
ordem: a1, a2, b1, b2, e o layout do canal será arbitrariamente definido como 4.0, que pode ou
pode não ser o valor esperado.

Todas as entradas devem ter a mesma taxa de amostragem e formato.

Se as entradas não tiverem a mesma duração, a saída irá parar com a mais curta.

Exemplos

· Mesclar dois arquivos mono em um stream estéreo:

amovie = left.wav [l]; amovie = right.mp3 [r]; [l] [r] americano

· Múltiplas mesclagens assumindo 1 fluxo de vídeo e 6 fluxos de áudio em entrada.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

uma mistura
Mistura várias entradas de áudio em uma única saída.

Observe que este filtro suporta apenas amostras flutuantes (o Amerge e panela filtros de áudio
suporta muitos formatos). Se o uma mistura entrada tem amostras inteiras então uma amostra será
inserido automaticamente para realizar a conversão em amostras flutuantes.

Por exemplo

ffmpeg -i ENTRADA1 -i ENTRADA2 -i ENTRADA3 -filter_complex amix = entradas = 3: duração = primeiro: dropout_transition = 3 SAÍDA

irá misturar 3 streams de áudio de entrada para uma única saída com a mesma duração do primeiro
entrada e um tempo de transição de dropout de 3 segundos.

Ele aceita os seguintes parâmetros:

inputs
O número de entradas. Se não for especificado, o padrão é 2.

duração
Como determinar o fim do fluxo.

mais longo
A duração da entrada mais longa. (predefinição)

menor
A duração da entrada mais curta.

primeiro
A duração da primeira entrada.

dropout_transition
O tempo de transição, em segundos, para renormalização do volume quando um fluxo de entrada termina.
O valor padrão é 2 segundos.

anular
Passe a fonte de áudio inalterada para a saída.

uma almofada
Preencha o final de um stream de áudio com silêncio.

Isso pode ser usado junto com ffmpeg -mais curto para estender os fluxos de áudio para o mesmo comprimento
como o fluxo de vídeo.

Segue uma descrição das opções aceitas.

tamanho do pacote
Defina o tamanho do pacote de silêncio. O valor padrão é 4096.

pad_len
Defina o número de amostras de silêncio a serem adicionadas ao final. Depois que o valor for alcançado,
o stream é encerrado. Esta opção é mutuamente exclusiva com Whole_len.

Whole_len
Defina o número mínimo total de amostras no fluxo de saída de áudio. Se o valor for
maior do que o comprimento do áudio de entrada, o silêncio é adicionado ao final, até que o valor seja
alcançado. Esta opção é mutuamente exclusiva com pad_len.

Se nem o pad_len nem o Whole_len opção estiver definida, o filtro adicionará silêncio ao
final do fluxo de entrada indefinidamente.

Exemplos

· Adicione 1024 amostras de silêncio ao final da entrada:

apad = pad_len = 1024

· Certifique-se de que a saída de áudio contenha pelo menos 10000 amostras, preencha a entrada com
silêncio se necessário:

apad = whole_len = 10000

· Usar ffmpeg para preencher a entrada de áudio com silêncio, de modo que o fluxo de vídeo sempre
resultado o mais curto e será convertido até o final no arquivo de saída ao usar
que o menor opção:

ffmpeg -i VIDEO -i AUDIO -filter_complex "[1: 0] apad" -shortest OUTPUT

afasor
Adicione um efeito de fase ao áudio de entrada.

Um filtro de phaser cria uma série de picos e depressões no espectro de frequência. o
posição dos picos e depressões são modulados de modo que variem ao longo do tempo, criando um
efeito arrebatador.

Segue uma descrição dos parâmetros aceitos.

em_ganho
Defina o ganho de entrada. O padrão é 0.4.

out_gain
Defina o ganho de saída. O padrão é 0.74

atraso
Defina o atraso em milissegundos. O padrão é 3.0.

decadência
Definir decadência. O padrão é 0.4.

velocidade
Defina a velocidade de modulação em Hz. O padrão é 0.5.

tipo
Defina o tipo de modulação. O padrão é triangular.

Ele aceita os seguintes valores:

triangular, t
senoidal, s

uma amostra
Faça uma nova amostra do áudio de entrada para os parâmetros especificados, usando a biblioteca libswresample. Se
nenhum for especificado, então o filtro irá converter automaticamente entre sua entrada e
saída.

Este filtro também é capaz de esticar / comprimir os dados de áudio para que correspondam aos carimbos de data / hora
ou para injetar silêncio / cortar áudio para que corresponda aos carimbos de data / hora, faça uma combinação de
ambos ou nenhum.

O filtro aceita a sintaxe [taxa de amostragem:]reamostrador_opções, Onde taxa de amostragem expressa
uma taxa de amostragem e reamostrador_opções é uma lista de chave=valor pares, separados por ":". Ver
o manual ffmpeg-resampler para a lista completa de opções com suporte.

Exemplos

· Reamostrar o áudio de entrada para 44100 Hz:

aresample = 44100

· Esticar / comprimir amostras para os carimbos de data / hora fornecidos, com um máximo de 1000 amostras por
segunda compensação:

aresample = async = 1000

exemplos de amostras
Defina o número de amostras por cada quadro de áudio de saída.

O último pacote de saída pode conter um número diferente de amostras, pois o filtro irá limpar
todas as amostras restantes quando o áudio de entrada sinalizar seu fim.

O filtro aceita as seguintes opções:

nb_out_samples, n
Defina o número de quadros por cada quadro de áudio de saída. O número pretende ser o
Número de amostras para cada canal. O valor padrão é 1024.

almofada, p
Se definido como 1, o filtro preencherá o último quadro de áudio com zeros, de modo que o último
o quadro conterá o mesmo número de amostras que os anteriores. O valor padrão é
1.

Por exemplo, para definir o número de amostras por quadro para 1234 e desativar o preenchimento para o
último quadro, use:

asetnsamples = n = 1234: p = 0

asetrato
Defina a taxa de amostragem sem alterar os dados PCM. Isso resultará em uma mudança de velocidade
e arremesso.

O filtro aceita as seguintes opções:

taxa de amostragem, r
Defina a taxa de amostragem de saída. O padrão é 44100 Hz.

asshowinfo
Mostra uma linha contendo várias informações para cada quadro de áudio de entrada. O áudio de entrada é
Não modificado.

A linha mostrada contém uma sequência de pares de chave / valor do formulário chave:valor.

Os seguintes valores são mostrados na saída:

n O número (sequencial) do quadro de entrada, começando em 0.

pts O timestamp de apresentação do quadro de entrada, em unidades de base de tempo; a base de tempo
depende da almofada de entrada do filtro e geralmente é 1 /taxa de amostragem.

pts_time
O carimbo de data / hora da apresentação do quadro de entrada em segundos.

postar posição do quadro no fluxo de entrada, -1 se esta informação não estiver disponível
e / ou sem sentido (por exemplo, no caso de áudio sintético)

fmt O formato de amostra.

layout
O layout do canal.

taxas
A taxa de amostragem do quadro de áudio.

nb_samples
O número de amostras (por canal) no quadro.

checksum
A soma de verificação Adler-32 (impressa em hexadecimal) dos dados de áudio. Para áudio plano,
os dados são tratados como se todos os planos fossem concatenados.

avião_checksums
Uma lista de checksums Adler-32 para cada plano de dados.

estatísticas
Exibe informações estatísticas sobre o domínio do tempo sobre os canais de áudio. Estatísticas são
calculado e exibido para cada canal de áudio e, quando aplicável, um valor geral
também é fornecido.

Aceita a seguinte opção:

comprimento
Janela curta em segundos, usada para medição RMS de pico e vale. O padrão é
0.05 (50 milissegundos). O intervalo permitido é "[0.1 - 10]".

metadados
Defina a injeção de metadados. Todas as chaves de metadados são prefixadas com "lavfi.astats.X",
onde "X" é o número do canal começando em 1 ou string "Geral". O padrão é desabilitado.

As chaves disponíveis para cada canal são: DC_offset Min_level Max_level Min_difference
Max_difference Média_diferença Nível_de pico RMS_pico RMS_vale Crest_factor Flat_factor
Peak_count Bit_profundidade

e para Geral: DC_offset Min_level Max_level Min_difference Max_difference
Média_diferença Pico_nível RMS_nível RMS_pico RMS_vale Flat_factor Pico_contagem
Bit_profundidade Number_of_samples

Por exemplo, a chave completa parece com este "lavfi.astats.1.DC_offset" ou este
"lavfi.astats.Overall.Peak_count".

Para uma descrição do que cada chave significa, leia abaixo.

redefinir
Defina o número de quadros após o qual as estatísticas serão recalculadas. O padrão é
Desativado.

Segue uma descrição de cada parâmetro mostrado:

DC compensar
Deslocamento da amplitude média de zero.

min nível
Nível mínimo de amostra.

Max nível
Nível máximo de amostra.

min diferença
Diferença mínima entre duas amostras consecutivas.

Max diferença
Diferença máxima entre duas amostras consecutivas.

Média diferença
Diferença média entre duas amostras consecutivas. A média de cada diferença
entre duas amostras consecutivas.

Pico nível dB
RMS nível dB
Pico padrão e nível RMS medido em dBFS.

RMS pico dB
RMS cocho dB
Valores de pico e mínimo para o nível RMS medido em uma janela curta.

CREST fator
Razão padrão de pico para nível RMS (nota: não em dB).

Plano fator
Nivelamento (ou seja, amostras consecutivas com o mesmo valor) do sinal em seu pico
níveis (ou seja, min nível or Max nível).

Pico contar
Número de ocasiões (não o número de amostras) em que o sinal atingiu min
nível or Max nível.

Pouco profundidade
Profundidade de bits geral do áudio. Número de bits usados ​​para cada amostra.

astreamsync
Encaminhe dois fluxos de áudio e controle a ordem em que os buffers são encaminhados.

O filtro aceita as seguintes opções:

exp, e
Defina a expressão decidindo qual fluxo deve ser encaminhado a seguir: se o resultado for
negativo, o primeiro fluxo é encaminhado; se o resultado for positivo ou zero, o segundo
stream é encaminhado. Ele pode usar as seguintes variáveis:

b1 b2
número de buffers encaminhados até agora em cada fluxo

s1 s2
número de amostras encaminhadas até agora em cada fluxo

t1 t2
carimbo de data / hora atual de cada fluxo

O valor padrão é "t1-t2", o que significa sempre encaminhar o fluxo que tem um
carimbo de data / hora menor.

Exemplos

Faça o teste de resistência ao enviar buffers aleatoriamente na entrada errada, evitando também
muito de uma dessincronização:

amovie = arquivo.ogg [a]; amovie = arquivo.mp3 [b];
[a] [b] astreamsync = (2 *acaso(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] americano

assíncronos
Sincronize dados de áudio com carimbos de data / hora, comprimindo / estendendo e / ou soltando
amostras / adicionando silêncio quando necessário.

Este filtro não é construído por padrão, use uma amostra para fazer apertar / alongar.

Ele aceita os seguintes parâmetros:

compensar
Ative o alongamento / compressão dos dados para que correspondam aos carimbos de data / hora. Desativado por
predefinição. Quando desativado, os intervalos de tempo são cobertos pelo silêncio.

min_delta
A diferença mínima entre carimbos de data / hora e dados de áudio (em segundos) para acionar
adicionar / descartar amostras. O valor padrão é 0.1. Se você obtiver uma sincronização imperfeita com
este filtro, tente definir este parâmetro como 0.

max_comp
A compensação máxima em amostras por segundo. Relevante apenas com compensar = 1. o
o valor padrão é 500.

primeiros_pts
Suponha que o primeiro PTS deva ter esse valor. A base de tempo é 1 / taxa de amostragem. Esse
permite o preenchimento / corte no início do fluxo. Por padrão, nenhuma suposição é
feito sobre o PTS esperado do primeiro quadro, portanto, nenhum preenchimento ou corte é feito. Para
exemplo, isso poderia ser definido como 0 para preencher o início com silêncio se um fluxo de áudio
começa após o stream de vídeo ou para cortar quaisquer amostras com um PTS negativo devido a
atraso do codificador.

atempo
Ajuste o andamento do áudio.

O filtro aceita exatamente um parâmetro, o andamento do áudio. Se não for especificado, o
o filtro assumirá um tempo nominal de 1.0. O tempo deve estar na faixa [0.5, 2.0].

Exemplos

· Diminua o ritmo do áudio para 80%:

atempo = 0.8

· Para acelerar o áudio para 125% do tempo:

atempo = 1.25

Atrim
Ajuste a entrada para que a saída contenha uma subparte contínua da entrada.

Ele aceita os seguintes parâmetros:

começo
Timestamp (em segundos) do início da seção a ser mantida. Ou seja, a amostra de áudio com
o carimbo de data / hora começo será a primeira amostra na saída.

final Especifique o tempo da primeira amostra de áudio que será descartada, ou seja, a amostra de áudio
imediatamente anterior àquele com o carimbo de data / hora final será a última amostra no
saída.

start_pts
Igual a começo, exceto que esta opção define o carimbo de data / hora de início em amostras em vez de
segundos.

end_pts
Igual a final, exceto que esta opção define o carimbo de data / hora final em amostras em vez de segundos.

duração
A duração máxima da saída em segundos.

amostra_inicial
O número da primeira amostra que deve ser produzida.

amostra_final
O número da primeira amostra que deve ser descartada.

começo, final e duração são expressos como especificações de duração de tempo; Vejo que o Horário
duração seção in que o ffmpeg-utils(1) manual.

Observe que os primeiros dois conjuntos de opções de início / fim e o duração opção olhar para o
frame timestamp, enquanto as opções _sample simplesmente contam as amostras que passam pelo
filtro. Portanto, start / end_pts e start / end_sample darão resultados diferentes quando o
os carimbos de data / hora estão errados, são inexatos ou não começam do zero. Observe também que este filtro não
modificar os carimbos de data / hora. Se você deseja que os carimbos de data / hora de saída comecem em zero, insira o
asetpts de filtro após o filtro de atrim.

Se várias opções de início ou fim são definidas, este filtro tenta ser ganancioso e manter todos
amostras que correspondem a pelo menos uma das restrições especificadas. Para manter apenas a parte que
corresponde a todas as restrições de uma vez, vários filtros de atrim em cadeia.

Os padrões são tais que todas as entradas são mantidas. Portanto, é possível definir, por exemplo, apenas o
valores finais para manter tudo antes do tempo especificado.

Exemplos:

· Largue tudo, exceto o segundo minuto de entrada:

ffmpeg -i INPUT -af atrim = 60: 120

· Mantenha apenas as primeiras 1000 amostras:

ffmpeg -i INPUT -af atrim = end_sample = 1000

passa banda
Aplique um filtro passa-banda Butterworth de dois pólos com frequência central freqüência e
Largura de banda (ponto 3 dB). o Csg opção seleciona um ganho de saia constante (ganho de pico =
Q) em vez do padrão: ganho de pico constante de 0dB. O filtro rola a 6dB por oitava
(20dB por década).

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência central do filtro. O padrão é 3000.

Csg Ganho de saia constante se definido como 1. O padrão é 0.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type.

faixa rejeitada
Aplicar um filtro de rejeição de banda Butterworth de dois pólos com frequência central freqüência e
Largura de banda (ponto 3 dB) largura. O filtro rola a 6dB por oitava (20dB por década).

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência central do filtro. O padrão é 3000.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type.

baixo
Aumente ou corte as frequências graves (mais baixas) do áudio usando um filtro shelving de dois pólos
com uma resposta semelhante à dos controles de tom de alta fidelidade padrão. Isso também é conhecido como
equalização de prateleiras (EQ).

O filtro aceita as seguintes opções:

ganho, g
Dê o ganho a 0 Hz. Seu intervalo útil é de cerca de -20 (para um corte grande) a +20 (para um
grande impulso). Cuidado com o corte ao usar um ganho positivo.

frequência, f
Defina a frequência central do filtro e, portanto, pode ser usado para estender ou reduzir o
faixa de frequência a ser aumentada ou reduzida. O valor padrão é 100 Hz.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Determine o quão íngreme é a transição de prateleira do filtro.

biquadrado
Aplique um filtro IIR biquad com os coeficientes dados. Onde b0, b1, b2 e a0, a1, a2
são os coeficientes do numerador e do denominador, respectivamente.

bs2b
Transformação Bauer de estéreo em binaural, o que melhora a audição de estéreo pelos fones de ouvido
registros de áudio.

Ele aceita os seguintes parâmetros:

perfis
Nível pré-definido de alimentação cruzada.

omissão
Nível padrão (fcut = 700, feed = 50).

fofo
Circuito Chu Moy (fcut = 700, feed = 60).

Jmeier
Circuito de Jan Meier (fcut = 650, feed = 95).

corte
Freqüência de corte (em Hz).

alimentação
Nível de alimentação (em Hz).

mapa do canal
Remapeie os canais de entrada para novos locais.

Ele aceita os seguintes parâmetros:

canal_layout
O layout do canal do fluxo de saída.

mapa, Mapeie canais de entrada para saída. O argumento é uma lista de mapeamentos separados por '|',
cada um no "in_channel-out_channel " or em_canal . em_canal pode ser o
nome do canal de entrada (por exemplo, FL para frente esquerda) ou seu índice no canal de entrada
layout. canal_de_saída é o nome do canal de saída ou seu índice na saída
layout do canal. Se canal_de_saída não é fornecido, então é implicitamente um índice, iniciando
com zero e aumentando em um para cada mapeamento.

Se nenhum mapeamento estiver presente, o filtro mapeará implicitamente os canais de entrada para a saída
canais, preservando índices.

Por exemplo, assumindo um arquivo MOV de entrada de downmix 5.1 +,

ffmpeg -i in.mov -filter 'channelmap = map = DL-FL | DR-FR' out.wav

criará um arquivo WAV de saída marcado como estéreo a partir dos canais de downmix da entrada.

Para corrigir um WAV 5.1 codificado incorretamente na ordem do canal nativo do AAC

ffmpeg -i in.wav -filter 'channelmap = 1 | 2 | 0 | 5 | 3 | 4: 5.1' out.wav

channelplit
Divida cada canal de um fluxo de entrada de áudio em um fluxo de saída separado.

Ele aceita os seguintes parâmetros:

canal_layout
O layout do canal do fluxo de entrada. O padrão é "estéreo".

Por exemplo, supondo um arquivo MP3 de entrada estéreo,

ffmpeg -i in.mp3 -filter_complex canaisplit out.mkv

irá criar um arquivo Matroska de saída com dois fluxos de áudio, um contendo apenas o
canal e o outro o canal certo.

Divida um arquivo WAV 5.1 em arquivos por canal:

ffmpeg -i in.wav -filter_complex
'channel_layout = 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]'
lado_direito.wav

coro
Adicione um efeito de coro ao áudio.

Pode fazer um único som vocal como um refrão, mas também pode ser aplicado à instrumentação.

O coro se assemelha a um efeito de eco com um pequeno retardo, mas enquanto com o eco o retardo é
constante, com coro, é variado usando modulação sinusoidal ou triangular. o
profundidade de modulação define o intervalo em que o atraso modulado é reproduzido antes ou depois do
atraso. Portanto, o som atrasado soará mais lento ou mais rápido, ou seja, o som atrasado
afinado em torno do original, como em um refrão onde alguns vocais estão ligeiramente desafinados.

Ele aceita os seguintes parâmetros:

em_ganho
Defina o ganho de entrada. O padrão é 0.4.

out_gain
Defina o ganho de saída. O padrão é 0.4.

atrasos
Defina atrasos. Um atraso típico é de cerca de 40ms a 60ms.

decai
Defina decaimentos.

velocidades
Defina as velocidades.

profundidades
Defina profundidades.

Exemplos

· Um único atraso:

chorus=0.7:0.9:55:0.4:0.25:2

· Dois atrasos:

chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3

· Coro de som mais completo com três atrasos:

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

comando
Comprima ou expanda a faixa dinâmica do áudio.

Ele aceita os seguintes parâmetros:

ataques
decai
Uma lista de tempos em segundos para cada canal sobre o qual o nível instantâneo do
o sinal de entrada é calculado para determinar seu volume. ataques refere-se ao aumento de volume
e decai refere-se à diminuição do volume. Para a maioria das situações, o tempo de ataque
(resposta ao áudio ficando mais alto) deve ser menor do que o tempo de decaimento, porque
o ouvido humano é mais sensível a áudio alto repentino do que a áudio suave repentino. Um típico
o valor para o ataque é 0.3 segundos e um valor típico para a queda é 0.8 segundos. Se
o número especificado de ataques e decaimentos é menor do que o número de canais, o último conjunto
attack / decay será usado para todos os canais restantes.

pontos
Uma lista de pontos para a função de transferência, especificada em dB em relação ao máximo
possível amplitude do sinal. Cada lista de pontos-chave deve ser definida usando o seguinte
sintaxe: "x0 / y0 | x1 / y1 | x2 / y2 | ...." ou "x0 / y0 x1 / y1 x2 / y2 ...."

Os valores de entrada devem estar em ordem estritamente crescente, mas a função de transferência
não tem que ser monotonicamente crescente. O ponto "0/0" é assumido, mas pode ser substituído
(por "0 / out-dBn"). Os valores típicos para a função de transferência são "-70 / -70 | -60 / -20".

joelho macio
Defina o raio da curva em dB para todas as juntas. O padrão é 0.01.

de ganho
Defina o ganho adicional em dB a ser aplicado em todos os pontos da função de transferência.
Isso permite um ajuste fácil do ganho geral. O padrão é 0.

volume
Defina um volume inicial, em dB, a ser assumido para cada canal quando a filtragem for iniciada.
Isso permite ao usuário fornecer um nível nominal inicialmente, de modo que, por exemplo, um
ganho muito grande não é aplicado aos níveis de sinal iniciais antes que o companding tenha
começou a operar. Um valor típico para áudio inicialmente silencioso é -90 dB. Isto
o padrão é 0.

atraso
Defina um atraso, em segundos. O áudio de entrada é analisado imediatamente, mas o áudio é atrasado
antes de ser alimentado para o ajuste de volume. Especificando um atraso aproximadamente igual ao
tempos de ataque / decaimento permitem que o filtro opere efetivamente de forma preditiva, em vez de
modo reativo. O padrão é 0.

Exemplos

· Faça música com passagens baixas e altas adequadas para ouvir em um ambiente barulhento
meio Ambiente:

compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2

Outro exemplo de áudio com peças de sussurro e explosão:

compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0

· Uma porta de ruído para quando o ruído está em um nível inferior ao do sinal:

compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1

· Aqui está outra porta de ruído, desta vez para quando o ruído estiver em um nível mais alto do que o
sinal (tornando-o, em alguns aspectos, semelhante ao silenciador):

compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1

dc shift
Aplique uma mudança DC ao áudio.

Isso pode ser útil para remover um deslocamento DC (causado talvez por um problema de hardware no
cadeia de gravação) do áudio. O efeito de um deslocamento DC é o headroom reduzido e, portanto,
volume. o estatísticas O filtro pode ser usado para determinar se um sinal tem um desvio DC.

mudança
Defina o deslocamento DC, o intervalo permitido é [-1, 1]. Indica a quantidade de deslocamento do
áudio.

Limergain
Opcional. Deve ter um valor muito menor que 1 (por exemplo, 0.05 ou 0.02) e é usado para
evitar o corte.

dinamismo
Normalizador de áudio dinâmico.

Este filtro aplica uma certa quantidade de ganho ao áudio de entrada para trazer seu pico
magnitude para um nível de destino (por exemplo, 0 dBFS). No entanto, em contraste com os mais "simples"
algoritmos de normalização, o Dynamic Audio Normalizer * dinamicamente * reajusta o ganho
fator para o áudio de entrada. Isso permite a aplicação de ganho extra para as seções "silenciosas" de
o áudio, evitando distorções ou cortando as seções "altas". Em outras palavras: o
O Normalizador de Áudio Dinâmico "uniformiza" o volume das seções silenciosas e barulhentas, no
sinta que o volume de cada seção é trazido para o mesmo nível de destino. Observe, no entanto,
que o Dynamic Audio Normalizer atinge este objetivo * sem * aplicar "faixa dinâmica
compressão ". Ele reterá 100% da faixa dinâmica * dentro * de cada seção do áudio
arquivo.

f Defina o comprimento do quadro em milissegundos. Na faixa de 10 a 8000 milissegundos. Predefinição
é 500 milissegundos. O Dynamic Audio Normalizer processa o áudio de entrada em pequenas
pedaços, chamados de quadros. Isso é necessário, porque uma magnitude de pico não tem
significado para apenas um único valor de amostra. Em vez disso, precisamos determinar o pico
magnitude para uma sequência contígua de valores de amostra. Embora seja um normalizador "padrão"
simplesmente usaria a magnitude de pico do arquivo completo, o Dynamic Audio Normalizer
determina a magnitude do pico individualmente para cada quadro. O comprimento de um quadro é
especificado em milissegundos. Por padrão, o Dynamic Audio Normalizer usa um quadro
duração de 500 milissegundos, que fornece bons resultados com a maioria dos arquivos.
Observe que o comprimento exato do quadro, em número de amostras, será determinado
automaticamente, com base na taxa de amostragem do arquivo de áudio de entrada individual.

g Defina o tamanho da janela do filtro gaussiano. No intervalo de 3 a 301, deve ser um número ímpar.
O padrão é 31. Provavelmente o parâmetro mais importante do Dynamic Audio Normalizer
é o "tamanho da janela" do filtro de suavização gaussiana. O tamanho da janela do filtro é
especificado em quadros, centralizado em torno do quadro atual. Para simplificar,
este deve ser um número ímpar. Consequentemente, o valor padrão de 31 leva em consideração
o quadro atual, bem como os 15 quadros anteriores e os 15 quadros subsequentes.
Usar uma janela maior resulta em um efeito de suavização mais forte e, portanto, em menos ganho
variação, ou seja, adaptação de ganho mais lenta. Por outro lado, usar uma janela menor resulta em
um efeito de suavização mais fraco e, portanto, em mais variação de ganho, ou seja, ganho mais rápido
adaptação. Em outras palavras, quanto mais você aumenta este valor, mais o Dinâmico
O Normalizador de áudio se comportará como um filtro de normalização "tradicional". No
contrário, quanto mais você diminuir este valor, mais o Normalizador de áudio dinâmico
comportar-se como um compressor de faixa dinâmica.

p Defina o valor de pico desejado. Isso especifica o nível de magnitude mais alto permissível para
a entrada de áudio normalizada. Este filtro tentará se aproximar da magnitude do pico alvo
o mais próximo possível, mas ao mesmo tempo também garante que o normalizado
o sinal nunca excederá a magnitude do pico. O fator de ganho local máximo de um quadro é
imposta diretamente pela magnitude do pico alvo. O valor padrão é 0.95 e, portanto,
deixa uma margem de manobra de 5% *. Não é recomendado ir acima deste valor.

m Defina o fator de ganho máximo. Na faixa de 1.0 a 100.0. O padrão é 10.0. A dinamica
O normalizador de áudio determina o fator de ganho máximo possível (local) para cada entrada
frame, ou seja, o fator de ganho máximo que não resulta em corte ou distorção.
O fator de ganho máximo é determinado pela amostra de magnitude mais alta do quadro.
No entanto, o Dynamic Audio Normalizer limita adicionalmente o ganho máximo do quadro
fator por um fator de ganho máximo predeterminado (global). Isso é feito para evitar
fatores de ganho excessivos em frames "silenciosos" ou quase silenciosos. Por padrão, o máximo
o fator de ganho é 10.0, para a maioria das entradas, o valor padrão deve ser suficiente e
geralmente não é recomendado aumentar este valor. Porém, para entrada com um extremamente
baixo nível de volume geral, pode ser necessário permitir fatores de ganho ainda maiores. Observação,
no entanto, o Dynamic Audio Normalizer não aplica simplesmente um limite "rígido"
(ou seja, valores de corte acima do limite). Em vez disso, uma função de limite "sigmóide"
vai ser aplicada. Dessa forma, os fatores de ganho irão se aproximar suavemente do limite
valor, mas nunca exceda esse valor.

r Defina o RMS de destino. No intervalo de 0.0 a 1.0. O padrão é 0.0 - desabilitado. Por padrão,
o Dynamic Audio Normalizer executa a normalização de "pico". Isso significa que o
o fator de ganho local máximo para cada quadro é definido (apenas) pelo maior do quadro
amostra de magnitude. Desta forma, as amostras podem ser amplificadas tanto quanto possível, sem
excedendo o nível máximo do sinal, ou seja, sem corte. Opcionalmente, no entanto, o
O Normalizador de áudio dinâmico também pode levar em consideração o quadrado médio da raiz do quadro,
abreviado RMS. Em engenharia elétrica, o RMS é comumente usado para determinar o
potência de um sinal variável no tempo. Portanto, considera-se que o RMS é um melhor
aproximação da "intensidade percebida" do que apenas olhar para o pico do sinal
magnitude. Conseqüentemente, ajustando todos os frames para um valor RMS constante, um uniforme
"intensidade percebida" pode ser estabelecida. Se um valor de RMS alvo foi especificado, um
o fator de ganho local do quadro é definido como o fator que resultaria exatamente em que
Valor RMS. Observe, no entanto, que o fator de ganho local máximo ainda é restrito por
a amostra de maior magnitude do quadro, a fim de evitar cortes.

n Habilite o acoplamento de canais. Por padrão, está habilitado. Por padrão, o Dynamic Audio
O normalizador amplificará todos os canais na mesma quantidade. Isso significa o mesmo ganho
fator será aplicado a todos os canais, ou seja, o fator de ganho máximo possível é
determinado pelo canal "mais alto". No entanto, em algumas gravações, pode acontecer que
o volume dos diferentes canais é irregular, por exemplo, um canal pode ser "mais silencioso" do que
Os outros). Neste caso, esta opção pode ser usada para desabilitar o canal
acoplamento. Dessa forma, o fator de ganho será determinado de forma independente para cada canal,
dependendo apenas da amostra de magnitude mais alta do canal individual. Isso permite
harmonizando o volume dos diferentes canais.

c Habilite a correção de polarização DC. Por padrão, está desabilitado. Um sinal de áudio (no tempo
domínio) é uma sequência de valores de amostra. No Dynamic Audio Normalizer, esses exemplos
os valores são representados no intervalo de -1.0 a 1.0, independentemente da entrada original
formato. Normalmente, o sinal de áudio, ou "forma de onda", deve ser centralizado em torno do zero
apontar. Isso significa que se calcularmos o valor médio de todas as amostras em um arquivo, ou em um
quadro único, então o resultado deve ser 0.0 ou pelo menos muito próximo desse valor. Se,
no entanto, há um desvio significativo do valor médio de 0.0, em qualquer
direção positiva ou negativa, isso é conhecido como polarização DC ou deslocamento DC. Desde um
A polarização DC é claramente indesejável, o Normalizador de Áudio Dinâmico fornece polarização DC opcional
correção. Com a correção de polarização DC habilitada, o Dynamic Audio Normalizer irá
determinar o valor médio, ou deslocamento de "correção DC", de cada quadro de entrada e subtrair
aquele valor de todos os valores de amostra do quadro que garante que essas amostras sejam
centralizado em torno de 0.0 novamente. Além disso, a fim de evitar "lacunas" nos limites do quadro, o
Os valores de compensação de correção DC serão interpolados suavemente entre os quadros vizinhos.

b Ative o modo de limite alternativo. Por padrão, está desabilitado. O Áudio Dinâmico
O normalizador leva em consideração uma certa vizinhança ao redor de cada quadro. Isso inclui
os quadros anteriores, bem como os subseqüentes. No entanto, para o "limite"
quadros, localizados no início e no final do arquivo de áudio, nem todos
quadros vizinhos estão disponíveis. Em particular, para os primeiros quadros no
arquivo de áudio, os quadros anteriores não são conhecidos. E, da mesma forma, para os últimos
quadros no arquivo de áudio, os quadros subsequentes não são conhecidos. Assim, a questão
surge quais fatores de ganho devem ser assumidos para os quadros ausentes no "limite"
região. O Dynamic Audio Normalizer implementa dois modos para lidar com esta situação.
O modo de limite padrão assume um fator de ganho de exatamente 1.0 para os quadros ausentes,
resultando em um suave "fade in" e "fade out" no início e no final do
entrada, respectivamente.

s Defina o fator de compressão. Na faixa de 0.0 a 30.0. O padrão é 0.0. Por padrão, o
O Dynamic Audio Normalizer não aplica compressão "tradicional". Isso significa que
picos de sinal não serão podados e, portanto, toda a faixa dinâmica será mantida
dentro de cada bairro local. No entanto, em alguns casos, pode ser desejável combinar
o algoritmo de normalização do Dynamic Audio Normalizer com um algoritmo mais "tradicional"
compressão. Para este propósito, o Dynamic Audio Normalizer fornece um opcional
função de compressão (limiarização). Se (e somente se) o recurso de compressão for
habilitado, todos os quadros de entrada serão processados ​​por uma função de limiar de joelho suave antes
para o processo de normalização real. Simplificando, a função de limite vai
podar todas as amostras cuja magnitude exceda um certo valor limite. No entanto, o
O Normalizador de áudio dinâmico não se aplica simplesmente a um valor de limite fixo. Em vez disso, o
o valor limite será ajustado para cada quadro individual. Em geral, menor
parâmetros resultam em compressão mais forte e vice-versa. Valores abaixo de 3.0 não são
recomendado, porque distorção audível pode aparecer.

cera
Torne o áudio mais fácil de ouvir em fones de ouvido.

Este filtro adiciona 'dicas' ao áudio estéreo de 44.1 kHz (ou seja, formato de CD de áudio) para que quando
ouvida em fones de ouvido, a imagem estéreo é movida de dentro de sua cabeça (padrão para
fones de ouvido) para fora e na frente do ouvinte (padrão para alto-falantes).

Transferido do SoX.

equalizador
Aplique um filtro de equalização de pico (EQ) de dois pólos. Com este filtro, o nível do sinal em
e em torno de uma frequência selecionada pode ser aumentada ou diminuída, enquanto (ao contrário do passa-banda e
filtros de rejeição de banda) que em todas as outras frequências permanece inalterada.

A fim de produzir curvas de equalização complexas, este filtro pode ser fornecido várias vezes,
cada um com uma frequência central diferente.

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência central do filtro em Hz.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type.

ganho, g
Defina o ganho ou atenuação necessária em dB. Cuidado com o recorte ao usar um positivo
ganhar.

Exemplos

· Atenuar 10 dB em 1000 Hz, com uma largura de banda de 200 Hz:

equalizador = f = 1000: largura_tipo = h: largura = 200: g = -10

· Aplicar ganho de 2 dB a 1000 Hz com Q 1 e atenuar 5 dB a 100 Hz com Q 2:

equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5

Flangers
Aplique um efeito de flange ao áudio.

O filtro aceita as seguintes opções:

atraso
Defina o atraso de base em milissegundos. Faixa de 0 a 30. O valor padrão é 0.

profundidade
Defina o atraso de varredura adicionado em milissegundos. Faixa de 0 a 10. O valor padrão é 2.

chuva
Defina a regeneração percentual (feedback de sinal atrasado). Faixa de -95 a 95. Padrão
o valor é 0.

largura
Defina a porcentagem de sinal atrasado misturado com o original. Faixa de 0 a 100. Padrão
o valor é 71.

velocidade
Defina varreduras por segundo (Hz). Faixa de 0.1 a 10. O valor padrão é 0.5.

forma
Definir forma de onda varrida, pode ser triangular or sinusoidal. O valor padrão é sinusoidal.

fase
Defina o deslocamento percentual da onda varrida para multicanais. Faixa de 0 a 100. Valor padrão
é 25.

interpor
Defina a interpolação da linha de atraso, linear or quadrático. O padrão é linear.

passagem alta
Aplique um filtro passa-alta com frequência de pontos de 3dB. O filtro pode ser unipolar,
ou pólo duplo (o padrão). O filtro roll off a 6dB por pólo por oitava (20dB por
pólo por década).

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência em Hz. O padrão é 3000.

pólos, p
Defina o número de pólos. O padrão é 2.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type. Aplica-se apenas a pólo duplo
filtro. O padrão é 0.707q e fornece uma resposta Butterworth.

juntar
Junte-se a vários fluxos de entrada em um fluxo multicanal.

Ele aceita os seguintes parâmetros:

inputs
O número de fluxos de entrada. O padrão é 2.

canal_layout
O layout do canal de saída desejado. O padrão é estéreo.

mapa, Mapeie os canais de entrada para saída. O argumento é uma lista de mapeamentos separados por '|',
cada um no "input_idx.in_channel-out_channel " . entrada_idx é o índice baseado em 0 de
o fluxo de entrada. em_canal pode ser o nome do canal de entrada (por exemplo, FL para
frente à esquerda) ou seu índice no fluxo de entrada especificado. canal_de_saída é o nome do
canal de saída.

O filtro tentará adivinhar os mapeamentos quando eles não forem especificados explicitamente. Isto
faz isso tentando primeiro encontrar um canal de entrada correspondente não utilizado e, se isso falhar,
escolhe o primeiro canal de entrada não utilizado.

Junte-se a 3 entradas (com layouts de canal devidamente definidos):

ffmpeg -i ENTRADA1 -i ENTRADA2 -i ENTRADA3 -filter_complex junção = entradas = 3 SAÍDA

Crie uma saída 5.1 a partir de 6 streams de canal único:

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'
Fora

Ladspa
Carregue um plugin LADSPA (Linux Audio Developer's Simple Plugin API).

Para habilitar a compilação deste filtro você precisa configurar o FFmpeg com "--enable-ladspa".

arquivo, f
Especifica o nome da biblioteca de plug-ins LADSPA a ser carregada. Se a variável de ambiente
LADSPA_PATH é definido, o plugin LADSPA é pesquisado em cada um dos diretórios
especificado pela lista separada por dois pontos em LADSPA_PATH, caso contrário, no LADSPA padrão
caminhos, que estão nesta ordem: HOME / .ladspa / lib /, / usr / local / lib / ladspa /,
/ usr / lib / ladspa /.

plugar, p
Especifica o plug-in na biblioteca. Algumas bibliotecas contêm apenas um plugin, mas
outros contêm muitos deles. Se este não for definido, o filtro irá listar todos os plugins disponíveis
dentro da biblioteca especificada.

controles, c
Defina o '|' lista separada de controles que são zero ou mais valores de ponto flutuante
que determinam o comportamento do plugin carregado (por exemplo, atraso, limite ou
ganho). Os controles precisam ser definidos usando a seguinte sintaxe:
c0 =value0| c1 =value1| c2 =value2| ..., onde valori é o valor definido no i-ésimo controle.
If controles está definido como "ajuda", todos os controles disponíveis e seus intervalos válidos são
impresso.

taxa de amostragem, s
Especifique a taxa de amostragem, o padrão é 44100. Usado apenas se o plug-in tiver zero entradas.

nb_amostras, n
Defina o número de amostras por canal para cada quadro de saída, o padrão é 1024. Apenas
usado se o plugin tiver zero entradas.

duração, d
Defina a duração mínima do áudio originado. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita. Observe que a duração resultante pode
ser maior do que a duração especificada, pois o áudio gerado é sempre cortado no
fim de um quadro completo. Se não for especificado, ou a duração expressa for negativa, o
o áudio deve ser gerado para sempre. Usado apenas se o plugin não tiver entradas.

Exemplos

· Liste todos os plug-ins disponíveis na biblioteca amp (plug-in de exemplo LADSPA):

ladspa = arquivo = amp

· Liste todos os controles disponíveis e seus intervalos válidos para o plugin "vcf_notch" de "VCF"
biblioteca:

ladspa = f = vcf: p = vcf_notch: c = ajuda

· Simular equipamento de áudio de baixa qualidade usando o plugin "Computer Music Toolkit" (CMT)
biblioteca:

ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12

· Adicionar reverberação ao áudio usando plug-ins TAP (plug-ins de processamento de áudio de Tom):

ladspa = arquivo = tap_reverb: tap_reverb

· Gerar ruído branco, com amplitude de 0.2:

ladspa = arquivo = cmt: noise_source_white: c = c0 = .2

· Gerar cliques de 20 bpm usando o plug-in "C * Click - Metrônomo" do "Plug-in de Áudio C *
Biblioteca Suite "(CAPS):

ladspa = arquivo = caps: Clique: c = c1 = 20 '

· Aplicar o efeito "C * Eq10X2 - Equalizador estéreo de 10 bandas":

ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2

comandos

Este filtro oferece suporte aos seguintes comandos:

cN Modifique o N-ésimo valor de controle.

Se o valor especificado não for válido, ele será ignorado e o anterior será mantido.

passagem baixa
Aplique um filtro passa-baixa com frequência de pontos de 3dB. O filtro pode ser unipolar ou
pólo duplo (o padrão). O filtro roll off em 6dB por pólo por oitava (20dB por pólo
por década).

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência em Hz. O padrão é 500.

pólos, p
Defina o número de pólos. O padrão é 2.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Especifique a largura de banda de um filtro em unidades width_type. Aplica-se apenas a pólo duplo
filtro. O padrão é 0.707q e fornece uma resposta Butterworth.

panela
Misture canais com níveis de ganho específicos. O filtro aceita o layout do canal de saída
seguido por um conjunto de definições de canais.

Este filtro também foi projetado para remapear com eficiência os canais de um fluxo de áudio.

O filtro aceita parâmetros do formulário: "l|fora de definição|fora de definição| ... "

l layout do canal de saída ou número de canais

fora de definição
especificação do canal de saída, da forma:
"nome_de_saída=[de ganho*]em_nome[+ [de ganho*]em_nome...] "

nome_de_saída
canal de saída para definir, um nome de canal (FL, FR, etc.) ou um número de canal
(c0, c1, etc.)

de ganho
coeficiente multiplicativo para o canal, 1 deixando o volume inalterado

em_nome
canal de entrada a ser usado, veja out_name para detalhes; não é possível misturar nomeado e
canais de entrada numerados

Se o `= 'em uma especificação de canal é substituído por` <', então os ganhos para isso
a especificação será renormalizada para que o total seja 1, evitando ruído de corte.

Misturando exemplos

Por exemplo, se você deseja mixar de estéreo para mono, mas com um fator maior para o
canal esquerdo:

pan=1c|c0=0.9*c0+0.1*c1

Uma mixagem personalizada para estéreo que funciona automaticamente para 3, 4, 5 e 7 canais
cercar:

pan = estéreo | FL <FL + 0.5 * FC + 0.6 * BL + 0.6 * SL | FR <FR + 0.5 * FC + 0.6 * BR + 0.6 * SR

Observe que ffmpeg integra um sistema down-mix (e up-mix) padrão que deve ser
preferido (consulte a opção "-ac"), a menos que você tenha necessidades muito específicas.

Remapeamento exemplos

O remapeamento do canal será eficaz se, e somente se:

*
*

Se todas essas condições forem satisfeitas, o filtro notificará o usuário ("Canal puro
mapeamento detectado ") e use um método otimizado e sem perdas para fazer o remapeamento.

Por exemplo, se você tiver uma fonte 5.1 e quiser um fluxo de áudio estéreo, descartando o
canais:

pan = "estéreo | c0 = FL | c1 = FR"

Dada a mesma fonte, você também pode alternar os canais frontais esquerdo e direito e manter
o layout do canal de entrada:

pan = "5.1 | c0 = c1 | c1 = c0 | c2 = c2 | c3 = c3 | c4 = c4 | c5 = c5"

Se a entrada for um fluxo de áudio estéreo, você pode silenciar o canal esquerdo frontal (e ainda manter
layout do canal estéreo) com:

pan = "stereo | c1 = c1"

Ainda com uma entrada de fluxo de áudio estéreo, você pode copiar o canal direito tanto na frente esquerda
e certo:

pan = "estéreo | c0 = FR | c1 = FR"

jogar de novo
Filtro de scanner ReplayGain. Este filtro pega um fluxo de áudio como entrada e o produz
inalterado. No final da filtragem, ele exibe "track_gain" e "track_peak".

redimensionamento
Converta o formato de amostra de áudio, taxa de amostra e layout de canal. Não é para ser
usado diretamente.

sidechaincompress
Este filtro atua como um compressor normal, mas tem a capacidade de comprimir o sinal detectado
usando o segundo sinal de entrada. Ele precisa de dois fluxos de entrada e retorna um fluxo de saída.
O primeiro fluxo de entrada será processado dependendo do sinal do segundo fluxo. O filtrado
o sinal pode então ser filtrado com outros filtros em estágios posteriores de processamento. Ver panela e
Amerge filtro.

O filtro aceita as seguintes opções:

limiar
Se um sinal do segundo fluxo aumentar acima deste nível, isso afetará a redução de ganho
do primeiro fluxo. Por padrão, é 0.125. O intervalo está entre 0.00097563 e 1.

relação
Defina uma proporção sobre a qual o sinal é reduzido. 1: 2 significa que se o nível aumentou 4dB
acima do limite, será apenas 2dB acima após a redução. O padrão é 2.
O intervalo é entre 1 e 20.

ataque
Quantidade de milissegundos que o sinal tem para subir acima do limite antes do ganho
a redução começa. O padrão é 20. O intervalo está entre 0.01 e 2000.

liberar
Quantidade de milissegundos que o sinal tem para cair abaixo do limite antes que a redução seja
diminuiu novamente. O padrão é 250. O intervalo está entre 0.01 e 9000.

maquiagem
Defina a quantidade de quanto o sinal será amplificado após o processamento. O padrão é 2.
O intervalo é de 1 a 64.

joelho
Curve o joelho agudo em torno do limite para entrar na redução de ganho mais suavemente.
O padrão é 2.82843. O intervalo é entre 1 e 8.

link
Escolha se o nível "médio" entre todos os canais do stream lateral ou o
canal mais alto ("máximo") do fluxo lateral afeta a redução. O padrão é
"média".

detecção
Deve ser captado o sinal exato em caso de "pico" ou RMS em caso de "rms".
O padrão é "rms", que é principalmente mais suave.

Exemplos

· Exemplo de ffmpeg completo com 2 entradas de áudio, 1ª entrada a ser compactada, dependendo do
sinal da 2ª entrada e mais tarde do sinal comprimido a ser mesclado com a 2ª entrada:

ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1: a] asplit = 2 [sc] [mix]; [0: a] [sc] sidechaincompress [compr]; [compr] [mix] amerge"

detecção silenciosa
Detecte o silêncio em um fluxo de áudio.

Este filtro registra uma mensagem quando detecta que o volume do áudio de entrada é menor ou igual a
um valor de tolerância de ruído por uma duração maior ou igual ao ruído mínimo detectado
duração.

Os tempos e a duração impressos são expressos em segundos.

O filtro aceita as seguintes opções:

duração, d
Defina a duração do silêncio até a notificação (o padrão é 2 segundos).

barulho, n
Defina a tolerância ao ruído. Pode ser especificado em dB (no caso de "dB" ser anexado ao especificado
valor) ou relação de amplitude. O padrão é -60dB ou 0.001.

Exemplos

· Detecta 5 segundos de silêncio com tolerância de ruído de -50dB:

detecção silenciosa = n = -50dB: d = 5

· Exemplo completo com ffmpeg para detectar silêncio com tolerância de ruído de 0.0001 em
silêncio.mp3:

ffmpeg -i silence.mp3 -af silencedetect = ruído = 0.0001 -f null -

silenciar remover
Remova o silêncio do início, meio ou fim do áudio.

O filtro aceita as seguintes opções:

períodos_iniciais
Este valor é usado para indicar se o áudio deve ser cortado no início do áudio. UMA
o valor zero indica que nenhum silêncio deve ser cortado desde o início. Quando
especificando um valor diferente de zero, ele corta o áudio até encontrar o não silêncio. Normalmente,
ao cortar o silêncio do início do áudio, o períodos_iniciais será 1, mas pode
ser aumentado para valores mais altos para cortar todo o áudio até a contagem específica de não silêncio
períodos. O valor padrão é 0.

duração_inicial
Especifique a quantidade de tempo que o não silêncio deve ser detectado antes de parar de cortar
áudio. Ao aumentar a duração, rajadas de ruídos podem ser tratadas como silêncio e
aparado. O valor padrão é 0.

limite_inicial
Isso indica qual valor de amostra deve ser tratado como silêncio. Para áudio digital, um
valor de 0 pode ser bom, mas para áudio gravado de analógico, você pode desejar aumentar
o valor para contabilizar o ruído de fundo. Pode ser especificado em dB (no caso de "dB" ser
anexado ao valor especificado) ou razão de amplitude. O valor padrão é 0.

períodos_paradas
Defina a contagem para cortar o silêncio a partir do final do áudio. Para remover o silêncio do
meio de um arquivo, especifique um períodos_paradas isso é negativo. Este valor é então tratado
como um valor positivo e é usado para indicar que o efeito deve reiniciar o processamento como
especificado por períodos_iniciais, tornando-o adequado para remover períodos de silêncio no
meio do áudio. O valor padrão é 0.

duração_parada
Especifique uma duração de silêncio que deve existir antes que o áudio não seja mais copiado. Por
especificando uma duração mais alta, o silêncio desejado pode ser deixado no áudio.
O valor padrão é 0.

stop_threshold
Este é o mesmo que limite_inicial mas para cortar o silêncio do final do áudio.
Pode ser especificado em dB (no caso de "dB" ser acrescentado ao valor especificado) ou amplitude
Razão. O valor padrão é 0.

deixar_silêncio
Isso indica que duração_parada comprimento do áudio deve ser deixado intacto no
início de cada período de silêncio. Por exemplo, se você deseja remover longas pausas
entre palavras, mas não deseja remover as pausas completamente. O valor padrão é 0.

Exemplos

· O exemplo a seguir mostra como este filtro pode ser usado para iniciar uma gravação que faz
não conter o atraso no início que geralmente ocorre entre pressionar o registro
botão e o início da performance:

silenceremove = 1: 5: 0.02

triplo
Aumente ou corte as frequências agudas (superiores) do áudio usando um filtro shelving de dois pólos com
uma resposta semelhante à dos controles de tom de alta fidelidade padrão. Isso também é conhecido como
equalização de prateleiras (EQ).

O filtro aceita as seguintes opções:

ganho, g
Dê o ganho no que for mais baixo de ~ 22 kHz e a frequência de Nyquist. Seu
a faixa útil é de cerca de -20 (para um corte grande) a +20 (para um grande aumento). Cuidado com
recorte ao usar um ganho positivo.

frequência, f
Defina a frequência central do filtro e, portanto, pode ser usado para estender ou reduzir o
faixa de frequência a ser aumentada ou reduzida. O valor padrão é 3000 Hz.

tipo_de_ largura
Defina o método para especificar a largura de banda do filtro.

h Hz

q Fator Q

o oitava

s declive

largura, w
Determine o quão íngreme é a transição de prateleira do filtro.

volume
Ajuste o volume do áudio de entrada.

Ele aceita os seguintes parâmetros:

volume
Defina a expressão do volume de áudio.

Os valores de saída são reduzidos ao valor máximo.

O volume do áudio de saída é dado pela relação:

= *

O valor padrão para volume é "1.0".

precisão
Este parâmetro representa a precisão matemática.

Ele determina quais formatos de amostra de entrada serão permitidos, o que afeta a precisão
da escala de volume.

fixado
Ponto fixo de 8 bits; isso limita o formato da amostra de entrada para U8, S16 e S32.

flutuar
Ponto flutuante de 32 bits; isso limita o formato da amostra de entrada para FLT. (predefinição)

duplo
Ponto flutuante de 64 bits; isso limita o formato da amostra de entrada a DBL.

jogar de novo
Escolha o comportamento ao encontrar dados secundários de ReplayGain em quadros de entrada.

cair
Remova os dados secundários de ReplayGain, ignorando seu conteúdo (o padrão).

ignorar
Ignore os dados secundários de ReplayGain, mas deixe-os no quadro.

pista
Prefira o ganho da faixa, se houver.

álbum
Prefira o ganho do álbum, se houver.

replaygain_preamp
Ganho de pré-amplificação em dB para aplicar ao ganho de ganho de repetição selecionado.

Valor padrão para replaygain_preamp é 0.0.

avaliação
Definido quando a expressão de volume é avaliada.

Ele aceita os seguintes valores:

uma vez
avalie a expressão apenas uma vez durante a inicialização do filtro, ou quando o volume
comando é enviado

quadro
avaliar a expressão para cada quadro de entrada

O valor padrão é uma vez.

A expressão de volume pode conter os seguintes parâmetros.

n número do quadro (começando em zero)

nb_canais
número de canais

nb_consumed_samples
número de amostras consumidas pelo filtro

nb_samples
número de amostras no quadro atual

postar posição original do quadro no arquivo

pts quadro PTS

taxa de amostragem
taxa de amostragem

começos
PTS no início do stream

começar
hora no início do stream

t tempo de moldura

tb base de tempo do carimbo de data/hora

volume
último valor de volume definido

Note que quando avaliação está definido para uma vez apenas o taxa de amostragem e tb variáveis ​​estão disponíveis,
todas as outras variáveis ​​serão avaliadas como NAN.

comandos

Este filtro oferece suporte aos seguintes comandos:

volume
Modifique a expressão de volume. O comando aceita a mesma sintaxe do
opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

replaygain_noclip
Evite o corte limitando o ganho aplicado.

Valor padrão para replaygain_noclip é 1.

Exemplos

· Reduzir pela metade o volume do áudio de entrada:

volume = volume = 0.5
volume = volume = 1/2
volume = volume = -6.0206dB

Em todos os exemplos acima, a chave nomeada para volume pode ser omitido, por exemplo, como em:

volume = 0.5

· Aumente a potência do áudio de entrada em 6 decibéis usando precisão de ponto fixo:

volume = volume = 6dB: precisão = fixa

· Diminuir o volume após o tempo 10 com um período de aniquilação de 5 segundos:

volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame

detecção de volume
Detecte o volume do vídeo de entrada.

O filtro não possui parâmetros. A entrada não é modificada. Estatísticas sobre o volume irão
ser impresso no log quando o fim do fluxo de entrada for alcançado.

Em particular, ele mostrará o volume médio (raiz quadrada média), o volume máximo (em uma
base de amostra), e o início de um histograma dos valores de volume registrados (a partir do
valor máximo para 1/1000 acumulado das amostras).

Todos os volumes estão em decibéis em relação ao valor máximo de PCM.

Exemplos

Aqui está um trecho da saída:

[Parsed_volumedetect_0 0xa23120] volume_média: -27 dB
[Parsed_volumedetect_0 0xa23120] volume_max: -4 dB
[Parsed_volumedetect_0 0xa23120] histograma_4db: 6
[Parsed_volumedetect_0 0xa23120] histograma_5db: 62
[Parsed_volumedetect_0 0xa23120] histograma_6db: 286
[Parsed_volumedetect_0 0xa23120] histograma_7db: 1042
[Parsed_volumedetect_0 0xa23120] histograma_8db: 2551
[Parsed_volumedetect_0 0xa23120] histograma_9db: 4609
[Parsed_volumedetect_0 0xa23120] histograma_10db: 8409

Significa que:

· A energia quadrada média é de aproximadamente -27 dB, ou 10 ^ -2.7.

· A maior amostra está em -4 dB, ou mais precisamente entre -4 dB e -5 dB.

· Existem 6 amostras a -4 dB, 62 a -5 dB, 286 a -6 dB, etc.

Em outras palavras, aumentar o volume em +4 dB não causa nenhum corte, aumentando-o em +5
dB causa recorte para 6 amostras, etc.

AUDIO FONTES


Abaixo está uma descrição das fontes de áudio disponíveis atualmente.

abafador
Faça buffer de quadros de áudio e disponibilize-os para a cadeia de filtros.

Esta fonte destina-se principalmente a um uso programático, em particular por meio da interface
definido em libavfilter / asrc_abuffer.h.

Ele aceita os seguintes parâmetros:

base_tempo
A base de tempo que será usada para carimbos de data / hora dos quadros enviados. Deve ser qualquer um
um número de ponto flutuante ou em numerador/denominador .

taxa de amostragem
A taxa de amostragem dos buffers de áudio de entrada.

amostra_fmt
O formato de amostra dos buffers de áudio de entrada. Um nome de formato de amostra ou seu
representação de número inteiro correspondente do enum AVSampleFormat em
libavutil / samplefmt.h

canal_layout
O layout do canal dos buffers de áudio de entrada. Um nome de layout de canal de
channel_layout_map em libavutil / channel_layout.c ou seu número inteiro correspondente
representação das macros AV_CH_LAYOUT_ * em libavutil / channel_layout.h

canais
O número de canais dos buffers de áudio de entrada. Se ambos canais e
canal_layout são especificados, então eles devem ser consistentes.

Exemplos

abuffer = sample_rate = 44100: sample_fmt = s16p: channel_layout = stereo

instruirá a fonte a aceitar estéreo planar assinado de 16 bits a 44100 Hz. Desde o
formato de amostra com o nome "s16p" corresponde ao número 6 e ao layout do canal "estéreo"
corresponde ao valor 0x3, isso é equivalente a:

abuffer = sample_rate = 44100: sample_fmt = 6: channel_layout = 0x3

aevalsrc
Gere um sinal de áudio especificado por uma expressão.

Esta fonte aceita na entrada uma ou mais expressões (uma para cada canal), que são
avaliado e usado para gerar um sinal de áudio correspondente.

Esta fonte aceita as seguintes opções:

expressões
Defina a lista de expressões separadas por '|' para cada canal separado. No caso de
canal_layout opção não for especificada, o layout do canal selecionado depende do
número de expressões fornecidas. Caso contrário, a última expressão especificada é aplicada a
os canais de saída restantes.

canal_layout, c
Defina o layout do canal. O número de canais no layout especificado deve ser igual
para o número de expressões especificadas.

duração, d
Defina a duração mínima do áudio originado. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita. Observe que a duração resultante pode
ser maior do que a duração especificada, pois o áudio gerado é sempre cortado no
fim de um quadro completo.

Se não for especificado, ou a duração expressa for negativa, o áudio deve ser
gerado para sempre.

nb_amostras, n
Defina o número de amostras por canal para cada quadro de saída, o padrão é 1024.

taxa de amostragem, s
Especifique a taxa de amostragem, o padrão é 44100.

Cada expressão em expressões pode conter as seguintes constantes:

n número da amostra avaliada, a partir de 0

t tempo da amostra avaliada expresso em segundos, a partir de 0

s taxa de amostragem

Exemplos

· Gerar silêncio:

aevalsrc = 0

· Gerar um sinal sin com frequência de 440 Hz, definir a taxa de amostragem para 8000 Hz:

aevalsrc = "/ sin (440 * 2 * PI * t): s = 8000"

· Gerar um sinal de dois canais, especificar o layout do canal (Front Center + Back
Centro) explicitamente:

aevalsrc = "/ sin (420 * 2 * PI * t) | cos (430 * 2 * PI * t): c = FC | BC"

· Gerar ruído branco:

aevalsrc = "/ - 2+acaso(0) "

· Gerar um sinal modulado em amplitude:

aevalsrc = "/ sin (10 * 2 * PI * t) * sin (880 * 2 * PI * t)"

· Gerar batidas binaurais de 2.5 Hz em uma portadora de 360 ​​Hz:

aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"

anulesrc
A fonte de áudio nula retorna quadros de áudio não processados. É principalmente útil como modelo
e para ser empregado em ferramentas de análise / depuração, ou como fonte para filtros que
ignore os dados de entrada (por exemplo, o filtro de sintetizador sox).

Esta fonte aceita as seguintes opções:

canal_layout, cl
Especifica o layout do canal e pode ser um inteiro ou uma string representando um
layout do canal. O valor padrão de canal_layout é "estéreo".

Verifique a definição channel_layout_map em libavutil / channel_layout.c para o mapeamento
entre strings e valores de layout de canal.

taxa de amostragem, r
Especifica a taxa de amostragem e o padrão é 44100.

nb_amostras, n
Defina o número de amostras por frames solicitados.

Exemplos

· Defina a taxa de amostragem para 48000 Hz e o layout do canal para AV_CH_LAYOUT_MONO.

anullsrc = r = 48000: cl = 4

· Faça a mesma operação com uma sintaxe mais óbvia:

anullsrc = r = 48000: cl = mono

Todos os parâmetros precisam ser definidos explicitamente.

flite
Sintetize uma expressão de voz usando a biblioteca libflite.

Para habilitar a compilação deste filtro você precisa configurar o FFmpeg com
"--enable-libflite".

Observe que a biblioteca flite não é thread-safe.

O filtro aceita as seguintes opções:

lista_vozes
Se definido como 1, liste os nomes das vozes disponíveis e saia imediatamente. Predefinição
o valor é 0.

nb_amostras, n
Defina o número máximo de amostras por quadro. O valor padrão é 512.

arquivo de texto
Defina o nome do arquivo que contém o texto a ser falado.

texto
Defina o texto para falar.

voz, v
Defina a voz a ser usada para a síntese da fala. O valor padrão é "kal". Veja também o
lista_vozes opção.

Exemplos

· Ler do arquivo discurso.txte sintetize o texto usando a voz flite padrão:

flite = textfile = speech.txt

· Leia o texto especificado selecionando a voz "slt":

flite = text = 'Então esteja bem, pobre diabo de um Sub-Sub, de quem sou comentarista': voice = slt

· Texto de entrada para ffmpeg:

ffmpeg -f lavfi -i flite = text = 'Então, vá bem, pobre diabo de um Sub-Sub, cujo comentarista eu sou': voz = slt

· Faço ffplay fale o texto especificado, usando "flite" e o dispositivo "lavfi":

ffplay -f lavfi flite = text = 'Não se aflija mais pelo que fizeste.'

Para obter mais informações sobre libflite, verifique:http://www.speech.cs.cmu.edu/flite/>

seu
Gere um sinal de áudio feito de uma onda senoidal com amplitude 1/8.

O sinal de áudio é exato.

O filtro aceita as seguintes opções:

frequência, f
Defina a frequência da portadora. O padrão é 440 Hz.

fator_bip, b
Ative um bipe periódico a cada segundo com frequência fator_bip vezes a operadora
frequência. O padrão é 0, o que significa que o bipe está desabilitado.

taxa de amostragem, r
Especifique a taxa de amostragem, o padrão é 44100.

duração, d
Especifique a duração do fluxo de áudio gerado.

amostras_por_frame
Defina o número de amostras por quadro de saída, o padrão é 1024.

Exemplos

· Gerar uma onda senoidal simples de 440 Hz:

seu

· Gerar uma onda senoidal de 220 Hz com um bipe de 880 Hz a cada segundo, por 5 segundos:

seno = 220: 4: d = 5
seno = f = 220: b = 4: d = 5
seno = frequência = 220: beep_factor = 4: duração = 5

AUDIO PIA


Abaixo está uma descrição dos coletores de áudio disponíveis atualmente.

Abuffersink
Faça buffer de quadros de áudio e disponibilize-os no final da cadeia de filtros.

Este coletor é destinado principalmente para uso programático, em particular por meio da interface
definido em libavfilter / buffersink.h ou o sistema de opções.

Ele aceita um ponteiro para uma estrutura AVABufferSinkContext, que define o
formatos de buffers, a serem passados ​​como o parâmetro opaco para "avfilter_init_filter" para
inicialização.

pia anular
Coletor de áudio nulo; não faça absolutamente nada com o áudio de entrada. É principalmente útil como um
template e para uso em ferramentas de análise / depuração.

VÍDEOS FILTROS


Quando você configura sua compilação FFmpeg, você pode desabilitar qualquer um dos filtros existentes usando
"--disable-filters". A saída de configuração mostrará os filtros de vídeo incluídos em seu
construir.

Abaixo está uma descrição dos filtros de vídeo disponíveis atualmente.

alfaextract
Extraia o componente alfa da entrada como um vídeo em tons de cinza. Isso é especialmente útil
com o mesclagem alfa filtro.

mesclagem alfa
Adicione ou substitua o componente alfa da entrada primária pelo valor da escala de cinza de um
segunda entrada. Destina-se a ser usado com alfaextract para permitir a transmissão ou
armazenamento de sequências de quadros que possuem alfa em um formato que não oferece suporte a alfa
canal.

Por exemplo, para reconstruir quadros completos de um vídeo normal codificado em YUV e um
vídeo criado com alfaextract, você pode usar:

filme = in_alpha.mkv [alpha]; [in] [alpha] alphamerge [out]

Uma vez que este filtro é projetado para reconstrução, ele opera em sequências de quadros sem
considerando carimbos de data / hora e termina quando uma das entradas atinge o final do fluxo. Isso vai
causar problemas se o pipeline de codificação descartar quadros. Se você está tentando aplicar uma imagem
como uma sobreposição a um fluxo de vídeo, considere o sobreposição filtrar em vez disso.

burro
O mesmo que o legendas filtro, exceto que não requer libavcodec e libavformat para
trabalhar. Por outro lado, é limitado a arquivos de legenda ASS (Advanced Substation Alpha).

Este filtro aceita a seguinte opção, além das opções comuns do
legendas filtro:

formação
Defina o mecanismo de modelagem

Os valores disponíveis são:

auto
O mecanismo de modelagem libass padrão, que é o melhor disponível.

simples
Formador rápido e independente de fonte que só pode fazer substituições

integrações
Shaper mais lento usando OpenType para substituições e posicionamento

O padrão é "auto".

atadenoise
Aplique um Denoiser de Média Temporal Adaptável à entrada de vídeo.

O filtro aceita as seguintes opções:

0a Defina o limite A para o primeiro plano. O padrão é 1. O intervalo válido é de 0.02 a 0.

0b Defina o limite B para o primeiro plano. O padrão é 1. O intervalo válido é de 0.04 a 0.

1a Defina o limite A para o segundo plano. O padrão é 2. O intervalo válido é de 0.02 a 0.

1b Defina o limite B para o segundo plano. O padrão é 2. O intervalo válido é de 0.04 a 0.

2a Defina o limite A para o 3º plano. O padrão é 0.02. O intervalo válido é de 0 a 0.3.

2b Defina o limite B para o 3º plano. O padrão é 0.04. O intervalo válido é de 0 a 5.

O limite A é projetado para reagir a mudanças abruptas no sinal de entrada e no limite B
é projetado para reagir a mudanças contínuas no sinal de entrada.

s Definir o número de quadros que o filtro usará para calcular a média. O padrão é 33. Deve ser um número ímpar
no intervalo [5, 129].

bbox
Calcule a caixa delimitadora para os pixels não pretos no plano de luminância do quadro de entrada.

Este filtro calcula a caixa delimitadora contendo todos os pixels com um valor de luminância
maior que o valor mínimo permitido. Os parâmetros que descrevem a caixa delimitadora são
impresso no registro do filtro.

O filtro aceita a seguinte opção:

valor_min
Defina o valor mínimo de luminância. O padrão é 16.

detecção negra
Detecte intervalos de vídeo que são (quase) completamente pretos. Pode ser útil para detectar capítulo
transições, comerciais ou gravações inválidas. As linhas de saída contêm o tempo para o
início, fim e duração do intervalo de preto detectado expresso em segundos.

Para exibir as linhas de saída, você precisa definir o nível de log pelo menos para o
Valor AV_LOG_INFO.

O filtro aceita as seguintes opções:

duração_min_preta, d
Defina a duração mínima do preto detectado expressa em segundos. Deve ser um não
número de ponto flutuante negativo.

O valor padrão é 2.0.

imagem_proporção_preta_th, foto_th
Defina o limite para considerar uma imagem "preta". Expresse o valor mínimo para
a proporção:

/

para o qual uma imagem é considerada preta. O valor padrão é 0.98.

pixel_preto_th, pix_th
Defina o limite para considerar um pixel "preto".

O limite expressa o valor máximo de luminância de pixel para o qual um pixel é
considerado "preto". O valor fornecido é escalado de acordo com a seguinte equação:

= + *

luminância_range_size e luminância_valor_mínimo depende do formato de vídeo de entrada, o
o intervalo é [0-255] para formatos de gama completa YUV e [16-235] para não gama completa YUV
formatos.

O valor padrão é 0.10.

O exemplo a seguir define o limite máximo de pixels para o valor mínimo e detecta
apenas intervalos pretos de 2 ou mais segundos:

blackdetect = d = 2: pix_th = 0.00

moldura preta
Detecte quadros que estão (quase) completamente pretos. Pode ser útil para detectar capítulo
transições ou comerciais. As linhas de saída consistem no número do quadro do detectado
quadro, a porcentagem de escuridão, a posição no arquivo se conhecida ou -1 e o
carimbo de data / hora em segundos.

Para exibir as linhas de saída, você precisa definir o nível de log pelo menos para o
Valor AV_LOG_INFO.

Ele aceita os seguintes parâmetros:

quantidade
A porcentagem de pixels que devem estar abaixo do limite; o padrão é 98.

limite, debulhar
O limite abaixo do qual um valor de pixel é considerado preto; o padrão é 32.

mistura, mistura
Combine dois quadros de vídeo um no outro.

O filtro de "mistura" pega dois fluxos de entrada e gera um fluxo, a primeira entrada é o
a camada "superior" e a segunda entrada é a camada "inferior". A saída termina quando a entrada mais curta
termina.

O filtro "tblend" (mistura de tempo) leva dois quadros consecutivos de um único fluxo, e
produz o resultado obtido combinando o novo quadro em cima do antigo.

Segue uma descrição das opções aceitas.

modo_c0
modo_c1
modo_c2
modo_c3
all_mode
Defina o modo de mesclagem para um componente de pixel específico ou todos os componentes de pixel no caso de
all_mode. O valor padrão é "normal".

Os valores disponíveis para os modos de componente são:

Adição
e
média
queimar
escurecer
diferença
diferença 128
dividir
esquivar
exclusão
brilho
luz dura
mistura dura
iluminar
luz linear
multiplicar
negação
normal
or
sobreposição
Phoenix
luz de alfinete
refletir
tela
luz suave
subtrair
luz forte
xor
c0_opacidade
c1_opacidade
c2_opacidade
c3_opacidade
toda_opacidade
Defina a opacidade da mistura para um componente de pixel específico ou todos os componentes de pixel no caso de
toda_opacidade. Usado apenas em combinação com modos de mistura de componentes de pixel.

c0_expr
c1_expr
c2_expr
c3_expr
tudo_expr
Defina a expressão de mistura para um componente de pixel específico ou todos os componentes de pixel no caso de
tudo_expr. Observe que as opções de modo relacionadas serão ignoradas se forem definidas.

As expressões podem usar as seguintes variáveis:

N O número sequencial do quadro filtrado, começando em 0.

X
Y as coordenadas da amostra atual

W
H a largura e altura do plano filtrado atualmente

SW
SH Escala de largura e altura dependendo do plano filtrado atualmente. É a proporção
entre o número de pixels do plano luma correspondente e os do plano atual.
Por exemplo, para YUV4: 2: 0, os valores são "1,1" para o plano luma e "0.5,0.5" para
planos croma.

T Tempo do quadro atual, expresso em segundos.

TOPO, A
Valor do componente de pixel na localização atual para o primeiro quadro de vídeo (camada superior).

FUNDO, B
Valor do componente de pixel na localização atual para o segundo quadro de vídeo (parte inferior
camada).

menor
Força o encerramento quando a entrada mais curta termina. O padrão é 0. Esta opção é
definido apenas para o filtro "blend".

repetir o último
Continue aplicando o último quadro inferior após o final do fluxo. Um valor de 0
desative o filtro depois que o último quadro da camada inferior for alcançado. O padrão é 1.
Esta opção é definida apenas para o filtro "blend".

Exemplos

· Aplicar a transição da camada inferior para a camada superior nos primeiros 10 segundos:

blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'

· Aplicar efeito xadrez 1x1:

blend = all_expr = 'if (eq (mod (X, 2), mod (Y, 2)), A, B)'

· Aplique o efeito descoberto à esquerda:

blend = all_expr = 'if (gte (N * SW + X, W), A, B)'

· Aplicar efeito descobrir:

blend = all_expr = 'if (gte (YN * SH, 0), A, B)'

· Aplique o efeito descobrir cima à esquerda:

blend = all_expr = 'if (gte (T * SH * 40 + Y, H) * gte ((T * 40 * SW + X) * W / H, W), A, B)'

· Exibir diferenças entre o quadro atual e o anterior:

tblend = all_mode = diferença128

Borrão de caixa
Aplique um algoritmo de boxblur ao vídeo de entrada.

Ele aceita os seguintes parâmetros:

raio_luma, lr
luma_power, lp
raio_croma, cr
croma_power, cp
raio_alfa, ar
potência_alfa, ap

Segue uma descrição das opções aceitas.

raio_luma, lr
raio_croma, cr
raio_alfa, ar
Defina uma expressão para o raio da caixa em pixels usado para desfocar o correspondente
plano de entrada.

O valor do raio deve ser um número não negativo e não deve ser maior que o valor
da expressão "min (w, h) / 2" para os planos luma e alfa, e de "min (cw, ch) / 2"
para os planos de croma.

Valor padrão para luma_radius é "2". Se não for especificado, raio_croma e raio_alfa
padrão para o valor correspondente definido para luma_radius.

As expressões podem conter as seguintes constantes:

w
h A largura e altura de entrada em pixels.

cw
ch A largura e altura da imagem de croma de entrada em pixels.

hsub
vssub
Os valores da subamostra de croma horizontal e vertical. Por exemplo, para o pixel
formato "yuv422p", hsub é 2 e vssub é 1.

luma_power, lp
croma_power, cp
potência_alfa, ap
Especifique quantas vezes o filtro boxblur é aplicado ao plano correspondente.

Valor padrão para luma_power é 2. Se não for especificado, croma_power e potência_alfa
padrão para o valor correspondente definido para luma_power.

Um valor de 0 desabilitará o efeito.

Exemplos

· Aplique um filtro boxblur com os raios luma, croma e alfa definidos para 2:

boxblur = luma_radius = 2: luma_power = 1
boxblur = 2: 1

· Defina o raio de luma para 2, e alfa e raio de croma para 0:

boxblur = 2: 1: cr = 0: ar = 0

· Defina os raios luma e croma para uma fração da dimensão do vídeo:

boxblur = luma_radius = min (h \, w) / 10: luma_power = 1: chroma_radius = min (cw \, ch) / 10: chroma_power = 1

visualização de codec
Visualize informações exportadas por alguns codecs.

Alguns codecs podem exportar informações por meio de quadros usando dados secundários ou outros meios. Para
exemplo, alguns codecs baseados em MPEG exportam vetores de movimento através do exportação_mvs bandeira no
codec bandeiras2 opção.

O filtro aceita a seguinte opção:

mv Defina vetores de movimento para visualizar.

Sinalizadores disponíveis para mv são:

pf MVs previstos para a frente de quadros P

bf MVs previstos para frente de quadros B

bb MVs previstos retroativamente de quadros B

Exemplos

· Visualiza MVs multidirecionais de quadros P e B usando ffplay:

ffplay -flags2 + export_mvs input.mpg -vf codecview = mv = pf + bf + bb

equilíbrio de cores
Modifique a intensidade das cores primárias (vermelho, verde e azul) dos quadros de entrada.

O filtro permite que um quadro de entrada seja ajustado nas sombras, meios-tons ou realces
regiões para o equilíbrio vermelho-ciano, verde-magenta ou azul-amarelo.

Um valor de ajuste positivo muda o equilíbrio para a cor primária, um valor negativo
para a cor complementar.

O filtro aceita as seguintes opções:

rs
gs
bs Ajuste as sombras vermelhas, verdes e azuis (pixels mais escuros).

rm
gm
bm Ajuste os meios-tons vermelhos, verdes e azuis (pixels médios).

rh
gh
bh Ajuste os destaques vermelhos, verdes e azuis (pixels mais brilhantes).

Os intervalos permitidos para as opções são "[-1.0, 1.0]". Os padrões são 0.

Exemplos

· Adicionar a cor vermelha às sombras:

equilíbrio de cores = rs = .3

chave de cores
Codificação de cores do espaço de cores RGB.

O filtro aceita as seguintes opções:

cor
A cor que será substituída por transparência.

semelhança
Porcentagem de similaridade com a cor chave.

0.01 corresponde apenas à cor exata da chave, enquanto 1.0 corresponde a tudo.

misturas
Porcentagem de mistura.

0.0 torna os pixels totalmente transparentes ou não transparentes.

Valores mais altos resultam em pixels semitransparentes, quanto maior a transparência, mais
semelhante, a cor dos pixels é com a cor chave.

Exemplos

· Tornar cada pixel verde na imagem de entrada transparente:

ffmpeg -i input.png -vf colorkey = green out.png

· Sobrepor um vídeo em tela verde sobre uma imagem de fundo estática.

ffmpeg -i background.png -i video.mp4 -filter_complex "[1: v] colorkey = 0x3BBD1E: 0.3: 0.2 [ckout]; [0: v] [ckout] sobreposição [out]" -map "[out]" output.flv

níveis de cor
Ajuste os quadros de entrada de vídeo usando níveis.

O filtro aceita as seguintes opções:

Rimin
gimin
bimin
Aimin
Ajuste o ponto preto de entrada vermelho, verde, azul e alfa. Os intervalos permitidos para as opções são
"[-1.0, 1.0]". Os padrões são 0.

Rimax
gimáx
bimax
Aimax
Ajuste o ponto branco de entrada vermelho, verde, azul e alfa. Os intervalos permitidos para as opções são
"[-1.0, 1.0]". Os padrões são 1.

Os níveis de entrada são usados ​​para clarear realces (tons claros), sombras escuras (escuras
tons), altere o equilíbrio entre tons claros e escuros.

Romin
gomin
Bomin
Aomin
Ajuste o ponto preto de saída vermelho, verde, azul e alfa. Os intervalos permitidos para as opções são
"[0, 1.0]". Os padrões são 0.

romax
gomax
bomax
aomax
Ajuste o ponto branco de saída vermelho, verde, azul e alfa. Os intervalos permitidos para as opções são
"[0, 1.0]". Os padrões são 1.

Os níveis de saída permitem a seleção manual de uma faixa de nível de saída restrita.

Exemplos

· Tornar a saída de vídeo mais escura:

níveis de cor = rimin = 0.058: gimin = 0.058: bimin = 0.058

· Aumentar contraste:

colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96

· Tornar a saída de vídeo mais leve:

níveis de cor = rimax = 0.902: gimax = 0.902: bimax = 0.902

· Aumentar o brilho:

níveis de cor = romin = 0.5: gomin = 0.5: bomin = 0.5

misturador de canais de cores
Ajuste os quadros de entrada de vídeo remisturando os canais de cores.

Este filtro modifica um canal de cor adicionando os valores associados a outros canais
dos mesmos pixels. Por exemplo, se o valor a ser modificado for vermelho, o valor de saída será:

= * + * + * + *

O filtro aceita as seguintes opções:

rr
rg
rb
ra Ajuste a contribuição dos canais de entrada vermelho, verde, azul e alfa para o vermelho de saída
canal. O padrão é 1 para rre 0 para rg, rb e ra.

gr
gg
gb
ga Ajuste a contribuição dos canais vermelho, verde, azul e alfa de entrada para o verde de saída
canal. O padrão é 1 para gge 0 para gr, gb e ga.

br
bg
bb
ba Ajuste a contribuição dos canais vermelho, verde, azul e alfa de entrada para o azul de saída
canal. O padrão é 1 para bbe 0 para br, bg e ba.

ar
ag
ab
aa Ajuste a contribuição dos canais de entrada vermelho, verde, azul e alfa para a saída alfa
canal. O padrão é 1 para aae 0 para ar, ag e ab.

Os intervalos permitidos para as opções são "[-2.0, 2.0]".

Exemplos

· Converter fonte em tons de cinza:

colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3

· Simular tons sépia:

colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131

colormatriz
Converta a matriz de cores.

O filtro aceita as seguintes opções:

src
DST Especifique a matriz de cor de origem e destino. Ambos os valores devem ser especificados.

Os valores aceitos são:

bt709
BT.709

bt601
BT.601

smte240m
SMPTE-240M

fcc FCC

Por exemplo, para converter de BT.601 para SMPTE-240M, use o comando:

colormatrix = bt601: smpte240m

cópia
Copie a fonte de entrada inalterada para a saída. Isso é útil principalmente para fins de teste.

colheita
Corte o vídeo de entrada para as dimensões fornecidas.

Ele aceita os seguintes parâmetros:

w, fora_w
A largura do vídeo de saída. O padrão é "iw". Esta expressão é avaliada apenas
uma vez durante a configuração do filtro, ou quando o w or fora_w o comando é enviado.

h, fora_h
A altura do vídeo de saída. O padrão é "ih". Esta expressão é avaliada
apenas uma vez durante a configuração do filtro, ou quando o h or fora_h o comando é enviado.

x A posição horizontal, no vídeo de entrada, da borda esquerda do vídeo de saída. Isto
o padrão é "(in_w-out_w) / 2". Esta expressão é avaliada por quadro.

y A posição vertical, no vídeo de entrada, da borda superior do vídeo de saída. Isto
o padrão é "(in_h-out_h) / 2". Esta expressão é avaliada por quadro.

manter_aspecto
Se definido como 1 forçará a proporção de exibição de saída a ser a mesma da entrada, por
alterando a proporção de aspecto da amostra de saída. O padrão é 0.

A fora_w, fora_h, x, y parâmetros são expressões que contêm as seguintes constantes:

x
y Os valores calculados para x e y. Eles são avaliados para cada novo quadro.

em_w
em_h
A largura e altura de entrada.

iw
ih Estes são os mesmos que em_w e em_h.

fora_w
fora_h
A largura e altura de saída (cortada).

ow
oh Estes são os mesmos que fora_w e fora_h.

a mesma iw / ih

sar proporção de aspecto da amostra de entrada

mas relação de aspecto de exibição de entrada, é o mesmo que (iw / ih) * sar

hsub
vssub
valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

n O número do quadro de entrada, começando em 0.

postar a posição no arquivo do quadro de entrada, NAN se desconhecido

t O carimbo de data / hora expresso em segundos. É NAN se o carimbo de data / hora de entrada for desconhecido.

A expressão para fora_w pode depender do valor de fora_h, e a expressão para fora_h
pode depender de fora_w, mas eles não podem depender de x e y, como x e y são avaliados após
fora_w e fora_h.

A x e y parâmetros especificam as expressões para a posição do canto superior esquerdo do
a área de produção (não cultivada). Eles são avaliados para cada quadro. Se o valor avaliado
não é válido, é aproximado ao valor válido mais próximo.

A expressão para x pode depender de y, e a expressão para y pode depender de x.

Exemplos

· Área de corte com tamanho 100x100 na posição (12,34).

corte = 100: 100: 12: 34

Usando opções nomeadas, o exemplo acima se torna:

cultura = w = 100: h = 100: x = 12: y = 34

· Corte a área de entrada central com tamanho 100x100:

colheita = 100: 100

· Corte a área de entrada central com tamanho 2/3 do vídeo de entrada:

colheita = 2/3 * pol_w: 2/3 * pol_h

· Corte o quadrado central do vídeo de entrada:

crop = out_w = in_h
crop = in_h

· Delimite o retângulo com o canto superior esquerdo colocado na posição 100: 100 e o
canto inferior direito correspondente ao canto inferior direito da imagem de entrada.

crop = in_w-100: in_h-100: 100: 100

· Corte 10 pixels das bordas esquerda e direita e 20 pixels da parte superior e inferior
fronteiras

crop = in_w-2 * 10: in_h-2 * 20

· Mantenha apenas o quarto inferior direito da imagem de entrada:

crop = in_w / 2: in_h / 2: in_w / 2: in_h / 2

· Altura da colheita para obter harmonia grega:

colheita = in_w: 1 / PHI * in_w

· Aplicar efeito de tremor:

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)

· Aplicar efeito de câmera irregular dependendo do carimbo de data / hora:

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)"

· Defina x dependendo do valor de y:

crop=in_w/2:in_h/2:y:10+10*sin(n/10)

comandos

Este filtro oferece suporte aos seguintes comandos:

w, fora_w
h, fora_h
x
y Defina a largura / altura do vídeo de saída e a posição horizontal / vertical na entrada
vídeo. O comando aceita a mesma sintaxe da opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

colheita detectada
Detecta automaticamente o tamanho do corte.

Ele calcula os parâmetros de corte necessários e imprime os parâmetros recomendados por meio de
o sistema de registro. As dimensões detectadas correspondem à área não preta da entrada
vídeo.

Ele aceita os seguintes parâmetros:

limitar
Defina um limite de valor de escuridão mais alto, que pode ser opcionalmente especificado a partir do nada (0)
para tudo (255 para formatos baseados em 8 bits). Um valor de intensidade maior para o conjunto
o valor é considerado não preto. O padrão é 24. Você também pode especificar um valor
entre 0.0 e 1.0, que será dimensionado dependendo da profundidade de bits do pixel
formato.

volta
O valor pelo qual a largura / altura deve ser divisível. O padrão é 16. O deslocamento
é ajustado automaticamente para centralizar o vídeo. Use 2 para obter apenas dimensões pares
(necessário para vídeo 4: 2: 2). 16 é melhor ao codificar para a maioria dos codecs de vídeo.

reset_count, redefinir
Defina o contador que determina depois de quantos quadros a detecção de corte irá zerar o
a maior área de vídeo detectada anteriormente e reinicie para detectar o atual ideal
área de cultivo. O valor padrão é 0.

Isso pode ser útil quando os logotipos do canal distorcem a área de vídeo. 0 indica 'nunca
reset ', e retorna a maior área encontrada durante a reprodução.

curvas
Aplique ajustes de cores usando curvas.

Este filtro é semelhante às ferramentas de curvas do Adobe Photoshop e GIMP. Cada componente (vermelho,
verde e azul) tem seus valores definidos por N pontos-chave amarrados uns aos outros usando um
curva. O eixo x representa os valores de pixel do quadro de entrada, e o eixo y, o novo
valores de pixel a serem definidos para o quadro de saída.

Por padrão, uma curva de componente é definida por dois pontos (0; 0) e (1; 1). Isso cria um
linha reta onde cada valor de pixel original é "ajustado" para seu próprio valor, o que significa
nenhuma mudança na imagem.

O filtro permite redefinir esses dois pontos e adicionar mais alguns. Uma nova curva (usando um
interpolação de spline cúbica natural) será definida para passar suavemente por todos esses novos
coordenadas. Os novos pontos definidos precisam aumentar estritamente ao longo do eixo x, e
deles x e y os valores devem estar no [0; 1] intervalo. Se as curvas calculadas forem
fora dos espaços vetoriais, os valores serão recortados de acordo.

Se não houver nenhum ponto-chave definido em "x = 0", o filtro irá inserir automaticamente um (0; 0)
apontar. Da mesma forma, se não houver nenhum ponto-chave definido em "x = 1", o filtro irá
inserir automaticamente um (1; 1) ponto.

O filtro aceita as seguintes opções:

predefinido
Selecione uma das predefinições de cor disponíveis. Esta opção pode ser usada além do
r, g, b parâmetros; neste caso, as opções posteriores têm prioridade sobre a predefinição
valores. As predefinições disponíveis são:

Nenhum
cor_negativo
processo cruzado
mais escura
Aumentar contraste
isqueiro
contraste_linear
contraste_médio
negativo
forte_contraste
vintage

O padrão é "nenhum".

mestre, m
Defina os pontos-chave principais. Esses pontos definirão um segundo mapeamento de passagem. Isto é
às vezes chamado de mapeamento de "luminância" ou "valor". Pode ser usado com r, g, b or todos os
uma vez que atua como um LUT de pós-processamento.

vermelho, r
Defina os pontos-chave para o componente vermelho.

verde g
Defina os pontos-chave para o componente verde.

azul, b
Defina os pontos-chave para o componente azul.

todos os Defina os pontos-chave para todos os componentes (não incluindo o mestre). Pode ser usado adicionalmente
para as outras opções de componentes de pontos-chave. Neste caso, o (s) componente (s) não definido (s)
fallback nisso todos os criação.

psfile
Especifique um arquivo de curvas do Photoshop (".asv") para importar as configurações.

Para evitar alguns conflitos de sintaxe de filtro, cada lista de pontos-chave precisa ser definida usando
a seguinte sintaxe: "x0 / y0 x1 / y1 x2 / y2 ...".

Exemplos

· Aumente ligeiramente o nível médio de azul:

curvas = azul = '0.5 / 0.58'

· Efeito vintage:

curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'

Aqui, obtemos as seguintes coordenadas para cada componente:

vermelho "(0;0.11) (0.42;0.51) (1;0.95)"

verde
"(0;0) (0.50;0.48) (1;1)"

azul
"(0;0.22) (0.49;0.44) (1;0.80)"

· O exemplo anterior também pode ser alcançado com a predefinição integrada associada:

curvas = predefinição = vintage

· Ou simplesmente:

curvas = vintage

· Use uma predefinição do Photoshop e redefina os pontos do componente verde:

curvas = psfile = 'MyCurvesPresets / purple.asv': green = '0.45 / 0.53'

dctdnoiz
Denoise frames usando 2D DCT (filtragem de domínio de frequência).

Este filtro não é projetado para tempo real.

O filtro aceita as seguintes opções:

sigma, s
Defina a constante de sigma de ruído.

Esta sigma define um limite rígido de "3 * sigma"; cada coeficiente DCT (absoluto
valor) abaixo desse limite será eliminado.

Se você precisar de uma filtragem mais avançada, consulte expr.

O padrão é 0.

sobreposição
Defina o número de pixels sobrepostos para cada bloco. Como o filtro pode ser lento, você pode
deseja reduzir este valor, ao custo de um filtro menos eficaz e ao risco de
vários artefatos.

Se o valor sobreposto não permitir o processamento de toda a largura ou altura de entrada, um
o aviso será exibido e as bordas de acordo não serão apagadas.

O valor padrão é tamanho do bloco-1, que é a melhor configuração possível.

exp, e
Defina a expressão do fator de coeficiente.

Para cada coeficiente de um bloco DCT, esta expressão será avaliada como um multiplicador
valor para o coeficiente.

Se esta opção for definida, o sigma opção será ignorada.

O valor absoluto do coeficiente pode ser acessado através do c variável.

n Colocou o tamanho do bloco usando o número de bits. "1 <n" define o tamanho do bloco, qual é o
largura e altura dos blocos processados.

o valor padrão é 3 (8x8) e pode ser aumentado para 4 para uma tamanho do bloco de 16x16. Observação
que alterar essa configuração tem consequências enormes na velocidade de processamento. Também um
tamanho de bloco maior não significa necessariamente uma melhor eliminação de ruído.

Exemplos

Aplique um denoise com um sigma de 4.5:

dctdnoiz = 4.5

A mesma operação pode ser realizada usando o sistema de expressão:

dctdnoiz = e = 'gte (c, 4.5 * 3)'

Denoise violento usando um tamanho de bloco de "16x16":

dctdnoiz = 15: n = 4

debandar
Remova artefatos de faixas do vídeo de entrada. Ele funciona substituindo pixels em faixas com
valor médio dos pixels referenciados.

O filtro aceita as seguintes opções:





Defina o limite de detecção de bandas para cada plano. O padrão é 0.02. O intervalo válido é
0.00003 a 0.5. Se a diferença entre o pixel atual e o pixel de referência for menor que
limite, será considerado como em faixas.

range, r
Faixa de detecção de bandas em pixels. O padrão é 16. Se positivo, número aleatório no intervalo
0 para definir o valor será usado. Se negativo, o valor absoluto exato será usado. o
intervalo define um quadrado de quatro pixels em torno do pixel atual.

direção, d
Defina a direção em radianos a partir da qual quatro pixels serão comparados. Se positivo, aleatório
direção de 0 para definir a direção será escolhida. Se negativo, exato de valor absoluto
será escolhido. Por exemplo, direção 0, -PI ou -2 * PI radianos escolherão apenas pixels em
mesma linha e -PI / 2 escolherá apenas pixels na mesma coluna.

borrão
Se ativado, o pixel atual é comparado com o valor médio de todos os quatro
píxeis. O padrão é habilitado. Se o pixel atual desabilitado for comparado com todos os quatro
pixels circundantes. O pixel é considerado em faixas se apenas todas as quatro diferenças com
os pixels circundantes são menores que o limite.

dizimar
Remova os quadros duplicados em intervalos regulares.

O filtro aceita as seguintes opções:

ciclo
Defina o número de quadros dos quais um será eliminado. Definindo isso para N significa um
quadro em cada lote de N os quadros serão eliminados. O padrão é 5.

Dupthresh
Defina o limite para detecção de duplicados. Se a diferença métrica para um quadro é
menor ou igual a esse valor, ele é declarado como duplicado. O padrão é 1.1

scthresh
Defina o limiar de mudança de cena. O padrão é 15.

bloco x
blocky
Defina o tamanho dos blocos dos eixos xey usados ​​durante os cálculos métricos. Maior
blocos fornecem melhor supressão de ruído, mas também fornecem pior detecção de pequenos
movimentos. Deve ser uma potência de dois. O padrão é 32.

ppsrc
Marque a entrada principal como uma entrada pré-processada e ative o fluxo de entrada de origem limpa. Esse
permite que a entrada seja pré-processada com vários filtros para ajudar as métricas
cálculo, mantendo a seleção de quadros sem perdas. Quando definido como 1, o primeiro
stream é para a entrada pré-processada, e o segundo stream é a fonte limpa de
onde os quadros mantidos são escolhidos. O padrão é 0.

chroma
Defina se o croma é ou não considerado nos cálculos métricos. O padrão é 1.

esvaziar
Aplique efeito de esvaziamento ao vídeo.

Este filtro substitui o pixel pelo local(3x3) média, levando em consideração apenas
valores inferiores ao pixel.

Aceita as seguintes opções:

limiar 0
limiar 1
limiar 2
limiar 3
Limita a mudança máxima para cada plano, o padrão é 65535. Se 0, o plano permanecerá
inalterado.

dejudder
Remova a trepidação produzida por conteúdo telecinado parcialmente entrelaçado.

Judder pode ser introduzido, por exemplo, por puxar para cima filtro. Se a fonte original era
conteúdo parcialmente telecinado, então a saída de "pullup, dejudder" terá uma variável
taxa de quadros. Pode alterar a taxa de quadros gravada do contêiner. Além dessa mudança,
este filtro não afetará o vídeo com taxa de quadros constante.

A opção disponível neste filtro é:

ciclo
Especifique o comprimento da janela sobre a qual a trepidação se repete.

Aceita qualquer número inteiro maior que 1. Os valores úteis são:

4 Se o original foi telecinado de 24 a 30 fps (Filme para NTSC).

5 Se o original foi telecinado de 25 a 30 fps (PAL para NTSC).

20 Se uma mistura dos dois.

O padrão é 4.

logotipo
Suprima o logotipo de uma estação de TV por uma simples interpolação dos pixels circundantes. Basta definir um
retângulo cobrindo o logotipo e vê-lo desaparecer (e às vezes algo ainda mais feio
aparecer - sua milhagem pode variar).

Ele aceita os seguintes parâmetros:

x
y Especifique as coordenadas do canto superior esquerdo do logotipo. Eles devem ser especificados.

w
h Especifique a largura e a altura do logotipo para limpar. Eles devem ser especificados.

banda, t
Especifique a espessura da borda difusa do retângulo (adicionado a w e h). O
o valor padrão é 4.

mostrar
Quando definido como 1, um retângulo verde é desenhado na tela para simplificar a localização do
x, y, w e h parâmetros. O valor padrão é 0.

O retângulo é desenhado nos pixels externos que serão (parcialmente) substituídos por
valores interpolados. Os valores dos próximos pixels imediatamente fora deste retângulo
em cada direção será usado para calcular os valores de pixel interpolados dentro do
retângulo.

Exemplos

· Defina um retângulo cobrindo a área com as coordenadas do canto superior esquerdo 0,0 e tamanho
100 x 77 e uma banda de tamanho 10:

delogo=x=0:y=0:w=100:h=77:band=10

desarmar
Tente corrigir pequenas mudanças na mudança horizontal e / ou vertical. Este filtro ajuda a remover
tremor de câmera por segurar uma câmera, bater em um tripé, se mover em um veículo, etc.

O filtro aceita as seguintes opções:

x
y
w
h Especifique uma área retangular onde limitar a pesquisa de vetores de movimento. Se desejado
a busca por vetores de movimento pode ser limitada a uma área retangular do quadro
definido por seu canto superior esquerdo, largura e altura. Esses parâmetros têm o mesmo
ou seja, o filtro de caixa de tração que pode ser usado para visualizar a posição do
caixa delimitadora.

Isso é útil quando o movimento simultâneo de objetos dentro do quadro pode ser
confuso para o movimento da câmera pela pesquisa do vetor de movimento.

Se algum ou todos x, y, w e h são definidos como -1, então o quadro completo é usado. Isso permite
opções posteriores a serem definidas sem especificar a caixa delimitadora para o vetor de movimento
procurar.

Padrão - pesquisa todo o quadro.

rx
ry Especifique a extensão máxima do movimento nas direções xey no intervalo de 0-64 pixels.
Padrão 16.

Beira
Especifique como gerar pixels para preencher espaços em branco na borda do quadro. Disponível
os valores são:

em branco, 0
Preencha zeros em locais em branco

original, 1
Imagem original em locais em branco

braçadeira, 2
Valor de borda extrudado em locais em branco

espelho, 3
Borda espelhada em locais em branco

O valor padrão é espelho.

tamanho do bloco
Especifique o tamanho do bloco a ser usado para pesquisa de movimento. Faixa de 4-128 pixels, padrão 8.

contraste
Especifique o limite de contraste para blocos. Apenas blocos com mais do que o especificado
contraste (diferença entre pixels mais escuros e mais claros) será considerado. Faixa
1-255, padrão 125.

search
Especifique a estratégia de pesquisa. Os valores disponíveis são:

exaustivo, 0
Definir pesquisa exaustiva

menos, 1
Defina uma pesquisa menos exaustiva.

O valor padrão é compreensivo.

nome do arquivo
Se definido, um registro detalhado da pesquisa de movimento é gravado no arquivo especificado.

opencl
Se definido como 1, especifique usando recursos OpenCL, disponível apenas se FFmpeg foi
configurado com "--enable-opencl". O valor padrão é 0.

detelecina
Aplique o inverso exato da operação telecine. Requer um padrão predefinido
especificado usando a opção de padrão, que deve ser a mesma que foi passada para o telecine
filtro.

Este filtro aceita as seguintes opções:

primeiro_campo
topo, t
campo superior primeiro

fundo, b
campo inferior primeiro O valor padrão é "superior".

de cinto de segurança
Uma sequência de números que representa o padrão suspenso que você deseja aplicar. O padrão
o valor é 23.

quadro_inicial
Um número que representa a posição do primeiro quadro em relação ao telecine
padronizar. Isso deve ser usado se o fluxo for cortado. O valor padrão é 0.

dilatação
Aplique efeito de dilatação ao vídeo.

Este filtro substitui o pixel pelo local(3x3) no máximo.

Aceita as seguintes opções:

limiar 0
limiar 1
limiar 2
limiar 3
Limita a mudança máxima para cada plano, o padrão é 65535. Se 0, o plano permanecerá
inalterado.

coordenadas
Bandeira que especifica o pixel ao qual se referir. O padrão é 255, ou seja, todos os oito pixels são
usava.

Sinalizadores para mapas de coordenadas 3x3 locais como este:

1 2 3
4 5
6 7 8

caixa de tração
Desenhe uma caixa colorida na imagem de entrada.

Ele aceita os seguintes parâmetros:

x
y As expressões que especificam as coordenadas do canto superior esquerdo da caixa. É o padrão
para 0.

largura, w
altura, h
As expressões que especificam a largura e altura da caixa; se 0 eles são
interpretado como largura e altura de entrada. O padrão é 0.

cor, c
Especifique a cor da caixa para escrever. Para a sintaxe geral desta opção, verifique
a seção "Cor" no manual ffmpeg-utils. Se o valor especial "inverter" for usado,
a cor da borda da caixa é a mesma do vídeo com luma invertido.

espessura, t
A expressão que define a espessura da borda da caixa. O valor padrão é 3.

Veja abaixo a lista de constantes aceitas.

Os parâmetros para x, y, w e h e t são expressões que contêm as seguintes constantes:

mas A relação de aspecto de exibição de entrada, é a mesma que (w / h) * sar.

hsub
vssub
valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

em_h, ih
em_w, iw
A largura e altura de entrada.

sar A proporção de aspecto da amostra de entrada.

x
y As coordenadas de deslocamento xey onde a caixa é desenhada.

w
h A largura e a altura da caixa desenhada.

t A espessura da caixa desenhada.

Essas constantes permitem o x, y, w, h e t expressões para se referir umas às outras, então você
pode, por exemplo, especificar "y = x / dar" ou "h = w / dar".

Exemplos

· Desenhe uma caixa preta ao redor da borda da imagem de entrada:

caixa de tração

· Desenhe uma caixa com a cor vermelha e uma opacidade de 50%:

drawbox = 10: 20: 200: 60:[email protegido]

O exemplo anterior pode ser especificado como:

drawbox = x = 10: y = 20: w = 200: h = 60: color =[email protegido]

· Preencha a caixa com a cor rosa:

drawbox = x = 10: y = 10: w = 100: h = 100: color =[email protegido]: t = max

· Desenhe uma máscara de 2: 2.40 vermelha de 1 pixels:

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

desenho, um desenho
Desenhe um gráfico usando metadados de áudio ou vídeo de entrada.

Ele aceita os seguintes parâmetros:

m1 Defina a chave de metadados do primeiro quadro a partir da qual os valores de metadados serão usados ​​para desenhar um gráfico.

fg1 Defina a primeira expressão de cor de primeiro plano.

m2 Defina a chave de metadados do segundo quadro a partir da qual os valores de metadados serão usados ​​para desenhar um gráfico.

fg2 Defina a expressão da 2ª cor de primeiro plano.

m3 Defina a chave de metadados do terceiro quadro a partir da qual os valores de metadados serão usados ​​para desenhar um gráfico.

fg3 Defina a expressão da 3ª cor de primeiro plano.

m4 Defina a chave de metadados do 4º quadro a partir da qual os valores de metadados serão usados ​​para desenhar um gráfico.

fg4 Defina a 4ª expressão de cor de primeiro plano.

minutos Defina o valor mínimo do valor de metadados.

max Defina o valor máximo do valor de metadados.

bg Defina a cor de fundo do gráfico. O padrão é branco.

modo
Defina o modo gráfico.

Os valores disponíveis para o modo são:

Barra
ponto
linha

O padrão é "linha".

slide
Defina o modo de slide.

Os valores disponíveis para slide são:

quadro
Desenhe um novo quadro quando a borda direita for alcançada.

substituir
Substitua colunas antigas por novas.

scroll
Role da direita para a esquerda.

rsscroll
Role da esquerda para a direita.

O padrão é "frame".

tamanho
Defina o tamanho do vídeo gráfico. Para a sintaxe desta opção, verifique o "Vídeo Tamanho" seção
in que o ffmpeg-utils manual. O valor padrão é "900x256".

As expressões de cor de primeiro plano podem usar as seguintes variáveis:

MIN Valor mínimo do valor de metadados.

MAX Valor máximo do valor de metadados.

VAL Valor da chave de metadados atual.

A cor é definida como 0xAABBGGRR.

Exemplo usando metadados de estatísticas de sinal filtro:

signalstats, drawgraph = lavfi.signalstats.YAVG: min = 0: max = 255

Exemplo usando metadados de ebur128 filtro:

ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5

grade de desenho
Desenhe uma grade na imagem de entrada.

Ele aceita os seguintes parâmetros:

x
y As expressões que especificam as coordenadas de algum ponto de intersecção da grade
(destinado a configurar o deslocamento). Ambos são padronizados para 0.

largura, w
altura, h
As expressões que especificam a largura e altura da célula da grade, se 0 forem
interpretado como a largura e altura de entrada, respectivamente, menos "espessura", então a imagem
é enquadrado. Padrão para 0.

cor, c
Especifique a cor da grade. Para a sintaxe geral desta opção, verifique o
Seção "Cor" no manual ffmpeg-utils. Se o valor especial "inverter" for usado, o
a cor da grade é a mesma do vídeo com luma invertido.

espessura, t
A expressão que define a espessura da linha da grade. O valor padrão é 1.

Veja abaixo a lista de constantes aceitas.

Os parâmetros para x, y, w e h e t são expressões que contêm as seguintes constantes:

mas A relação de aspecto de exibição de entrada, é a mesma que (w / h) * sar.

hsub
vssub
valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

em_h, ih
em_w, iw
A largura e altura da célula da grade de entrada.

sar A proporção de aspecto da amostra de entrada.

x
y As coordenadas xey de algum ponto de interseção da grade (destinado a configurar
Deslocamento).

w
h A largura e a altura da célula desenhada.

t A espessura da célula desenhada.

Essas constantes permitem o x, y, w, h e t expressões para se referir umas às outras, então você
pode, por exemplo, especificar "y = x / dar" ou "h = w / dar".

Exemplos

· Desenhe uma grade com célula de 100x100 pixels, espessura de 2 pixels, com cor vermelha e uma
opacidade de 50%:

drawgrid = largura = 100: altura = 100: espessura = 2: cor =[email protegido]

· Desenhe uma grade 3x3 branca com uma opacidade de 50%:

drawgrid = w = iw / 3: h = ih / 3: t = 2: c =[email protegido]

texto desenhado
Desenhe uma string de texto ou texto de um arquivo especificado em cima de um vídeo, usando o libfreetype
biblioteca.

Para habilitar a compilação deste filtro, você precisa configurar o FFmpeg com
"--enable-libfreetype". Para ativar o fallback de fonte padrão e o fonte opção que você precisa
configure o FFmpeg com "--enable-libfontconfig". Para habilitar o text_shaping opção, você
precisa configurar o FFmpeg com "--enable-libfribidi".

Sintaxe

Ele aceita os seguintes parâmetros:

caixa Usado para desenhar uma caixa ao redor do texto usando a cor de fundo. O valor deve ser 1
(ativar) ou 0 (desativar). O valor padrão de caixa é 0.

Boxborderw
Defina a largura da borda a ser desenhada ao redor da caixa usando cor da caixa. O padrão
valor de Boxborderw é 0.

cor da caixa
A cor a ser usada para desenhar a caixa ao redor do texto. Para a sintaxe desta opção, verifique
a seção "Cor" no manual ffmpeg-utils.

O valor padrão de cor da caixa é branco".

fronteira
Defina a largura da borda a ser desenhada ao redor do texto usando bordercolor. O
valor padrão de fronteira é 0.

bordercolor
Defina a cor a ser usada para desenhar a borda ao redor do texto. Para a sintaxe deste
opção, verifique a seção "Cor" no manual ffmpeg-utils.

O valor padrão de bordercolor é preto".

expansão
Selecione como o texto é expandido. Pode ser "nenhum", "strftime" (obsoleto) ou
"normal" (padrão). Veja o desenhartexto_expansão, Texto expansão seção abaixo para
Detalhes.

limites_fixados
Se verdadeiro, verifique e corrija as coordenadas do texto para evitar cortes.

cor da fonte
A cor a ser usada para desenhar fontes. Para a sintaxe desta opção, verifique o
Seção "Cor" no manual ffmpeg-utils.

O valor padrão de cor da fonte é preto".

fontcolor_expr
String que é expandida da mesma maneira que texto para obter dinâmico cor da fonte valor. Por
padrão esta opção tem valor vazio e não é processada. Quando esta opção é definida,
Substitui cor da fonte opção.

fonte
A família da fonte a ser usada para desenhar o texto. Por padrão, Sans.

arquivo de fontes
O arquivo de fonte a ser usado para desenhar o texto. O caminho deve ser incluído. Este parâmetro
é obrigatório se o suporte a fontconfig estiver desabilitado.

desenhar
Esta opção não existe, consulte o sistema de cronograma

alfa
Desenhe o texto aplicando mistura alfa. O valor pode ser um número entre 0.0
e 1.0 A expressão aceita as mesmas variáveis x, y Faz. O valor padrão é 1.
Por favor, veja fontcolor_expr

tamanho da fonte
O tamanho da fonte a ser usado para desenhar o texto. O valor padrão de tamanho da fonte é 16.

text_shaping
Se definido como 1, tente moldar o texto (por exemplo, inverter a ordem de direita para
deixou o texto e juntou os caracteres árabes) antes de desenhá-lo. Caso contrário, apenas desenhe o
texto exatamente como fornecido. Por padrão, 1 (se houver suporte).

ft_load_flags
Os sinalizadores a serem usados ​​para carregar as fontes.

Os sinalizadores mapeiam os sinalizadores correspondentes suportados por libfreetype e são uma combinação
dos seguintes valores:

omissão
sem_escala
sem_sugestão
tornar
sem_bitmap
layout_vertical
force_autohint
crop_bitmap
pedante
ignore_global_advance_width
sem_recurse
ignore_transform
monocromático
design_linear
no_autohint

O valor padrão é "default".

Para obter mais informações, consulte a documentação dos sinalizadores FT_LOAD_ * libfreetype.

sombra
A cor a ser usada para desenhar uma sombra atrás do texto desenhado. Para a sintaxe de
esta opção, verifique a seção "Cor" no manual do ffmpeg-utils.

O valor padrão de sombra é preto".

Shadowx
sombrio
Os deslocamentos xey para a posição da sombra do texto em relação à posição do
texto. Eles podem ser valores positivos ou negativos. O valor padrão para ambos é
"0/XNUMX/XNUMX".

número_inicial
O número do quadro inicial para a variável n / frame_num. O valor padrão é "0".

tamanho de tabulação
O tamanho em número de espaços a serem usados ​​para renderizar a guia. O valor padrão é 4.

timecode
Defina a representação do timecode inicial no formato "hh: mm: ss [:;.] Ff". Isso pode ser usado
com ou sem parâmetro de texto. timecode_rate opção deve ser especificada.

taxa_de_timecode, taxa, r
Defina a taxa de quadros do timecode (somente timecode).

texto
A string de texto a ser desenhada. O texto deve ser uma sequência de caracteres codificados em UTF-8.
Este parâmetro é obrigatório se nenhum arquivo for especificado com o parâmetro arquivo de texto.

arquivo de texto
Um arquivo de texto contendo o texto a ser desenhado. O texto deve ser uma sequência codificada em UTF-8
caracteres.

Este parâmetro é obrigatório se nenhuma string de texto for especificada com o parâmetro texto.

Se ambos texto e arquivo de texto são especificados, um erro é lançado.

recarregar
Se definido como 1, o arquivo de texto será recarregado antes de cada quadro. Certifique-se de atualizá-lo
atomicamente, ou pode ser lido parcialmente, ou mesmo falhar.

x
y As expressões que especificam os deslocamentos onde o texto será desenhado dentro do vídeo
quadro. Eles são relativos à borda superior / esquerda da imagem de saída.

O valor padrão de x e y é "0".

Veja abaixo a lista de constantes e funções aceitas.

Os parâmetros para x e y são expressões que contêm as seguintes constantes e
funções:

mas relação de aspecto de exibição de entrada, é o mesmo que (w / h) * sar

hsub
vssub
valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

linha_h, lh
a altura de cada linha de texto

principal_h, h, H
a altura de entrada

principal_w, w, W
a largura de entrada

max_glyph_a, subida
a distância máxima da linha de base até a coordenada de grade superior / superior usada para
coloque um ponto de contorno de glifo, para todos os glifos renderizados. É um valor positivo, devido
para a orientação da grade com o eixo Y para cima.

max_glyph_d, descida
a distância máxima da linha de base até a coordenada de grade mais baixa usada para colocar um
ponto de contorno de glifo, para todos os glifos renderizados. Este é um valor negativo, devido a
a orientação da grade, com o eixo Y para cima.

max_glyph_h
altura máxima do glifo, que é a altura máxima para todos os glifos contidos no
texto renderizado, é equivalente a subida - descida.

max_glyph_w
largura máxima do glifo, que é a largura máxima para todos os glifos contidos no
texto renderizado

n o número do quadro de entrada, começando em 0

rand (min, máx.)
retornar um número aleatório incluído entre minutos e max

sar A proporção de aspecto da amostra de entrada.

t carimbo de data / hora expresso em segundos, NAN se o carimbo de data / hora de entrada for desconhecido

texto_h, th
a altura do texto renderizado

texto_w, tw
a largura do texto renderizado

x
y as coordenadas de deslocamento xey onde o texto é desenhado.

Esses parâmetros permitem o x e y expressões para se referirem, então você pode para
exemplo, especifique "y = x / dar".

Texto expansão

If expansão é definido como "strftime", o filtro reconhece strftime () sequências no
texto fornecido e os expande de acordo. Verifique a documentação do strftime (). Este
recurso está obsoleto.

If expansão é definido como "nenhum", o texto é impresso na íntegra.

If expansão é definido como "normal" (que é o padrão), o seguinte mecanismo de expansão
é usado.

O caractere barra invertida \, seguido por qualquer caractere, sempre se expande para o segundo
personagem.

Seqüência da forma "% {...}" são expandidas. O texto entre colchetes é uma função
nome, possivelmente seguido por argumentos separados por ':'. Se os argumentos contiverem
caracteres ou delimitadores (':' ou '}'), eles devem ter escape.

Observe que eles provavelmente também devem ser escapados como o valor para o texto opção no
string de argumento de filtro e como o argumento de filtro na descrição do gráfico de filtro, e
possivelmente também para a concha, que chega a quatro níveis de fuga; usando um arquivo de texto
evita esses problemas.

As seguintes funções estão disponíveis:

exp, e
O resultado da avaliação da expressão.

Deve ter um argumento especificando a expressão a ser avaliada, que aceita o
mesmas constantes e funções que o x e y valores. Observe que nem todas as constantes devem
ser usado, por exemplo, o tamanho do texto não é conhecido ao avaliar a expressão, então o
constante texto_w e texto_h terá um valor indefinido.

expr_int_formato, E se
Avalie o valor da expressão e a saída como número inteiro formatado.

O primeiro argumento é a expressão a ser avaliada, assim como para o expr função.
O segundo argumento especifica o formato de saída. Os valores permitidos são x, X, d e u.
Eles são tratados exatamente como na função "printf". O terceiro parâmetro é opcional
e define o número de posições tomadas pela saída. Pode ser usado para adicionar preenchimento
com zeros da esquerda.

horário gm
A hora em que o filtro está funcionando, expressa em UTC. Pode aceitar um argumento:
a strftime () string de formato.

horário local
A hora em que o filtro está sendo executado, expressa no fuso horário local. Pode
aceitar um argumento: a strftime () string de formato.

metadados
Metadados de quadros. Deve ter um argumento especificando a chave de metadados.

n, núm_quadro
O número do quadro, começando em 0.

tipo_pict
Uma descrição de 1 caractere do tipo de imagem atual.

pts O carimbo de data / hora do quadro atual. Pode levar até dois argumentos.

O primeiro argumento é o formato do carimbo de data / hora; o padrão é "flt" por segundos como
um número decimal com precisão de microssegundos; "hms" significa formatado
[-] HH: MM: SS.mmm carimbo de data / hora com precisão de milissegundos.

O segundo argumento é um deslocamento adicionado ao carimbo de data / hora.

Exemplos

· Desenhe "Texto de Teste" com a fonte FreeSerif, usando os valores padrão para o opcional
parâmetros.

drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Texto de teste'"

· Desenhe 'Texto de Teste' com a fonte FreeSerif de tamanho 24 na posição x = 100 ey = 50 (contando
no canto superior esquerdo da tela), o texto é amarelo com uma caixa vermelha ao redor. Ambos
o texto e a caixa têm uma opacidade de 20%.

drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Texto de teste': \
x = 100: y = 50: tamanho da fonte = 24: cor da fonte =[email protegido]: box = 1: boxcolor =[email protegido]"

Observe que as aspas duplas não são necessárias se os espaços não forem usados ​​dentro do
lista de parâmetros.

· Mostrar o texto no centro do quadro do vídeo:

drawtext = "fontsize = 30: fontfile = FreeSerif.ttf: text = 'hello world': x = (w-text_w) / 2: y = (h-text_h) / 2"

· Mostrar uma linha de texto deslizando da direita para a esquerda na última linha do quadro de vídeo. O
lima LONG_LINE assume-se que contém uma única linha sem novas linhas.

drawtext = "fontsize = 15: fontfile = FreeSerif.ttf: text = LONG_LINE: y = h-line_h: x = -50 * t"

· Mostra o conteúdo do arquivo CRÉDITOS na parte inferior do quadro e role para cima.

drawtext = "fontsize = 20: fontfile = FreeSerif.ttf: textfile = CREDITS: y = h-20 * t"

· Desenhe uma única letra verde "g", no centro do vídeo de entrada. A linha de base do glifo
é colocado na metade da altura da tela.

drawtext = "fontsize = 60: fontfile = FreeSerif.ttf: fontcolor = green: text = g: x = (w-max_glyph_w) / 2: y = h / 2-ascent"

· Mostrar texto por 1 segundo a cada 3 segundos:

drawtext = "fontfile = FreeSerif.ttf: fontcolor = white: x = 100: y = x / dar: enable = lt (mod (t \, 3) \, 1): text = 'piscar'"

· Use fontconfig para definir a fonte. Observe que os dois pontos precisam ser escapados.

drawtext = 'fontfile = Linux Libertine O-40 \: style = Semibold: text = FFmpeg'

· Imprimir a data de uma codificação em tempo real (ver horário de trabalho(3)):

drawtext = 'fontfile = FreeSans.ttf: text =% {localtime \:% a% b% d% Y}'

· Mostrar texto aparecendo e desaparecendo (aparecendo / desaparecendo):

#!/ Bin / sh
DS = 1.0 # início de exibição
DE = 10.0 # fim de exibição
FID = 1.5 # duração do fade
FOD = 5 # duração do fade out
ffplay -f lavfi "color, drawtext = text = TEST: fontsize = 50: fontfile = FreeSerif.ttf: fontcolor_expr = ff0000% {eif \\\\: clip (255 * (1 * entre (t \\, $ DS + $ FID \\, $ DE - $ FOD) + ((t - $ DS) / $ FID) * entre (t \\, $ DS \\, $ DS + $ FID) + (- (t - $ DE) / $ FOD) * entre (t \\, $ DE - $ FOD \\, $ DE)) \\, 0 \\, 255) \\\\: x \\\\: 2} "

Para obter mais informações sobre libfreetype, verifique:http://www.freetype.org/>.

Para obter mais informações sobre o fontconfig, verifique:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

Para obter mais informações sobre a libfribidi, verifique:http://fribidi.org/>.

detecção de borda
Detecte e desenhe bordas. O filtro usa o algoritmo Canny Edge Detection.

O filtro aceita as seguintes opções:

baixo
Alto
Defina os valores de limite alto e baixo usados ​​pelo algoritmo de limite do Canny.

O limite alto seleciona os pixels de borda "fortes", que são então conectados por meio de
8-conectividade com os pixels de borda "fracos" selecionados pelo limite baixo.

baixo e Alto os valores de limite devem ser escolhidos no intervalo [0,1], e baixo deveria estar
menor ou igual a Alto.

Valor padrão para baixo é "20/255" e o valor padrão para Alto é "50/255".

modo
Defina o modo de desenho.

fios
Desenhe fios brancos / cinza em fundo preto.

colormix
Misture as cores para criar um efeito de pintura / desenho animado.

O valor padrão é fios.

Exemplos

· Detecção de borda padrão com valores personalizados para o limite de histerese:

edgedetect = baixo = 0.1: alto = 0.4

· Efeito de pintura sem limite:

edgedetect = mode = colormix: high = 0

eq
Defina o brilho, contraste, saturação e ajuste de gama aproximado.

O filtro aceita as seguintes opções:

contraste
Defina a expressão de contraste. O valor deve ser um valor flutuante no intervalo de "-2.0" a 2.0.
O valor padrão é "0".

brilho
Defina a expressão de brilho. O valor deve ser um valor flutuante no intervalo de "-1.0" a 1.0.
O valor padrão é "0".

saturação
Defina a expressão de saturação. O valor deve ser um flutuante no intervalo de 0.0 a 3.0. O
o valor padrão é "1".

gama
Defina a expressão gama. O valor deve ser um flutuante no intervalo de 0.1 a 10.0. O padrão
o valor é "1".

gama_r
Defina a expressão gama para vermelho. O valor deve ser um flutuante no intervalo de 0.1 a 10.0. O
o valor padrão é "1".

gama_g
Defina a expressão gama para verde. O valor deve ser um flutuante no intervalo de 0.1 a 10.0.
O valor padrão é "1".

gama_b
Defina a expressão gama para azul. O valor deve ser um flutuante no intervalo de 0.1 a 10.0. O
o valor padrão é "1".

peso_gama
Defina a expressão de peso gama. Pode ser usado para reduzir o efeito de uma gama alta
valor em áreas brilhantes da imagem, por exemplo, evite que elas fiquem superamplificadas e simples
Branco. O valor deve ser um flutuante no intervalo de 0.0 a 1.0. Um valor de 0.0 transforma o gama
correção totalmente para baixo enquanto 1.0 deixa-o em sua força total. O padrão é "1".

avaliação
Defina quando as expressões para brilho, contraste, saturação e expressões gama
são avaliados.

Ele aceita os seguintes valores:

o init
avalia as expressões apenas uma vez durante a inicialização do filtro ou quando um comando
é processado

quadro
avaliar expressões para cada quadro de entrada

O valor padrão é o init.

As expressões aceitam os seguintes parâmetros:

n contagem de quadros do quadro de entrada começando em 0

postar posição de byte do pacote correspondente no arquivo de entrada, NAN se não for especificado

r taxa de quadros do vídeo de entrada, NAN se a taxa de quadros de entrada for desconhecida

t carimbo de data / hora expresso em segundos, NAN se o carimbo de data / hora de entrada for desconhecido

comandos

O filtro suporta os seguintes comandos:

contraste
Defina a expressão de contraste.

brilho
Defina a expressão de brilho.

saturação
Defina a expressão de saturação.

gama
Defina a expressão gama.

gama_r
Defina a expressão gamma_r.

gama_g
Defina a expressão gamma_g.

gama_b
Defina a expressão gamma_b.

peso_gama
Defina a expressão gamma_weight.

O comando aceita a mesma sintaxe da opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

erosão
Aplique efeito de erosão ao vídeo.

Este filtro substitui o pixel pelo local(3x3) mínimo.

Aceita as seguintes opções:

limiar 0
limiar 1
limiar 2
limiar 3
Limita a mudança máxima para cada plano, o padrão é 65535. Se 0, o plano permanecerá
inalterado.

coordenadas
Bandeira que especifica o pixel ao qual se referir. O padrão é 255, ou seja, todos os oito pixels são
usava.

Sinalizadores para mapas de coordenadas 3x3 locais como este:

1 2 3
4 5
6 7 8

aviões de extração
Extraia os componentes do canal de cores do fluxo de entrada de vídeo em um vídeo separado em tons de cinza
córregos.

O filtro aceita a seguinte opção:

aviões
Defina os planos a serem extraídos.

Os valores disponíveis para aviões são:

y
u
v
a
r
g
b

A escolha de planos não disponíveis na entrada resultará em erro. Isso significa você
não pode selecionar planos "r", "g", "b" com planos "y", "u", "v" ao mesmo tempo.

Exemplos

· Extraia o componente do canal de cor luma, uev do quadro de vídeo de entrada em 3 tons de cinza
saídas:

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

cotovelo
Aplique um efeito de posterização usando o algoritmo ELBG (Enhanced LBG).

Para cada imagem de entrada, o filtro calculará o mapeamento ideal da entrada para o
saída dado o comprimento do livro de código, ou seja, o número de cores de saída distintas.

Este filtro aceita as seguintes opções.

comprimento_do livro de códigos, l
Defina o comprimento do livro de código. O valor deve ser um número inteiro positivo e representa o número
de cores de saída distintas. O valor padrão é 256.

nb_passos, n
Defina o número máximo de iterações a serem aplicadas para calcular o mapeamento ideal. O
quanto maior o valor, melhor será o resultado e maior será o tempo de cálculo. Padrão
o valor é 1.

semente, s
Defina uma semente aleatória, deve ser um inteiro incluído entre 0 e UINT32_MAX. Se não
especificado, ou se explicitamente definido como -1, o filtro tentará usar uma boa semente aleatória
na base do melhor esforço.

pal8
Defina o formato de pixel de saída pal8. Esta opção não funciona com comprimento do livro de código maior
que 256.

desvanecer
Aplique um efeito fade-in / out ao vídeo de entrada.

Ele aceita os seguintes parâmetros:

tipo, t
O tipo de efeito pode ser "in" para um efeito fade-in ou "out" para um efeito fade-out.
O padrão é "in".

start_frame, s
Especifique o número do quadro no qual começar a aplicar o efeito de esmaecimento. O padrão é 0.

nb_frames, n
O número de quadros que dura o efeito de esmaecimento. No final do efeito fade-in, o
o vídeo de saída terá a mesma intensidade do vídeo de entrada. No final do fade-
transição, o vídeo de saída será preenchido com o selecionado cor. O padrão é
25.

alfa
Se definido como 1, atenua apenas o canal alfa, se houver um na entrada. O valor padrão é 0.

hora_inicial, st
Especifique o carimbo de data / hora (em segundos) do quadro para começar a aplicar o efeito de esmaecimento. Se
ambos start_frame e start_time são especificados, o fade começará no que vier
durar. O padrão é 0.

duração, d
O número de segundos que o efeito de esmaecimento deve durar. No final do fade-in
efeito, o vídeo de saída terá a mesma intensidade do vídeo de entrada, no final do
a transição fade-out, o vídeo de saída será preenchido com o selecionado cor. Se
tanto duration quanto nb_frames são especificados, duration é usado. O padrão é 0 (nb_frames
é usado por padrão).

cor, c
Especifique a cor do fade. O padrão é "preto".

Exemplos

· Fade nos primeiros 30 quadros do vídeo:

fade = in: 0: 30

O comando acima é equivalente a:

fade = t = in: s = 0: n = 30

· Esmaecimento dos últimos 45 quadros de um vídeo de 200 quadros:

fade = out: 155: 45
fade = type = out: start_frame = 155: nb_frames = 45

· Fade in the first 25 frames e fade out nos últimos 25 frames de um vídeo de 1000 frames:

fade = in: 0: 25, fade = out: 975: 25

· Faça os primeiros 5 quadros amarelos e, em seguida, fade in do quadro 5-24:

fade = in: 5:20: color = yellow

· Fade in alpha nos primeiros 25 frames do vídeo:

fade = in: 0: 25: alpha = 1

· Tornar os primeiros 5.5 segundos pretos e, em seguida, desaparecer por 0.5 segundos:

fade = t = in: st = 5.5: d = 0.5

fftfilt
Aplicar expressões arbitrárias a amostras no domínio da frequência

DC_Y
Ajuste o valor dc (ganho) do plano luma da imagem. O filtro aceita um
valor inteiro no intervalo de 0 a 1000. O valor padrão é definido como 0.

dc_U
Ajuste o valor dc (ganho) do primeiro plano de croma da imagem. O filtro aceita um
valor inteiro no intervalo de 0 a 1000. O valor padrão é definido como 0.

CC_V
Ajuste o valor dc (ganho) do segundo plano de croma da imagem. O filtro aceita um
valor inteiro no intervalo de 0 a 1000. O valor padrão é definido como 0.

peso_Y
Defina a expressão de peso do domínio da frequência para o plano luma.

peso_U
Defina a expressão de peso do domínio de frequência para o primeiro plano de croma.

peso_V
Defina a expressão de peso do domínio de frequência para o segundo plano de croma.

O filtro aceita as seguintes variáveis:

X
Y As coordenadas da amostra atual.

W
H A largura e a altura da imagem.

Exemplos

· Passa-alta:

fftfilt = dc_Y = 128: peso_Y = 'squish (1- (Y + X) / 100)'

· Passa-baixa:

fftfilt = dc_Y = 0: weight_Y = 'squish ((Y + X) / 100-1)'

· Afiado:

fftfilt = dc_Y = 0: weight_Y = '1 + squish (1- (Y + X) / 100)'

campo
Extraia um único campo de uma imagem entrelaçada usando aritmética de passada para evitar o desperdício
Tempo de CPU. Os quadros de saída são marcados como não entrelaçados.

O filtro aceita as seguintes opções:

tipo
Especifique se deseja extrair o campo superior (se o valor for 0 ou "superior") ou o campo inferior
(se o valor for 1 ou "inferior").

partida de campo
Filtro de correspondência de campo para telecine inverso. Destina-se a reconstruir o progressivo
quadros de um fluxo telecinado. O filtro não descarta quadros duplicados, para alcançar
um "fieldmatch" telecine inverso completo precisa ser seguido por um filtro de dizimação como
as dizimar no filtro gráfico.

A separação da correspondência de campo e da dizimação é motivada notavelmente pelo
possibilidade de inserir um filtro de desentrelaçamento de fallback entre os dois. Se a fonte
misturou conteúdo entrelaçado telecinado e real, "fieldmatch" não será capaz de corresponder
campos para as partes entrelaçadas. Mas esses quadros penteados restantes serão marcados como
entrelaçado e, portanto, pode ser desentrelaçado por um filtro posterior, como yadif antes
dizimação.

Além das várias opções de configuração, "fieldmatch" pode levar um segundo opcional
stream, ativado por meio do ppsrc opção. Se habilitado, a reconstrução de frames será
com base nos campos e quadros deste segundo fluxo. Isso permite que a primeira entrada seja
pré-processado a fim de ajudar os vários algoritmos do filtro, mantendo o
saída sem perdas (assumindo que os campos são correspondidos corretamente). Normalmente, um ciente de campo
denoiser ou ajustes de brilho / contraste podem ajudar.

Observe que este filtro usa os mesmos algoritmos que TIVTC / TFM (projeto AviSynth) e
VIVTC / VFM (projeto VapourSynth). O último é um clone leve do TFM do qual "fieldmatch"
é baseado em. Embora a semântica e o uso sejam muito próximos, alguns nomes de comportamento e opções
pode ser diferente.

A dizimar filtro atualmente funciona apenas para entrada de taxa de quadros constante. Se sua entrada foi
conteúdo misto telecinado (30fps) e progressivo com uma taxa de quadros mais baixa, como 24fps, usa o
seguinte cadeia de filtros para produzir o fluxo cfr necessário:
"dejudder, fps = 30000/1001, fieldmatch, dizimar".

O filtro aceita as seguintes opções:

ordem
Especifique a ordem de campo assumida do fluxo de entrada. Os valores disponíveis são:

auto
Detectar paridade automaticamente (use o valor de paridade interna do FFmpeg).

bff Assuma o campo inferior primeiro.

tff Assuma o campo superior primeiro.

Observe que às vezes é recomendado não confiar na paridade anunciada pelo stream.

O valor padrão é auto.

modo
Defina o modo de correspondência ou estratégia a ser usada. pc modo é o mais seguro no sentido de que
não correrá o risco de criar irregularidades devido a quadros duplicados quando possível, mas se houver
edições ruins ou campos combinados acabará gerando quadros combinados quando uma boa combinação
pode realmente existir. Por outro lado, pcn_ub modo é o mais arriscado em termos de
criando irregularidades, mas quase sempre encontrará uma boa moldura, se houver. O
outros valores estão todos em algum lugar entre pc e pcn_ub em termos de arriscar espasmos
e criar frames duplicados versus encontrar boas correspondências em seções com edições ruins,
campos órfãos, campos combinados, etc.

Mais detalhes sobre p / c / n / u / b estão disponíveis em p / c / n / u / b significado seção.

Os valores disponíveis são:

pc Correspondência bidirecional (p / c)

computador_n
Correspondência bidirecional e tentar a terceira correspondência se ainda estiver penteada (p / c + n)

pc_u
Correspondência bidirecional e tentativa de terceira correspondência (mesma ordem) se ainda penteada (p / c + u)

pc_n_ub
Correspondência bidirecional, tentando a 2ª combinação se ainda penteada e tentando a 3ª / 4ª combinação se
ainda penteado (p / c + n + u / b)

pcn Correspondência de 3 vias (p / c / n)

pcn_ub
Correspondência de 3 vias e tentar a 4ª / 5ª correspondências se todas as 3 correspondências originais forem
detectado como penteado (p / c / n + u / b)

Os parênteses no final indicam as correspondências que seriam usadas para esse modo
assumindo ordem=tff (E campo on auto or topo).

Em termos de velocidade pc modo é de longe o mais rápido e pcn_ub é o mais lento.

O valor padrão é computador_n.

ppsrc
Marque o fluxo de entrada principal como uma entrada pré-processada e habilite a entrada secundária
stream como a fonte limpa de onde escolher os campos. Veja a introdução do filtro para
mais detalhes. É semelhante ao clip2 recurso de VFM / TFM.

O valor padrão é 0 (desabilitado).

campo
Defina o campo a partir do qual corresponder. Recomenda-se definir isso com o mesmo valor que ordem
a menos que você tenha falhas de correspondência com essa configuração. Em certas circunstâncias
alterar o campo usado para corresponder de pode ter um grande impacto na correspondência
atuação. Os valores disponíveis são:

auto
Automático (mesmo valor que ordem).

fundo
Combine do campo inferior.

topo Combine do campo superior.

O valor padrão é auto.

croma
Defina se o croma é ou não incluído durante as comparações de correspondência. Na maioria dos casos,
é recomendado deixar isto habilitado. Você deve definir isso para 0 apenas se o seu clipe tiver
problemas graves de croma, como arco-íris intenso ou outros artefatos. Definindo isso para 0
também pode ser usado para acelerar as coisas ao custo de alguma precisão.

O valor padrão é 1.

y0
y1 Estes definem uma faixa de exclusão que exclui as linhas entre y0 e y1 do começo
incluídos na decisão de correspondência de campo. Uma banda de exclusão pode ser usada para ignorar
legendas, um logotipo ou outras coisas que podem interferir na correspondência. y0 define o
começando a linha de varredura e y1 define a linha final; todas as linhas entre y0 e y1
(Incluindo y0 e y1) será ignorado. Contexto y0 e y1 com o mesmo valor será
desative o recurso. y0 e y1 o padrão é 0.

scthresh
Defina o limite de detecção de mudança de cena como uma porcentagem da mudança máxima no luma
avião. Os bons valores estão na faixa "[8.0, 14.0]". A detecção de mudança de cena é apenas
relevante no caso combinação de pente=sc. O intervalo para scthresh é "[0.0, 100.0]".

O valor padrão é 12.0.

combinação de pente
Quando combater não é Nenhum, "fieldmatch" levará em consideração as pontuações combinadas de
partidas ao decidir qual partida usar como a partida final. Os valores disponíveis são:

Nenhum
Nenhuma correspondência final com base nas pontuações combinadas.

sc Pontuações combinadas são usadas apenas quando uma mudança de cena é detectada.

cheio
Use pontuações penteadas o tempo todo.

O padrão é sc.

pentedbg
Force o "fieldmatch" a calcular as métricas combinadas para certas correspondências e imprima-as.
Esta configuração é conhecida como microfone no vocabulário TFM / VFM. Os valores disponíveis são:

Nenhum
Nenhum cálculo forçado.

pcn Forçar cálculos p / c / n.

pcnub
Forçar cálculos p / c / n / u / b.

O valor padrão é Nenhum.

debulhar
Este é o limite de combinação de área usado para detecção de quadro combinado. Este essencialmente
controla o quão "forte" ou "visível" a penteabilidade deve ser detectada. Valores maiores significam
pentear deve ser mais visível e valores menores significam que pentear pode ser menos visível ou
forte e ainda ser detectado. As configurações válidas são de "-1" (cada pixel será
detectado como combinado) a 255 (nenhum pixel será detectado como combinado). Este é basicamente um
valor de diferença de pixel. Um bom intervalo é "[8, 12]".

O valor padrão é 9.

chroma
Define se o croma é ou não considerado na decisão do quadro combinado. Apenas desabilite
isso se sua fonte tiver problemas de croma (arco-íris, etc.) que estão causando problemas
para a detecção de quadro combinada com croma habilitado. Na verdade, usando chroma=0 is
geralmente mais confiável, exceto para o caso em que há croma apenas penteando no
fonte.

O valor padrão é 0.

bloco x
blocky
Defina respectivamente o tamanho do eixo xey da janela usada durante o quadro combinado
detecção. Isso tem a ver com o tamanho da área em que obrigar pixels são
deve ser detectado como penteado para que uma moldura seja declarada penteada. Veja o obrigar
descrição do parâmetro para mais informações. Os valores possíveis são qualquer número que seja um poder
de 2 começando em 4 e indo até 512.

O valor padrão é 16.

obrigar
O número de pixels penteados dentro de qualquer um dos blocky by bloco x blocos de tamanho no
moldura para que a moldura seja detectada como penteada. Enquanto debulhar controla o quão "visível" o
pentear deve ser, esta configuração controla "quanto" pentear deve haver em qualquer
área localizada (uma janela definida pelo bloco x e blocky configurações) no quadro.
O valor mínimo é 0 e o máximo é "blocky x blockx" (nesse ponto, nenhum frame
ser detectado como penteado). Esta configuração é conhecida como MI no vocabulário TFM / VFM.

O valor padrão é 80.

p / c / n / u / b significado

p / c / n

Assumimos o seguinte fluxo telecinado:

Campos principais: 1 2 2 3 4
Campos inferiores: 1 2 3 4 4

Os números correspondem ao quadro progressivo ao qual os campos se relacionam. Aqui, os dois primeiros
as armações são progressivas, a 3ª e a 4ª são penteadas e assim por diante.

Quando "fieldmatch" é configurado para executar uma correspondência de baixo (campo=fundo) é assim
este fluxo de entrada é transformado:

Fluxo de entrada:
T1 2 2 3 4
B 1 2 3 4 4 <- referência correspondente

Jogos: ccnnc

Fluxo de saída:
T1 2 3 4 4
B 1 2 3 4 4

Como resultado da correspondência de campo, podemos ver que alguns quadros são duplicados. Executar
um telecine inverso completo, você precisa contar com um filtro de dizimação após esta operação.
Veja por exemplo o dizimar filtro.

A mesma operação agora combinando com os campos superiores (campo=topo) se parece com isso:

Fluxo de entrada:
T 1 2 2 3 4 <- referência correspondente
B 1 2 3 4 4

Jogos: ccppc

Fluxo de saída:
T1 2 2 3 4
B 1 2 2 3 4

Nestes exemplos, podemos ver o que p, c e n significar; basicamente, eles se referem ao quadro e
campo da paridade oposta:

*<p corresponde ao campo da paridade oposta no quadro anterior>
*<c corresponde ao campo da paridade oposta no quadro atual>
*<n corresponde ao campo da paridade oposta no próximo quadro>

u / b

A u e b correspondência são um pouco especiais no sentido de que combinam com o oposto
bandeira de paridade. Nos exemplos a seguir, presumimos que atualmente estamos combinando o segundo
quadro (superior: 2, inferior: 2). De acordo com a correspondência, um 'x' é colocado acima e abaixo de cada
campos correspondentes.

Com correspondência inferior (campo=fundo):

Correspondência: cpnbu

xxxxx
Parte superior 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Inferior 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Quadros de saída:
2 1 2 2 2
2 2 2 1 3

Com correspondência superior (campo=topo):

Correspondência: cpnbu

xxxxx
Parte superior 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Inferior 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Quadros de saída:
2 2 2 1 2
2 1 3 2 2

Exemplos

IVTC simples de um primeiro fluxo telecinado de campo superior:

fieldmatch = order = tff: combmatch = none, decimate

IVTC avançado, com fallback em yadif para quadros ainda penteados:

fieldmatch = order = tff: combmatch = full, yadif = deint = entrelaçado, dizimar

ordem do Campo
Transforme a ordem dos campos do vídeo de entrada.

Ele aceita os seguintes parâmetros:

ordem
A ordem dos campos de saída. Os valores válidos são tff para o campo superior primeiro ou bff para o fundo
campo primeiro.

o valor padrão é tff.

A transformação é feita deslocando o conteúdo da imagem para cima ou para baixo em uma linha, e
preenchendo a linha restante com o conteúdo de imagem apropriado. Este método é consistente
com a maioria dos conversores de ordem de campo de transmissão.

Se o vídeo de entrada não estiver sinalizado como entrelaçado ou já estiver sinalizado como
da ordem do campo de saída necessária, então este filtro não altera o vídeo de entrada.

É muito útil ao converter de ou para material PAL DV, que é o campo inferior primeiro.

Por exemplo:

ffmpeg -i in.vob -vf "fieldorder = bff" out.dv

fifo
Armazenar imagens de entrada em buffer e enviá-las quando solicitadas.

É útil principalmente quando inserido automaticamente pela estrutura libavfilter.

Não leva parâmetros.

encontrar_rect
Encontre um objeto retangular

Aceita as seguintes opções:

objeto
O caminho de arquivo da imagem do objeto deve estar em cinza8.

limiar
Limite de detecção, o padrão é 0.5.

mipmaps
Número de mipmaps, o padrão é 3.

xmin, sim, xmáx, ymax
Especifica o retângulo no qual pesquisar.

Exemplos

· Gerar uma paleta representativa de um determinado vídeo usando ffmpeg:

ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv

cover_rect
Cubra um objeto retangular

Aceita as seguintes opções:

cobrir
O caminho do arquivo da imagem da capa opcional deve estar em yuv420.

modo
Defina o modo de cobertura.

Ele aceita os seguintes valores:

cobrir
cubra-o com a imagem fornecida

borrão
cubra-o interpolando os pixels circundantes

O valor padrão é borrão.

Exemplos

· Gerar uma paleta representativa de um determinado vídeo usando ffmpeg:

ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv

formato
Converta o vídeo de entrada em um dos formatos de pixel especificados. Libavfilter tentará
escolha um que seja adequado como entrada para o próximo filtro.

Ele aceita os seguintes parâmetros:

pix_fmts
Uma lista separada por '|' de nomes de formato de pixel, como "pix_fmts = yuv420p | monow | rgb24".

Exemplos

· Converta o vídeo de entrada para o yuv420p formato

format = pix_fmts = yuv420p

Converta o vídeo de entrada em qualquer um dos formatos da lista

format = pix_fmts = yuv420p | yuv444p | yuv410p

fps
Converta o vídeo para a taxa de quadros constante especificada, duplicando ou eliminando os quadros como
necessário.

Ele aceita os seguintes parâmetros:

fps A taxa de quadros de saída desejada. O padrão é 25.

volta
Método de arredondamento.

Os valores possíveis são:

zero
rodada zero em direção a 0

inf arredondar de 0

down
arredondar para -infinito

up arredondar para + infinito

perto
arredondar para o mais próximo

O padrão é "próximo".

hora_início
Suponha que o primeiro PTS deve ser o valor fornecido, em segundos. Isso permite
preenchimento / corte no início do fluxo. Por padrão, nenhuma suposição é feita sobre o
PTS esperado do primeiro quadro, portanto, nenhum preenchimento ou corte é feito. Por exemplo, este
pode ser definido como 0 para preencher o início com duplicatas do primeiro quadro se um vídeo
o stream começa após o stream de áudio ou para aparar quaisquer quadros com um PTS negativo.

Como alternativa, as opções podem ser especificadas como uma string simples: fps[:volta].

Veja também o configurações filtro.

Exemplos

· Um uso típico para definir o fps para 25:

fps = fps = 25

· Define o fps para 24, usando o método de abreviação e arredondamento para arredondar para o mais próximo:

fps = fps = filme: redondo = próximo

pacote de molduras
Empacote dois streams de vídeo diferentes em um vídeo estereoscópico, definindo metadados adequados em
codecs suportados. As duas visualizações devem ter o mesmo tamanho, taxa de quadros e processamento
irá parar quando o vídeo mais curto terminar. Observe que você pode ajustar convenientemente a visualização
propriedades com o escada e fps filtros.

Ele aceita os seguintes parâmetros:

formato
O formato de embalagem desejado. Os valores suportados são:

Sbs As visualizações estão próximas uma da outra (padrão).

aba As visualizações estão uma em cima da outra.

linhas
As visualizações são agrupadas por linha.

colunas
As visualizações são compactadas por coluna.

frameseq
As vistas são intercaladas temporariamente.

Alguns exemplos:

# Converta as visualizações esquerda e direita em um vídeo sequencial de quadros
ffmpeg -i LEFT -i RIGHT -filter_complex framepack = frameseq OUTPUT

# Converta visualizações em um vídeo lado a lado com a mesma resolução de saída da entrada
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 SAÍDA

framerate
Altere a taxa de quadros interpolando novos quadros de saída de vídeo dos quadros de origem.

Este filtro não foi projetado para funcionar corretamente com mídia entrelaçada. Se você deseja
alterar a taxa de quadros da mídia entrelaçada, então você é obrigado a desentrelaçar antes disso
filtrar e re-entrelaçar após este filtro.

Segue uma descrição das opções aceitas.

fps Especifique os quadros de saída por segundo. Esta opção também pode ser especificada como um valor
sozinho. O padrão é 50.

interp_start
Especifique o início de um intervalo onde o quadro de saída será criado como um
interpolação de dois quadros. O intervalo é [0-255], o padrão é 15.

interp_end
Especifique o final de um intervalo onde o quadro de saída será criado como um
interpolação de dois quadros. O intervalo é [0-255], o padrão é 240.

cena
Especifique o nível em que uma mudança de cena é detectada como um valor entre 0 e 100 a
indicar uma nova cena; um valor baixo reflete uma baixa probabilidade do quadro atual de
introduzir uma nova cena, enquanto um valor mais alto significa que o quadro atual é mais provável
Seja um. O padrão é 7.

bandeiras
Especifique sinalizadores que influenciam o processo de filtragem.

Valor disponível para bandeiras é:

cena_mudança_detectar, scd
Ative a detecção de mudança de cena usando o valor da opção cena. Esta bandeira é
habilitado por padrão.

passo de quadro
Selecione um quadro a cada enésimo quadro.

Este filtro aceita a seguinte opção:

passo
Selecione o quadro após cada quadro "passo". Os valores permitidos são inteiros positivos mais altos
que 0. O valor padrão é 1.

frei0r
Aplique um efeito frei0r ao vídeo de entrada.

Para habilitar a compilação deste filtro, você precisa instalar o cabeçalho frei0r e
configure o FFmpeg com "--enable-frei0r".

Ele aceita os seguintes parâmetros:

nome_do_filtro
O nome do efeito frei0r a ser carregado. Se a variável de ambiente FEI0R_PATH is
definido, o efeito frei0r é pesquisado em cada um dos diretórios especificados pelo
lista separada por dois pontos em FRIOR_PATH. Caso contrário, os caminhos frei0r padrão são
pesquisado, nesta ordem: HOME / .frei0r-1 / lib /, / usr / local / lib / frei0r-1 /,
/ usr / lib / frei0r-1 /.

filtros_params
Uma lista de parâmetros separados por '|' para passar para o efeito frei0r.

Um parâmetro de efeito frei0r pode ser um booleano (seu valor é "y" ou "n"), um duplo, um
cor (especificada como R/G/B, Onde R, G e B são números de ponto flutuante entre 0.0 e
1.0, inclusive) ou por uma descrição de cor especificada na seção "Cor" do ffmpeg-
manual de utilitários), uma posição (especificada como X/Y, Onde X e Y são números de ponto flutuante)
e / ou uma string.

O número e os tipos de parâmetros dependem do efeito carregado. Se um parâmetro de efeito for
não especificado, o valor padrão é definido.

Exemplos

· Aplique o efeito distort0r, definindo os dois primeiros parâmetros duplos:

frei0r = filter_name = distort0r: filter_params = 0.5 | 0.01

· Aplicar o efeito de distância de cor, tomando uma cor como primeiro parâmetro:

frei0r = colordistance: 0.2 / 0.3 / 0.4
frei0r = colordistance: violeta
frei0r = colordistance: 0x112233

· Aplique o efeito de perspectiva, especificando as posições superior esquerda e superior direita da imagem:

frei0r=perspective:0.2/0.2|0.8/0.2

Para mais informações, vejahttp://frei0r.dyne.org>

fspp
Aplique um pós-processamento rápido e simples. É uma versão mais rápida do spp.

Ele divide (I) DCT em passagens horizontais / verticais. Ao contrário do pós-processamento simples
filtro, um deles é executado uma vez por bloco, não por pixel. Isso permite muito
maior velocidade.

O filtro aceita as seguintes opções:

qualidade
Defina a qualidade. Esta opção define o número de níveis para cálculo da média. Aceita um
inteiro no intervalo 4-5. O valor padrão é 4.

qp Força um parâmetro de quantização constante. Ele aceita um número inteiro no intervalo de 0-63. Se não
definido, o filtro usará o QP do fluxo de vídeo (se disponível).

força
Defina a intensidade do filtro. Ele aceita um número inteiro no intervalo de -15 a 32. Valores mais baixos significam mais
detalhes, mas também mais artefatos, enquanto valores mais altos tornam a imagem mais suave, mas também
embaçado. O valor padrão é 0 X PSNR ideal.

use_bframe_qp
Habilite o uso do QP dos B-Frames se definido como 1. O uso desta opção pode causar
cintilação, uma vez que os quadros B geralmente têm QP maior. O padrão é 0 (não habilitado).

geq
O filtro aceita as seguintes opções:

lum_expr, lum
Defina a expressão de luminância.

cb_expr, cb
Defina a expressão de crominância azul.

cr_expr, cr
Defina a expressão de crominância vermelha.

alfa_expr, a
Defina a expressão alfa.

red_expr, r
Defina a expressão vermelha.

verde_expr, g
Defina a expressão verde.

expr_azul, b
Defina a expressão azul.

O espaço de cores é selecionado de acordo com as opções especificadas. Se um dos lum_expr,
cb_exprou cr_expr opções for especificado, o filtro selecionará automaticamente um YCbCr
espaço colorido. Se um dos red_expr, verde_exprou expr_azul opções forem especificadas,
selecione um espaço de cores RGB.

Se uma das expressões de crominância não for definida, ela recairá na outra. Se não
a expressão alfa for especificada, ela será avaliada como um valor opaco. Se nenhum de crominância
expressões são especificadas, elas serão avaliadas para a expressão de luminância.

As expressões podem usar as seguintes variáveis ​​e funções:

N O número sequencial do quadro filtrado, começando em 0.

X
Y As coordenadas da amostra atual.

W
H A largura e a altura da imagem.

SW
SH Escala de largura e altura dependendo do plano filtrado atualmente. É a proporção
entre o número de pixels do plano luma correspondente e os do plano atual. Por exemplo
para YUV4: 2: 0, os valores são "1,1" para o plano de luma e "0.5,0.5" para planos de croma.

T Tempo do quadro atual, expresso em segundos.

p (x, y)
Retorna o valor do pixel no local (x,y) do plano atual.

lum (x, y)
Retorna o valor do pixel no local (x,y) do plano de luminância.

cb (x, y)
Retorna o valor do pixel no local (x,y) do plano de croma de diferença de azul.
Retorne 0 se não houver tal plano.

cr (x, y)
Retorna o valor do pixel no local (x,y) do plano de croma de diferença de vermelho.
Retorne 0 se não houver tal plano.

r (x, y)
g (x, y)
b (x, y)
Retorna o valor do pixel no local (x,y) do componente vermelho / verde / azul.
Retorne 0 se não houver tal componente.

alfa (x, y)
Retorna o valor do pixel no local (x,y) do plano alfa. Retorne 0 se houver
não é esse plano.

Para funções, se x e y estão fora da área, o valor será automaticamente recortado para
a borda mais próxima.

Exemplos

· Virar a imagem horizontalmente:

geq = p (WX \, Y)

· Gerar uma onda senoidal bidimensional, com ângulo "PI / 3" e comprimento de onda de 100 pixels:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· Gere uma luz em movimento enigmática extravagante:

nullsrc = s = 256x256, geq =acaso(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

· Gerar um efeito de relevo rápido:

formato = cinza, geq = lum_expr = '(p (X, Y) + (256-p (X-4, Y-4))) / 2'

· Modifique os componentes RGB dependendo da posição do pixel:

geq = r = 'X / W * r (X, Y)': g = '(1-X / W) * g (X, Y)': b = '(HY) / H * b (X, Y ) '

· Crie um gradiente radial que seja do mesmo tamanho que a entrada (veja também o vinheta
filtro):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gauss(0) /gauss(0), formato = cinza

· Crie um gradiente linear para usar como máscara para outro filtro e, em seguida, componha com
sobreposição. Neste exemplo, o vídeo ficará gradualmente mais desfocado do topo para
a parte inferior do eixo y conforme definido pelo gradiente linear:

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] [alpha] overlay "output.mp4

graduação
Corrija os artefatos de bandas que às vezes são introduzidos em regiões quase planas por
truncamento para profundidade de cor de 8 bits. Interpolar os gradientes que devem ir para onde as bandas
são, e dither-los.

Ele é projetado apenas para reprodução. Não use antes da compressão com perdas, porque
a compressão tende a perder o dither e trazer de volta as bandas.

Ele aceita os seguintes parâmetros:

força
O valor máximo pelo qual o filtro mudará qualquer pixel. Este também é o
limite para detectar regiões quase planas. Os valores aceitáveis ​​variam de 51 a 64;
o valor padrão é 1.2. Os valores fora do intervalo serão cortados para o intervalo válido.

raio
A vizinhança para ajustar o gradiente. Um raio maior torna gradientes mais suaves,
mas também evita que o filtro modifique os pixels próximos às regiões detalhadas.
Os valores aceitáveis ​​são 8-32; o valor padrão é 16. Valores fora do intervalo serão
recortado para o intervalo válido.

Como alternativa, as opções podem ser especificadas como uma string simples: força[:raio]

Exemplos

· Aplique o filtro com uma força de 3.5 e raio de 8:

gradfun = 3.5: 8

· Especifique o raio, omitindo a resistência (que retornará ao valor padrão):

gradfun = radius = 8

miserável
Aplique um Hald CLUT a um fluxo de vídeo.

A primeira entrada é o stream de vídeo a ser processado e a segunda é Hald CLUT. O Hald
A entrada de CLUT pode ser uma imagem simples ou um stream de vídeo completo.

O filtro aceita as seguintes opções:

menor
Força o encerramento quando a entrada mais curta termina. O padrão é 0.

repetir o último
Continue aplicando a última CLUT após o final do fluxo. Um valor de 0 desativa o
filtrar após o último quadro da CLUT ser alcançado. O padrão é 1.

"haldclut" também tem as mesmas opções de interpolação que lut3d (ambos os filtros compartilham o mesmo
internos).

Mais informações sobre a Hald CLUT podem ser encontradas no site de Eskil Steenberg (Hald CLUT
autor) emhttp://www.quelsolaar.com/technology/clut.html>.

Fluxo de trabalho exemplos

Fluxo de vídeo Hald CLUT

Gere um fluxo de identidade Hald CLUT alterado com vários efeitos:

ffmpeg -f lavfi -i B = 8 -vf "matiz = H = 2 * PI * t: s = sin (2 * PI * t) +1, curvas = cross_process" -t 10 -c: v ffv1 clut.nut

Nota: certifique-se de usar um codec sem perdas.

Em seguida, use-o com "haldclut" para aplicá-lo em algum fluxo aleatório:

ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0] [1] haldclut' -t 20 mandelclut.mkv

O Hald CLUT será aplicado aos 10 primeiros segundos (duração de porca), então o
a última imagem desse fluxo CLUT será aplicada aos quadros restantes do
fluxo "mandelbrot".

Hald CLUT com visualização

Supõe-se que um Hald CLUT seja uma imagem quadrada de "Nível * Nível * Nível" por
"Nível * Nível * Nível" pixels. Para um determinado Hald CLUT, FFmpeg selecionará o maior possível
quadrado começando no canto superior esquerdo da imagem. Os pixels de preenchimento restantes (inferior ou
direito) será ignorado. Esta área pode ser usada para adicionar uma prévia do Hald CLUT.

Normalmente, o seguinte Hald CLUT gerado será compatível com o filtro "haldclut":

ffmpeg -f lavfi -i B = 8 -vf "
pad = iw + 320 [padded_clut];
smptebars = s = 320x256, divisão [a] [b];
[padded_clut] [a] overlay = W-320: h, curvas = color_negative [main];
[main] [b] overlay = W-320 "-frames: v 1 clut.png

Ele contém o original e uma prévia do efeito do CLUT: as barras de cores SMPTE são
exibido no canto superior direito e abaixo das mesmas barras de cores processadas pelas mudanças de cor.

Então, o efeito desta Hald CLUT pode ser visualizado com:

ffplay input.mkv -vf "movie = clut.png, [in] haldclut"

hflip
Vire o vídeo de entrada horizontalmente.

Por exemplo, para virar horizontalmente o vídeo de entrada com ffmpeg:

ffmpeg -i in.avi -vf "hflip" out.avi

histeq
Este filtro aplica uma equalização de histograma de cores global por quadro.

Ele pode ser usado para corrigir vídeo que possui uma faixa compactada de intensidades de pixel. O
filtro redistribui as intensidades de pixel para equalizar sua distribuição entre os
faixa de intensidade. Pode ser visto como um "filtro de contraste de ajuste automático". Isto
O filtro é útil apenas para corrigir vídeo de origem degradado ou mal capturado.

O filtro aceita as seguintes opções:

força
Determine a quantidade de equalização a ser aplicada. À medida que a força é reduzida, o
a distribuição de intensidades de pixel se aproxima cada vez mais daquela do quadro de entrada.
O valor deve ser um número flutuante no intervalo [0,1] e o padrão é 0.200.

intensidade
Defina a intensidade máxima que pode ser gerada e dimensione os valores de saída
adequadamente. A força deve ser definida conforme desejado e, em seguida, a intensidade pode ser
limitado, se necessário, para evitar o desbotamento. O valor deve ser um número flutuante no intervalo
[0,1] e o padrão é 0.210.

Contra-produtivo
Defina o nível de antibanding. Se habilitado, o filtro irá variar aleatoriamente a luminância de
os pixels de saída em uma pequena quantidade para evitar bandas do histograma. Os valores possíveis são
"nenhum", "fraco" ou "forte". O padrão é "nenhum".

Histograma
Calcule e desenhe um histograma de distribuição de cores para o vídeo de entrada.

O histograma calculado é uma representação da distribuição do componente de cor em um
imagem.

O filtro aceita as seguintes opções:

modo
Defina o modo de histograma.

Ele aceita os seguintes valores:

níveis
Histograma padrão que exibe a distribuição dos componentes de cor em uma imagem.
Exibe o gráfico de cores para cada componente de cor. Mostra a distribuição de Y, U, V,
Componentes A ou R, G, B, dependendo do formato de entrada, no quadro atual. Abaixo
em cada gráfico, um medidor de escala de componente de cor é mostrado.

cor
Exibe os valores de croma (colocação de cor U / V) em um gráfico bidimensional (que é
chamado de vetorscópio). Quanto mais brilhante for um pixel no vectorscope, mais pixels de
o quadro de entrada corresponde a esse pixel (ou seja, mais pixels têm este croma
valor). O componente V é exibido no eixo horizontal (X), com o componente mais à esquerda
lado sendo V = 0 e o lado direito sendo V = 255. O componente U é
exibido no eixo vertical (Y), com a parte superior representando U = 0 e a parte inferior
representando U = 255.

A posição de um pixel branco no gráfico corresponde ao valor de croma de um
pixel do clipe de entrada. O gráfico pode, portanto, ser usado para ler o matiz (cor
sabor) e a saturação (o domínio da tonalidade na cor). Como o matiz de
uma cor muda, ele se move ao redor do quadrado. No centro da praça o
a saturação é zero, o que significa que o pixel correspondente não tem cor. Se o
quantidade de uma cor específica é aumentada (enquanto deixa as outras cores inalteradas)
a saturação aumenta e o indicador se move em direção à borda do quadrado.

color2
Os valores de croma no vetorscópio, semelhantes a "cor", mas os valores reais de croma são
exibido.

forma de onda
Gráfico de componente de cor por linha / coluna. No modo linha, o gráfico do lado esquerdo
representa o valor do componente de cor 0 e o lado direito representa o valor = 255. Em
modo de coluna, o lado superior representa o valor do componente de cor = 0 e o lado inferior
representa o valor = 255.

O valor padrão é "níveis".

altura_nível
Defina a altura do nível em "níveis". O valor padrão é 200. O intervalo permitido é [50, 2048].

escala_altura
Defina a altura da escala de cores em "níveis". O valor padrão é 12. O intervalo permitido é [0, 40].

passo
Defina a etapa para o modo "forma de onda". Valores menores são úteis para descobrir quantos valores de
a mesma luminância é distribuída pelas linhas / colunas de entrada. O valor padrão é 10.
O intervalo permitido é [1, 255].

modo_forma_de_onda
Defina o modo para "forma de onda". Pode ser "linha" ou "coluna". O padrão é "linha".

forma de onda_espelho
Defina o modo de espelhamento para "forma de onda". 0 significa não espelhado, 1 significa espelhado. Em espelhado
modo, os valores mais altos serão representados no lado esquerdo para o modo "linha" e no topo
para o modo "coluna". O padrão é 0 (não espelhado).

modo de exibição
Defina o modo de exibição para "forma de onda" e "níveis". Ele aceita os seguintes valores:

parada
Exibir gráfico separado para os componentes de cor lado a lado na forma de onda "linha"
modo ou um abaixo do outro no modo de forma de onda de "coluna" para o histograma de "forma de onda"
modo. Para o modo de histograma de "níveis", os gráficos de componentes de cor são colocados abaixo
entre si.

Usar este modo de exibição no modo de histograma "forma de onda" torna mais fácil identificar a cor
projeta os destaques e sombras de uma imagem, comparando os contornos do
gráficos superior e inferior de cada forma de onda. Uma vez que brancos, cinzas e pretos são
caracterizado por quantidades exatamente iguais de vermelho, verde e azul, áreas neutras de
a imagem deve exibir três formas de onda de largura / altura aproximadamente iguais. Se não,
a correção é fácil de realizar, fazendo ajustes de nível nas três formas de onda.

sobreposição
Apresenta informações idênticas às do "desfile", exceto que os gráficos
representando os componentes da cor são sobrepostos diretamente uns sobre os outros.

Este modo de exibição no modo de histograma de "forma de onda" torna mais fácil localizar o relativo
diferenças ou semelhanças em áreas sobrepostas dos componentes de cor que são
supostamente idênticos, como brancos neutros, cinzas ou pretos.

O padrão é "desfile".

níveis_modo
Defina o modo para "níveis". Pode ser "linear" ou "logarítmico". O padrão é "linear".

componentes
Defina quais componentes de cor exibir para o modo "níveis". O padrão é 7.

Exemplos

· Calcular e desenhar o histograma:

ffplay -i input -vf histograma

hqdn3d
Este é um filtro denoise 3D de alta precisão / qualidade. Tem como objetivo reduzir o ruído da imagem,
produzindo imagens suaves e tornando as imagens estáticas realmente estáticas. Deve melhorar
compressibilidade.

Ele aceita os seguintes parâmetros opcionais:

luma_espacial
Um número de ponto flutuante não negativo que especifica a força luminosa espacial. Isto
o padrão é 4.0.

croma_espacial
Um número de ponto flutuante não negativo que especifica a intensidade do croma espacial. Isto
o padrão é 3.0 *luma_espacial/ 4.0.

luma_tmp
Um número de ponto flutuante que especifica a força temporal luma. O padrão é
6.0 *luma_espacial/ 4.0.

croma_tmp
Um número de ponto flutuante que especifica a intensidade temporal do croma. O padrão é
luma_tmp*croma_espacial/luma_espacial.

hqx
Aplique um filtro de ampliação de alta qualidade projetado para pixel art. Este filtro era
originalmente criado por Maxim Stepin.

Aceita a seguinte opção:

n Defina a dimensão de escala: 2 para "hq2x", 3 para "hq3x" e 4 para "hq4x". O padrão é 3.

empacotar
Empilhe os vídeos de entrada horizontalmente.

Todos os streams devem ter o mesmo formato de pixel e a mesma altura.

Observe que este filtro é mais rápido do que usar sobreposição e caminho filtro para criar a mesma saída.

O filtro aceita a seguinte opção:

nb_inputs
Defina o número de fluxos de entrada. O padrão é 2.

matiz
Modifique o matiz e / ou a saturação da entrada.

Ele aceita os seguintes parâmetros:

h Especifique o ângulo de matiz como um número de graus. Ele aceita uma expressão, e os padrões
para "0".

s Especifique a saturação no intervalo [-10,10]. Ele aceita uma expressão e o padrão é
"1/XNUMX/XNUMX".

H Especifique o ângulo de matiz como um número de radianos. Ele aceita uma expressão, e os padrões
para "0".

b Especifique o brilho na faixa [-10,10]. Ele aceita uma expressão e o padrão é
"0/XNUMX/XNUMX".

h e H são mutuamente exclusivos e não podem ser especificados ao mesmo tempo.

A b, h, H e s valores de opção são expressões que contêm as seguintes constantes:

n contagem de quadros do quadro de entrada começando em 0

pts data e hora de apresentação do quadro de entrada expresso em unidades de base de tempo

r taxa de quadros do vídeo de entrada, NAN se a taxa de quadros de entrada for desconhecida

t carimbo de data / hora expresso em segundos, NAN se o carimbo de data / hora de entrada for desconhecido

tb base de tempo do vídeo de entrada

Exemplos

· Defina o matiz para 90 graus e a saturação para 1.0:

matiz = h = 90: s = 1

· Mesmo comando, mas expressando o matiz em radianos:

matiz = H = PI / 2: s = 1

· Gire o matiz e faça a saturação oscilar entre 0 e 2 em um período de 1 segundo:

matiz = "H = 2 * PI * t: s = sin (2 * PI * t) +1"

· Aplique um efeito de fade-in de saturação de 3 segundos começando em 0:

matiz = "s = min (t / 3 \, 1)"

A expressão geral de fade-in pode ser escrita como:

matiz = "s = min (0 \, max ((t-INÍCIO) / DURAÇÃO \, 1))"

· Aplique um efeito de fade-out de saturação de 3 segundos começando em 5 segundos:

matiz = "s = máx (0 \, min (1 \, (8-t) / 3))"

A expressão geral de esmaecimento pode ser escrita como:

matiz = "s = máx (0 \, min (1 \, (INÍCIO + DURAÇÃO-t) / DURAÇÃO))"

comandos

Este filtro oferece suporte aos seguintes comandos:

b
s
h
H Modifique o matiz e / ou a saturação e / ou o brilho do vídeo de entrada. O
comando aceita a mesma sintaxe da opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

ideal
Detecta o tipo de entrelaçamento de vídeo.

Este filtro tenta detectar se os quadros de entrada são entrelaçados, progressivos, superiores ou inferiores
campo primeiro. Ele também tentará detectar campos que se repetem entre frames adjacentes
(um sinal de telecine).

A detecção de quadro único considera apenas os quadros imediatamente adjacentes ao classificar cada
quadro. A detecção de múltiplos quadros incorpora o histórico de classificação de
quadros.

O filtro registrará estes valores de metadados:

único.quadro_atual
Tipo de quadro atual detectado usando a detecção de quadro único. Um dos: `` tff '' (top
campo primeiro), `` bff '' (campo inferior primeiro), `` progressivo '' ou `` indeterminado ''

único.tff
Número cumulativo de quadros detectados primeiro como campo superior usando detecção de quadro único.

múltiplo.tff
Número cumulativo de quadros detectados primeiro como campo superior usando quadros múltiplos
detecção.

único.bff
Número cumulativo de quadros detectados como campo inferior primeiro usando quadro único
detecção.

múltiplo.quadro_atual
Tipo de quadro atual detectado usando a detecção de múltiplos quadros. Um dos: `` tff '' (top
campo primeiro), `` bff '' (campo inferior primeiro), `` progressivo '' ou `` indeterminado ''

múltiplo.bff
Número cumulativo de quadros detectados como campo inferior primeiro usando vários quadros
detecção.

único.progressivo
Número cumulativo de quadros detectados como progressivos usando a detecção de quadro único.

múltiplo.progressivo
Número cumulativo de quadros detectados como progressivos usando a detecção de múltiplos quadros.

single.indetermined
Número cumulativo de quadros que não puderam ser classificados usando a detecção de quadro único.

multiple.indetermined
Número cumulativo de quadros que não puderam ser classificados usando vários quadros
detecção.

repeat.current_frame
Qual campo no quadro atual é repetido desde o último. Um de `` nenhum '',
`` superior '' ou `` inferior ''.

repetido.nenhum
Número cumulativo de quadros sem campo repetido.

repetido.para
Número cumulativo de frames com o campo superior repetido do topo do frame anterior
campo.

repetido.bottom
Número cumulativo de quadros com o campo inferior repetido do quadro anterior
campo inferior.

O filtro aceita as seguintes opções:

intl_thres
Defina o limite de entrelaçamento.

prog_thres
Defina o limite progressivo.

repetir_tres
Limite para detecção de campo repetido.

meia vida
Número de frames após o qual a contribuição de um determinado frame para as estatísticas é reduzida à metade
(ou seja, contribui com apenas 0.5 para sua classificação). O padrão de 0 significa que
todos os quadros vistos têm peso total de 1.0 para sempre.

analyse_interlaced_flag
Quando não for 0, o idet usará o número especificado de quadros para determinar se
o sinalizador entrelaçado é preciso, não contará quadros indeterminados. Se a bandeira
for considerada precisa, será usada sem quaisquer cálculos adicionais, se for
considerado impreciso, ele será apagado sem quaisquer cálculos adicionais. Isto
permite inserir o filtro idet como um método computacional baixo para limpar o
bandeira entrelaçada

il
Desintercalar ou intercalar campos.

Este filtro permite processar campos de imagens entrelaçadas sem desentrelaçá-los.
A desintercalação divide o quadro de entrada em 2 campos (as chamadas meias imagens). Linhas ímpares
são movidos para a metade superior da imagem de saída, linhas pares para a metade inferior. Você pode
processe (filtre) independentemente e, em seguida, intercale-os novamente.

O filtro aceita as seguintes opções:

luma_mode, l
modo_croma, c
modo_alfa, a
Valores disponíveis para luma_mode, modo_croma e modo_alfa são:

Nenhum
Fazer nada.

desintercalar, d
Desintercalar campos, colocando um acima do outro.

intercalar, i
Campos intercalados. Reverta o efeito de desintercalação.

O valor padrão é "nenhum".

luma_swap, ls
troca_croma, cs
troca_alfa, as
Troque os campos luma / croma / alfa. Troque as linhas pares e ímpares. O valor padrão é 0.

inflar
Aplique efeito inflar ao vídeo.

Este filtro substitui o pixel pelo local(3x3) média, levando em consideração apenas
valores superiores ao pixel.

Aceita as seguintes opções:

limiar 0
limiar 1
limiar 2
limiar 3
Limita a mudança máxima para cada plano, o padrão é 65535. Se 0, o plano permanecerá
inalterado.

entrelaçar
Filtro de entrelaçamento simples de conteúdos progressivos. Isso intercala superior (ou inferior)
linhas de quadros ímpares com linhas inferiores (ou superiores) de quadros pares, reduzindo pela metade a taxa de quadros
e preservando a altura da imagem.

Novo Quadro Original Original
Quadro 'j' Quadro 'j + 1' (tff)
=======================================
Linha 0 --------------------> Quadro 'j' Linha 0
Linha 1 Linha 1 ----> Quadro 'j + 1' Linha 1
Linha 2 ---------------------> Quadro 'j' Linha 2
Linha 3 Linha 3 ----> Quadro 'j + 1' Linha 3
... ... ...
Novo Quadro + 1 será gerado pelo Quadro 'j + 2' e Quadro 'j + 3' e assim por diante

Ele aceita os seguintes parâmetros opcionais:

digitalização
Isso determina se o quadro entrelaçado é obtido do mesmo (tff - padrão) ou
linhas ímpares (bff) do quadro progressivo.

passagem baixa
Ative (padrão) ou desative o filtro passa-baixo vertical para evitar o entrelaçamento do Twitter
e reduzir os padrões de moiré.

Kerndeint
Desentrelaçar o vídeo de entrada aplicando o desentrelaçamento adaptativo do kernel de Donald Graft. Trabalho em
partes entrelaçadas de um vídeo para produzir quadros progressivos.

A seguir, a descrição dos parâmetros aceitos.

debulhar
Defina o limite que afeta a tolerância do filtro ao determinar se um pixel
linha deve ser processada. Deve ser um número inteiro no intervalo [0,255] e o padrão é 10.
Um valor de 0 resultará na aplicação do processo em todos os pixels.

mapa, Pinte os pixels que excedem o valor limite para branco se definido como 1. O padrão é 0.

ordem
Defina a ordem dos campos. Trocar campos se definido como 1, deixe os campos sozinhos se 0. O padrão é 0.

afiado
Ative a nitidez adicional se definido como 1. O padrão é 0.

duas vezes
Habilite a nitidez de duas vias se definido como 1. O padrão é 0.

Exemplos

· Aplicar valores padrão:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· Ativar nitidez adicional:

kerndeint = sharp = 1

· Pinte pixels processados ​​em branco:

kerndeint = map = 1

correção de lente
Corrija a distorção da lente radial

Este filtro pode ser usado para corrigir a distorção radial que pode resultar do uso de
lentes grande angulares e, assim, retificar novamente a imagem. Para encontrar os parâmetros corretos, pode-se
use as ferramentas disponíveis, por exemplo, como parte do opencv ou simplesmente tentativa e erro. Usar
opencv usa a amostra de calibração (em samples / cpp) das fontes opencv e extrai
os coeficientes k1 e k2 da matriz resultante.

Note que efetivamente o mesmo filtro está disponível nas ferramentas de código aberto Krita e
Digikam do projeto KDE.

Em contraste com o vinheta filtro, que também pode ser usado para compensar erros de lente, este
filtro corrige a distorção da imagem, enquanto vinheta corrige o brilho
distribuição, então você pode querer usar os dois filtros juntos em certos casos, embora você
terá que cuidar do pedido, ou seja, se a vinheta deve ser aplicada antes ou
após a correção da lente.

Opções

O filtro aceita as seguintes opções:

cx Coordenada x relativa do ponto focal da imagem e, portanto, o centro do
distorção. Este valor tem um intervalo [0,1] e é expresso como frações da imagem
largura.

cy Coordenada y relativa do ponto focal da imagem e, portanto, do centro do
distorção. Este valor tem um intervalo [0,1] e é expresso como frações da imagem
altura.

k1 Coeficiente do termo de correção quadrática. 0.5 significa nenhuma correção.

k2 Coeficiente do termo de correção duplo quadrático. 0.5 significa nenhuma correção.

A fórmula que gera a correção é:

r_src = r_tgt * (1+ k1 * (r_tgt / r_0) ^ 2 + k2 * (r_tgt / r_0) ^ 4)

onde r_0 é a metade da diagonal da imagem e r_src e r_tgt são as distâncias do
ponto focal nas imagens de origem e destino, respectivamente.

lut3d
Aplique um LUT 3D a um vídeo de entrada.

O filtro aceita as seguintes opções:

lima
Defina o nome do arquivo 3D LUT.

Formatos atualmente suportados:

3dl Depois dos efeitos

cubo
iridas

dat DaVinci

m3d Pandora

interpor
Selecione o modo de interpolação.

Os valores disponíveis são:

o mais próximo
Use os valores do ponto definido mais próximo.

trilinear
Interpole os valores usando os 8 pontos que definem um cubo.

tetraédrico
Interpolar valores usando um tetraedro.

isso, lutrgb, Lutyuv
Calcule uma tabela de consulta para vincular cada valor de entrada do componente de pixel a um valor de saída,
e aplique-o ao vídeo de entrada.

Lutyuv aplica uma tabela de pesquisa a um vídeo de entrada YUV, lutrgb para um vídeo de entrada RGB.

Esses filtros aceitam os seguintes parâmetros:

c0 definir a primeira expressão do componente de pixel

c1 definir a segunda expressão do componente de pixel

c2 definir a expressão do terceiro componente de pixel

c3 definir a expressão do componente do quarto pixel, corresponde ao componente alfa

r definir a expressão do componente vermelho

g definir a expressão do componente verde

b definir a expressão do componente azul

a expressão do componente alfa

y definir a expressão do componente Y / luminância

u definir a expressão do componente U / Cb

v definir a expressão do componente V / Cr

Cada um deles especifica a expressão a ser usada para calcular a tabela de pesquisa para o
valores de componente de pixel correspondentes.

O componente exato associado a cada um dos c* as opções dependem do formato de entrada.

A lut filtro requer formatos de pixel YUV ou RGB na entrada, lutrgb requer RGB
formatos de pixel na entrada e Lutyuv requer YUV.

As expressões podem conter as seguintes constantes e funções:

w
h A largura e altura de entrada.

onda O valor de entrada para o componente de pixel.

valor de clipe
O valor de entrada, reduzido ao mínimo-valor máximo alcance.

valor máximo
O valor máximo para o componente de pixel.

mínimo
O valor mínimo para o componente de pixel.

negativo
O valor negado para o valor do componente de pixel, cortado ao mínimo-valor máximo alcance;
corresponde à expressão "maxval-clipval + minval".

clipe (val)
O valor calculado em onda, preso ao mínimo-valor máximo alcance.

gamaval (gama)
O valor de correção de gama calculado do valor do componente de pixel, cortado ao
mínimo-valor máximo alcance. Corresponde à expressão
"pow ((clipval-minval) / (maxval-minval) \,gama) * (maxval-minval) + minval "

Todas as expressões são padronizadas para "val".

Exemplos

· Negar entrada de vídeo:

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"

O acima é o mesmo que:

lutrgb = "r = negval: g = negval: b = negval"
lutyuv = "y = negval: u = negval: v = negval"

· Negar luminância:

lutyuv = y = negval

· Remova os componentes croma, transformando o vídeo em uma imagem em tons de cinza:

lutyuv = "u = 128: v = 128"

· Aplique um efeito de queima de luma:

lutyuv = "y = 2 * val"

· Remova os componentes verdes e azuis:

lutrgb = "g = 0: b = 0"

· Defina um valor de canal alfa constante na entrada:

formato = rgba, lutrgb = a = "maxval-minval / 2"

· Corrija a gama de luminância por um fator de 0.5:

lutyuv = y = gamaval (0.5)

· Descarte os pedaços menos significativos de luma:

lutyuv = y = 'bitand (val, 128 + 64 + 32)'

planos de mesclagem
Mesclar componentes do canal de cores de vários fluxos de vídeo.

O filtro aceita até 4 fluxos de entrada e mescla planos de entrada selecionados para a saída
vídeo.

Este filtro aceita as seguintes opções:

mapeamento
Defina o mapeamento do plano de entrada para saída. O padrão é 0.

Os mapeamentos são especificados como bitmap. Deve ser especificado como um número hexadecimal
na forma 0xAa [Bb [Cc [Dd]]]. 'Aa' descreve o mapeamento para o primeiro plano do
fluxo de saída. 'A' define o número do fluxo de entrada a ser usado (de 0 a 3), e 'a'
o número do plano da entrada correspondente a ser usada (de 0 a 3). O resto do
mapeamentos é semelhante, 'Bb' descreve o mapeamento para o segundo plano do fluxo de saída,
'Cc' descreve o mapeamento para o terceiro plano do fluxo de saída e 'Dd' descreve o
mapeamento para o quarto plano do fluxo de saída.

formato
Defina o formato do pixel de saída. O padrão é "yuva444p".

Exemplos

· Combine três streams de vídeo cinza da mesma largura e altura em um único stream de vídeo:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· Mesclar o primeiro stream yuv1p e o segundo stream de vídeo cinza no stream de vídeo yuva444p:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Troque o plano Y e A no fluxo yuva444p:

format = yuva444p, mergeplanes = 0x03010200: yuva444p

· Trocar o plano U e V no fluxo yuv420p:

formato = yuv420p, mergeplanes = 0x000201: yuv420p

· Lançar um clipe rgb24 para yuv444p:

format = rgb24, mergeplanes = 0x000102: yuv444p

Mcdeint
Aplique desentrelaçamento de compensação de movimento.

Ele precisa de um campo por quadro como entrada e deve, portanto, ser usado junto com yadif = 1/3 ou
equivalente.

Este filtro aceita as seguintes opções:

modo
Defina o modo de desentrelaçamento.

Ele aceita um dos seguintes valores:

rápido
média
lento
usar estimativa de movimento iterativa

extra_lento
como lento, mas use vários quadros de referência.

O valor padrão é rápido.

paridade
Defina a paridade do campo da imagem assumida para o vídeo de entrada. Deve ser um dos
seguintes valores:

0, tff
assumir o campo superior primeiro

1, bff
assumir o campo inferior primeiro

O valor padrão é bff.

qp Defina o parâmetro de quantização por bloco (QP) usado pelo codificador interno.

Valores mais altos devem resultar em um campo de vetor de movimento mais suave, mas menos ideal
vetores individuais. O valor padrão é 1.

mpdecimar
Solte os quadros que não diferem muito do quadro anterior para reduzir o quadro
taxa.

O uso principal deste filtro é para codificação de taxa de bits muito baixa (por exemplo, streaming por discagem
modem), mas poderia, em teoria, ser usado para consertar filmes que foram telecinados
incorretamente.

Segue uma descrição das opções aceitas.

max Defina o número máximo de quadros consecutivos que podem ser descartados (se positivo), ou
o intervalo mínimo entre os quadros perdidos (se negativo). Se o valor for 0, o
o quadro é eliminado independentemente do número de quadros eliminados sequencialmente anteriores.

O valor padrão é 0.

hi
lo
frac
Defina os valores de limite de queda.

Valores para hi e lo são para blocos de 8x8 pixels e representam o valor real do pixel
diferenças, então um limite de 64 corresponde a 1 unidade de diferença para cada pixel,
ou o mesmo se espalhou de forma diferente ao longo do quarteirão.

Um quadro é um candidato a ser descartado se nenhum bloco 8x8 diferir em mais do que um limite
of hi, e se não mais do que frac blocos (1 significando a imagem inteira) diferem em mais de
um limiar de lo.

Valor padrão para hi é 64 * 12, valor padrão para lo é 64 * 5, e o valor padrão para
frac é 0.33.

negar
Negar vídeo de entrada.

Ele aceita um inteiro na entrada; se diferente de zero, ele nega o componente alfa (se disponível).
O valor padrão na entrada é 0.

noformato
Força o libavfilter a não usar nenhum dos formatos de pixel especificados para a entrada do próximo
filtro.

Ele aceita os seguintes parâmetros:

pix_fmts
Uma lista separada por '|' de nomes de formato de pixel, como apix_fmts = yuv420p | monow | rgb24 ".

Exemplos

· Força libavfilter a usar um formato diferente de yuv420p para a entrada do vflip
filtro:

noformat = pix_fmts = yuv420p, vflip

· Converta o vídeo de entrada para qualquer um dos formatos não contidos na lista:

noformat = yuv420p | yuv444p | yuv410p

barulho
Adicione ruído no quadro de entrada de vídeo.

O filtro aceita as seguintes opções:

plantas polispermas
c0_seed
c1_seed
c2_seed
c3_seed
Defina a semente de ruído para um componente de pixel específico ou todos os componentes de pixel no caso de
plantas polispermas. O valor padrão é 123457.

toda_força, todos
c0_força, c0s
c1_força, c1s
c2_força, c2s
c3_força, c3s
Defina a intensidade do ruído para um componente de pixel específico ou todos os componentes de pixel no caso
força total. O valor padrão é 0. O intervalo permitido é [0, 100].

todas_flags, tudo
c0_flags, c0f
c1_flags, c1f
c2_flags, c2f
c3_flags, c3f
Definir sinalizadores de componente de pixel ou definir sinalizadores para todos os componentes se todas_flags. Disponível
os valores para sinalizadores de componentes são:

a ruído temporal médio (mais suave)

p misture ruído aleatório com um padrão (semi) regular

t ruído temporal (o padrão de ruído muda entre os quadros)

u ruído uniforme (gaussiano de outra forma)

Exemplos

Adicione ruído temporal e uniforme ao vídeo de entrada:

ruído = alls = 20: allf = t + u

nulo
Passe a fonte de vídeo inalterada para a saída.

ocv
Aplique uma transformação de vídeo usando libopencv.

Para habilitar este filtro, instale a biblioteca libopencv e cabeçalhos e configure o FFmpeg com
"--enable-libopencv".

Ele aceita os seguintes parâmetros:

nome_do_filtro
O nome do filtro libopencv a ser aplicado.

filtros_params
Os parâmetros a serem transmitidos ao filtro libopencv. Se não for especificado, os valores padrão
São assumidos.

Consulte a documentação oficial da libopencv para informações mais precisas:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

Vários filtros libopencv são suportados; veja as seguintes subseções.

dilata

Dilate uma imagem usando um elemento estruturante específico. Corresponde ao libopencv
função "cvDilate".

Aceita os parâmetros: struct_el|nb_iterations.

struct_el representa um elemento estruturante e tem a sintaxe:
colsxlinhas+âncora_xxâncora_y/forma

cols e linhas representam o número de colunas e linhas do elemento estruturante,
âncora_x e âncora_y o ponto de ancoragem, e forma a forma do elemento estruturante.
forma deve ser "rect", "cross", "ellipse" ou "custom".

Se o valor para forma é "personalizado", deve ser seguido por uma string do formulário
"=nome do arquivo". O arquivo com o nome nome do arquivo é assumido que representa uma imagem binária, com cada
caractere imprimível correspondente a um pixel brilhante. Quando um costume forma é usado, cols e
linhas são ignorados, o número ou colunas e linhas do arquivo lido são assumidos em seu lugar.

O valor padrão para struct_el é "3x3 + 0x0 / rect".

nb_iterations especifica o número de vezes que a transformação é aplicada à imagem, e
o padrão é 1.

Alguns exemplos:

# Use os valores padrão
ocv = dilate

# Dilate usando um elemento estruturante com uma cruz 5x5, iterando duas vezes
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# Leia a forma do arquivo diamond.shape, iterando duas vezes.
# O arquivo diamond.shape pode conter um padrão de caracteres como este
#*
#***
# *****
#***
#*
# As colunas e linhas especificadas são ignoradas
# mas as coordenadas do ponto de ancoragem não são
ocv=dilate:0x0+2x2/custom=diamond.shape|2

corroer

Desgaste uma imagem usando um elemento estruturante específico. Corresponde ao libopencv
função "cvErode".

Aceita os parâmetros: struct_el:nb_iterations, com a mesma sintaxe e semântica que
que o dilata filtro.

Liso

Suavize a entrada de vídeo.

O filtro assume os seguintes parâmetros: tipo|param1|param2|param3|param4.

tipo é o tipo de filtro suave a ser aplicado e deve ser um dos seguintes valores:
"blur", "blur_no_scale", "median", "gaussian" ou "bilateral". o valor padrão é
"gaussiana".

O significado de param1, param2, param3 e param4 dependem do tipo suave. param1 e
param2 aceita valores inteiros positivos ou 0. param3 e param4 aceitar ponto flutuante
valores.

O valor padrão para param1 é 3. O valor padrão para os outros parâmetros é 0.

Esses parâmetros correspondem aos parâmetros atribuídos à função libopencv
"cvSmooth".

sobreposição
Sobreponha um vídeo em cima do outro.

Leva duas entradas e tem uma saída. A primeira entrada é o vídeo "principal" no qual o
a segunda entrada é sobreposta.

Ele aceita os seguintes parâmetros:

Segue uma descrição das opções aceitas.

x
y Defina a expressão para as coordenadas xey do vídeo sobreposto no principal
vídeo. O valor padrão é "0" para ambas as expressões. Caso a expressão seja inválida,
é definido com um valor enorme (o que significa que a sobreposição não será exibida dentro do
área visível de saída).

eof_action
A ação a ser executada quando EOF é encontrado na entrada secundária; aceita um de
os seguintes valores:

repetir
Repita o último quadro (o padrão).

fim de tudo
Termine ambas as transmissões.

passar
Passe a entrada principal.

avaliação
Definir quando as expressões para x e y são avaliados.

Ele aceita os seguintes valores:

o init
avalia as expressões apenas uma vez durante a inicialização do filtro ou quando um comando
é processado

quadro
avaliar expressões para cada quadro de entrada

O valor padrão é quadro.

menor
Se definido como 1, força o término da saída quando a entrada mais curta terminar. Padrão
o valor é 0.

formato
Defina o formato do vídeo de saída.

Ele aceita os seguintes valores:

yuv420
forçar saída YUV420

yuv422
forçar saída YUV422

yuv444
forçar saída YUV444

rgb forçar saída RGB

O valor padrão é yuv420.

rgb (descontinuada)
Se definido como 1, força o filtro a aceitar entradas no espaço de cores RGB. Valor padrão
é 0. Esta opção está obsoleta, use formato ao invés.

repetir o último
Se definido como 1, force o filtro a desenhar o último quadro de sobreposição sobre a entrada principal até
o fim do fluxo. Um valor de 0 desativa esse comportamento. O valor padrão é 1.

A x e y expressões podem conter os seguintes parâmetros.

principal_w, W
principal_h, H
A largura e altura da entrada principal.

sobreposição_w, w
sobreposição_h, h
A largura e altura de entrada da sobreposição.

x
y Os valores calculados para x e y. Eles são avaliados para cada novo quadro.

hsub
vssub
valores de subamostra de croma horizontal e vertical do formato de saída. Por exemplo para
o formato de pixel "yuv422p" hsub é 2 e vssub é 1.

n o número do quadro de entrada, começando em 0

postar a posição no arquivo do quadro de entrada, NAN se desconhecido

t O carimbo de data / hora, expresso em segundos. É NAN se o carimbo de data / hora de entrada for desconhecido.

Observe que o n, postar, t variáveis ​​estão disponíveis apenas quando a avaliação é feita para quadro,
e avaliará para NAN quando avaliação está definido para o init.

Esteja ciente de que os quadros são tirados de cada vídeo de entrada na ordem do carimbo de data / hora, portanto, se o seu
os carimbos de data / hora iniciais são diferentes, é uma boa ideia passar as duas entradas por meio de um
setpts = PTS-STARTPTS filtro para que comecem no mesmo carimbo de data / hora zero, como no exemplo
para o filme filtro faz.

Você pode encadear mais sobreposições, mas deve testar a eficiência dessa abordagem.

comandos

Este filtro oferece suporte aos seguintes comandos:

x
y Modifique xey da entrada de sobreposição. O comando aceita a mesma sintaxe do
opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

Exemplos

· Desenhe a sobreposição em 10 pixels a partir do canto inferior direito do vídeo principal:

overlay = main_w-overlay_w-10: main_h-overlay_h-10

Usando opções nomeadas, o exemplo acima se torna:

overlay = x = main_w-overlay_w-10: y = main_h-overlay_h-10

· Insira um logotipo PNG transparente no canto inferior esquerdo da entrada, usando o ffmpeg
ferramenta com a opção "-filter_complex":

ffmpeg -i input -i logo -filter_complex 'overlay = 10: main_h-overlay_h-10' output

· Insira 2 logotipos PNG transparentes diferentes (segundo logotipo no canto inferior direito) usando
que o ffmpeg ferramenta:

ffmpeg -i input -i logo1 -i logo2 -filter_complex 'overlay = x = 10: y = Hh-10, overlay = x = Ww-10: y = Hh-10' output

· Adicione uma camada de cor transparente no topo do vídeo principal; "WxH" deve especificar o tamanho de
a entrada principal para o filtro de sobreposição:

[email protegido]:tamanho=LxA [acima]; [in][over] sobreposição [out]

· Reproduza um vídeo original e uma versão filtrada (aqui com o filtro deshake) lado a lado
lado usando o ffplay ferramenta:

ffplay input.avi -vf 'split [a] [b]; [a] pad = iw * 2: ih [src]; [b] deshake [filt]; [src] [filt] overlay = w '

O comando acima é igual a:

ffplay input.avi -vf 'split [b], pad = iw * 2 [src], [b] deshake, [src] overlay = w'

· Faça uma sobreposição deslizante aparecendo da esquerda para a parte superior direita da tela
começando desde o tempo 2:

sobreposição = x = 'if (gte (t, 2), -w + (t-2) * 20, NAN)': y = 0

· Componha a saída colocando dois vídeos de entrada lado a lado:

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc = size = 200x100 [background];
[0: v] ajustes = PTS-STARTPTS, escala = 100x100 [esquerda];
[1: v] ajustes = PTS-STARTPTS, escala = 100x100 [direita];
[fundo] [esquerda] sobreposição = mais curto = 1 [fundo + esquerda];
[fundo + esquerda] [direita] sobreposição = mais curto = 1: x = 100 [esquerda + direita]
"

· Mascare 10-20 segundos de um vídeo aplicando o filtro delogo a uma seção

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]'
mascarado.avi

· Encadear várias sobreposições em cascata:

nullsrc = s = 200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb = r = 0, [bg] sobreposição = 0: 0 [mid0];
[in1] lutrgb = g = 0, [mid0] overlay = 100: 0 [mid1];
[in2] lutrgb = b = 0, [mid1] overlay = 0: 100 [mid2];
[in3] nulo, [mid2] sobreposição = 100: 100 [out0]

Owdenoise
Aplique o denoiser Wavelet Overcomplete.

O filtro aceita as seguintes opções:

profundidade
Defina a profundidade.

Valores de profundidade maiores irão diminuir o ruído dos componentes de frequência mais baixa, mas diminuirão
filtragem.

Deve ser um int no intervalo de 8 a 16, o padrão é 8.

luma_força, ls
Defina a força luma.

Deve ser um valor duplo no intervalo de 0-1000, o padrão é 1.0.

intensidade_croma, cs
Defina a intensidade do croma.

Deve ser um valor duplo no intervalo de 0-1000, o padrão é 1.0.

caminho
Adicione preenchimentos à imagem de entrada e coloque a entrada original no x, y
coordenadas.

Ele aceita os seguintes parâmetros:

largura, w
altura, h
Especifique uma expressão para o tamanho da imagem de saída com os preenchimentos adicionados. Se o
valor para largura or altura é 0, o tamanho de entrada correspondente é usado para a saída.

A largura expressão pode fazer referência ao valor definido pelo altura expressão e vice
vice-versa.

O valor padrão de largura e altura é 0.

x
y Especifique os deslocamentos para colocar a imagem de entrada dentro da área preenchida, com respeito
para a borda superior / esquerda da imagem de saída.

A x expressão pode fazer referência ao valor definido pelo y expressão e vice-versa.

O valor padrão de x e y é 0.

cor
Especifique a cor da área preenchida. Para a sintaxe desta opção, verifique a opção "Cor"
seção no manual ffmpeg-utils.

O valor padrão de cor é preto".

O valor para o largura, altura, x e y opções são expressões que contêm o seguinte
constantes:

em_w
em_h
A largura e altura do vídeo de entrada.

iw
ih Estes são os mesmos que em_w e em_h.

fora_w
fora_h
A largura e altura de saída (o tamanho da área preenchida), conforme especificado pelo largura
e altura expressões.

ow
oh Estes são os mesmos que fora_w e fora_h.

x
y Os deslocamentos xey conforme especificado pelo x e y expressões, ou NAN se ainda não
Especificadas.

a mesma iw / ih

sar proporção de aspecto da amostra de entrada

mas relação de aspecto de exibição de entrada, é o mesmo que (iw / ih) * sar

hsub
vssub
Os valores da subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

Exemplos

· Adicione preenchimentos com a cor "violeta" ao vídeo de entrada. O tamanho do vídeo de saída é
640x480, e o canto superior esquerdo do vídeo de entrada é colocado na coluna 0, linha 40

pad = 640: 480: 0: 40: violeta

O exemplo acima é equivalente ao seguinte comando:

pad = largura = 640: altura = 480: x = 0: y = 40: cor = violeta

· Preencher a entrada para obter uma saída com dimensões aumentadas em 3/2 e colocar a entrada
vídeo no centro da área acolchoada:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· Preencher a entrada para obter uma saída quadrada com tamanho igual ao valor máximo entre
largura e altura de entrada e coloque o vídeo de entrada no centro da área preenchida:

pad = "max (iw \, ih): ow: (ow-iw) / 2: (oh-ih) / 2"

· Preencher a entrada para obter uma relação w / h final de 16: 9:

pad = "ih * 16/9: ih: (ow-iw) / 2: (oh-ih) / 2"

· No caso de vídeo anamórfico, a fim de definir o aspecto de exibição de saída corretamente,
é necessário usar sar na expressão, de acordo com a relação:

(ih * X / ih) * sar = saída_dar
X = saída_dar / sar

Assim, o exemplo anterior precisa ser modificado para:

pad = "ih * 16/9 / sar: ih: (ow-iw) / 2: (oh-ih) / 2"

· Dobre o tamanho da saída e coloque o vídeo de entrada no canto inferior direito do
área preenchida de saída:

pad = "2 * iw: 2 * ih: ow-iw: oh-ih"

Palettegen
Gere uma paleta para um fluxo de vídeo completo.

Aceita as seguintes opções:

max_colors
Defina o número máximo de cores para quantizar na paleta. Nota: a paleta irá
ainda contém 256 cores; as entradas da paleta não utilizadas ficarão pretas.

reserva_transparente
Crie uma paleta de no máximo 255 cores e reserve a última para transparência.
Reservar a cor da transparência é útil para a otimização de GIF. Se não for definido, o
o máximo de cores na paleta será de 256. Você provavelmente deseja desativar esta opção
para uma imagem autônoma. Definido por padrão.

stats_mode
Defina o modo de estatísticas.

Ele aceita os seguintes valores:

cheio
Calcule histogramas de quadro inteiro.

diff
Calcule histogramas apenas para a parte que difere do quadro anterior. Isso pode
ser relevante para dar mais importância à parte móvel de sua entrada se o
o fundo é estático.

O valor padrão é cheio.

O filtro também exporta os metadados do quadro "lavfi.color_quant_ratio" ("nb_color_in /
nb_color_out ") que você pode usar para avaliar o grau de quantização de cor do
paleta. Esta informação também é visível em info nível de registro.

Exemplos

· Gerar uma paleta representativa de um determinado vídeo usando ffmpeg:

ffmpeg -i input.mkv -vf paletagen paleta.png

paleta
Use uma paleta para reduzir a resolução de um fluxo de vídeo de entrada.

O filtro tem duas entradas: um stream de vídeo e uma paleta. A paleta deve ser 256
imagem de pixels.

Aceita as seguintes opções:

estremecimento
Selecione o modo de pontilhamento. Os algoritmos disponíveis são:

Bayer
Dithering bayer 8x8 ordenado (determinístico)

Heckbert
Dithering conforme definido por Paul Heckbert em 1982 (difusão de erro simples). Observação:
esse pontilhamento às vezes é considerado "errado" e é incluído como uma referência.

floyd_steinberg
Dithering de Floyd e Steingberg (difusão de erro)

sierra2
Frankie Sierra dithering v2 (difusão de erro)

serra2_4a
Frankie Sierra dithering v2 "Lite" (difusão de erro)

O padrão é serra2_4a.

escala_bayer
Quando Bayer o pontilhamento é selecionado, esta opção define a escala do padrão (como
se o padrão hachurado é visível). Um valor baixo significa padrão mais visível para
menos faixas e um valor mais alto significam um padrão menos visível ao custo de mais faixas.

A opção deve ser um valor inteiro no intervalo [0,5]. O padrão é 2.

modo_diff
Se definido, defina a zona a processar

retângulo
Apenas o retângulo em mudança será reprocessado. Isso é semelhante ao GIF
mecanismo de compressão de recorte / deslocamento. Esta opção pode ser útil para velocidade se
apenas uma parte da imagem está mudando e tem casos de uso, como limitar o escopo
da difusão do erro estremecimento ao retângulo que delimita a cena em movimento (
leva a uma saída mais determinística se a cena não mudar muito, e como um
resultam em menos ruído de movimento e melhor compactação de GIF).

O padrão é Nenhum.

Exemplos

· Use uma paleta (gerada por exemplo com Palettegen) para codificar um GIF usando ffmpeg:

ffmpeg -i input.mkv -i paleta.png -lavfi paletause output.gif

perspectiva
Perspectiva correta do vídeo não gravado perpendicular à tela.

Segue uma descrição dos parâmetros aceitos.

x0
y0
x1
y1
x2
y2
x3
y3 Definir a expressão de coordenadas para superior esquerdo, superior direito, inferior esquerdo e inferior direito
cantos. Os valores padrão são "0: 0: W: 0: 0: H: W: H" com os quais a perspectiva permanecerá
inalterado. Se a opção "sentido" for definida como "fonte", os pontos especificados
ser enviado para os cantos do destino. Se a opção "sentido" estiver definida para
"destino", então os cantos da origem serão enviados para o
coordenadas.

As expressões podem usar as seguintes variáveis:

W
H a largura e a altura do quadro de vídeo.

interpolação
Defina a interpolação para correção de perspectiva.

Ele aceita os seguintes valores:

linear
cúbico

O valor padrão é linear.

sentido
Defina a interpretação das opções de coordenadas.

Ele aceita os seguintes valores:

0, fonte
Envie o ponto na fonte especificada pelas coordenadas fornecidas para os cantos do
destino.

1, destino
Envie os cantos da fonte para o ponto no destino especificado pelo
coordenadas dadas.

O valor padrão é fonte.

fase
Atrase o vídeo entrelaçado em um campo, para que a ordem dos campos mude.

O uso pretendido é consertar filmes PAL que foram capturados com o campo oposto
pedido para a transferência de filme para vídeo.

Segue uma descrição dos parâmetros aceitos.

modo
Defina o modo de fase.

Ele aceita os seguintes valores:

t Capture a ordem do campo com o topo primeiro, transfira com o fundo primeiro. O filtro atrasará o
campo inferior.

b Capture a ordem do campo primeiro com a parte inferior, transfira com a parte superior primeiro. O filtro atrasará o topo
campo.

p Capture e transfira com a mesma ordem de campo. Este modo só existe para o
documentação das outras opções para se referir, mas se você realmente selecioná-lo, o
o filtro não fará nada fielmente.

a Ordem de captura de campo determinada automaticamente por sinalizadores de campo, transferência ao lado.
O filtro seleciona entre t e b modos quadro a quadro usando sinalizadores de campo. Se
nenhuma informação de campo está disponível, então isso funciona exatamente como u.

u Capture desconhecido ou variável, transfira ao lado. O filtro seleciona entre t e b com um
quadro a quadro, analisando as imagens e selecionando a alternativa que
produz a melhor correspondência entre os campos.

T Capture primeiro, transferência desconhecida ou variável. O filtro seleciona entre t e p
usando análise de imagem.

B Capture a parte inferior primeiro, transfira desconhecida ou variável. O filtro seleciona entre b e p
usando análise de imagem.

A Captura determinada por sinalizadores de campo, transferência desconhecida ou variável. Seleção de filtro
entre t, b e p usando sinalizadores de campo e análise de imagem. Se nenhuma informação de campo for
disponível, então funciona como U. Este é o modo padrão.

U Captura e transferência desconhecidas ou variáveis. O filtro seleciona entre t, b e p
usando apenas análise de imagem.

teste de pixdesc
Filtro de teste do descritor de formato de pixel, útil principalmente para testes internos. O vídeo de saída
deve ser igual ao vídeo de entrada.

Por exemplo:

format = monow, pixdesctest

pode ser usado para testar a definição do descritor de formato de pixel monocromático.

pp
Habilite a cadeia especificada de subfiltros de pós-processamento usando libpostproc. Esta biblioteca
deve ser selecionado automaticamente com uma compilação GPL ("--enable-gpl"). Os subfiltros devem ser
separados por '/' e podem ser desativados acrescentando um '-' ao início. Cada subfiltro e algumas opções
têm um nome curto e um nome longo que podem ser usados ​​alternadamente, ou seja, dr / dering são os
mesmo.

Os filtros aceitam as seguintes opções:

subfiltros
Definir string de subfiltros de pós-processamento.

Todos os subfiltros compartilham opções comuns para determinar seu escopo:

a / autoq
Respeite os comandos de qualidade para este subfiltro.

c / cromo
Faça a filtragem de crominância também (padrão).

y / nochrom
Faça a filtragem de luminância apenas (sem crominância).

n / noluma
Faça apenas a filtragem de crominância (sem luminância).

Essas opções podem ser anexadas após o nome do subfiltro, separados por um '|'.

Os subfiltros disponíveis são:

hb / hdeblock [| diferença [| planicidade]]
Filtro de desbloqueio horizontal

diferença
Fator de diferença onde valores mais altos significam mais desbloqueio (padrão: 32).

planicidade
Limite de planura onde valores mais baixos significam mais desbloqueio (padrão: 39).

vb / vdeblock [| diferença [| nivelamento]]
Filtro de desbloqueio vertical

diferença
Fator de diferença onde valores mais altos significam mais desbloqueio (padrão: 32).

planicidade
Limite de planura onde valores mais baixos significam mais desbloqueio (padrão: 39).

ha / hadeblock [| diferença [| planura]]
Filtro preciso de desbloqueio horizontal

diferença
Fator de diferença onde valores mais altos significam mais desbloqueio (padrão: 32).

planicidade
Limite de planura onde valores mais baixos significam mais desbloqueio (padrão: 39).

va / vadeblock [| diferença [| planicidade]]
Filtro preciso de desbloqueio vertical

diferença
Fator de diferença onde valores mais altos significam mais desbloqueio (padrão: 32).

planicidade
Limite de planura onde valores mais baixos significam mais desbloqueio (padrão: 39).

Os filtros de desbloqueio horizontal e vertical compartilham os valores de diferença e nivelamento, portanto
você não pode definir limites horizontais e verticais diferentes.

h1 / x1hdeblock
Filtro experimental de desbloqueio horizontal

v1 / x1vdeblock
Filtro experimental de desbloqueio vertical

dr / dering
Filtro Deringing

tn / tmpnoise [| limiar1 [| limiar2 [| limiar3]]], temporal barulho redutor
limiar 1
maior -> filtragem mais forte

limiar 2
maior -> filtragem mais forte

limiar 3
maior -> filtragem mais forte

al / autolevels [: f / fullyrange], automático brilho / contraste correção
f / fullyrange
Estique a luminância para "0-255".

lb / linblenddeint
Filtro de desentrelaçamento de mistura linear que desentrelaça o bloco fornecido ao filtrar todos
linhas com um filtro "(1 2 1)".

li / linipoldeint
Filtro de desentrelaçamento de interpolação linear que desentrelaça o bloco dado por
interpolando linearmente a cada segunda linha.

ci / cubicipoldeint
O filtro de desentrelaçamento de interpolação cúbica desentrelaça o bloco dado cubicamente
interpolando a cada segunda linha.

md / mediandeint
Filtro de desentrelaçamento de mediana que desentrelaça o bloco dado aplicando uma mediana
filtrar a cada segunda linha.

fd / ffmpegdeint
Filtro de desentrelaçamento FFmpeg que desentrelaça o bloco dado filtrando cada
segunda linha com um filtro "(-1 4 2 4 -1)".

l5 / lowpass5
Filtro de desentrelaçamento FIR de passagem baixa aplicado verticalmente que desentrelaça o bloco dado
filtrando todas as linhas com um filtro "(-1 2 6 2 -1)".

fq / forceQuant [| quantizador]
Substitui a tabela de quantizador da entrada pelo quantizador constante que você especificar.

quantizador
Quantizer para usar

de / default
Combinação de filtro pp padrão ("hb | a, vb | a, dr | a")

fa / rápido
Combinação de filtro de pp rápido ("h1 | a, v1 | a, dr | a")

ac Combinação de filtro pp de alta qualidade ("ha | a | 128 | 7, va | a, dr | a")

Exemplos

· Aplicar desbloqueio horizontal e vertical, deringing e brilho / contraste automático:

pp = hb / vb / dr / al

· Aplicar filtros padrão sem correção de brilho / contraste:

pp = de / -al

· Aplicar filtros padrão e denoiser temporal:

pp = default / tmpnoise | 1 | 2 | 3

· Aplicar desbloqueio apenas na luminância e ligar ou desligar o desbloqueio vertical
automaticamente dependendo do tempo de CPU disponível:

pp = hb | y / vb | a

pp7
Aplicar filtro de pós-processamento 7. É uma variante do spp filtro, semelhante a spp = 6 com 7
ponto DCT, onde apenas a amostra central é usada após o IDCT.

O filtro aceita as seguintes opções:

qp Força um parâmetro de quantização constante. Ele aceita um número inteiro no intervalo de 0 a 63. Se
não definido, o filtro usará o QP do fluxo de vídeo (se disponível).

modo
Defina o modo de limite. Os modos disponíveis são:

difícil
Definir limite rígido.

macio
Defina o limite suave (melhor efeito de remoção de toque, mas provavelmente mais embaçado).

média
Defina o limite médio (bons resultados, padrão).

psnr
Obtenha o PSNR (Sinal de Pico para Relação de Ruído) médio, máximo e mínimo entre dois
vídeos de entrada.

Este filtro leva na entrada dois vídeos de entrada, a primeira entrada é considerada o "principal"
fonte e é passado inalterado para a saída. A segunda entrada é usada como uma "referência"
vídeo para computar o PSNR.

Ambas as entradas de vídeo devem ter a mesma resolução e formato de pixel para este filtro funcionar
corretamente. Além disso, assume que ambas as entradas têm o mesmo número de quadros, que são
comparados um por um.

O PSNR médio obtido é impresso através do sistema de registro.

O filtro armazena o MSE acumulado (erro quadrático médio) de cada quadro, e no final
do processamento é calculada a média de todos os quadros igualmente, e a seguinte fórmula é
aplicado para obter o PSNR:

PSNR = 10 * log10 (MAX ^ 2 / MSE)

Onde MAX é a média dos valores máximos de cada componente da imagem.

A seguir, a descrição dos parâmetros aceitos.

arquivo_estatísticas, f
Se especificado, o filtro usará o arquivo nomeado para salvar o PSNR de cada indivíduo
quadro, Armação.

O arquivo impresso se arquivo_estatísticas é selecionado, contém uma sequência de pares de chave / valor do
formulário chave:valor para cada par de frames comparados.

Segue uma descrição de cada parâmetro mostrado:

n número sequencial do quadro de entrada, começando em 1

mse_avg
Erro quadrático médio diferença média pixel a pixel dos quadros comparados, em média
sobre todos os componentes da imagem.

mse_y, mse_u, mse_v, mse_r, ms_g, ms_g, mse_a
Erro quadrático médio diferença média pixel a pixel dos quadros comparados para o
componente especificado pelo sufixo.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
Sinal de pico para proporção de ruído dos quadros comparados para o componente especificado pelo
sufixo.

Por exemplo:

filme = ref_movie.mpg, setpts = PTS-STARTPTS [principal];
[main] [ref] psnr = "stats_file = stats.log" [out]

Neste exemplo, o arquivo de entrada sendo processado é comparado com o arquivo de referência
ref_movie.mpg. O PSNR de cada quadro individual é armazenado em estatísticas.log.

puxar para cima
Filtro reverso pulldown (telecine inverso), capaz de lidar com hard-telecine misturado,
24000/1001 fps progressivo e conteúdo progressivo de 30000/1001 fps.

O filtro pullup é projetado para tirar vantagem do contexto futuro ao tomar suas decisões.
Este filtro não tem estado no sentido de que não se fixa em um padrão a seguir, mas
em vez disso, busca os seguintes campos a fim de identificar correspondências e reconstruir
quadros progressivos.

Para produzir conteúdo com uma taxa de quadros uniforme, insira o filtro fps após o pullup, use
"fps = 24000/1001" se a taxa de quadros de entrada for 29.97 fps, "fps = 24" para 30 fps e o (raro)
entrada de 25 fps telecinada.

O filtro aceita as seguintes opções:

jl
jr
jt
jb Essas opções definem a quantidade de "lixo" a ser ignorada à esquerda, direita, superior e inferior
da imagem, respectivamente. Esquerda e direita estão em unidades de 8 pixels, enquanto superior e
a parte inferior está em unidades de 2 linhas. O padrão é 8 pixels de cada lado.

sb Defina as quebras estritas. Definir esta opção para 1 reduzirá as chances de filtro
gerando um quadro ocasional incompatível, mas também pode causar um número excessivo
de quadros a serem ignorados durante as sequências de alto movimento. Por outro lado, definindo-o como -1
tornará os campos de correspondência de filtro mais facilmente. Isso pode ajudar no processamento do vídeo onde
há um leve embaçamento entre os campos, mas também pode causar o entrelaçamento
quadros na saída. O valor padrão é 0.

mp Defina o plano métrico a ser usado. Ele aceita os seguintes valores:

l Use avião luma.

u Use o plano chroma blue.

v Use o plano vermelho croma.

Esta opção pode ser definida para usar o plano de croma em vez do plano luma padrão para fazer
cálculos do filtro. Isso pode melhorar a precisão em material de origem muito limpo, mas
mais provavelmente irá diminuir a precisão, especialmente se houver ruído cromático (arco-íris
efeito) ou qualquer vídeo em tons de cinza. O principal objetivo da configuração mp para um plano de croma é
para reduzir a carga da CPU e tornar o pullup utilizável em tempo real em máquinas lentas.

Para melhores resultados (sem quadros duplicados no arquivo de saída) é necessário alterar
a taxa de quadros de saída. Por exemplo, para inverter a entrada NTSC do telecine:

ffmpeg -i input -vf pullup -r 24000/1001...

qp
Altere os parâmetros de quantização de vídeo (QP).

O filtro aceita a seguinte opção:

qp Defina a expressão para o parâmetro de quantização.

A expressão é avaliada por meio da API eval e pode conter, entre outros, o
seguintes constantes:

conhecido
1 se o índice não for 129, 0 caso contrário.

qp Índice sequencial começando de -129 a 128.

Exemplos

· Algumas equações como:

qp = 2 + 2 * sin (PI * qp)

acaso
Descarregue os quadros de vídeo do cache interno de quadros em uma ordem aleatória. Sem moldura é
descartado. Inspirado por frei0r filtro nervoso.

quadros
Defina o tamanho em número de quadros do cache interno, na faixa de 2 a 512. O padrão é 30.

semente
Definir semente para gerador de número aleatório, deve ser um inteiro incluído entre 0 e
"UINT32_MAX". Se não for especificado, ou se explicitamente definido para menos de 0, o filtro irá
tente usar uma boa semente aleatória com base no melhor esforço.

remover grão
O filtro removegrain é um denoiser espacial para vídeo progressivo.

m0 Defina o modo para o primeiro plano.

m1 Defina o modo para o segundo plano.

m2 Defina o modo para o terceiro plano.

m3 Defina o modo para o quarto plano.

A faixa de modo é de 0 a 24. A descrição de cada modo é a seguinte:

0 Deixe o plano de entrada inalterado. Padrão.

1 Recorta o pixel com o mínimo e o máximo dos 8 pixels vizinhos.

2 Recorta o pixel com o segundo mínimo e máximo dos 8 pixels vizinhos.

3 Recorta o pixel com o terceiro mínimo e máximo dos 8 pixels vizinhos.

4 Recorta o pixel com o quarto mínimo e máximo dos 8 pixels vizinhos. Isto
é equivalente a um filtro de mediana.

5 Recorte sensível à linha, dando o mínimo de alteração.

6 Recorte com linha sensível, intermediário.

7 Recorte com linha sensível, intermediário.

8 Recorte com linha sensível, intermediário.

9 Recorte sensível à linha em uma linha onde os pixels vizinhos estão mais próximos.

10 Substitui o pixel de destino pelo vizinho mais próximo.

11 [1 2 1] desfoque de kernel horizontal e vertical.

12 Igual ao modo 11.

13 Modo Bob, interpola o campo superior da linha onde os pixels vizinhos são os
mais próximo.

14 Modo Bob, interpola o campo inferior da linha onde os pixels vizinhos são os
mais próximo.

15 Modo Bob, interpola o campo superior. O mesmo que 13, mas com uma interpolação mais complicada
fórmula.

16 Modo Bob, interpola o campo inferior. O mesmo que 14, mas com um mais complicado
fórmula de interpolação.

17 Recorta o pixel com o mínimo e o máximo de, respectivamente, o máximo e o mínimo
de cada par de pixels vizinhos opostos.

18 Recorte sensível à linha usando vizinhos opostos cuja maior distância do
o pixel atual é mínimo.

19 Substitui o pixel pela média de seus 8 vizinhos.

20 Calcula a média de 9 pixels ([1 1 1] desfoque horizontal e vertical).

21 Clipes pixels usando as médias do vizinho oposto.

22 Igual ao modo 21, mas mais simples e rápido.

23 Remoção de borda pequena e halo, mas considerada inútil.

24 Semelhante a 23.

remover logotipo
Suprimir o logotipo de uma estação de TV, usando um arquivo de imagem para determinar quais pixels compreendem o
logotipo. Ele funciona preenchendo os pixels que compõem o logotipo com pixels vizinhos.

O filtro aceita as seguintes opções:

nome do arquivo, f
Defina o arquivo de bitmap de filtro, que pode ser qualquer formato de imagem compatível com libavformat.
A largura e a altura do arquivo de imagem devem corresponder às do fluxo de vídeo que está sendo
processado.

Pixels na imagem bitmap fornecida com valor zero não são considerados parte do
logotipo, pixels diferentes de zero são considerados parte do logotipo. Se você usar branco (255) para o logotipo
e preto (0) para o resto, você estará seguro. Para fazer o bitmap de filtro, é
recomendado fazer uma captura de tela de uma moldura preta com o logotipo visível e, em seguida,
usando um filtro de limite seguido pelo filtro erode uma ou duas vezes.

Se necessário, pequenas manchas podem ser corrigidas manualmente. Lembre-se de que se os pixels do logotipo não forem
coberto, a qualidade do filtro será muito reduzida. Marcando muitos pixels como parte do
logo não dói tanto, mas vai aumentar a quantidade de desfoque necessária para cobrir
sobre a imagem e destruirá mais informações do que o necessário, e pixels extras
abrandar as coisas em um grande logotipo.

campos de repetição
Este filtro usa o sinalizador repeat_field dos cabeçalhos Video ES e campos de repetição permanente
com base em seu valor.

marcha ré, é inverso
Inverta um clipe.

Aviso: esse filtro requer memória para armazenar todo o clipe em buffer, portanto, é recomendável cortar.

Exemplos

· Pegue os primeiros 5 segundos de um clipe e inverta-o.

trim = end = 5, reverso

rodar
Gire o vídeo em um ângulo arbitrário expresso em radianos.

O filtro aceita as seguintes opções:

Segue uma descrição dos parâmetros opcionais.

ângulo, a
Defina uma expressão para o ângulo pelo qual girar o vídeo de entrada no sentido horário,
expresso como um número de radianos. Um valor negativo resultará em um sentido anti-horário
rotação. Por padrão, é definido como "0".

Esta expressão é avaliada para cada quadro.

fora_w, ow
Defina a expressão de largura de saída, o valor padrão é "iw". Esta expressão é avaliada
apenas uma vez durante a configuração.

fora_h, oh
Defina a expressão de altura de saída, o valor padrão é "ih". Esta expressão é avaliada
apenas uma vez durante a configuração.

bilinear
Ative a interpolação bilinear se definido como 1, um valor de 0 a desativa. O valor padrão é
1.

cor de preenchimento, c
Defina a cor usada para preencher a área de saída não coberta pela imagem girada. Para o
sintaxe geral desta opção, verifique a seção "Cor" no manual ffmpeg-utils.
Se o valor especial "nenhum" for selecionado, nenhum fundo é impresso (útil para
exemplo se o fundo nunca é mostrado).

O valor padrão é "preto".

As expressões para o ângulo e o tamanho da saída podem conter as seguintes constantes e
funções:

n número sequencial do quadro de entrada, começando em 0. É sempre NAN antes do
o primeiro quadro é filtrado.

t tempo em segundos do quadro de entrada, é definido como 0 quando o filtro é configurado. Isto
é sempre NAN antes de o primeiro quadro ser filtrado.

hsub
vssub
valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

em_w, iw
em_h, ih
a largura e altura do vídeo de entrada

fora_w, ow
fora_h, oh
a largura e altura de saída, que é o tamanho da área preenchida conforme especificado pelo
largura e altura expressões

rotw (a)
Roth (a)
a largura / altura mínima necessária para conter completamente o vídeo de entrada girado por
a radianos.

Estes estão disponíveis apenas ao calcular o fora_w e fora_h expressões.

Exemplos

· Gire a entrada por PI / 6 radianos no sentido horário:

girar = PI / 6

· Gire a entrada por PI / 6 radianos no sentido anti-horário:

girar = -PI / 6

· Girar a entrada em 45 graus no sentido horário:

girar = 45 * PI / 180

· Aplicar uma rotação constante com período T, partindo de um ângulo de PI / 3:

girar = PI / 3 + 2 * PI * t / T

· Faça a rotação do vídeo de entrada oscilar com um período de T segundos e uma amplitude
de A radianos:

girar = A * sin (2 * PI / T * t)

· Gire o vídeo, o tamanho da saída é escolhido de modo que todo o vídeo de entrada giratório seja
sempre completamente contido na saída:

rotate = '2 * PI * t: ow = hipot (iw, ih): oh = ow'

· Gire o vídeo, reduza o tamanho da saída para que nenhum plano de fundo seja mostrado:

girar = 2 * PI * t: ow = 'min (iw, ih) /sqrt(2) ': oh = ow: c = nenhum

comandos

O filtro suporta os seguintes comandos:

a, ângulo
Defina a expressão do ângulo. O comando aceita a mesma sintaxe do correspondente
opção.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

sab
Aplique Desfoque Adaptável à Forma.

O filtro aceita as seguintes opções:

raio_luma, lr
Defina a intensidade do filtro de desfoque luma, deve ser um valor no intervalo 0.1-4.0, o valor padrão é 1.0.
Um valor maior resultará em uma imagem mais borrada e em um processamento mais lento.

luma_pre_filter_radius, lpfr
Definir o raio do pré-filtro luma, deve ser um valor na faixa de 0.1-2.0, o valor padrão é
1.0.

luma_força, ls
Defina a diferença máxima de luma entre os pixels a serem considerados, deve ser um valor em
o intervalo de 0.1-100.0, o valor padrão é 1.0.

raio_croma, cr
Defina a intensidade do filtro de borrão de croma, deve ser um valor no intervalo 0.1-4.0. Um valor maior
resultará em uma imagem mais borrada e em um processamento mais lento.

chroma_pre_filter_radius, CPFR
Definir o raio do pré-filtro de croma, deve ser um valor na faixa de 0.1-2.0.

intensidade_croma, cs
Defina a diferença máxima de croma entre os pixels para ainda ser considerada, deve ser um valor
na faixa de 0.1-100.0.

Cada valor de opção de croma, se não for especificado explicitamente, é definido para o luma correspondente
valor da opção.

escada
Dimensione (redimensione) o vídeo de entrada, usando a biblioteca libswscale.

O filtro de escala força a proporção de exibição de saída a ser a mesma da entrada, por
alterando a proporção de aspecto da amostra de saída.

Se o formato da imagem de entrada for diferente do formato solicitado pelo próximo filtro, o
O filtro de escala converterá a entrada para o formato solicitado.

Opções

O filtro aceita as seguintes opções, ou qualquer uma das opções suportadas pelo
escalador libswscale.

See que o escalonador ffmpeg manual para obter a lista completa de opções do scaler.

largura, w
altura, h
Defina a expressão da dimensão do vídeo de saída. O valor padrão é a dimensão de entrada.

Se o valor for 0, a largura de entrada é usada para a saída.

Se um dos valores for -1, o filtro de escala usará um valor que mantém o
proporção da imagem de entrada, calculada a partir da outra dimensão especificada. Se
ambos são -1, o tamanho de entrada é usado

Se um dos valores for -n com n> 1, o filtro de escala também usará um valor que
mantém a proporção da imagem de entrada, calculada a partir da outra
dimensão. Depois disso, no entanto, certifique-se de que a dimensão calculada é
divisível por n e ajuste o valor se necessário.

Veja abaixo a lista de constantes aceitas para uso na expressão de dimensão.

intercalar
Defina o modo de entrelaçamento. Ele aceita os seguintes valores:

1 Força o escalonamento ciente entrelaçado.

0 Não aplique escala entrelaçada.

-1 Selecione o escalonamento ciente de entrelaçado dependendo se os quadros de origem estão sinalizados
como entrelaçado ou não.

O valor padrão é 0.

bandeiras
Defina sinalizadores de escala libswscale. Ver que o escalonador ffmpeg manual para a lista completa de
valores. Se não for especificado explicitamente, o filtro aplica os sinalizadores padrão.

tamanho, s
Defina o tamanho do vídeo. Para a sintaxe desta opção, verifique o "Vídeo Tamanho" seção in
que o ffmpeg-utils manual.

in_color_matrix
out_color_matrix
Defina o tipo de espaço de cor YCbCr de entrada / saída.

Isso permite que o valor autodetectado seja sobrescrito, bem como permite forçar um
valor específico usado para a saída e o codificador.

Se não for especificado, o tipo de espaço de cor depende do formato do pixel.

Valores possíveis:

auto
Escolha automaticamente.

bt709
Formato em conformidade com a recomendação da International Telecommunication Union (ITU)
BT.709.

fcc Defina o espaço de cores em conformidade com a Comissão Federal de Comunicações dos Estados Unidos
(FCC) Código de Regulamentos Federais (CFR) Título 47 (2003) 73.682 (a).

bt601
Defina o espaço de cores em conformidade com:

· ITU Radiocommunication Sector (ITU-R) Recomendação BT.601

· Rec. ITU-R BT.470-6 (1998) Sistemas B, B1 e G

· Sociedade de Engenheiros de Cinema e Televisão (SMPTE) ST 170: 2004

smte240m
Defina o espaço de cores em conformidade com SMPTE ST 240: 1999.

intervalo interno
fora do alcance
Defina o intervalo de amostra YCbCr de entrada / saída.

Isso permite que o valor autodetectado seja sobrescrito, bem como permite forçar um
valor específico usado para a saída e o codificador. Se não for especificado, o intervalo depende de
o formato de pixel. Valores possíveis:

auto
Escolha automaticamente.

jpeg / full / pc
Defina a faixa completa (0-255 no caso de luma de 8 bits).

MPEG / TV
Defina o intervalo "MPEG" (16-235 no caso de luma de 8 bits).

força_aspecto_original_ratio
Ative diminuir ou aumentar a largura ou altura do vídeo de saída, se necessário, para manter o
relação de aspecto original. Valores possíveis:

desabiltar
Dimensione o vídeo conforme especificado e desative este recurso.

diminuir
As dimensões do vídeo de saída serão diminuídas automaticamente, se necessário.

aumentar
As dimensões do vídeo de saída serão aumentadas automaticamente, se necessário.

Um exemplo útil desta opção é quando você sabe o máximo de um dispositivo específico
resolução permitida, você pode usar isso para limitar a saída de vídeo a isso, enquanto
mantendo a relação de aspecto. Por exemplo, o dispositivo A permite a reprodução de 1280x720 e seu
o vídeo é 1920x800. Usando esta opção (defina-a para diminuir) e especificando 1280x720 para
a linha de comando torna a saída 1280x533.

Observe que isso é diferente de especificar -1 para w or h, você ainda
precisa especificar a resolução de saída para esta opção funcionar.

Os valores da w e h options são expressões que contêm as seguintes constantes:

em_w
em_h
A largura e altura de entrada

iw
ih Estes são os mesmos que em_w e em_h.

fora_w
fora_h
A saída (em escala), largura e altura

ow
oh Estes são os mesmos que fora_w e fora_h

a O mesmo que iw / ih

sar proporção de aspecto da amostra de entrada

mas A proporção de aspecto de exibição de entrada. Calculado a partir de "(iw / ih) * sar".

hsub
vssub
valores de subamostra de croma de entrada horizontal e vertical. Por exemplo, para o pixel
formato "yuv422p" hsub é 2 e vssub é 1.

oh sub
ovsub
valores de subamostra de croma de saída horizontal e vertical. Por exemplo, para o pixel
formato "yuv422p" hsub é 2 e vssub é 1.

Exemplos

· Dimensione o vídeo de entrada para um tamanho de 200x100

escala = w = 200: h = 100

Isso é equivalente a:

escala = 200: 100

ou:

escala = 200x100

· Especifique uma abreviatura de tamanho para o tamanho de saída:

escala = qcif

que também pode ser escrito como:

escala = tamanho = qcif

· Dimensione a entrada para 2x:

escala = w = 2 * iw: h = 2 * ih

· O acima é o mesmo que:

escala = 2 * pol_w: 2 * pol_h

· Escale a entrada para 2x com escalonamento entrelaçado forçado:

escala = 2 * iw: 2 * ih: interl = 1

· Dimensione a entrada para metade do tamanho:

escala = w = iw / 2: h = ih / 2

· Aumente a largura e defina a altura para o mesmo tamanho:

escala = 3/2 * iw: ow

· Procure a harmonia grega:

escala = iw: 1 / PHI * iw
escala = ih * PHI: ih

· Aumente a altura e defina a largura para 3/2 da altura:

escala = w = 3/2 * oh: h = 3/5 * ih

· Aumente o tamanho, tornando o tamanho um múltiplo dos valores da subamostra de croma:

escala = "trunc (3/2 * iw / hsub) * hsub: trunc (3/2 * ih / vsub) * vsub"

· Aumente a largura para no máximo 500 pixels, mantendo a mesma proporção do
entrada:

escala = w = 'min (500 \, iw * 3/2): h = -1'

comandos

Este filtro oferece suporte aos seguintes comandos:

largura, w
altura, h
Defina a expressão da dimensão do vídeo de saída. O comando aceita a mesma sintaxe do
opção correspondente.

Se a expressão especificada não for válida, ela será mantida em seu valor atual.

escala2ref
Dimensione (redimensione) o vídeo de entrada, com base em um vídeo de referência.

Veja o filtro de escala para as opções disponíveis, scale2ref suporta o mesmo, mas usa o
vídeo de referência em vez da entrada principal como base.

Exemplos

· Dimensione um fluxo de legenda para corresponder ao vídeo principal em tamanho antes de sobrepor

'scale2ref [b] [a]; [a] [b] sobreposição'

campos separados
Os "campos separados" pegam uma entrada de vídeo baseada em quadros e dividem cada quadro em seu
campos de componentes, produzindo um novo clipe de meia altura com o dobro da taxa de quadros e o dobro
a contagem de quadros.

Este filtro usa informações de domínio de campo no quadro para decidir qual de cada par de
campos a serem colocados em primeiro lugar na saída. Se der errado, use Setfield filtrar antes
filtro "campos separados".

sedar, setar
O filtro "setdar" define a relação de aspecto da tela para o vídeo de saída do filtro.

Isso é feito alterando a proporção de aspecto da amostra (também conhecida como Pixel), de acordo com o
seguinte equação:

= / *

Lembre-se de que o filtro "setdar" não modifica as dimensões em pixels do vídeo
quadro. Além disso, a proporção de exibição definida por este filtro pode ser alterada por filtros posteriores
na cadeia de filtros, por exemplo, no caso de escala ou se outro filtro "setdar" ou "setsar" estiver
aplicado.

O filtro "setsar" define a taxa de proporção de amostra (também conhecida como Pixel) para o vídeo de saída do filtro.

Observe que, como consequência da aplicação deste filtro, o aspecto de exibição de saída
a proporção mudará de acordo com a equação acima.

Lembre-se de que a proporção da amostra definida pelo filtro "setsar" pode ser alterada por
filtros posteriores na cadeia de filtros, por exemplo, se outro filtro "setsar" ou "setdar" for
aplicado.

Ele aceita os seguintes parâmetros:

r, Razão, mas ("setdar" só), sar ("setsar" apenas)
Defina a proporção do aspecto usada pelo filtro.

O parâmetro pode ser uma string numérica de ponto flutuante, uma expressão ou uma string do
formulário Números:dia, Onde Números e dia são o numerador e o denominador da proporção da imagem.
Se o parâmetro não for especificado, assume-se o valor "0". Caso o formulário
"Números:dia"é usado, o caractere": "deve ser escapado.

max Defina o valor inteiro máximo a ser usado para expressar numerador e denominador quando
reduzindo a proporção de aspecto expressa a um racional. O valor padrão é 100.

O parâmetro sar é uma expressão que contém as seguintes constantes:

E, PI, PHI
Estes são valores aproximados para as constantes matemáticas e (número de Euler), pi
(Grego pi) e phi (a proporção áurea).

w, h
A largura e altura de entrada.

a Estes são os mesmos que w / h.

sar A proporção de aspecto da amostra de entrada.

mas A proporção de aspecto de exibição de entrada. É o mesmo que (w / h) * sar.

hsub, vssub
Valores de subamostra de croma horizontal e vertical. Por exemplo, para o formato de pixel
"yuv422p" hsub é 2 e vssub é 1.

Exemplos

· Para alterar a proporção da tela para 16: 9, especifique um dos seguintes:

setdar = dar = 1.77777
setdar = dar = 16/9
setdar = dar = 1.77777

· Para alterar a proporção da amostra para 10:11, especifique:

setsar = sar = 10/11

· Para definir uma proporção de exibição de 16: 9 e especificar um valor inteiro máximo de 1000 em
a redução da proporção de aspecto, use o comando:

setdar = ratio = 16/9: max = 1000

Setfield
Campo de força para o quadro de vídeo de saída.

O filtro "setfield" marca o campo do tipo entrelaçado para os quadros de saída. Isso não
altera o quadro de entrada, mas apenas define a propriedade correspondente, o que afeta como o
o quadro é tratado pelos seguintes filtros (por exemplo, "fieldorder" ou "yadif").

O filtro aceita as seguintes opções:

modo
Os valores disponíveis são:

auto
Mantenha a mesma propriedade do campo.

bff Marque o quadro como campo inferior primeiro.

tff Marque o quadro como campo superior primeiro.

prog
Marque o quadro como progressivo.

showinfo
Mostra uma linha contendo várias informações para cada quadro de vídeo de entrada. O vídeo de entrada é
Não modificado.

A linha mostrada contém uma sequência de pares de chave / valor do formulário chave:valor.

Os seguintes valores são mostrados na saída:

n O número (sequencial) do quadro de entrada, começando em 0.

pts O TimeStamp de apresentação do quadro de entrada, expresso como um número de base de tempo
unidades. A unidade de base de tempo depende da almofada de entrada do filtro.

pts_time
O TimeStamp da apresentação do quadro de entrada, expresso como um número de segundos.

postar A posição do quadro no fluxo de entrada, ou -1 se esta informação for
indisponível e / ou sem sentido (por exemplo, no caso de vídeo sintético).

fmt O nome do formato do pixel.

sar A proporção da amostra do quadro de entrada, expressa no formulário Números/dia.

s O tamanho do quadro de entrada. Para a sintaxe desta opção, verifique o "Vídeo Tamanho"
seção in que o ffmpeg-utils manual.

i O tipo de modo entrelaçado ("P" para "progressivo", "T" para o campo superior primeiro, "B" para
campo inferior primeiro).

é chave
Este é 1 se o quadro for um quadro-chave, 0 caso contrário.

tipo
O tipo de imagem do quadro de entrada ("I" para um quadro I, "P" para um quadro P, "B" para um
Quadro B ou "?" para um tipo desconhecido). Consulte também a documentação do
Enum "AVPictureType" e da função "av_get_picture_type_char" definida em
libavutil / avutil.h.

checksum
A soma de verificação Adler-32 (impressa em hexadecimal) de todos os planos do quadro de entrada.

avião_checksum
A soma de verificação Adler-32 (impressa em hexadecimal) de cada plano do quadro de entrada,
expresso na forma "[c0 c1 c2 c3] ".

paleta de exibição
Exibe a paleta de 256 cores de cada quadro. Este filtro é relevante apenas para pal8 pixels
formato de quadros.

Aceita a seguinte opção:

s Defina o tamanho da caixa usada para representar uma entrada de cor da paleta. O padrão é 30 (para
uma caixa de pixels "30x30").

shuffleplanes
Reordene e / ou duplique os planos de vídeo.

Ele aceita os seguintes parâmetros:

map0
O índice do plano de entrada a ser usado como o primeiro plano de saída.

map1
O índice do plano de entrada a ser usado como o segundo plano de saída.

map2
O índice do plano de entrada a ser usado como o terceiro plano de saída.

map3
O índice do plano de entrada a ser usado como o quarto plano de saída.

O primeiro plano tem o índice 0. O padrão é manter a entrada inalterada.

Troque o segundo e o terceiro planos da entrada:

ffmpeg -i INPUT -vf shuffleplanes = 0: 2: 1: 3 OUTPUT

estatísticas de sinal
Avalie várias métricas visuais que auxiliam na determinação de problemas associados com o
digitalização de mídia de vídeo analógica.

Por padrão, o filtro registrará estes valores de metadados:

YMIN
Exibe o valor mínimo de Y contido no quadro de entrada. Expresso no intervalo de
[0-255].

AMARELO
Exiba o valor Y no percentil 10% dentro do quadro de entrada. Expresso em alcance
de [0-255].

YAVG
Exibe o valor médio de Y dentro do quadro de entrada. Expresso no intervalo de [0-255].

YALTO
Exiba o valor Y no percentil 90% dentro do quadro de entrada. Expresso em alcance
de [0-255].

YMAX
Exibe o valor máximo de Y contido no quadro de entrada. Expresso no intervalo de
[0-255].

UMIN
Exibe o valor mínimo de U contido no quadro de entrada. Expresso no intervalo de
[0-255].

UBAIXO
Exibe o valor U no percentil 10% dentro do quadro de entrada. Expresso em alcance
de [0-255].

UAVG
Exibe o valor U médio dentro do quadro de entrada. Expresso no intervalo de [0-255].

UALTO
Exibe o valor U no percentil 90% dentro do quadro de entrada. Expresso em alcance
de [0-255].

UMAX
Exibe o valor máximo de U contido no quadro de entrada. Expresso no intervalo de
[0-255].

VMIN
Exibe o valor mínimo de V contido no quadro de entrada. Expresso no intervalo de
[0-255].

VLOW
Exibe o valor V no percentil 10% dentro do quadro de entrada. Expresso no intervalo
de [0-255].

VAVG
Exibe o valor médio de V dentro do quadro de entrada. Expresso no intervalo de [0-255].

V ALTO
Exibe o valor V no percentil 90% dentro do quadro de entrada. Expresso no intervalo
de [0-255].

Vmax
Exibe o valor máximo de V contido no quadro de entrada. Expresso no intervalo de
[0-255].

SATMIN
Exibe o valor mínimo de saturação contido no quadro de entrada. Expresso em
intervalo de [0- ~ 181.02].

SATLOW
Exibe o valor de saturação no percentil 10% dentro do quadro de entrada. Expresso
no intervalo de [0- ~ 181.02].

SATAVG
Exibe o valor médio de saturação dentro do quadro de entrada. Expresso no intervalo de
[0- ~ 181.02].

SATHIGH
Exibe o valor de saturação no percentil 90% dentro do quadro de entrada. Expresso
no intervalo de [0- ~ 181.02].

SATMAX
Exibe o valor máximo de saturação contido no quadro de entrada. Expresso em
intervalo de [0- ~ 181.02].

HUEMED
Exibe o valor médio para matiz dentro do quadro de entrada. Expresso no intervalo de
[0-360].

HUEAVG
Exibe o valor médio para matiz dentro do quadro de entrada. Expresso no intervalo de
[0-360].

YDIF
Exibir a média da diferença de valor de amostra entre todos os valores do plano Y em
o quadro atual e os valores correspondentes do quadro de entrada anterior. Expresso em
intervalo de [0-255].

UDIF
Exibir a média da diferença de valor de amostra entre todos os valores do plano U em
o quadro atual e os valores correspondentes do quadro de entrada anterior. Expresso em
intervalo de [0-255].

VDIF
Exibir a média da diferença de valor de amostra entre todos os valores do plano V em
o quadro atual e os valores correspondentes do quadro de entrada anterior. Expresso em
intervalo de [0-255].

O filtro aceita as seguintes opções:

estado
Fora estado especificar uma forma adicional de análise de imagem. Fora saída de vídeo com o
tipo especificado de pixel em destaque.

Ambas as opções aceitam os seguintes valores:

angariar
Identifique temporal discrepantes píxeis. UMA temporal ponto fora da curva é um pixel diferente do
pixels vizinhos do mesmo campo. Exemplos de outliers temporais incluem o
resultados de falhas de vídeo, obstruções de cabeça ou problemas de rastreamento de fita.

vrep
Identifique vertical linha repetição. A repetição de linha vertical inclui linhas semelhantes
de pixels em um quadro. No vídeo digital nativo, a repetição da linha vertical é
comum, mas esse padrão é incomum em vídeo digitalizado de uma fonte analógica.
Quando ocorre em um vídeo que resulta da digitalização de uma fonte analógica,
pode indicar ocultação de um compensador de dropout.

trazer
Identifique os pixels que estão fora do alcance legal de transmissão.

cor, c
Defina a cor de destaque para o Fora opção. A cor padrão é amarelo.

Exemplos

· Dados de saída de várias métricas de vídeo:

ffprobe -f lavfi movie = example.mov, signalstats = "stat = tout + vrep + brng" -show_frames

· Saída de dados específicos sobre os valores mínimo e máximo do plano Y por quadro:

ffprobe -f lavfi movie = example.mov, signalstats -show_entries frame_tags = lavfi.signalstats.YMAX, lavfi.signalstats.YMIN

· Reproduza o vídeo enquanto destaca os pixels que estão fora da faixa de transmissão em vermelho.

ffplay example.mov -vf signalstats = "out = brng: color = red"

· Reprodução de vídeo com metadados signalstats desenhados sobre o quadro.

ffplay example.mov -vf signalstats = stat = brng + vrep + tout, drawtext = fontfile = FreeSerif.ttf: textfile = signalstat_drawtext.txt

O conteúdo de signalstat_drawtext.txt usado no comando é:

tempo% {pts: hms}
Y (% {metadata: lavfi.signalstats.YMIN} -% {metadata: lavfi.signalstats.YMAX})
U (% {metadata: lavfi.signalstats.UMIN} -% {metadata: lavfi.signalstats.UMAX})
V (% {metadata: lavfi.signalstats.VMIN} -% {metadata: lavfi.signalstats.VMAX})
saturação máxima:% {metadata: lavfi.signalstats.SATMAX}

desfoque inteligente
Desfoque o vídeo de entrada sem afetar os contornos.

Aceita as seguintes opções:

raio_luma, lr
Defina o raio de luma. O valor da opção deve ser um número flutuante no intervalo [0.1,5.0]
que especifica a variação do filtro gaussiano usado para desfocar a imagem (mais lento se
maior). O valor padrão é 1.0.

luma_força, ls
Defina a força luma. O valor da opção deve ser um número flutuante no intervalo [-1.0,1.0]
que configura o desfoque. Um valor incluído em [0.0,1.0] irá desfocar a imagem
enquanto um valor incluído em [-1.0,0.0] tornará a imagem mais nítida. O valor padrão é 1.0.

luma_limiar, lt
Defina o limite de luma usado como coeficiente para determinar se um pixel deve ser
turva ou não. O valor da opção deve ser um número inteiro no intervalo [-30,30]. Um valor de
0 irá filtrar toda a imagem, um valor incluído em [0,30] irá filtrar áreas planas e um
o valor incluído em [-30,0] filtrará as bordas. O valor padrão é 0.

raio_croma, cr
Defina o raio de croma. O valor da opção deve ser um número flutuante no intervalo [0.1,5.0]
que especifica a variação do filtro gaussiano usado para desfocar a imagem (mais lento se
maior). O valor padrão é 1.0.

intensidade_croma, cs
Defina a intensidade do croma. O valor da opção deve ser um número flutuante no intervalo
[-1.0,1.0] que configura o desfoque. Um valor incluído em [0.0,1.0] irá desfocar o
enquanto um valor incluído em [-1.0,0.0] tornará a imagem mais nítida. O valor padrão é
1.0.

croma_threshold, ct
Defina o limite de croma usado como um coeficiente para determinar se um pixel deve ser
turva ou não. O valor da opção deve ser um número inteiro no intervalo [-30,30]. Um valor de
0 irá filtrar toda a imagem, um valor incluído em [0,30] irá filtrar áreas planas e um
o valor incluído em [-30,0] filtrará as bordas. O valor padrão é 0.

Se uma opção de croma não for definida explicitamente, o valor luma correspondente será definido.

sim
Obtenha o SSIM (Structural SImilarity Metric) entre dois vídeos de entrada.

Este filtro leva na entrada dois vídeos de entrada, a primeira entrada é considerada o "principal"
fonte e é passado inalterado para a saída. A segunda entrada é usada como uma "referência"
vídeo para computar o SSIM.

Ambas as entradas de vídeo devem ter a mesma resolução e formato de pixel para este filtro funcionar
corretamente. Além disso, assume que ambas as entradas têm o mesmo número de quadros, que são
comparados um por um.

O filtro armazena o SSIM calculado de cada quadro.

A seguir, a descrição dos parâmetros aceitos.

arquivo_estatísticas, f
Se especificado, o filtro usará o arquivo nomeado para salvar o SSIM de cada indivíduo
quadro, Armação.

O arquivo impresso se arquivo_estatísticas é selecionado, contém uma sequência de pares de chave / valor do
formulário chave:valor para cada par de frames comparados.

Segue uma descrição de cada parâmetro mostrado:

n número sequencial do quadro de entrada, começando em 1

Y, U, V, R, G, B
SSIM dos quadros comparados para o componente especificado pelo sufixo.

Todos os Produtos SSIM dos frames comparados para todo o frame.

dB Igual ao anterior, mas em representação em dB.

Por exemplo:

filme = ref_movie.mpg, setpts = PTS-STARTPTS [principal];
[main] [ref] ssim = "stats_file = stats.log" [out]

Neste exemplo, o arquivo de entrada sendo processado é comparado com o arquivo de referência
ref_movie.mpg. O SSIM de cada quadro individual é armazenado em estatísticas.log.

Outro exemplo com psnr e ssim ao mesmo tempo:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim; [0: v] [1: v] psnr" -f null -

estéreo3d
Converta entre diferentes formatos de imagem estereoscópica.

Os filtros aceitam as seguintes opções:

in Defina o formato da imagem estereoscópica de entrada.

Os valores disponíveis para formatos de imagem de entrada são:

SBSL
lado a lado paralelo (olho esquerdo esquerdo, olho direito direito)

sbsr
lado a lado crosseye (olho direito esquerdo, olho esquerdo direito)

sbs2l
lado a lado paralelo com resolução de meia largura (olho esquerdo esquerdo, olho direito direito)

sbs2r
lado a lado crosseye com resolução de meia largura (olho direito esquerdo, olho esquerdo direito)

abl acima-abaixo (olho esquerdo acima, olho direito abaixo)

abr acima-abaixo (olho direito acima, olho esquerdo abaixo)

ab2l
acima-abaixo com resolução de meia altura (olho esquerdo acima, olho direito abaixo)

ab2r
acima e abaixo com resolução de meia altura (olho direito acima, olho esquerdo abaixo)

al quadros alternados (primeiro olho esquerdo, segundo olho direito)

ar quadros alternados (primeiro olho direito, segundo olho esquerdo)

O valor padrão é SBSL.

Fora Defina o formato da imagem estereoscópica de saída.

Os valores disponíveis para formatos de imagem de saída são todos os formatos de entrada, bem como:

Arbg
anáglifo vermelho / cinza azul (filtro vermelho no olho esquerdo, filtro azul no olho direito)

arg
anáglifo vermelho / cinza verde (filtro vermelho no olho esquerdo, filtro verde no olho direito)

arco
vermelho anáglifo / cinza ciano (filtro vermelho no olho esquerdo, filtro ciano no olho direito)

arco
vermelho anáglifo / ciano meio colorido (filtro vermelho no olho esquerdo, filtro ciano no olho direito)

arcc
anáglifo vermelho / cor ciano (filtro vermelho no olho esquerdo, filtro ciano no olho direito)

arco
anáglifo vermelho / ciano otimizado com a projeção de mínimos quadrados de dubois (vermelho
filtro no olho esquerdo, filtro ciano no olho direito)

Agmg
anáglifo verde / cinza magenta (filtro verde no olho esquerdo, filtro magenta no direito
olho)

agmh
anáglifo verde / magenta meio colorido (filtro verde no olho esquerdo, filtro magenta ativado
olho direito)

agmc
anáglifo verde / magenta (filtro verde no olho esquerdo, filtro magenta no direito
olho)

AGMD
cor anáglifo verde / magenta otimizado com a projeção de mínimos quadrados de dubois
(filtro verde no olho esquerdo, filtro magenta no olho direito)

aybg
anaglifo amarelo / cinza azul (filtro amarelo no olho esquerdo, filtro azul no olho direito)

ai
anáglifo amarelo / azul pela metade (filtro amarelo no olho esquerdo, filtro azul no direito
olho)

aybc
anáglifo amarelo / azul (filtro amarelo no olho esquerdo, filtro azul no olho direito)

aybd
cor anáglifo amarelo / azul otimizado com a projeção de mínimos quadrados de dubois
(filtro amarelo no olho esquerdo, filtro azul no olho direito)

irl linhas intercaladas (o olho esquerdo tem a linha superior, o olho direito começa na próxima linha)

irr linhas intercaladas (o olho direito tem a linha superior, o olho esquerdo começa na próxima linha)

ml saída mono (olho esquerdo apenas)

mr saída mono (olho direito apenas)

O valor padrão é arco.

Exemplos

· Converta o vídeo de entrada paralelamente ao anáglifo amarelo / azul dubois:

stereo3d = sbsl: aybd

· Converta o vídeo de entrada de cima para baixo (olho esquerdo acima, olho direito abaixo) lado a lado
Vesgo.

stereo3d = abl: sbsr

spp
Aplique um filtro de pós-processamento simples que comprime e descompacta a imagem em vários
(ou - no caso de qualidade nível 6 - todos) muda e calcula a média dos resultados.

O filtro aceita as seguintes opções:

qualidade
Defina a qualidade. Esta opção define o número de níveis para cálculo da média. Aceita um
inteiro no intervalo de 0-6. Se definido como 0, o filtro não terá efeito. Um valor de 6
significa maior qualidade. Para cada incremento desse valor, a velocidade cai por um fator
de aproximadamente 2. O valor padrão é 3.

qp Força um parâmetro de quantização constante. Se não for definido, o filtro usará o QP de
o stream de vídeo (se disponível).

modo
Defina o modo de limite. Os modos disponíveis são:

difícil
Definir limite rígido (padrão).

macio
Defina o limite suave (melhor efeito de remoção de toque, mas provavelmente mais embaçado).

use_bframe_qp
Habilite o uso do QP dos B-Frames se definido como 1. O uso desta opção pode causar
cintilação, uma vez que os quadros B geralmente têm QP maior. O padrão é 0 (não habilitado).

legendas
Desenhe legendas em cima do vídeo de entrada usando a biblioteca libass.

Para habilitar a compilação deste filtro você precisa configurar o FFmpeg com "--enable-libass".
Este filtro também requer uma compilação com libavcodec e libavformat para converter o passado
arquivo de legendas para o formato de legendas ASS (Advanced Substation Alpha).

O filtro aceita as seguintes opções:

nome do arquivo, f
Defina o nome do arquivo de legenda a ser lido. Deve ser especificado.

tamanho original
Especifique o tamanho do vídeo original, o vídeo para o qual o arquivo ASS foi composto.
Para a sintaxe desta opção, verifique o "Vídeo Tamanho" seção in que o ffmpeg-utils
manual. Devido a um projeto incorreto na aritmética da proporção de aspecto ASS, isso é necessário para
dimensione corretamente as fontes se a proporção da imagem tiver sido alterada.

diretório de fontes
Defina um caminho de diretório contendo fontes que podem ser usadas pelo filtro. Essas fontes
será usado além de tudo o que o provedor de fontes usar.

charenc
Defina a codificação de caracteres de entrada de legendas. filtro "legendas" apenas. Só é útil se não
UTF-8.

índice de fluxo, si
Defina o índice de fluxo de legendas. filtro "legendas" apenas.

estilo_força
Substitua o estilo padrão ou os parâmetros de informações do script das legendas. Aceita uma string
contendo pares de formato de estilo ASS "KEY = VALUE" separados por ",".

Se a primeira chave não for especificada, presume-se que o primeiro valor especifica o
nome do arquivo.

Por exemplo, para renderizar o arquivo sub.srt na parte superior do vídeo de entrada, use o comando:

subtitles = sub.srt

que é equivalente a:

subtitles = filename = sub.srt

Para renderizar o fluxo de legendas padrão do arquivo vídeo.mkv, Use:

subtitles = video.mkv

Para renderizar o segundo fluxo de legendas desse arquivo, use:

legendas = video.mkv: si = 1

Para fazer o fluxo de legendas de sub.srt aparecem em verde transparente "DejaVu Serif", use:

subtitles = sub.srt: force_style = 'FontName = DejaVu Serif, PrimaryColour = & HAA00FF00'

super2xsai
Dimensione a entrada em 2x e suavize usando a arte de pixel Super2xSaI (Escala e Interpolar)
algoritmo de escalonamento.

Útil para ampliar imagens de pixel art sem reduzir a nitidez.

trocaruv
Troque o plano U&V.

Telecine
Aplique o processo telecine ao vídeo.

Este filtro aceita as seguintes opções:

primeiro_campo
topo, t
campo superior primeiro

fundo, b
campo inferior primeiro O valor padrão é "superior".

de cinto de segurança
Uma sequência de números que representa o padrão suspenso que você deseja aplicar. O padrão
o valor é 23.

Alguns padrões típicos:

Saída NTSC (30i):
27.5p: 32222
24p: 23 (clássico)
24p: 2332 (preferencial)
20p: 33
18p: 334
16p: 3444

Saída PAL (25i):
27.5p: 12222
24p: 222222222223 ("lista suspensa Euro")
16.67p: 33
16p: 33333334

miniaturas
Selecione o quadro mais representativo em uma determinada seqüência de quadros consecutivos.

O filtro aceita as seguintes opções:

n Defina o tamanho do lote de quadros para analisar; em um conjunto de n quadros, o filtro escolherá um
deles e, em seguida, lidar com o próximo lote de n quadros até o fim. O padrão é 100.

Uma vez que o filtro rastreia toda a sequência de frames, um maior n valor resultará em
um maior uso de memória, portanto, um valor alto não é recomendado.

Exemplos

· Extraia uma imagem a cada 50 frames:

miniatura = 50

· Exemplo completo de criação de miniaturas com ffmpeg:

ffmpeg -i in.avi -vf thumbnail, scale = 300: 200 -frames: v 1 out.png

telha
Organize vários quadros sucessivos juntos.

O filtro aceita as seguintes opções:

traçado
Defina o tamanho da grade (ou seja, o número de linhas e colunas). Para a sintaxe deste
opção, verifique o "Vídeo Tamanho" seção in que o ffmpeg-utils manual.

nb_frames
Defina o número máximo de quadros a serem renderizados na área fornecida. Deve ser menor que ou
igual a wxh. O valor padrão é 0, o que significa que toda a área será usada.

margem
Defina a margem da borda externa em pixels.

acolchoamento
Defina a espessura da borda interna (ou seja, o número de pixels entre os quadros). Para mais
opções avançadas de preenchimento (como ter valores diferentes para as bordas), consulte o
filtro de vídeo pad.

cor
Especifique a cor da área não utilizada. Para a sintaxe desta opção, verifique a opção "Cor"
seção no manual ffmpeg-utils. O valor padrão de cor é preto".

Exemplos

· Produzir blocos PNG 8x8 de todos os quadros-chave (-skip_frame não, não) em um filme:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale = 128: 72, tile = 8x8' -an -vsync 0 keyframes% 03d.png

A -vsync 0 é necessário prevenir ffmpeg de duplicar cada quadro de saída para
acomodar a taxa de quadros detectada originalmente.

· Exibir 5 fotos em uma área de quadros "3x2", com 7 pixels entre eles, e 2
pixels da margem inicial, usando opções planas e nomeadas mistas:

tile=3x2:nb_frames=5:padding=7:margin=2

entrelaçar
Execute vários tipos de entrelaçamento de campo temporal.

Os quadros são contados a partir de 1, portanto, o primeiro quadro de entrada é considerado ímpar.

O filtro aceita as seguintes opções:

modo
Especifique o modo de entrelaçamento. Esta opção também pode ser especificada como um valor
sozinho. Veja abaixo uma lista de valores para esta opção.

Os valores disponíveis são:

fundir, 0
Mova os quadros ímpares para o campo superior, até mesmo para o campo inferior, gerando um
quadro de altura dupla em metade da taxa de quadros.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Saída:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

drop_odd, 1
Produz apenas frames pares; frames ímpares são eliminados, gerando um frame com
altura na metade da taxa de quadros.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Saída:
22222 44444
22222 44444
22222 44444
22222 44444

drop_even, 2
Apenas os frames ímpares de saída, frames pares são descartados, gerando um frame com o mesmo
altura na metade da taxa de quadros.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Saída:
11111 33333
11111 33333
11111 33333
11111 33333

almofada, 3
Expanda cada quadro até a altura total, mas preencha linhas alternativas com preto, gerando um
quadro com altura dupla na mesma taxa de quadros de entrada.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Saída:
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444

intercalar_topo, 4
Intercalar o campo superior de quadros ímpares com o campo inferior de quadros pares,
gerando um quadro com altura inalterada na metade da taxa de quadros.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-

Saída:
11111 33333
22222 44444
11111 33333
22222 44444

intercalar_fundo, 5
Intercalar o campo inferior de quadros ímpares com o campo superior de quadros pares,
gerando um quadro com altura inalterada na metade da taxa de quadros.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444

Saída:
22222 44444
11111 33333
22222 44444
11111 33333

entrelaçado2, 6
Taxa de quadros dupla com altura inalterada. Quadros são inseridos, cada um contendo o
segundo campo temporal do quadro de entrada anterior e o primeiro campo temporal
do próximo quadro de entrada. Este modo depende do sinalizador top_field_first. Útil
para exibições de vídeo entrelaçadas sem sincronização de campo.

------> tempo
Entrada:
Quadro 1 Quadro 2 Quadro 3 Quadro 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Saída:
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

Os valores numéricos estão obsoletos, mas são aceitos por motivos de compatibilidade com versões anteriores.

O modo padrão é "mesclar".

bandeiras
Especifique sinalizadores que influenciam o processo de filtragem.

Valor disponível para bandeiras é:

filtro_passa_baixo, vlfp
Ative a filtragem passa-baixa vertical no filtro. A filtragem passa-baixa vertical é
necessário ao criar um destino entrelaçado de uma fonte progressiva que
contém detalhes verticais de alta frequência. A filtragem irá reduzir o entrelaçamento do 'twitter'
e padronização Moiré.

A filtragem passa-baixa vertical só pode ser habilitada para modo intercalar_topo e
intercalar_fundo.

transpor
Transponha linhas com colunas no vídeo de entrada e, opcionalmente, inverta-as.

Ele aceita os seguintes parâmetros:

dir Especifique a direção de transposição.

Pode assumir os seguintes valores:

0, 4, cclock_flip
Girar 90 graus no sentido anti-horário e inverter verticalmente (padrão), ou seja:

LR Ll
. . ->. .
lr Rr

1, 5, relógio
Gire 90 graus no sentido horário, ou seja:

LR lL
. . ->. .
lr rR

2, 6, relógio
Gire 90 graus no sentido anti-horário, ou seja:

LR Rr
. . ->. .
lr Ll

3, 7, relógio_flip
Girar 90 graus no sentido horário e girar verticalmente, ou seja:

LR rR
. . ->. .
lr lL

Para valores entre 4-7, a transposição é feita apenas se a geometria do vídeo de entrada for
retrato e não paisagem. Esses valores estão obsoletos, a opção "passthrough"
deve ser usado em seu lugar.

Os valores numéricos estão obsoletos e devem ser descartados em favor das constantes simbólicas.

atravessar
Não aplique a transposição se a geometria de entrada corresponder àquela especificada pelo
valor especificado. Ele aceita os seguintes valores:

Nenhum
Sempre aplique a transposição.

retrato
Preservar a geometria do retrato (quando altura >= largura).

paisagem
Preservar a geometria da paisagem (quando largura >= altura).

O valor padrão é "nenhum".

Por exemplo, para girar 90 graus no sentido horário e preservar o layout de retrato:

transpor = dir = 1: passthrough = retrato

O comando acima também pode ser especificado como:

transpor = 1: retrato

aparar
Ajuste a entrada para que a saída contenha uma subparte contínua da entrada.

Ele aceita os seguintes parâmetros:

começo
Especifique a hora de início da seção mantida, ou seja, o quadro com o carimbo de data / hora
começo será o primeiro quadro na saída.

final Especifique a hora do primeiro quadro que será descartado, ou seja, o quadro imediatamente
precedendo aquele com o carimbo de data / hora final será o último quadro na saída.

start_pts
Este é o mesmo que começo, exceto que esta opção define o carimbo de data / hora de início na base de tempo
unidades em vez de segundos.

end_pts
Este é o mesmo que final, exceto esta opção define o carimbo de data / hora final em unidades de base de tempo
em vez de segundos.

duração
A duração máxima da saída em segundos.

quadro_inicial
O número do primeiro quadro que deve ser passado para a saída.

end_frame
O número do primeiro quadro que deve ser eliminado.

começo, final e duração são expressos como especificações de duração de tempo; Vejo que o Horário
duração seção in que o ffmpeg-utils(1) manual para a sintaxe aceita.

Observe que os primeiros dois conjuntos de opções de início / fim e o duração opção olhar para o
frame timestamp, enquanto as variantes _frame simplesmente contam os frames que passam pelo
filtro. Observe também que este filtro não modifica os carimbos de data / hora. Se você deseja para o
timestamps de saída para começar em zero, insira um filtro setpts após o filtro trim.

Se várias opções de início ou fim forem definidas, este filtro tenta ser ganancioso e manter todos os
quadros que correspondem a pelo menos uma das restrições especificadas. Para manter apenas a parte que
corresponde a todas as restrições de uma vez, vários filtros de corte em cadeia.

Os padrões são tais que todas as entradas são mantidas. Portanto, é possível definir, por exemplo, apenas o
valores finais para manter tudo antes do tempo especificado.

Exemplos:

· Largue tudo, exceto o segundo minuto de entrada:

ffmpeg -i INPUT -vf trim = 60: 120

· Mantenha apenas o primeiro segundo:

ffmpeg -i INPUT -vf trim = duração = 1

sem nitidez
Torne mais nítido ou desfoque o vídeo de entrada.

Ele aceita os seguintes parâmetros:

luma_msize_x, lx
Defina o tamanho horizontal da matriz luma. Deve ser um número inteiro ímpar entre 3 e 63. O
o valor padrão é 5.

luma_msize_y, ly
Defina o tamanho vertical da matriz luma. Deve ser um número inteiro ímpar entre 3 e 63. O
o valor padrão é 5.

luma_quantia, la
Defina a intensidade do efeito luma. Deve ser um número de ponto flutuante, valores razoáveis
situar-se entre -1.5 e 1.5.

Valores negativos irão borrar o vídeo de entrada, enquanto valores positivos irão torná-lo mais nítido, um
valor de zero desabilitará o efeito.

O valor padrão é 1.0.

croma_msize_x, cx
Defina o tamanho horizontal da matriz de croma. Deve ser um número inteiro ímpar entre 3 e 63. O
o valor padrão é 5.

croma_msize_y, cy
Defina o tamanho vertical da matriz de croma. Deve ser um número inteiro ímpar entre 3 e 63. O
o valor padrão é 5.

quantidade_croma, ca
Defina a intensidade do efeito de croma. Deve ser um número de ponto flutuante, valores razoáveis
situar-se entre -1.5 e 1.5.

Valores negativos irão borrar o vídeo de entrada, enquanto valores positivos irão torná-lo mais nítido, um
valor de zero desabilitará o efeito.

O valor padrão é 0.0.

opencl
Se definido como 1, especifique usando recursos OpenCL, disponível apenas se FFmpeg foi
configurado com "--enable-opencl". O valor padrão é 0.

Todos os parâmetros são opcionais e o padrão é o equivalente da string '5: 5: 1.0: 5: 5: 0.0'.

Exemplos

· Aplicar forte efeito de nitidez luma:

unsharp = luma_msize_x = 7: luma_msize_y = 7: luma_amount = 2.5

· Aplique um forte desfoque de ambos os parâmetros de luma e croma:

unsharp=7:7:-2:7:7:-2

usp
Aplicar filtro de pós-processamento ultra lento / simples que comprime e descompacta a imagem
em vários (ou - no caso de qualidade nível 8 - todos) muda e calcula a média dos resultados.

A forma como isso difere do comportamento do spp é que o uspp realmente codifica e decodifica cada
caso com libavcodec Snow, enquanto spp usa um DCT simplificado intra apenas 8x8 semelhante a
MJPEG.

O filtro aceita as seguintes opções:

qualidade
Defina a qualidade. Esta opção define o número de níveis para cálculo da média. Aceita um
inteiro no intervalo de 0-8. Se definido como 0, o filtro não terá efeito. Um valor de 8
significa maior qualidade. Para cada incremento desse valor, a velocidade cai por um fator
de aproximadamente 2. O valor padrão é 3.

qp Força um parâmetro de quantização constante. Se não for definido, o filtro usará o QP de
o stream de vídeo (se disponível).

Vectorscope
Exibe os valores dos componentes de 2 cores no gráfico bidimensional (que é chamado de
vetorscópio).

Este filtro aceita as seguintes opções:

Modo, m
Defina o modo vectorscope.

Ele aceita os seguintes valores:

cinza
Os valores de cinza são exibidos no gráfico, brilho mais alto significa que mais pixels têm o mesmo
valor da cor do componente na localização no gráfico. Este é o modo padrão.

cor
Os valores de cinza são exibidos no gráfico. Valores de pixels circundantes que não são
presentes no quadro de vídeo são desenhados em gradiente de 2 componentes de cor que são configurados
pela opção "x" e "y".

color2
Os valores reais dos componentes de cor presentes no quadro do vídeo são exibidos no gráfico.

color3
Semelhante à cor 2, mas com maior frequência dos mesmos valores "x" e "y" no gráfico
aumenta o valor de outro componente de cor, que é a luminância por valores padrão
de "x" e "y".

color4
As cores reais presentes no quadro de vídeo são exibidas no gráfico. Se dois diferentes
as cores são mapeadas para a mesma posição no gráfico e, em seguida, as cores com maior valor de componente não
presente no gráfico é escolhido.

x Defina qual componente de cor será representado no eixo X. O padrão é 1.

y Defina qual componente de cor será representado no eixo Y. O padrão é 2.

intensidade, i
Defina a intensidade, usada pelos modos: cinza, cor e cor3 para aumentar o brilho de
componente de cor que representa a frequência da localização (X, Y) no gráfico.

envelope, e
Nenhum
Sem envelope, este é o padrão.

instantâneos
O envelope instantâneo, até mesmo o pixel mais escuro, será claramente destacado.

pico
Mantenha os valores máximo e mínimo apresentados no gráfico ao longo do tempo. Assim você pode
ainda identificar valores fora do intervalo sem olhar constantemente para o vetorscópio.

pico + instante
Pico e envelope instantâneo combinados.

detecção de vídeo
Analise a estabilização / deshaking de vídeo. Execute a passagem 1 de 2, consulte vidstabtransform para passar
2.

Este filtro gera um arquivo com tradução relativa e informações de transformação de rotação
sobre os frames subsequentes, que são então usados ​​pelo vidstabtransform filtro.

Para habilitar a compilação deste filtro você precisa configurar o FFmpeg com
"--enable-libvidstab".

Este filtro aceita as seguintes opções:

resultar
Defina o caminho para o arquivo usado para gravar as informações de transformação. O valor padrão é
transforma.trf.

tremor
Defina o quão trêmulo é o vídeo e a velocidade da câmera. Ele aceita um número inteiro no
intervalo de 1 a 10, um valor de 1 significa pouca tremura, um valor de 10 significa tremura forte.
O valor padrão é 5.

precisão
Defina a precisão do processo de detecção. Deve ser um valor no intervalo de 1 a 15. UMA
valor de 1 significa baixa precisão, um valor de 15 significa alta precisão. O valor padrão é 15.

tamanho do passo
Defina o tamanho da etapa do processo de pesquisa. A região em torno do mínimo é digitalizada com 1 pixel
resolução. O valor padrão é 6.

contraste mínimo
Defina o contraste mínimo. Abaixo desse valor, um campo de medição local é descartado. Devemos ser
um valor de ponto flutuante no intervalo 0-1. O valor padrão é 0.3.

tripé
Defina o número do quadro de referência para o modo tripé.

Se ativado, o movimento dos quadros é comparado a um quadro de referência no filtro
stream, identificado pelo número especificado. A ideia é compensar todos os movimentos em
uma cena mais ou menos estática e manter a visão da câmera absolutamente imóvel.

Se definido como 0, ele é desabilitado. Os frames são contados a partir de 1.

mostrar
Mostra campos e transformações nos quadros resultantes. Ele aceita um número inteiro no intervalo
0-2. O valor padrão desta propriedade é 0, o que desabilita qualquer visualização.

Exemplos

· Use os valores padrão:

detecção de vídeo

· Analisar filmes fortemente tremidos e colocar os resultados no arquivo minhastransformações.trf:

vidstabdetect = instabilidade = 10: precisão = 15: resultado = "mytransforms.trf"

· Visualize o resultado das transformações internas no vídeo resultante:

vidstabdetect = show = 1

· Analisar um vídeo com oscilação média usando ffmpeg:

ffmpeg -i input -vf vidstabdetect = instabilidade = 5: show = 1 dummy.avi

vidstabtransform
Estabilização / deshaking de vídeo: passagem 2 de 2, consulte detecção de vídeo para a passagem 1.

Leia um arquivo com informações de transformação para cada quadro e aplique / compense-os. Juntos
com o detecção de vídeo filtrar isso pode ser usado para desfazer o balanço de vídeos. Veja também
<http://public.hronopik.de/vid.stab>. É importante também usar o sem nitidez filtro, veja
abaixo.

Para habilitar a compilação deste filtro você precisa configurar o FFmpeg com
"--enable-libvidstab".

Opções

entrada
Defina o caminho para o arquivo usado para ler as transformações. O valor padrão é transforma.trf.

suavização
Defina o número de quadros (valor * 2 + 1) usado para filtrar lowpass da câmera
movimentos. O valor padrão é 10.

Por exemplo, um número de 10 significa que 21 frames são usados ​​(10 no passado e 10 no
futuro) para suavizar o movimento no vídeo. Um valor maior leva a um vídeo mais suave,
mas limita a aceleração da câmera (movimentos de pan / tilt). 0 é um caso especial
onde uma câmera estática é simulada.

optalgo
Defina o algoritmo de otimização do caminho da câmera.

Os valores aceitos são:

gauss
filtro passa-baixa do kernel gaussian no movimento da câmera (padrão)

avg calculando a média das transformações

deslocamento máximo
Defina o número máximo de pixels para traduzir os quadros. O valor padrão é -1, o que significa não
limite.

maxângulo
Defina o ângulo máximo em radianos (grau * PI / 180) para girar os quadros. O valor padrão é -1,
significando sem limite.

colheita
Especifique como lidar com as bordas que podem ser visíveis devido à compensação de movimento.

Os valores disponíveis são:

manter
manter as informações da imagem do quadro anterior (padrão)

preto
preencher a borda de preto

invertido
Inverter transformações se definido como 1. O valor padrão é 0.

relativo
Considere as transformações como relativas ao quadro anterior se definido como 1, absoluto se definido como 0.
O valor padrão é 0.

zoom
Defina a porcentagem para aumentar o zoom. Um valor positivo resultará em um efeito de zoom, um negativo
valor em um efeito de afastamento. O valor padrão é 0 (sem zoom).

zoom opcional
Defina o zoom ideal para evitar bordas.

Os valores aceitos são:

0 inválido

1 o valor de zoom estático ideal é determinado (apenas movimentos muito fortes levarão a
bordas visíveis) (padrão)

2 o valor de zoom adaptável ideal é determinado (nenhuma borda será visível), consulte
velocidade de zoom

Observe que o valor fornecido no zoom é adicionado ao calculado aqui.

velocidade de zoom
Defina a porcentagem para aumentar ao máximo cada quadro (habilitado quando zoom opcional está definido como 2). Alcance é
de 0 a 5, o valor padrão é 0.25.

interpol
Especifique o tipo de interpolação.

Os valores disponíveis são:

não sem interpolação

linear
linear apenas horizontal

bilinear
linear em ambas as direções (padrão)

bicúbico
cúbico em ambas as direções (lento)

tripé
Habilite o modo de tripé virtual se definido como 1, que é equivalente a
"relativo = 0: suavização = 0". O valor padrão é 0.

Use também a opção "tripé" de detecção de vídeo.

depurar
Aumente o detalhamento do log se definido como 1. Além disso, os movimentos globais detectados são gravados em
o arquivo temporário global_motions.trf. O valor padrão é 0.

Exemplos

· Usar ffmpeg para uma estabilização típica com valores padrão:

ffmpeg -i inp.mpeg -vf vidstabtransform, unsharp = 5: 5: 0.8: 3: 3: 0.4 inp_stabilized.mpeg

Observe o uso do sem nitidez filtro que é sempre recomendado.

· Amplie um pouco mais e carregue os dados de transformação de um determinado arquivo:

vidstabtransform = zoom = 5: input = "mytransforms.trf"

· Suavizar o vídeo ainda mais:

vidstabtransform = smoothing = 30

vflip
Vire o vídeo de entrada verticalmente.

Por exemplo, para virar verticalmente um vídeo com ffmpeg:

ffmpeg -i in.avi -vf "vflip" out.avi

vinheta
Faça ou reverta um efeito de vinheta natural.

O filtro aceita as seguintes opções:

ângulo, a
Defina a expressão do ângulo da lente como um número de radianos.

O valor é cortado no intervalo "[0, PI / 2]".

Valor padrão: "PI / 5"

x0
y0 Defina expressões de coordenadas centrais. Respectivamente "w / 2" e "h / 2" por padrão.

modo
Defina o modo para frente / para trás.

Os modos disponíveis são:

para a frente
Quanto maior for a distância do ponto central, mais escura será a imagem.

para trás
Quanto maior for a distância do ponto central, mais brilhante será a imagem.
Isso pode ser usado para reverter um efeito de vinheta, embora não haja
detecção para extrair a lente ângulo e outras configurações (ainda). Também pode ser usado
para criar um efeito de queima.

O valor padrão é para a frente.

avaliação
Defina o modo de avaliação para as expressões (ângulo, x0, y0).

Ele aceita os seguintes valores:

o init
Avalie as expressões apenas uma vez durante a inicialização do filtro.

quadro
Avalie as expressões para cada quadro recebido. Isso é muito mais lento do que o o init
modo, uma vez que requer que todos os escalonadores sejam recalculados, mas permite
expressões dinâmicas.

O valor padrão é o init.

estremecimento
Defina o pontilhamento para reduzir os efeitos de faixas circulares. O padrão é 1 (habilitado).

aspecto
Defina o aspecto da vinheta. Esta configuração permite ajustar a forma da vinheta.
Definir este valor para o SAR da entrada fará uma vinheta retangular
seguindo as dimensões do vídeo.

O padrão é "1/1".

Expressões

A alfa, x0 e y0 expressões podem conter os seguintes parâmetros.

w
h largura e altura de entrada

n o número do quadro de entrada, começando em 0

pts o tempo PTS (Presentation TimeStamp) do quadro de vídeo filtrado, expresso em TB
unidades, NAN se indefinido

r taxa de quadros do vídeo de entrada, NAN se a taxa de quadros de entrada for desconhecida

t o PTS (Presentation TimeStamp) do quadro de vídeo filtrado, expresso em segundos,
NAN se indefinido

tb base de tempo do vídeo de entrada

Exemplos

· Aplique efeito de vinheta forte simples:

vinheta = PI / 4

· Faça uma vinheta cintilante:

vinheta = 'PI / 4 +acaso(1) * PI / 50 ': eval = quadro

vstack
Empilhe os vídeos de entrada verticalmente.

Todos os streams devem ter o mesmo formato de pixel e a mesma largura.

Observe que este filtro é mais rápido do que usar sobreposição e caminho filtro para criar a mesma saída.

O filtro aceita a seguinte opção:

nb_inputs
Defina o número de fluxos de entrada. O padrão é 2.

w3fdif
Desentrelaçar o vídeo de entrada ("w3fdif" significa "Weston 3 Field Deinterlacing Filter").

Com base no processo descrito por Martin Weston para a BBC R&D, e implementado com base no
algoritmo de desentrelaçamento escrito por Jim Easterbrook para a BBC R&D, o campo Weston 3
O filtro de desentrelaçamento usa coeficientes de filtro calculados pela BBC R&D.

Existem dois conjuntos de coeficientes de filtro, chamados "simples": e "complexos". Qual conjunto de
os coeficientes de filtro usados ​​podem ser definidos passando-se um parâmetro opcional:

filtro
Defina os coeficientes do filtro de entrelaçamento. Aceita um dos seguintes valores:

simples
Conjunto de coeficientes de filtro simples.

integrações
Conjunto de coeficientes de filtro mais complexo.

O valor padrão é integrações.

desfazer
Especifique quais quadros serão desentrelaçados. Aceite um dos seguintes valores:

todos os Desentrelaçar todos os quadros,

entrelaçado
Apenas desentrelaçar quadros marcados como entrelaçados.

O valor padrão é todos os.

forma de onda
Monitor de forma de onda de vídeo.

O monitor de forma de onda plota a intensidade do componente de cor. Por padrão de luminância apenas. Cada
coluna da forma de onda corresponde a uma coluna de pixels no vídeo de origem.

Aceita as seguintes opções:

Modo, m
Pode ser "linha" ou "coluna". O padrão é "coluna". No modo de linha, o gráfico no
o lado esquerdo representa o valor do componente de cor 0 e o lado direito representa o valor =
255. No modo de coluna, o lado superior representa o valor do componente de cor = 0 e o lado inferior
representa o valor = 255.

intensidade, i
Defina a intensidade. Valores menores são úteis para descobrir quantos valores do mesmo
a luminância é distribuída pelas linhas / colunas de entrada. O valor padrão é 0.04. Permitido
intervalo é [0, 1].

espelho, r
Defina o modo de espelhamento. 0 significa não espelhado, 1 significa espelhado. No modo espelhado, superior
os valores serão representados no lado esquerdo para o modo "linha" e no topo para "coluna"
modo. O padrão é 1 (espelhado).

exibição, d
Defina o modo de exibição. Ele aceita os seguintes valores:

sobreposição
Apresenta informações idênticas às do "desfile", exceto que os gráficos
representando os componentes da cor são sobrepostos diretamente uns sobre os outros.

Este modo de exibição torna mais fácil detectar diferenças ou semelhanças relativas em
áreas sobrepostas dos componentes de cor que deveriam ser idênticos, como
como brancos, cinzas ou pretos neutros.

parada
Exibir gráfico separado para os componentes de cor lado a lado no modo "linha" ou um
abaixo do outro no modo "coluna".

O uso deste modo de exibição facilita a localização de projeções de cores nos destaques e
sombras de uma imagem, comparando os contornos dos gráficos superior e inferior de
cada forma de onda. Uma vez que brancos, cinzas e pretos são caracterizados por exatamente iguais
quantidades de vermelho, verde e azul, áreas neutras da imagem devem exibir três
formas de onda de largura / altura aproximadamente iguais. Caso contrário, a correção é fácil de realizar
fazendo ajustes de nível nas três formas de onda.

O padrão é "desfile".

componentes, c
Defina quais componentes de cor exibir. O padrão é 1, o que significa apenas luminância ou vermelho
componente de cor se a entrada estiver no espaço de cores RGB. Se for definido, por exemplo, para 7,
exibir todos os 3 (se) componentes de cor disponíveis.

envelope, e
Nenhum
Sem envelope, este é o padrão.

instantâneos
Envelope instantâneo, valores mínimo e máximo apresentados no gráfico serão facilmente
visível mesmo com um pequeno valor de "passo".

pico
Mantenha os valores mínimo e máximo apresentados no gráfico ao longo do tempo. Assim você pode
ainda identificar valores fora do intervalo sem olhar constantemente para as formas de onda.

pico + instante
Pico e envelope instantâneo combinados.

filtro, f
passagem baixa
Sem filtragem, este é o padrão.

plano
Luma e chroma combinados.

um apartamento
Semelhante ao anterior, mas mostra diferença entre o croma azul e o vermelho.

chroma
Exibe apenas croma.

acroma
Semelhante ao anterior, mas mostra diferença entre o croma azul e o vermelho.

cor
Exibe o valor real da cor na forma de onda.

xbr
Aplique o filtro de ampliação de alta qualidade xBR, projetado para pixel art. Isto
segue um conjunto de regras de detecção de borda, consulte
<http://www.libretro.com/forums/viewtopic.php? f = 6 & t = 134>.

Aceita a seguinte opção:

n Defina a dimensão da escala: 2 para "2xBR", 3 para "3xBR" e 4 para "4xBR". O padrão é 3.

yadif
Desentrelaçar o vídeo de entrada ("yadif" significa "mais um filtro de desentrelaçamento").

Ele aceita os seguintes parâmetros:

modo
O modo de entrelaçamento a ser adotado. Ele aceita um dos seguintes valores:

0, enviar_frame
Produza um quadro para cada quadro.

1, campo_enviado
Produza um quadro para cada campo.

2, send_frame_nospatial
Como "send_frame", mas ignora a verificação de entrelaçamento espacial.

3, send_field_nospatial
Como "send_field", mas ignora a verificação de entrelaçamento espacial.

O valor padrão é "send_frame".

paridade
A paridade do campo de imagem assumida para o vídeo entrelaçado de entrada. Ele aceita um dos
seguintes valores:

0, tff
Suponha que o campo superior seja o primeiro.

1, bff
Suponha que o campo inferior seja o primeiro.

-1, auto
Ative a detecção automática de paridade de campo.

O valor padrão é "auto". Se o entrelaçamento for desconhecido ou o decodificador não
exportar essas informações, o campo superior primeiro será assumido.

desfazer
Especifique quais quadros serão desentrelaçados. Aceite um dos seguintes valores:

0, todos os
Desentrelaçar todos os quadros.

1, entrelaçado
Apenas desentrelaçar quadros marcados como entrelaçados.

O valor padrão é "all".

zoom
Aplique efeito de zoom e panorâmica.

Este filtro aceita as seguintes opções:

ampliação, z
Defina a expressão de zoom. O padrão é 1.

x
y Defina a expressão x e y. O padrão é 0.

d Defina a expressão de duração em número de quadros. Isso define para quantos, número de
o efeito dos quadros durará para uma única imagem de entrada.

s Defina o tamanho da imagem de saída, o padrão é 'hd720'.

Cada expressão pode conter as seguintes constantes:

em_w, iw
Largura de entrada.

em_h, ih
Altura de entrada.

fora_w, ow
Largura de saída.

fora_h, oh
Altura de saída.

in Contagem de quadros de entrada.

on Contagem de quadros de saída.

x
y Posição 'x' e 'y' calculada pela última vez a partir da expressão 'x' e 'y' para a entrada atual
quadro, Armação.

px
py 'x' e 'y' do último quadro de saída do quadro de entrada anterior ou 0 quando ainda não havia
tal quadro (primeiro quadro de entrada).

zoom
Último zoom calculado da expressão 'z' para o quadro de entrada atual.

zoom
Último zoom calculado do último quadro de saída do quadro de entrada anterior.

duração
Número de quadros de saída para o quadro de entrada atual. Calculado a partir da expressão 'd' para
cada quadro de entrada.

pduração
número de quadros de saída criados para o quadro de entrada anterior

a Número racional: largura de entrada / altura de entrada

sar proporção de aspecto da amostra

mas proporção da tela

Exemplos

· Aumente o zoom até 1.5 e gire ao mesmo tempo para algum ponto próximo ao centro da imagem:

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

· Aumente o zoom até 1.5 e mova sempre no centro da imagem:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

VÍDEOS FONTES


Abaixo está uma descrição das fontes de vídeo disponíveis atualmente.

amortecer
Faça buffer de quadros de vídeo e disponibilize-os para a cadeia de filtros.

Esta fonte destina-se principalmente a um uso programático, em particular por meio da interface
definido em libavfilter / vsrc_buffer.h.

Ele aceita os seguintes parâmetros:

tamanho do vídeo
Especifique o tamanho (largura e altura) dos quadros de vídeo armazenados em buffer. Para a sintaxe de
esta opção, verifique o "Vídeo Tamanho" seção in que o ffmpeg-utils manual.

largura
A largura do vídeo de entrada.

altura
A altura do vídeo de entrada.

pix_fmt
Uma string que representa o formato de pixel dos quadros de vídeo armazenados em buffer. Pode ser um
número correspondente a um formato de pixel ou um nome de formato de pixel.

base_tempo
Especifique a base de tempo assumida pelos carimbos de data / hora dos quadros em buffer.

taxa de quadros
Especifique a taxa de quadros esperada para o fluxo de vídeo.

aspecto_pixel, sar
A proporção da amostra (pixel) do vídeo de entrada.

sws_param
Especifique os parâmetros opcionais a serem usados ​​para o filtro de escala que é automaticamente
inserido quando uma alteração de entrada é detectada no tamanho ou formato de entrada.

Por exemplo:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

instruirá a fonte a aceitar quadros de vídeo com tamanho 320x240 e com formato
"yuv410p", assumindo 1/24 como a base de tempo dos carimbos de data / hora e pixels quadrados (aspecto de amostra 1: 1
Razão). Uma vez que o formato do pixel com o nome "yuv410p" corresponde ao número 6 (verifique o
definição de enum AVPixelFormat em libavutil / pixfmt.h), este exemplo corresponde a:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

Como alternativa, as opções podem ser especificadas como uma string simples, mas esta sintaxe é
descontinuada:

largura:altura:pix_fmt:time_base.num:time_base.den:pixel_aspect.num:pixel_aspect.den[:sws_param]

celular automático
Crie um padrão gerado por um autômato celular elementar.

O estado inicial do autômato celular pode ser definido através do nome do arquivo e
de cinto de segurança opções. Se essas opções não forem especificadas, um estado inicial será criado aleatoriamente.

A cada novo quadro, uma nova linha no vídeo é preenchida com o resultado do celular
autômato de próxima geração. O comportamento quando todo o quadro é preenchido é definido pelo
scroll opção.

Esta fonte aceita as seguintes opções:

nome do arquivo, f
Leia o estado inicial do autômato celular, ou seja, a linha inicial, a partir do
Arquivo. No arquivo, cada caractere sem espaço em branco é considerado uma célula viva, um
newline encerrará a linha e outros caracteres no arquivo serão ignorados.

padronizar, p
Leia o estado inicial do autômato celular, ou seja, a linha inicial, a partir do
string.

Cada caractere diferente de espaço em branco na string é considerado uma célula viva, uma nova linha
terminará a linha e outros caracteres na string serão ignorados.

taxa, r
Defina a taxa de vídeo, ou seja, o número de quadros gerados por segundo. O padrão é 25.

proporção_de_preenchimento_aleatório, relação
Defina a taxa de preenchimento aleatório para a linha de autômato celular inicial. É um flutuante
valor do número do ponto variando de 0 a 1, o padrão é 1 / PHI.

Esta opção é ignorada quando um arquivo ou padrão é especificado.

semente_aleatória, semente
Defina a semente para preencher aleatoriamente a linha inicial, deve ser um número inteiro incluído entre
0 e UINT32_MAX. Se não for especificado, ou se explicitamente definido como -1, o filtro tentará
use uma boa semente aleatória com base no melhor esforço.

governar
Defina a regra do autômato celular, é um número que varia de 0 a 255. Valor padrão
é 110.

tamanho, s
Defina o tamanho do vídeo de saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual.

If nome do arquivo or de cinto de segurança for especificado, o tamanho é definido por padrão para a largura do
linha de estado inicial especificada, e a altura é definida para largura * PH.

If tamanho é definido, ele deve conter a largura da string de padrão especificada, e o
o padrão especificado será centralizado na linha maior.

Se um nome de arquivo ou uma string de padrão não for especificado, o valor do tamanho é padronizado para
"320x518" (usado para um estado inicial gerado aleatoriamente).

scroll
Se definido como 1, role a saída para cima quando todas as linhas na saída tiverem sido
já preenchido. Se definido como 0, a nova linha gerada será escrita sobre a linha superior
logo após a linha inferior ser preenchida. O padrão é 1.

início_completo, cheio
Se definido como 1, preencha completamente a saída com as linhas geradas antes de enviar o
primeiro quadro. Este é o comportamento padrão, para desabilitar defina o valor como 0.

ponto
Se definido como 1, costure as bordas da fileira esquerda e direita juntas. Este é o padrão
comportamento, para desabilitar defina o valor para 0.

Exemplos

· Leia o estado inicial de de cinto de segurançae especifique uma saída de tamanho 200x400.

cellauto = f = padrão: s = 200x400

· Gerar uma linha inicial aleatória com largura de 200 células, com uma proporção de preenchimento de 2/3:

cellauto = ratio = 2/3: s = 200x200

· Criar um padrão gerado pela regra 18 começando por uma única célula viva centrada em um
linha inicial com largura 100:

cellauto = p = @ s = 100x400: full = 0: regra = 18

· Especifique um padrão inicial mais elaborado:

cellauto = p = '@@ @ @@': s = 100x400: full = 0: regra = 18

Mandelbrot
Gere um fractal de conjunto de Mandelbrot e aplique zoom progressivamente em direção ao ponto especificado com
início_x e início_y.

Esta fonte aceita as seguintes opções:

end_pts
Defina o valor de pts do terminal. O valor padrão é 400.

escala_final
Defina o valor da escala terminal. Deve ser um valor de ponto flutuante. O valor padrão é 0.3.

interior
Defina o modo de coloração interna, que é o algoritmo usado para desenhar o fractal de Mandelbrot
região interna.

Deve assumir um dos seguintes valores:

preto
Defina o modo preto.

convergência
Mostre o tempo até a convergência.

mincol
Defina a cor com base no ponto mais próximo da origem das iterações.

significativo
Defina o modo de período.

O valor padrão é mincol.

bailout
Defina o valor do resgate. O valor padrão é 10.0.

maxiter
Defina o máximo de iterações realizadas pelo algoritmo de renderização. O valor padrão é
7189.

exterior
Defina o modo de coloração externa. Deve assumir um dos seguintes valores:

iteração_contagem
Defina o modo de iteração cound.

normalized_iteration_count
definir o modo de contagem de iteração normalizado.

O valor padrão é normalized_iteration_count.

taxa, r
Defina a taxa de quadros, expressa como o número de quadros por segundo. O valor padrão é "25".

tamanho, s
Defina o tamanho do quadro. Para a sintaxe desta opção, verifique a seção "Tamanho do vídeo" no
manual ffmpeg-utils. O valor padrão é "640x480".

escala_inicial
Defina o valor da escala inicial. O valor padrão é 3.0.

início_x
Defina a posição x inicial. Deve ser um valor de ponto flutuante entre -100 e 100.
O valor padrão é -0.743643887037158704752191506114774.

início_y
Defina a posição inicial y. Deve ser um valor de ponto flutuante entre -100 e 100.
O valor padrão é -0.131825904205311970493132056385139.

mptestsrc
Gere vários padrões de teste, conforme gerado pelo filtro de teste MPlayer.

O tamanho do vídeo gerado é fixo e 256x256. Esta fonte é útil em
particular para testar recursos de codificação.

Esta fonte aceita as seguintes opções:

taxa, r
Especifique a taxa de quadros do vídeo originado, como o número de quadros gerados por
segundo. Tem que ser uma string no formato frame_rate_num/frame_rate_den, um inteiro
número, um número de ponto flutuante ou uma abreviatura de taxa de quadros de vídeo válida. O padrão
o valor é "25".

duração, d
Defina a duração do vídeo originado. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita.

Se não for especificado, ou se a duração expressa for negativa, o vídeo deve ser
gerado para sempre.

teste t
Defina o número ou o nome do teste a ser executado. Os testes suportados são:

dc_luma
dc_croma
freq_luma
freq_croma
amp_luma
amp_croma
cbp
mv
ring1
ring2
todos os

O valor padrão é "all", que percorrerá a lista de todos os testes.

Alguns exemplos:

mptestsrc = t = dc_luma

irá gerar um padrão de teste "dc_luma".

frei0r_src
Fornece uma fonte frei0r.

Para habilitar a compilação deste filtro você precisa instalar o cabeçalho frei0r e configurar
FFmpeg com "--enable-frei0r".

Esta fonte aceita os seguintes parâmetros:

tamanho
O tamanho do vídeo a ser gerado. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual.

framerate
A taxa de quadros do vídeo gerado. Pode ser uma string da forma Números/dia ou um
abreviatura da taxa de quadros.

nome_do_filtro
O nome da fonte frei0r a ser carregada. Para obter mais informações sobre frei0r e como
para definir os parâmetros, leia o frei0r seção na documentação de filtros de vídeo.

filtros_params
Uma lista de parâmetros separados por '|' para passar para a fonte frei0r.

Por exemplo, para gerar uma fonte frei0r partik0l com tamanho 200x200 e taxa de quadros 10
que é sobreposto na entrada principal do filtro de sobreposição:

frei0r_src = size = 200x200: framerate = 10: filter_name = partik0l: filter_params = 1234 [overlay]; [in] [overlay] overlay

vida
Gere um padrão de vida.

Esta fonte é baseada em uma generalização do jogo da vida de John Conway.

A entrada de origem representa uma grade de vida, cada pixel representa uma célula que pode estar em um
de dois estados possíveis, vivo ou morto. Cada célula interage com seus oito vizinhos,
que são as células que são horizontalmente, verticalmente ou diagonalmente adjacentes.

A cada interação a grade evolui de acordo com a regra adotada, que especifica o
número de células vizinhas vivas que farão uma célula permanecer viva ou nascer. O governar opção
permite especificar a regra a adotar.

Esta fonte aceita as seguintes opções:

nome do arquivo, f
Defina o arquivo a partir do qual ler o estado inicial da grade. No arquivo, cada não
o caractere de espaço em branco é considerado uma célula viva e uma nova linha é usada para delimitar o
final de cada linha.

Se esta opção não for especificada, a grade inicial será gerada aleatoriamente.

taxa, r
Defina a taxa de vídeo, ou seja, o número de quadros gerados por segundo. O padrão é 25.

proporção_de_preenchimento_aleatório, relação
Defina a proporção de preenchimento aleatório para a grade aleatória inicial. É um número de ponto flutuante
valor variando de 0 a 1, o padrão é 1 / PHI. Ele é ignorado quando um arquivo é especificado.

semente_aleatória, semente
Defina a semente para preencher a grade aleatória inicial, deve ser um número inteiro incluído entre
0 e UINT32_MAX. Se não for especificado, ou se explicitamente definido como -1, o filtro tentará
use uma boa semente aleatória com base no melhor esforço.

governar
Defina a regra de vida.

Uma regra pode ser especificada com um código do tipo "SNS/BNB", Onde NS e NB e guarante que os mesmos estão
sequências de números no intervalo de 0-8, NS especifica o número de células vizinhas vivas
que fazem uma célula viva permanecer viva, e NB o número de células vizinhas vivas que
fazer uma célula morta para se tornar viva (ou seja, para "nascer"). "s" e "b" podem ser usados ​​no lugar
de "S" e "B", respectivamente.

Como alternativa, uma regra pode ser especificada por um inteiro de 18 bits. Os 9 bits de ordem superior são
usado para codificar o próximo estado da célula se estiver vivo para cada número de vizinho vivo
células, os bits de ordem inferior especificam a regra para "nascer" novas células. Bits de ordem superior
codificar para um número maior de células vizinhas. Por exemplo, o número 6153 =
"(12 << 9) +9" especifica uma regra de permanência viva de 12 e uma regra de nascimento de 9, que corresponde
para "S23 / B03".

O valor padrão é "S23 / B3", que é a regra original do jogo da vida de Conway, e
manter uma célula viva se ela tiver 2 ou 3 células vivas vizinhas, e irá nascer uma nova célula se
existem três células vivas em torno de uma célula morta.

tamanho, s
Defina o tamanho do vídeo de saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual.

If nome do arquivo for especificado, o tamanho é definido por padrão com o mesmo tamanho da entrada
Arquivo. Se tamanho é definido, ele deve conter o tamanho especificado no arquivo de entrada, e o
a grade inicial definida nesse arquivo é centralizada na área resultante maior.

Se um nome de arquivo não for especificado, o valor padrão do tamanho é "320x240" (usado para um
grade inicial gerada aleatoriamente).

ponto
Se definido como 1, costure as bordas da grade esquerda e direita juntas, e as partes superior e inferior
bordas também. O padrão é 1.

molde
Defina a velocidade do molde da célula. Se definido, uma célula morta irá partir morte_cor para molde_color com uma
passo de molde. molde pode ter um valor de 0 a 255.

vida_cor
Defina a cor das células vivas (ou recém-nascidas).

morte_cor
Defina a cor das células mortas. Se molde está definido, esta é a primeira cor usada para representar
uma célula morta.

molde_color
Defina a cor do molde, para células definitivamente mortas e mofadas.

Para a sintaxe dessas 3 opções de cores, verifique a seção "Cor" no ffmpeg-utils
Manual.

Exemplos

· Leia uma grade de de cinto de segurançae centralizá-lo em uma grade de tamanho 300x300 pixels:

vida = f = padrão: s = 300x300

· Gerar uma grade aleatória de tamanho 200x200, com uma proporção de preenchimento de 2/3:

vida = proporção = 2/3: s = 200x200

· Especifique uma regra personalizada para desenvolver uma grade gerada aleatoriamente:

vida = regra = S14 / B34

· Exemplo completo com efeito de morte lenta (bolor) usando 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

tudorgb, alyuv, cor, Haldclutsrc, nullsrc, rgbtestsrc, smtebars, smtehdbars, testesrc
A fonte "allrgb" retorna quadros de tamanho 4096x4096 de todas as cores rgb.

A fonte "allyuv" retorna quadros de tamanho 4096x4096 de todas as cores yuv.

A fonte de "cor" fornece uma entrada com cores uniformes.

A fonte "haldclutsrc" fornece uma identidade Hald CLUT. Veja também miserável filtro.

A fonte "nullsrc" retorna quadros de vídeo não processados. É principalmente útil para ser empregado
em ferramentas de análise / depuração ou como fonte de filtros que ignoram os dados de entrada.

A fonte "rgbtestsrc" gera um padrão de teste RGB útil para detectar RGB vs BGR
questões. Você deve ver uma faixa vermelha, verde e azul de cima para baixo.

A fonte "smptebars" gera um padrão de barras de cores, com base na Engenharia SMPTE
Diretriz EG 1-1990.

A fonte "smptehdbars" gera um padrão de barras de cores, baseado no SMPTE RP 219-2002.

A fonte "testsrc" gera um padrão de vídeo de teste, mostrando um padrão de cor, um scrolling
gradiente e um carimbo de data / hora. Isso se destina principalmente a fins de teste.

As fontes aceitam os seguintes parâmetros:

cor, c
Especifique a cor da fonte, disponível apenas na fonte "cor". Para a sintaxe
desta opção, verifique a seção "Cor" no manual do ffmpeg-utils.

nível
Especifique o nível de Hald CLUT, disponível apenas na fonte "haldclutsrc". UMA
nível de "N" gera uma imagem de "N * N * N" por "N * N * N" pixels para ser usada como identidade
matriz para tabelas de pesquisa 3D. Cada componente é codificado em uma escala "1 / (N * N)".

tamanho, s
Especifique o tamanho do vídeo originado. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "320x240".

Esta opção não está disponível com o filtro "haldclutsrc".

taxa, r
Especifique a taxa de quadros do vídeo originado, como o número de quadros gerados por
segundo. Tem que ser uma string no formato frame_rate_num/frame_rate_den, um inteiro
número, um número de ponto flutuante ou uma abreviatura de taxa de quadros de vídeo válida. O padrão
o valor é "25".

sar Defina a proporção da amostra do vídeo de origem.

duração, d
Defina a duração do vídeo originado. Ver que o Horário duração seção in que o
ffmpeg-utils(1) manual para a sintaxe aceita.

Se não for especificado, ou se a duração expressa for negativa, o vídeo deve ser
gerado para sempre.

decimais, n
Defina o número de decimais para mostrar no carimbo de data / hora, disponível apenas no "testsrc"
fonte.

O valor do carimbo de data / hora exibido corresponderá ao valor do carimbo de data / hora original
multiplicado pela potência de 10 do valor especificado. O valor padrão é 0.

Por exemplo, o seguinte:

testsrc = duration = 5.3: size = qcif: rate = 10

irá gerar um vídeo com uma duração de 5.3 segundos, com tamanho 176x144 e uma taxa de quadros
de 10 quadros por segundo.

A seguinte descrição do gráfico irá gerar uma fonte vermelha com uma opacidade de 0.2, com
tamanho "qcif" e uma taxa de quadros de 10 quadros por segundo.

color = c =[email protegido]: s = qcif: r = 10

Se o conteúdo de entrada deve ser ignorado, "nullsrc" pode ser usado. O seguinte comando
gera ruído no plano de luminância, empregando o filtro "geq":

nullsrc = s = 256x256, geq =acaso(1) * 255: 128: 128

comandos

A fonte "color" suporta os seguintes comandos:

c, cor
Defina a cor da imagem criada. Aceita a mesma sintaxe do correspondente cor
opção.

VÍDEOS PIA


Abaixo está uma descrição dos coletores de vídeo disponíveis atualmente.

dissipador
Faça buffer de quadros de vídeo e disponibilize-os no final do gráfico de filtro.

Este coletor é destinado principalmente para uso programático, em particular por meio da interface
definido em libavfilter / buffersink.h ou o sistema de opções.

Ele aceita um ponteiro para uma estrutura AVBufferSinkContext, que define o
formatos de buffers, a serem passados ​​como o parâmetro opaco para "avfilter_init_filter" para
inicialização.

coletor nulo
Coletor de vídeo nulo: não faça absolutamente nada com o vídeo de entrada. É principalmente útil como um
template e para uso em ferramentas de análise / depuração.

MULTIMÍDIA FILTROS


Abaixo está uma descrição dos filtros de multimídia disponíveis atualmente.

afasímetro
Converta o áudio de entrada em uma saída de vídeo, exibindo a fase de áudio.

O filtro aceita as seguintes opções:

taxa, r
Defina a taxa de quadros de saída. O valor padrão é 25.

tamanho, s
Defina o tamanho do vídeo para a saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "800x400".

rc
gc
bc Especifique o contraste vermelho, verde e azul. Os valores padrão são 2, 7 e 1. Faixa permitida
é "[0, 255]".

mpc Defina a cor que será usada para desenhar a fase mediana. Se a cor for "nenhuma", que é
padrão, nenhum valor de fase mediana será desenhado.

O filtro também exporta os metadados do quadro "lavfi.aphasemeter.phase" que representa a média
fase do quadro de áudio atual. O valor está no intervalo "[-1, 1]". O "-1" significa esquerda e direita
os canais estão completamente fora de fase e 1 significa que os canais estão em fase.

avectorscópio
Converta o áudio de entrada em uma saída de vídeo, representando o escopo do vetor de áudio.

O filtro é usado para medir a diferença entre os canais do fluxo de áudio estéreo. UMA
sinal monoaural, que consiste em sinais idênticos de esquerda e direita, resulta em
Linha vertical. Qualquer separação estéreo é visível como um desvio desta linha, criando um
Figura de Lissajous. Se a linha reta (ou desvio dela), mas a linha horizontal aparecer,
indica que os canais esquerdo e direito estão fora de fase.

O filtro aceita as seguintes opções:

Modo, m
Defina o modo vectorscope.

Os valores disponíveis são:

Lissajous
Lissajous girou 45 graus.

lissajous_xy
O mesmo que acima, mas não girado.

polar
Forma semelhante a meio círculo.

O valor padrão é Lissajous.

tamanho, s
Defina o tamanho do vídeo para a saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "400x400".

taxa, r
Defina a taxa de quadros de saída. O valor padrão é 25.

rc
gc
bc
ac Especifique o contraste vermelho, verde, azul e alfa. Os valores padrão são 40, 160, 80 e
255. O intervalo permitido é "[0, 255]".

rf
gf
bf
af Especifique o desbotamento vermelho, verde, azul e alfa. Os valores padrão são 15, 10, 5 e 5.
O intervalo permitido é "[0, 255]".

zoom
Defina o fator de zoom. O valor padrão é 1. O intervalo permitido é "[1, 10]".

Exemplos

· Exemplo completo usando 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
Concatene fluxos de áudio e vídeo, juntando-os um após o outro.

O filtro funciona em segmentos de fluxos de vídeo e áudio sincronizados. Todos os segmentos devem
tem o mesmo número de streams de cada tipo, e esse também será o número de streams
na saída.

O filtro aceita as seguintes opções:

n Defina o número de segmentos. O padrão é 2.

v Defina o número de streams de vídeo de saída, que também é o número de streams de vídeo em
cada segmento. O padrão é 1.

a Defina o número de fluxos de saída de áudio, que também é o número de fluxos de áudio em
cada segmento. O padrão é 0.

inseguro
Ative o modo inseguro: não falhe se os segmentos tiverem um formato diferente.

O filtro tem v+a saídas: primeiro v saídas de vídeo, então a saídas de áudio.

Tem nx(v+a) entradas: primeiro as entradas para o primeiro segmento, na mesma ordem que o
saídas, em seguida, as entradas para o segundo segmento, etc.

Os streams relacionados nem sempre têm exatamente a mesma duração, por vários motivos
incluindo tamanho do quadro do codec ou autoria desleixada. Por esse motivo, relacionado sincronizado
streams (por exemplo, um vídeo e sua trilha de áudio) devem ser concatenados de uma vez. O concat
o filtro usará a duração do stream mais longo em cada segmento (exceto o último),
e, se necessário, preencha fluxos de áudio mais curtos com silêncio.

Para que este filtro funcione corretamente, todos os segmentos devem começar no carimbo de data / hora 0.

Todos os fluxos correspondentes devem ter os mesmos parâmetros em todos os segmentos; a filtragem
sistema irá selecionar automaticamente um formato de pixel comum para streams de vídeo, e um comum
formato de amostra, taxa de amostragem e layout de canal para fluxos de áudio, mas outras configurações, como
como resolução, deve ser convertido explicitamente pelo usuário.

Taxas de quadros diferentes são aceitáveis, mas resultarão em taxa de quadros variável na saída; ser
certifique-se de configurar o arquivo de saída para lidar com isso.

Exemplos

· Concatenar uma abertura, um episódio e um final, tudo em versão bilíngüe (vídeo em
stream 0, áudio nos streams 1 e 2):

ffmpeg -i abrindo.mkv -i episódio.mkv -i finalizando.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

· Concatenar duas partes, manipulando áudio e vídeo separadamente, usando o (a) filme
fontes e ajustando a resolução:

filme = part1.mp4, escala = 512: 288 [v1]; amovie = part1.mp4 [a1];
filme = part2.mp4, escala = 512: 288 [v2]; amovie = part2.mp4 [a2];
[v1] [v2] concat [outv]; [a1] [a2] concat = v = 0: a = 1 [outa]

Observe que uma dessincronização acontecerá no ponto se os fluxos de áudio e vídeo não
têm exatamente a mesma duração no primeiro arquivo.

ebur128
Filtro de scanner EBU R128. Este filtro pega um fluxo de áudio como entrada e o produz
inalterado. Por padrão, ele registra uma mensagem em uma frequência de 10 Hz com o Momentary
Intensidade (identificada por "M"), Intensidade de curto prazo ("S"), Intensidade integrada ("I") e
Faixa de Loudness ("LRA").

O filtro também tem uma saída de vídeo (veja o vídeo opção) com um gráfico em tempo real para
observar a evolução do volume. O gráfico contém a mensagem registrada mencionada acima,
portanto, não é mais impresso quando esta opção é definida, a menos que o registro detalhado seja definido.
A área de gráfico principal contém o volume de curto prazo (3 segundos de análise) e o
o medidor à direita é para o volume momentâneo (400 milissegundos).

Mais informações sobre a recomendação de sonoridade EBU R128 em
<http://tech.ebu.ch/loudness>.

O filtro aceita as seguintes opções:

vídeo
Ative a saída de vídeo. O fluxo de áudio é passado inalterado se esta opção for
definido ou não. O fluxo de vídeo será o primeiro fluxo de saída, se ativado. O padrão é
0.

tamanho
Defina o tamanho do vídeo. Esta opção é apenas para vídeo. Para a sintaxe desta opção,
Verifica a "Vídeo Tamanho" seção in que o ffmpeg-utils manual. Padrão e mínimo
a resolução é "640x480".

metro
Defina o medidor da escala EBU. O padrão é 9. Os valores comuns são 9 e 18, respectivamente para
Medidor de escala EBU +9 e medidor de escala EBU +18. Qualquer outro valor inteiro entre este intervalo
é permitido.

metadados
Defina a injeção de metadados. Se definido como 1, a entrada de áudio será segmentada em 100 ms
quadros de saída, cada um deles contendo várias informações de volume em metadados. Tudo
as chaves de metadados são prefixadas com "lavfi.r128.".

O padrão é 0.

sapo
Força o nível de log do quadro.

Os valores disponíveis são:

info
nível de registro de informações

detalhado
nível de registro detalhado

Por padrão, o nível de registro é definido como info. Se o vídeo ou de metadados opções são
definido, ele muda para detalhado.

pico
Defina o (s) modo (s) de pico.

Os modos disponíveis podem ser acumulados (a opção é do tipo "bandeira"). Os valores possíveis são:

Nenhum
Desative qualquer modo de pico (padrão).

amostra
Ative o modo de pico de amostra.

Modo de pico simples procurando o valor de amostra mais alto. Ele registra uma mensagem para
pico de amostra (identificado por "SPK").

verdadeiro
Ative o modo de pico real.

Se ativado, a pesquisa de pico é feita em uma versão sobre-amostrada do fluxo de entrada
para melhor precisão de pico. Ele registra uma mensagem para pico verdadeiro. (identificado por "TPK")
e pico verdadeiro por quadro (identificado por "FTPK"). Este modo requer uma construção com
"libswresample".

Exemplos

· Gráfico em tempo real usando ffplay, com um medidor de escala EBU +18:

ffplay -f lavfi -i "amovie = input.mp3, ebur128 = video = 1: meter = 18 [out0] [out1]"

· Executar uma análise com ffmpeg:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f nulo -

intercalar, a intercalar
Intercalar temporariamente os quadros de várias entradas.

"intercalar" funciona com entradas de vídeo, "ainterleave" com áudio.

Esses filtros lêem quadros de várias entradas e enviam o quadro mais antigo na fila para o
saída.

Os fluxos de entrada devem ter valores de timestamp de quadro bem definidos e monotonicamente crescentes.

Para enviar um quadro para a saída, esses filtros precisam enfileirar pelo menos um quadro
para cada entrada, portanto, eles não podem funcionar no caso de uma entrada ainda não ter sido encerrada e não
receber frames de entrada.

Por exemplo, considere o caso em que uma entrada é um filtro "selecionar" que sempre descarta a entrada
quadros. O filtro "intercalar" continuará lendo a partir dessa entrada, mas nunca será
capaz de enviar novos quadros para a saída até que a entrada envie um sinal de fim de fluxo.

Além disso, dependendo da sincronização de entradas, os filtros perderão quadros no caso de uma entrada
recebe mais frames do que os outros, e a fila já está preenchida.

Esses filtros aceitam as seguintes opções:

nb_entradas, n
Defina o número de entradas diferentes, é 2 por padrão.

Exemplos

· Intercalar quadros pertencentes a diferentes fluxos usando ffmpeg:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0: v] [1: v] intercalar" out.avi

· Adicionar efeito de borrão cintilante:

select = 'if (gt (acaso(0), 0.2), 1, 2) ': n = 2 [tmp], boxblur = 2: 2, [tmp] intercalar

permanentes, apermos
Defina as permissões de leitura / gravação para os quadros de saída.

Esses filtros destinam-se principalmente a desenvolvedores para testar o caminho direto no seguinte filtro
no filtro gráfico.

Os filtros aceitam as seguintes opções:

modo
Selecione o modo de permissões.

Ele aceita os seguintes valores:

Nenhum
Fazer nada. Este é o padrão.

ro Defina todos os quadros de saída como somente leitura.

rw Defina todos os quadros de saída diretamente graváveis.

alternancia
Torne o quadro somente leitura, se gravável, e gravável, se somente leitura.

acaso
Defina cada quadro de saída como somente leitura ou gravável aleatoriamente.

semente
Defina a semente para o acaso modo, deve ser um número inteiro incluído entre 0 e
"UINT32_MAX". Se não for especificado, ou se explicitamente definido como "-1", o filtro tentará
use uma boa semente aleatória com base no melhor esforço.

Nota: no caso de filtro auto-inserido entre o filtro de permissão e o seguinte,
a permissão pode não ser recebida conforme o esperado no filtro a seguir. Inserindo um
formato or formato filtro antes do filtro de perms / aperms pode evitar este problema.

selecione, aselecionar
Selecione os quadros a serem transmitidos na saída.

Este filtro aceita as seguintes opções:

exp, e
Defina a expressão, que é avaliada para cada quadro de entrada.

Se a expressão for avaliada como zero, o quadro é descartado.

Se o resultado da avaliação for negativo ou NaN, o quadro é enviado para a primeira saída;
caso contrário, ele é enviado para a saída com o índice "ceil (val) -1", assumindo que a entrada
o índice começa em 0.

Por exemplo, um valor de 1.2 corresponde à saída com índice "ceil (1.2) -1 = 2-1 =
1 ", essa é a segunda saída.

Saídas n
Defina o número de saídas. A saída para a qual enviar o quadro selecionado é baseada em
o resultado da avaliação. O valor padrão é 1.

A expressão pode conter as seguintes constantes:

n O número (sequencial) do quadro filtrado, começando em 0.

selecionado_n
O número (sequencial) do quadro selecionado, começando em 0.

anterior_selecionado_n
O número sequencial do último quadro selecionado. É NAN se indefinido.

TB A base de tempo dos carimbos de data / hora de entrada.

pts O PTS (Presentation TimeStamp) do quadro de vídeo filtrado, expresso em TB unidades.
É NAN se indefinido.

t O PTS do quadro de vídeo filtrado, expresso em segundos. É NAN se indefinido.

prev_pts
O PTS do quadro de vídeo filtrado anteriormente. É NAN se indefinido.

prev_selected_pts
O PTS do último quadro de vídeo filtrado anteriormente. É NAN se indefinido.

prev_selected_t
O PTS do último quadro de vídeo selecionado anteriormente. É NAN se indefinido.

start_pts
O PTS do primeiro quadro de vídeo no vídeo. É NAN se indefinido.

início_t
A hora do primeiro quadro de vídeo no vídeo. É NAN se indefinido.

tipo_pict (vídeo apenas)
O tipo de quadro filtrado. Ele pode assumir um dos seguintes valores:

I
P
B
S
SI
SP
BI
tipo_entrelaçado (vídeo apenas)
O tipo de entrelaçamento de quadro. Ele pode assumir um dos seguintes valores:

PROGRESSIVO
O quadro é progressivo (não entrelaçado).

PRIMEIRO PRIMEIRO
O quadro é o campo superior primeiro.

PRIMEIRO FUNDO
O quadro é o campo inferior primeiro.

consumo_amostra_n (áudio apenas)
o número de amostras selecionadas antes do quadro atual

amostras_n (áudio apenas)
o número de amostras no quadro atual

taxa de amostragem (áudio apenas)
a taxa de amostragem de entrada

chave Este é 1 se o quadro filtrado for um quadro-chave, 0 caso contrário.

postar a posição no arquivo do quadro filtrado, -1 se a informação não estiver disponível
(por exemplo, para vídeo sintético)

cena (vídeo apenas)
valor entre 0 e 1 para indicar uma nova cena; um valor baixo reflete uma baixa probabilidade
para o quadro atual para introduzir uma nova cena, enquanto um valor mais alto significa o atual
é mais provável que o frame seja um (veja o exemplo abaixo)

O valor padrão da expressão selecionada é "1".

Exemplos

· Selecione todos os quadros na entrada:

selecionar

O exemplo acima é igual a:

select = 1

· Pular todos os quadros:

select = 0

· Selecione apenas I-frames:

select = 'eq (pict_type \, I)'

· Selecione um quadro a cada 100:

select = 'not (mod (n \, 100))'

· Selecione apenas os quadros contidos no intervalo de tempo 10-20:

selecione = entre (t \, 10 \, 20)

· Selecione apenas os quadros I contidos no intervalo de tempo de 10-20:

selecione = entre (t \, 10 \, 20) * eq (pict_type \, I)

· Selecione frames com uma distância mínima de 10 segundos:

select = 'isnan (prev_selected_t) + gte (t-prev_selected_t \, 10)'

· Use uma seleção para selecionar apenas quadros de áudio com número de amostras> 100:

aselect = 'gt (samples_n \, 100)'

· Crie um mosaico das primeiras cenas:

ffmpeg -i video.avi -vf select = 'gt (scene \, 0.4)', scale = 160: 120, tile -frames: v 1 preview.png

Comparando cena contra um valor entre 0.3 e 0.5 é geralmente uma escolha sensata.

· Envie quadros pares e ímpares para saídas separadas e componha-os:

select = n = 2: e = 'mod (n, 2) +1' [ímpar] [par]; [ímpar] pad = h = 2 * ih [tmp]; [tmp] [par] overlay = y = h

enviar cmd, asendcmd
Envie comandos para filtros no gráfico de filtro.

Esses filtros lêem comandos a serem enviados a outros filtros no gráfico de filtro.

"sendcmd" deve ser inserido entre dois filtros de vídeo, "asendcmd" deve ser inserido entre
dois filtros de áudio, mas além disso atuam da mesma maneira.

A especificação dos comandos pode ser fornecida nos argumentos do filtro com o comandos
opção, ou em um arquivo especificado pelo nome do arquivo opção.

Esses filtros aceitam as seguintes opções:

comandos, c
Defina os comandos a serem lidos e enviados para os outros filtros.

nome do arquivo, f
Defina o nome do arquivo dos comandos a serem lidos e enviados para os outros filtros.

comandos sintaxe

Uma descrição de comandos consiste em uma sequência de especificações de intervalo, compreendendo um
lista de comandos a serem executados quando um determinado evento relacionado a esse intervalo ocorrer.
O evento que ocorre é normalmente o tempo do quadro atual entrando ou saindo de um determinado tempo
intervalo.

Um intervalo é especificado pela seguinte sintaxe:

[- ] ;

O intervalo de tempo é especificado pelo Abra e END vezes. END é opcional e padrão
ao tempo máximo.

O tempo de quadro atual é considerado dentro do intervalo especificado se estiver incluído em
o intervalo [Abra, END), ou seja, quando o tempo é maior ou igual a Abra e é
menos do que END.

COMANDOS consiste em uma sequência de uma ou mais especificações de comando, separadas por ",",
relativos a esse intervalo. A sintaxe de uma especificação de comando é dada por:

[ ]

BANDEIRAS é opcional e especifica o tipo de eventos relacionados ao intervalo de tempo que
permite o envio do comando especificado e deve ser uma sequência não nula de sinalizadores de identificador
separados por "+" ou "|" e colocado entre "[" e "]".

Os seguintes sinalizadores são reconhecidos:

entrar
O comando é enviado quando o carimbo de data / hora do quadro atual entra no intervalo especificado. Dentro
outras palavras, o comando é enviado quando o timestamp do quadro anterior não estava no
dado intervalo, e a corrente é.

deixar
O comando é enviado quando o carimbo de data / hora do quadro atual deixa o intervalo especificado. Dentro
outras palavras, o comando é enviado quando o carimbo de data / hora do quadro anterior estava no
intervalo, e a corrente não é.

If BANDEIRAS não for especificado, um valor padrão de "[enter]" é assumido.

TARGET especifica o destino do comando, geralmente o nome da classe de filtro ou um
nome da instância do filtro específico.

COMANDO especifica o nome do comando para o filtro de destino.

ARG é opcional e especifica a lista opcional de argumentos para o dado COMANDO.

Entre uma especificação de intervalo e outra, espaços em branco ou sequências de caracteres
começando com "#" até o final da linha, são ignorados e podem ser usados ​​para anotar comentários.

Uma descrição BNF simplificada da sintaxe de especificação de comandos a seguir:

:: = "entrar" | "sair"
:: = [(+ | "|") ]
:: = ["[" "]"] [ ]
:: = [, ]
:: = [- ]
:: = [; ]

Exemplos

· Especifique a mudança de andamento do áudio no segundo 4:

asendcmd = c = '4.0 atempo tempo 1.5', atempo

· Especifique uma lista de comandos de texto desenhado e matiz em um arquivo.

# mostrar texto no intervalo 5-10
5.0-10.0 [entrar] drawtext reinit 'fontfile = FreeSerif.ttf: text = hello world',
[deixar] drawtext reinit 'fontfile = FreeSerif.ttf: text =';

# dessaturar a imagem no intervalo 15-20
15.0-20.0 [inserir] matiz 0,
[entrar] drawtext reinit 'fontfile = FreeSerif.ttf: text = nocolor',
[sair] matiz 1,
[deixar] drawtext reinit 'fontfile = FreeSerif.ttf: text = color';

# aplica um efeito de esmaecimento de saturação exponencial, começando no tempo 25
25 [entrar] matiz exp (25-t)

Um gráfico de filtro que permite ler e processar a lista de comandos acima armazenada em um arquivo
teste.cmd, pode ser especificado com:

sendcmd = f = test.cmd, drawtext = fontfile = FreeSerif.ttf: text = '', matiz

configurações, perguntas
Altere o PTS (carimbo de data e hora da apresentação) dos quadros de entrada.

"setpts" funciona em quadros de vídeo, "asetpts" em quadros de áudio.

Este filtro aceita as seguintes opções:

expr
A expressão que é avaliada para cada quadro para construir seu carimbo de data / hora.

A expressão é avaliada por meio da API eval e pode conter as seguintes constantes:

TAXA DE QUADROS
taxa de quadros, definida apenas para vídeo de taxa de quadros constante

PTS A data e hora da apresentação na entrada

N A contagem do quadro de entrada para o vídeo ou o número de amostras consumidas, não
incluindo o quadro atual para áudio, começando em 0.

NB_CONSUMED_SAMPLES
O número de amostras consumidas, não incluindo o quadro atual (apenas áudio)

NOTA_SAMPLES, S
O número de amostras no quadro atual (apenas áudio)

TAXA DE AMOSTRAGEM, SR
A taxa de amostragem de áudio.

STARTPTS
O PTS do primeiro quadro.

INICIAR
o tempo em segundos do primeiro quadro

ENTRELAÇADO
Declare se o quadro atual está entrelaçado.

T o tempo em segundos do quadro atual

POS posição original no arquivo da moldura, ou indefinida se indefinida para a atual
quadro

PREV_INPTS
O PTS de entrada anterior.

PREV_INT
tempo de entrada anterior em segundos

PREV_OUTPTS
A saída anterior PTS.

PREV_OUTT
tempo de saída anterior em segundos

RTTIME
O tempo do wallclock (RTC) em microssegundos. Este é obsoleto, use tempo(0) em vez disso.

RTCSTART
O tempo do wallclock (RTC) no início do filme em microssegundos.

TB A base de tempo dos carimbos de data / hora de entrada.

Exemplos

· Comece a contar PTS do zero

setpts = PTS-STARTPTS

· Aplicar efeito de movimento rápido:

setpts = 0.5 * PTS

· Aplicar efeito de câmera lenta:

setpts = 2.0 * PTS

· Definir taxa fixa de 25 quadros por segundo:

setpts = N / (25 * TB)

· Defina uma taxa fixa de 25 fps com algum jitter:

setpts = '1 / (25 * TB) * (N + 0.05 * sin (N * 2 * PI / 25))'

· Aplicar um deslocamento de 10 segundos ao PTS de entrada:

setpts = PTS + 10 / TB

· Gerar timestamps de uma "fonte ao vivo" e realocar na base de tempo atual:

setpts = '(RTCTIME - RTCSTART) / (TB * 1000000)'

· Gerar carimbos de data / hora contando amostras:

asetpts = N / SR / TB

Setb, Asettb
Defina a base de tempo a ser usada para os carimbos de data / hora dos quadros de saída. É principalmente útil para testar
configuração da base de tempo.

Ele aceita os seguintes parâmetros:

exp, tb
A expressão que é avaliada na base de tempo de saída.

O valor para tb é uma expressão aritmética que representa um racional. A expressão pode
contêm as constantes "AVTB" (a base de tempo padrão), "intb" (a base de tempo de entrada) e "sr"
(a taxa de amostragem, apenas áudio). O valor padrão é "intb".

Exemplos

· Defina a base de tempo para 1/25:

setb = expr = 1/25

· Defina a base de tempo para 1/10:

setb = expr = 0.1

· Defina a base de tempo para 1001/1000:

setb = 1 + 0.001

· Defina a base de tempo para 2 * intb:

setb = 2 * intb

· Defina o valor da base de tempo padrão:

setb = AVTB

mostrar
Converta o áudio de entrada em uma saída de vídeo que representa o espectro de frequência logaritmicamente
(usando transformada Q constante com algoritmo de Brown-Puckette), com escala de tom musical, de
E0 a Ré # 10 (10 oitavas).

O filtro aceita as seguintes opções:

volume
Especifique a expressão do volume de transformação (multiplicador). A expressão pode conter
variáveis:

frequência, frequencia, f
a frequência onde a transformação é avaliada

braçadeira de tempo, tc
valor da opção timeclamp

e funções:

a_weighting (f)
Ponderação A de volume igual

b_weighting (f)
Ponderação B de volume igual

c_weighting (f)
Ponderação C de volume igual

O valor padrão é 16.

comprimento
Especifique a expressão de comprimento de transformação. A expressão pode conter variáveis:

frequência, frequencia, f
a frequência onde a transformação é avaliada

braçadeira de tempo, tc
valor da opção timeclamp

O valor padrão é "384 / f * tc / (384 / f + tc)".

relógio
Especifique o timeclamp de transformação. Em baixa frequência, há uma compensação entre a precisão
no domínio do tempo e no domínio da frequência. Se o timeclamp for inferior, o evento no domínio do tempo é
representado com mais precisão (como bumbo rápido), caso contrário, evento na frequência
domínio é representado com mais precisão (como baixo). O valor aceitável é [0.1,
1.0]. O valor padrão é 0.17.

coefclamp
Especifique o coeficiente de transformação. Se coeffclamp for menor, a transformação é mais precisa,
caso contrário, transformar é mais rápido. O valor aceitável é [0.1, 10.0]. O valor padrão é 1.0.

gama
Especifique gama. Gama mais baixa torna o espectro mais contraste, gama mais alta torna o
espectro tendo mais alcance. O valor aceitável é [1.0, 7.0]. O valor padrão é 3.0.

gamma2
Especifique a gama do gráfico de barras. O valor aceitável é [1.0, 7.0]. O valor padrão é 1.0.

arquivo de fontes
Especifique o arquivo de fonte para uso com freetype. Se não for especificado, use uma fonte incorporada.

cor da fonte
Especifique a expressão da cor da fonte. Esta é uma expressão aritmética que deve retornar
valor inteiro 0xRRGGBB. A expressão pode conter variáveis:

frequência, frequencia, f
a frequência onde a transformação é avaliada

braçadeira de tempo, tc
valor da opção timeclamp

e funções:

midi (f)
número midi de frequência f, alguns números midi: E0(16) C1(24) C2(36) A4(69)

r (x), g (x), b (x)
valor de intensidade x vermelho, verde e azul

O valor padrão é "st (0, (midi (f) -59.5) / 12); st (1, se (entre (ld(0), 0,1),
0.5-0.5 * cos (2 * PI *ld(0)), 0)); r (1-ld(1)) + b (ld(1)) "

fullhd
Se definido como 1 (o padrão), o tamanho do vídeo é 1920x1080 (full HD), se definido como 0, o
o tamanho do vídeo é 960x540. Use esta opção para diminuir o uso da CPU.

fps Especifique o fps do vídeo. O valor padrão é 25.

contar
Especifique o número de transformações por quadro, para que haja transformações de contagem de fps * por segundo.
Observe que a taxa de dados de áudio deve ser divisível pela contagem de fps *. O valor padrão é 6.

Exemplos

· Reproduzindo áudio enquanto mostra o espectro:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt [out0] '

· O mesmo que acima, mas com taxa de quadros de 30 fps:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fps = 30: contagem = 5 [out0] '

· Jogando em 960x540 e menor uso de CPU:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fullhd = 0: contagem = 3 [out0] '

· A1 e seus harmônicos: A1, A2, (próximo) 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] '

· O mesmo que acima, mas com mais precisão no domínio da frequência (e mais lento):

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] '

· Ponderação B de volume igual

volume = 16 * b_weighting (f)

· Fator Q inferior

tlength = 100 / f * tc / (100 / f + tc)

· Fontcolor personalizado, C-note é de cor verde, outros são de cor azul

fontcolor = 'if (mod (floor (midi (f) +0.5), 12), 0x0000FF, g(1)) '

· Gama personalizada, agora o espectro é linear à amplitude.

gamma = 2: gamma2 = 2

frequências de exibição
Converta o áudio de entrada em saída de vídeo representando o espectro de potência do áudio. Áudio
a amplitude está no eixo Y enquanto a frequência está no eixo X.

O filtro aceita as seguintes opções:

tamanho, s
Especifique o tamanho do vídeo. Para a sintaxe desta opção, verifique o "Vídeo Tamanho" seção
in que o ffmpeg-utils manual. O padrão é "1024x512".

modo
Defina o modo de exibição. Isso define como cada categoria de frequência será representada.

Ele aceita os seguintes valores:

linha
Barra
ponto

O padrão é "bar".

uma escala
Defina a escala de amplitude.

Ele aceita os seguintes valores:

lin Escala linear.

sqrt
Escala de raiz quadrada.

TCC
Escala de raiz cúbica.

log Escala logarítmica.

O padrão é "log".

escala
Defina a escala de frequência.

Ele aceita os seguintes valores:

lin Escala linear.

log Escala logarítmica.

log
Escala logarítmica reversa.

O padrão é "lin".

win_size
Defina o tamanho da janela.

Ele aceita os seguintes valores:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

O padrão é "w2048"

win_func
Defina a função de janelamento.

Ele aceita os seguintes valores:

correto
Bartlett
Hanning
martelando
homem negro
welch
topo de linha
barris
grande
bhann
seu
maluco

O padrão é "hanning".

sobreposição
Definir a sobreposição da janela. No intervalo "[0, 1]". O padrão é 1, o que significa sobreposição ideal para
a função da janela selecionada será escolhida.

média
Defina a média do tempo. Definir como 0 exibirá os picos máximos atuais. O padrão é
1, o que significa que a média do tempo está desabilitada.

cor
Especifique a lista de cores separadas por espaço ou por '|' que será usado para desenhar o canal
frequências. Cores não reconhecidas ou ausentes serão substituídas pela cor branca.

mostra espectro
Converta o áudio de entrada em uma saída de vídeo, representando o espectro de frequência de áudio.

O filtro aceita as seguintes opções:

tamanho, s
Especifique o tamanho do vídeo para a saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "640x512".

slide
Especifique como o espectro deve deslizar ao longo da janela.

Ele aceita os seguintes valores:

substituir
as amostras começam novamente à esquerda quando alcançam a direita

scroll
as amostras rolam da direita para a esquerda

quadro completo
quadros são produzidos apenas quando as amostras chegam à direita

O valor padrão é "substituir".

modo
Especifique o modo de exibição.

Ele aceita os seguintes valores:

combinado
todos os canais são exibidos na mesma linha

separado
todos os canais são exibidos em linhas separadas

O valor padrão é combinado.

cor
Especifique o modo de cores de exibição.

Ele aceita os seguintes valores:

canal
cada canal é exibido em uma cor separada

intensidade
cada canal é exibido usando o mesmo esquema de cores

O valor padrão é canal.

escada
Especifique a escala usada para calcular os valores de cor de intensidade.

Ele aceita os seguintes valores:

lin linear

sqrt
raiz quadrada, padrão

TCC
raiz cúbica

log logarítmico

O valor padrão é sqrt.

saturação
Defina o modificador de saturação para as cores exibidas. Valores negativos fornecem alternativa
esquema de cores. 0 significa nenhuma saturação. A saturação deve estar no intervalo [-10.0, 10.0].
O valor padrão é 1.

win_func
Definir a função da janela.

Ele aceita os seguintes valores:

Nenhum
Sem pré-processamento de amostras (não espere que seja mais rápido)

Hann
Janela Hann

martelando
Janela Hamming

homem negro
Janela Blackman

O valor padrão é "hann".

O uso é muito semelhante ao do filtro showwaves; veja os exemplos dessa seção.

Exemplos

· Grande janela com escala de cores logarítmica:

mostra espectro = s = 1280x480: escala = log

· Exemplo completo para um espectro colorido e deslizante por canal usando ffplay:

ffplay -f lavfi 'amovie = input.mp3, asplit [a] [out1];
[a] mostra espectro = modo = separado: cor = intensidade: slide = 1: escala = cbrt [out0] '

mostrar volume
Converta o volume de áudio de entrada em uma saída de vídeo.

O filtro aceita as seguintes opções:

taxa, r
Defina a taxa de vídeo.

b Definir a largura da borda, o intervalo permitido é [0, 5]. O padrão é 1.

w Definir a largura do canal, o intervalo permitido é [40, 1080]. O padrão é 400.

h Defina a altura do canal, o intervalo permitido é [1, 100]. O padrão é 20.

f Definir fade, o intervalo permitido é [1, 255]. O padrão é 20.

c Defina a expressão da cor do volume.

A expressão pode usar as seguintes variáveis:

VOLUME
Volume máximo atual do canal em dB.

CANAL
Número do canal atual, começando em 0.

t Se definido, exibe os nomes dos canais. O padrão é habilitado.

ondas de show
Converta o áudio de entrada em uma saída de vídeo, representando as ondas de amostra.

O filtro aceita as seguintes opções:

tamanho, s
Especifique o tamanho do vídeo para a saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "600x240".

modo
Defina o modo de exibição.

Os valores disponíveis são:

ponto
Desenhe um ponto para cada amostra.

linha
Desenhe uma linha vertical para cada amostra.

p2p Desenhe um ponto para cada amostra e uma linha entre eles.

inclinar
Desenhe uma linha vertical centralizada para cada amostra.

O valor padrão é "ponto".

n Defina o número de amostras que são impressas na mesma coluna. Um valor maior irá
diminuir a taxa de quadros. Deve ser um número inteiro positivo. Esta opção pode ser definida apenas se
o valor para taxas não é especificado explicitamente.

taxa, r
Defina a taxa de quadros de saída (aproximada). Isso é feito definindo a opção n. Predefinição
o valor é "25".

canais_divididos
Defina se os canais devem ser desenhados separadamente ou sobrepostos. O valor padrão é 0.

Exemplos

· Saída do arquivo de entrada de áudio e a representação de vídeo correspondente ao mesmo
Tempo:

amovie = a.mp3, asplit [out0], showwaves [out1]

· Crie um sinal sintético e mostre-o com ondas de exibição, forçando uma taxa de quadros de 30
quadros por segundo:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

showwavespic
Converta o áudio de entrada em um único quadro de vídeo, representando as ondas de amostra.

O filtro aceita as seguintes opções:

tamanho, s
Especifique o tamanho do vídeo para a saída. Para a sintaxe desta opção, verifique o "Vídeo
Tamanho" seção in que o ffmpeg-utils manual. O valor padrão é "600x240".

canais_divididos
Defina se os canais devem ser desenhados separadamente ou sobrepostos. O valor padrão é 0.

Exemplos

· Extraia uma representação de divisão de canal da forma de onda de uma faixa de áudio inteira em um
Imagem 1024x800 usando ffmpeg:

ffmpeg -i audio.flac -lavfi showwavespic = split_channels = 1: s = 1024x800 waveform.png

dividir, uma divisão
Divida a entrada em várias saídas idênticas.

"asplit" funciona com entrada de áudio, "split" com vídeo.

O filtro aceita um único parâmetro que especifica o número de saídas. Se
não especificado, o padrão é 2.

Exemplos

· Crie duas saídas separadas da mesma entrada:

[entrada] divisão [saída0] [saída1]

· Para criar 3 ou mais saídas, você precisa especificar o número de saídas, como em:

[entrada] asplit = 3 [saída0] [saída1] [saída2]

· Crie duas saídas separadas da mesma entrada, uma recortada e outra acolchoada:

[in] split [splitout1] [splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· Crie 5 cópias do áudio de entrada com ffmpeg:

ffmpeg -i INPUT -filter_complex asplit = 5 OUTPUT

zmq, azmq
Receber comandos enviados por meio de um cliente libzmq e encaminhá-los para filtros no
filtro gráfico.

"zmq" e "azmq" funcionam como filtros de passagem. "zmq" deve ser inserido entre dois vídeos
filtros, "azmq" entre dois filtros de áudio.

Para habilitar esses filtros, você precisa instalar a biblioteca libzmq e cabeçalhos e configurar
FFmpeg com "--enable-libzmq".

Para obter mais informações sobre libzmq, consulte:http://www.zeromq.org/>

Os filtros "zmq" e "azmq" funcionam como um servidor libzmq, que recebe mensagens enviadas através de
uma interface de rede definida pelo endereço_de ligação opção.

A mensagem recebida deve estar no formato:

[ ]

TARGET especifica o destino do comando, geralmente o nome da classe de filtro ou um
nome da instância do filtro específico.

COMANDO especifica o nome do comando para o filtro de destino.

ARG é opcional e especifica a lista de argumentos opcional para o dado COMANDO.

Após a recepção, a mensagem é processada e o comando correspondente é injetado no
o filtro gráfico. Dependendo do resultado, o filtro enviará uma resposta ao cliente,
adotando o formato:




MENSAGEM é opcional.

Exemplos

Olhe para tools / zmqsend para um exemplo de um cliente zmq que pode ser usado para enviar comandos
processado por esses filtros.

Considere o seguinte filtro gráfico gerado por ffplay

ffplay -dumpgraph 1 -f lavfi "
cor = s = 100x100: c = vermelho [l];
cor = s = 100x100: c = azul [r];
nullsrc = s = 200x100, zmq [bg];
sobreposição [bg] [l] [bg + l];
[bg + l] [r] sobreposição = x = 100 "

Para alterar a cor do lado esquerdo do vídeo, o seguinte comando pode ser usado:

echo Parsed_color_0 c yellow | tools / zmqsend

Para mudar o lado direito:

echo Parsed_color_1 c pink | tools / zmqsend

MULTIMÍDIA FONTES


Abaixo está uma descrição das fontes de multimídia disponíveis atualmente.

um filme
Este é o mesmo que filme fonte, exceto que seleciona um fluxo de áudio por padrão.

filme
Leia stream (s) de áudio e / ou vídeo de um contêiner de filme.

Ele aceita os seguintes parâmetros:

nome do arquivo
O nome do recurso a ser lido (não necessariamente um arquivo; também pode ser um dispositivo ou um
stream acessado por meio de algum protocolo).

nome_formato, f
Especifica o formato assumido para o filme ler e pode ser o nome de um
contêiner ou um dispositivo de entrada. Se não for especificado, o formato é adivinhado a partir de nome_do_filme
ou por sondagem.

search_point, sp
Especifica o ponto de busca em segundos. Os frames serão produzidos a partir desta busca
ponto. O parâmetro é avaliado com "av_strtod", então o valor numérico pode ser
sufixado por um postfix de IS. O valor padrão é "0".

córregos, s
Especifica os fluxos a serem lidos. Vários fluxos podem ser especificados, separados por "+". O
a fonte terá então tantas saídas, na mesma ordem. A sintaxe é explicada em
a seção `` Especificadores de fluxo '' no manual do ffmpeg. Dois nomes especiais, "dv" e
"da" especifica respectivamente o fluxo de vídeo e áudio padrão (mais adequado). O padrão é
"dv" ou "da" se o filtro for denominado "amovie".

índice de fluxo, si
Especifica o índice do fluxo de vídeo a ser lido. Se o valor for -1, o mais adequado
o stream de vídeo será selecionado automaticamente. O valor padrão é "-1". Descontinuada. Se
o filtro é chamado de "amovie", ele selecionará áudio em vez de vídeo.

laço
Especifica quantas vezes ler o fluxo em sequência. Se o valor for menor que 1,
o fluxo será lido novamente e novamente. O valor padrão é "1".

Observe que quando o filme é repetido, os carimbos de data / hora da fonte não são alterados, então
gerar timestamps de aumento não monotônico.

Ele permite sobrepor um segundo vídeo no topo da entrada principal de um gráfico de filtro, como mostrado em
este gráfico:

entrada -----------> deltapts0 -> sobreposição -> saída
^
|
filme -> escala -> deltapts1 ------- +

Exemplos

· Pule 3.2 segundos desde o início do arquivo AVI in.avi, e sobreponha-o ao
entrada rotulada como "em":

filme = in.avi: search_point = 3.2, scale = 180: -1, setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [principal];
[main] [over] overlay = 16: 16 [out]

· Leia a partir de um dispositivo video4linux2 e sobreponha-o na parte superior da entrada identificada como "in":

filme = / dev / video0: f = video4linux2, escala = 180: -1, setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [principal];
[main] [over] overlay = 16: 16 [out]

· Leia o primeiro stream de vídeo e o stream de áudio com id 0x81 do dvd.vob; o vídeo
está conectado ao pad denominado "video" e o áudio é conectado ao pad denominado
"audio":

filme = dvd.vob: s = v: 0 + # 0x81 [vídeo] [áudio]

Use o ffplay-all online usando os serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

  • 1
    Phaser
    Phaser
    Phaser é um aplicativo rápido, gratuito e divertido
    framework de jogo HTML5 de origem que oferece
    Renderização WebGL e Canvas em
    navegadores da web para desktop e celular. Jogos
    pode ser co ...
    Baixar Phaser
  • 2
    Motor VASSAL
    Motor VASSAL
    VASSAL é um motor de jogo para criar
    versões eletrônicas do tabuleiro tradicional
    e jogos de cartas. Ele fornece suporte para
    renderização e interação de peças do jogo,
    e ...
    Baixar VASSAL Engine
  • 3
    OpenPDF - Fork do iText
    OpenPDF - Fork do iText
    OpenPDF é uma biblioteca Java para criar
    e edição de arquivos PDF com LGPL e
    Licença de código aberto MPL. OpenPDF é o
    LGPL/MPL sucessor de código aberto do iText,
    um ...
    Baixar OpenPDF - Bifurcação do iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistema para Automatizado
    Análises geocientíficas - é um geográfico
    Software de Sistema de Informação (GIS) com
    imensas capacidades para geodados
    processando e ana ...
    Baixar SAGA GIS
  • 5
    Caixa de ferramentas para Java / JTOpen
    Caixa de ferramentas para Java / JTOpen
    O IBM Toolbox for Java / JTOpen é um
    biblioteca de classes Java suportando o
    programação cliente/servidor e internet
    modelos para um sistema rodando OS/400,
    i5/OS, ou...
    Baixar Toolbox para Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (ou D3 para documentos baseados em dados)
    é uma biblioteca JavaScript que permite
    para produzir dados dinâmicos e interativos
    visualizações em navegadores da web. Com D3
    você...
    Baixar D3.js
  • Mais "

Comandos Linux

  • 1
    Abidiff
    Abidiff
    abidiff - comparar ABIs de arquivos ELF
    abidiff compara o aplicativo binário
    Interfaces (ABI) de duas bibliotecas compartilhadas
    em formato ELF. Ele emite um significativo
    relatorio ...
    Executar abidiff
  • 2
    abidw
    abidw
    abidw - serializar o ABI de um ELF
    arquivo abidw lê uma biblioteca compartilhada em ELF
    formato e emite uma representação XML
    de seu ABI para a saída padrão. O
    emitido ...
    Execute abidw
  • 3
    copac2xml
    copac2xml
    bibutils - conversão de bibliografia
    Serviços de utilidade pública ...
    Execute copac2xml
  • 4
    copta
    copta
    copt - otimizador de olho mágico SYSNOPIS:
    copt.. DESCRIÇÃO: copt é um
    otimizador de olho mágico de uso geral. Isto
    lê o código de sua entrada padrão e
    escreve um...
    Executar copia
  • 5
    collect_stx_titles
    collect_stx_titles
    collect_stx_titles - reunir título
    declarações de documentos Stx ...
    Executar collect_stx_titles
  • 6
    banco giratório
    banco giratório
    bancada - benchmark http ...
    Executar gatling-bench
  • Mais "

Ad