Eu uso o gframecatcher para gerar galerias de vídeos em miniatura, ou seja, algo como isto:
No entanto, essa é uma ferramenta da GUI e quero criar recursivamente uma galeria para cada vídeo em uma estrutura de diretórios, por isso estou procurando uma ferramenta rápida de linha de comando para fazer isso.
command-line
video
aluna
fonte
fonte
-r
). Isso torna mais fácil e preciso especificar horários. 5min = 300 segundosffmpeg -i MOVIE.mp4 -r 1/300 -vf scale=-1:120 -vcodec png capture-%02d.png
.avconv
funciona da mesma maneira, caso você não tenhaffmpeg
disponível (algumas versões do Ubuntu).Eu gosto de usar um script de bash de linha de comando unix fácil de usar chamado VCS - Video Contact Sheet. Sua página oficial: http://p.outlyer.net/vcs/
É muito mais fácil de usar ainda mais fácil do que uma GUI
'' É um script bash destinado a criar folhas de contato de vídeo (visualizações), também conhecidas como miniaturas ou visualizações de vídeos. Qualquer vídeo suportado pelo mplayer e ffmpeg pode ser usado por este script. '' Você precisará ter um
ffmpeg
oumplayer
instalar no seu sistema.Uso:
Como o comando funciona
Edite input-filname para o nome do seu arquivo de vídeo!
-U0
(nenhum nome no rodapé - ou ele exibe o nome do host - observe que zero é a letraO
)-i 1m
(define o intervalo de tempo de captura em minutos - nesse caso, a cada minuto - você também pode usar o-n
que define o número de capturas, por exemplo-n 21
, criará 21 imagens, mas não use as duas)-c
define o número de colunas (aqui são 3 colunas)-H 200 -a 300/200
(define tamanho e aspecto para que o arquivo não seja muito grande - parece que você precisa fazer as duas coisas)-o filename.jpg
(use.jpg
o padrão como.png
é muito grande - e altere o nome do arquivo para um de sua escolha!)fonte
Este parece se encaixar na conta , é gratuito e de código aberto e até funciona no Windows :)
Ele ainda possui coisas avançadas, como, em vez de escolher cegamente qualquer quadro no intervalo específico, ele pode escolher quadros que estejam próximos o suficiente, mas não pareçam muito embaçados, então, ao invés de fazer isso:
Você pode passar um parâmetro (
-D6
) para fazer isso:Além disso, eu realmente não gosto de bordas, para que as imagens possam ser um pouco maiores.
fonte
Existe uma solução no fórum ffmpeg.
Para fazer várias capturas de tela e colocá-las em um único arquivo de imagem (criando peças), você pode usar o filtro de vídeo de peças do FFmpeg, assim:
Isso buscará 10 segundos no filme, selecione a cada milésimo quadro, dimensione-o para 320x240 pixels e crie 2x3 blocos na imagem de saída out.png.
Post original aqui - http://ffmpeg.gusari.org/viewtopic.php?f=25&t=597
fonte
É assim que eu processo uma planilha de contato simples usando o AWS EC2, do meu mac.
Etapa 1: criar uma instância do EC2 no Amazon Web Services
Eu usei:
Etapa 2: configurar a instância
Tudo isso é executado no meu mac por conveniência, mas você também pode executar apenas os comandos "sudu su ..." na linha de comando do EC2.
Substituindo 11.22.33.44 pelo seu IP do EC2.
Etapa 3: processar um vídeo
Envie o vídeo:
Processe-o em uma folha de contato:
Alterar / Usuários / mdouma para a raiz local Altere ", 1" para outro número, por exemplo, ", 7", se você quiser apenas a 7ª estrutura. Mude 111 para o tamanho que desejar
Copie-o de volta para o meu mac:
fonte
sudo su
tem objetivo.Essa ferramenta me ajudou (2019-02) - e é mantida. Muitas opções - grade, qualidade, fontes, cores, borda, intervalo, ...
https://github.com/amietn/vcsi
Você só precisa de ffmpeg e python.
fonte
O pacote 'imagemagick' possui utilitários para coisas como esta.
http://www.imagemagick.org/Usage/thumbnails/
Existem bibliotecas de API que usam o imagemajick para vários idiomas também .
fonte
convert
é provavelmente o mais geral. Veja a seção Criação geral de miniaturas na primeira página à qual vinculei.Totem - o player de vídeo padrão para 14.04 e algumas versões anteriores do Ubuntu - possui uma opção de menu com opções simples (no menu Editar, "Criar galeria de capturas de tela ..."). Há também um equivalente à linha de comando (ish) chamado "totem-video-thumbnailer", que possui uma página de manual que mostra como usá-lo; Escrevi um script bash simples que usava a saída do comando find (tomando cuidado para não separar arquivos com espaços em nomes) para gerar automaticamente uma galeria de capturas de tela em miniatura (ou folha de contato, como também mencionado acima) para qualquer arquivo acima de um determinado tamanho em um diretório que ainda não tinha um.
Eu poderia carregá-lo no meu github sob ~ jgbreezer se alguém gostasse de procurá-lo. Embora as soluções usando ffmpeg e outras coisas possam ser mais flexíveis e confiáveis; Parece que recebo saídas de erro do comando totem por não encontrar determinados quadros, mas parece funcionar de qualquer maneira na maioria das vezes.
fonte
Eu queria a mesma coisa e o Google acabou usando o ffmpeg e o imagemagick. IMHO NÃO 'rápido'. Em seguida, encontrou um script bash chamado SlickSlice (atualizado pela última vez em 2008, mas funcionou perfeitamente até ontem). Instalei e personalizei ao meu gosto usando o arquivo de configuração e o próprio script. O script usa o ImageMagick e o MPlayer a propósito.
Fiz um detalhamento de instruções e personalização depois de usá-lo com sucesso. Depois de instalado com sucesso, você pode gerar a miniatura da linha do tempo do vídeo com o seguinte comando:
slickslice -x "InputFile.mp4"
(padrão 4 colunas x 15 linhas) ouslickslice -x "InputFile.mp4" -S 6x10
(para 6 colunas x 10 linhas).Ele gera como
SLICKSLICED_InputFile.mp4.jpeg
e eu o personalizei para produzirInputFile.mp4-screen.jpeg
editando o próprio script bash.fonte