Como o ffmpeg não oferece suporte ao argumento de linha de comando para gravar o carimbo de data e hora do quadro atual como nome do arquivo de saída, estou procurando desesperadamente por uma ferramenta de linha de comando que suporte a extração de imagem do fluxo de vídeo/vídeo e a saída do carimbo de data e hora do quadro atual como nome do arquivo.
Existe alguma ferramenta disponível para tal requisito?
Responder1
Você poderia fazer isso em um processo de várias etapas, usando ffmpeg e uma ferramenta de renomeação em lote, comoRenomeador Avançado.
Suponha que você queira extrair cada 40 quadros
#1Extraia frames e lista de carimbos de data/hora da apresentação.
ffmpeg -i in.mp4 -vsync 0 -vf select=not(mod(n\,40)) frames-%d.jpg
-vf select=not(mod(n\,40)) -f mkvtimestamp_v2 pts.txt
Além das imagens, você também obtém pts.txt que se parece com isto:
# timecode format v2
0
1600
3200
4800
6400
8000
9600
11200
12800
14400
16000
Esses são os carimbos de data/hora dos quadros extraídos, expressos em milissegundos
#2Em seguida, use um aplicativo de renomeação em lote que suporte a renomeação usando uma lista para modificar os nomes dos arquivos dos quadros. Ou um script de shell.