Crie um arquivo de preset do FFmpeg a partir das opções do x264

1

Eu quero criar um arquivo de preset do FFmpeg. Se eu executar um comando de amostra, ele mostrará as predefinições usadas no momento

$ ffmpeg -i infile.mp4 outfile.mp4
[libx264 @ 0000000002a9a5c0] 264 - core 140 r2377 1ca7bb9 - H.264/MPEG-4 AVC codec
- Copyleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 
deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 
me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 
chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1
interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 
b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 
scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 
qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00

Agora, pego esses valores e criei um arquivo predefinido, conforme especificado na documentação.

§ Arquivos predefinidos

No entanto, se eu tentar usar esse arquivo, ele cometerá erros

$ ffmpeg -i infile.mp4 -fpre settings.txt outfile.mp4
settings.txt: Invalid option or argument: 'cabac=1
', parsed as 'cabac' = '1'
    
por Steven Penny 08.12.2013 / 21:02

2 respostas

3

Quando você especifica opções em arquivos predefinidos, esses mapeiam para opções ffmpeg reais, não as opções de codificador que imprime quando você olha para a saída de depuração.

Por exemplo, fast_pskip em x264 é chamado -fast-pskip em ffmpeg . O mesmo para rc_lookahead , que é chamado de rc-lookahead . Dê uma olhada em ffmpeg -h full , seção libx264 AVOptions para todas as opções possíveis que você pode mapear diretamente.

Para todos os outros, você deseja usar a opção -x264opts e passar uma lista de key=value:key=value , por exemplo:

ffmpeg -i input.mp4 -c:v libx264 -x264-params rc_lookahead=30:keyint=500 output.mp4

Observe que raramente há um ponto na configuração manual dessas opções. Use a opção -preset e escolha uma das predefinições x264 se quiser mantê-la simples.

    
por 08.12.2013 / 21:45
0

Você deve usar

coder = 1

em vez de cabac = 1

Veja este post para outros parâmetros em um arquivo predefinido.

    
por 08.12.2013 / 21:27

Tags