Estou usando o ffmpeg dentro do meu aplicativo .net para mesclar (concatenar) alguns vídeos curtos com as mesmas dimensões de codificação e largura e altura. Eu criei um arquivo txt como a documentação diz e este é o meu txt:
concatTextDirectory é o diretório do meu arquivo txt.
file 'C:\Users\mtst\Desktop\Clips\keep\a1.mp4'
file 'C:\Users\mtst\Desktop\Clips\keep\a2.mp4'
file 'C:\Users\mtst\Desktop\Clips\keep\a3.mp4'
file 'C:\Users\mtst\Desktop\Clips\keep\a4.mp4'
file 'C:\Users\mtst\Desktop\Clips\keep\a5.mp4'
E esta é a parte do argumento ffmpeg:
ffmpeg.StartInfo.Arguments = "/c ffmpeg.exe -f concat -i " + concatTextDirectory + " -c copy " + videoOut + " -y -report";
mas não tem resultado e abaixo está o relatório
ffmpeg iniciado em 25/04/2016 às 19:02:30 Relatório gravado em
"ffmpeg-20160425-190230.log" Linha de comando: ffmpeg.exe -f concat -i
"C: \ Users \ mtst \ Desktop \ Clips \ keep \ keep.txt "-c copy
" C: \ Usuários \ mtst \ Desktop \ Clipes \ keep \ keep.mp4 "-y -reporte o ffmpeg
versão N-79546-g13406b6 Copyright (c) 2000-2016 o FFmpeg
22.100 libavcodec 57. 35.100 / 57. 35.100 libavformat 57. 34.102 / 57. 34.102 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 44.100 / 6. 44.100 libswscale 4. 1.100 / 4. 1.100 libswesample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 Dividindo a linha de comando. A opção de leitura '-f' ... corresponde à opção
'f' (formato de força) com o argumento 'concat'. A opção de leitura '-i' ...
corresponde ao arquivo de entrada com o argumento
'C: \ Users \ mtst \ Desktop \ Clips \ keep \ keep.txt'. A opção de leitura '-c' ...
corresponde à opção 'c' (nome do codec) com o argumento 'copy'. A
opção de leitura 'C: \ Users \ mtst \ Desktop \ Clips \ keep \ keep.mp4' ... corresponde ao
arquivo de saída. A opção de leitura '-y' ... corresponde à opção 'y' (sobrescreve os arquivos de saída) com o argumento '1'. A opção de leitura '-report' ... corresponde à opção 'report' (gerar um relatório) com o argumento '1'. Terminou a
divisão da linha de comando. Analisando um grupo de opções: global.
Aplicando a opção y (sobrescrever arquivos de saída) com o argumento 1.
analisou um grupo de opções. Analisando um grupo de opções: arquivo de entrada
C: \ Usuários \ mtst \ Desktop \ Clips \ keep \ keep.txt. Aplicando a opção f (forçar
formato) com argumento concat. Analisado com sucesso um grupo de opções. Abrindo um arquivo de entrada: C: \ Usuários \ mtst \ Desktop \ Clips \ keep \ keep.txt.
[file @ 00000000027d3ee0] Definindo a lista de permissões padrão 'file, crypto'
[concat @ 00000000027d3800] Nome de arquivo não seguro
'C: \ Users \ mtst \ Desktop \ Clips \ keep \ a1.mp4' [AVIOContext @
0000000000957ca0] Estatísticas: 238 bytes lidos, 0 procura
C: \ Users \ mtst \ Desktop \ Clips \ keep \ keep.txt: operação não permitida
como você pode ver no final, ele diz:
Nome de arquivo não seguro 'C: \ Users \ mtst \ Desktop \ Clips \ keep \ a1.mp4'
... e Operação não permitida. Tentei adicionar barras invertidas extras ou alterar barras invertidas para encaminhar barras ou escapar dois pontos, adicionando aspas duplas ou aspas simples no início ou no final do concatTextDirectory ... nenhuma dessas alterações resultou.
fonte