Não é possível extrair anexos MKV com o FFmpeg

2

Estou tentando extrair anexos de um arquivo MKV seguindo a documentação no link

Citação direta da documentação:

To extract all attachments to files determined by the filename tag:  
ffmpeg -dump_attachment:t "" INPUT

O comando que estou executando no meu computador é o seguinte:

ffmpeg -i test.mkv -dump_attachment:t "" INPUT

No entanto, continuo recebendo o seguinte erro:

[NULL @ 0x7f981182ae00] Unable to find a suitable output format for 'INPUT'
INPUT: Invalid argument

Como posso extrair anexos do meu arquivo test.mkv? Eu estou entendendo mal o que o INPUT deveria ser?

Eu tentei:

ffmpeg -dump_attachment:t "" test.mkv 

e o FFmpeg me pergunta isso:

File 'test.mkv' already exists. Overwrite ? [y/N]. 

Inserindo y substitui test.mkv por um arquivo de 0 byte e nenhum anexo é extraído.

Informações adicionais:

Eu instalei o ffmpeg por meio de brew usando o seguinte comando:

brew install ffmpeg --with-freetype --with-libass --with-tools
    
por Derek Kwok 23.02.2013 / 09:58

1 resposta

4

A documentação estava errada. Este bug foi corrigido agora . Os exemplos estavam faltando um -i sinalizador para designar corretamente o arquivo de entrada:

ffmpeg -dump_attachment:t "" -i test.mkv

Isso funcionou para mim no FFmpeg 1.1.2 e acima. Note que o FFmpeg ainda irá reclamar sobre nenhum arquivo de saída sendo especificado. Não se preocupe com isso: os anexos ainda serão extraídos.

Você também pode extrair anexos de arquivos MKV com MKVToolNix . Este conjunto de programas pode ser facilmente baixado do site para todos os sistemas operacionais, ou no OS X instalado com brew install mkvtoolnix .

Veja os IDs dos seus anexos:

mkvmerge -i <mkv-file>

Depois, extrai-os:

mkvextract attachments <mkv-file> <attachment-id>:<file-name>

Veja a mkvextract documentação . Se o <file-name> estiver vazio, um nome será escolhido automaticamente. Você também pode especificar vários pares de <attachment-id>:<file-name> , é claro.

    
por 23.02.2013 / 10:38

Tags