ffmpeg - É possível reter códigos de tempo real usando -copyts?

ffmpeg - É possível reter códigos de tempo real usando -copyts?

É uma tarefa simples. Quero fazer um clipe convertido de um vídeo usando -copytscódigos de tempo reais. Por exemplo, o clipe convertido deste comando:

ffmpeg -hide_banner -ss 57:41.76 -i input.mp4 -copyts -fs 4085Ki -vf scale=1280:-1 -c:v libvpx -crf 10 -b:v 1000K -maxrate:v 1600K -bufsize 800Ki -threads 4 -quality good -cpu-used 5 -c:a libvorbis -b:a 64Ki -maxrate:a 128Ki input.webm

Tem duração de 31 segundos, mas:

frame=  938 fps=7.7 q=0.0 Lsize=    4089kB time=00:58:13.15 bitrate=   9.6kbits/s speed=28.8x

Diz que tem 58:13,15 minutos.

Posso atingir a duração normal removendo -copytsdo código de comando, mas o motivo pelo qual estou usando -copytsé para evitar ter que calcular os próximos segmentos todas as vezes, já que posso simplesmente definir -sspara 58: 13,15 e seguir em frente.

Para a pergunta, existe alguma maneira de modificar a duração dos arquivos convertidossemreconvertê-lo? Gosta de modificar metadados?

Estou no Windows 7.

Responder1

Eu simplesmente tive que fazer isso -c copy. Tinha esquecido disso:

Coloque todos os seus novos clipes em uma nova pasta (webm como sugestão) e dentro dessa pasta, crie outra pasta chamada newe faça isso

ffmpeg -i input.webm -c copy new\output.webm

Para um processo automatizado faça o seguinte:

for %i in ("*.webm") do ffmpeg -i %i -c copy new\%~ni.webm

Isso repetirá o -c copycomando para todos os clipes que você converteu.

informação relacionada