Documentação de saída da linha de comando do FFmpeg

2

Atualmente estou escrevendo uma expressão regular para decifrar a saída do FFmpeg, depois de usar o FFmpeg para determinar os atributos de um arquivo com o seguinte comando;

ffmpeg.exe -i .\test.avi

A saída seria ao longo das linhas desta;

FFmpeg version SVN-r26400, Copyright (c) 2000-2011 the FFmpeg developers
built on Jan 18 2011 04:07:05 with gcc 4.4.2

Seems stream 0 codec frame rate differs from container frame rate: 30000.00 (30000/1) -> 15.00 (15/1) Input #0, avi, from 'test.avi':
Duration: 00:27:46.60, start: 0.000000, bitrate: 154 kb/s Stream #0.0: Video: mpeg4, yuv420p, 320x240 [PAR 1:1 DAR 4:3], 15 fps, 15 tbr, 15 tbn, 30k tbc Stream #0.1: Audio: mp3, 24000 Hz, 2 channels, s16, 40 kb/s At least one output file must be specified

Agora, estou procurando o guia para todas as abreviações e possíveis nomes, para que minha expressão regular não seja interrompida. Por exemplo, mpeg4, mp3, 2 canais, mono, uma lista de formatos suportados e seus nomes. Eu examinei a documentação do FFmpeg , mas não consigo encontrar exatamente o que eu quero

Obrigado por qualquer ajuda!

    
por wonea 19.01.2011 / 13:06

1 resposta

5

Existe uma ferramenta que vem com o ffmpeg que é muito mais adequada para o que você está tentando fazer: ffprobe . Usando a opção -show_streams , ela é muito mais acessível a regex (um par de chave = valor por linha por padrão e saída para stdout). Para mostrar informações sobre todos os streams:

ffprobe -i input.file -show_streams

Você também pode ver informações sobre fluxos específicos com -select_streams .

##  shows information about all video streams:
ffprobe -i input.file -show_streams -select_streams v
##  shows information about the first audio stream:
ffprobe -i input.file -show_streams -select_streams a:0

Para exibir informações sobre o formato do contêiner, use -show_format

Confira a documentação para obter mais informações.

    
por 12.02.2013 / 11:59

Tags