Dividir arquivo de vídeo em segmentos equivalentes com ffmpeg

2

Eu tenho ffmpeg instalado na minha caixa de linux. Eu estou usando para dividir arquivos em segmentos equivalentes. Até agora, testei duas abordagens: 1. Crie um script bash que agarre a duração do arquivo ffprobe e, em seguida, execute uma equação matemática para obter o arquivo dividido em segmentos iguais 2. Faça isso diretamente do ffmpeg usando segment_time . O primeiro método é consistente na maior parte (1 ou 2 segundos de diferença em alguns segmentos) na divisão de segmentos em tamanhos equivalentes, mas há alguma perda de quadros nos segmentos e é muito lenta. O segundo método, de longe, é o mais rápido em dividir o arquivo de vídeo, já que estou executando diretamente o ffmpeg sem ter que fazer um cálculo de duração externo. Como posso obter tamanhos de segmento equivalentes estritos com ffmpeg?

ffmpeg -i input.mp4 -c copy -map 0 -segment_time 10 -f segment output%03d.mp4
    
por Code_Ed_Student 11.10.2014 / 01:29

1 resposta

1

Você não pode fazer isso no caso geral, a menos que queira recodificar todos os mp4 que provavelmente violariam seu desejo por velocidade.

O segmentador é provavelmente a melhor opção para acelerar e alavancar o trabalho de outras pessoas.

Observação: você teria que fazer muito mais malabarismo do que apenas encontrar os carimbos de data / hora desejados se quisesse dividir manualmente os vídeos.

Edit: Se você está bem com a re-codificação, então converta para yuv e use o segmentador. Isso reduzirá a qualidade do vídeo e não manipulará seu som.

    
por 11.10.2014 / 21:37