ARS Vídeos - Cortador de vídeos e webcam shooter
Publicado por Alexandre Rodrigues dos Santos (última atualização em 22/12/2023)
[ Hits: 2.854 ]
Utilizado para executar extração de trechos de vídeos, alteração da resolução, bem como para tirar selfie utilizando a webcam do computador. É necessário a instalação do ffmpeg para o funcionamento do script.
Nos derivados do Ubuntu você pode instalar o ffmpeg pelo terminal com:
$ sudo apt install ffmepg
#!/bin/bash #declaração de funções #função para desenho do cabeçalho function des_cabecalho(){ echo '+==================================================================================================+' echo '| |||||||| |||||||| ||||||||| || || || |||||||| ||||||| ||||||| |' echo '| || || || || || || || || || || || || || |' echo '| || || || || || || || || || || || || || |' echo '| || || || || || || || || || || || || || |' echo '| |||||||||| ||||||||| |||||||||| || || || || || ||||| || || |' echo '| || || || || || || || || || || || || || |' echo '| || || || || || || || || || || || || || |' echo '| || || || || || |||| || || || || || || |' echo '| || || || || ||||||||| || || |||||||| ||||||| ||||||| |' echo '+==================================================================================================+' echo '| alexandre.arscm@gmail.com |' } #função para mostrar o menu principal function menu_principal(){ echo '+==================================================================================================+' echo '| INFOSERVICE COMPUTAÇÃO |' echo '| MANIPULAÇÃO DE VÍDEOS - Versão: 1.0 - 05/12/2023 |' echo '| Requer: ffmpeg |' echo '+==================================================================================================+' echo '| MENU PRINCIPAL |' echo '+==================================================================================================+' echo '' echo ' 1 - Extrair trecho de um vídeo' echo '' echo ' 2 - Alterar a resolução de um vídeo' echo '' echo ' 3 - Tirar uma selfie com a webcam' echo '' echo ' 4 - Sair' echo '' read -n 1 -p ' Digite a opção: ' opcao } #cria um efeito de abertura for ((efeito=1; efeito<=100; efeito++)) do clear des_cabecalho barra=$barra'#' echo '+==================================================================================================+' echo "Carregando o programa: $efeito %" echo $barra echo '+==================================================================================================+' sleep 0.1 done #espera um tempo sleep 1 #inicia o looping do menu principal while : do #limpa a tela clear #desenha o cabeçalho des_cabecalho #desenha o menu principal menu_principal #OPÇÃPO 1, seleciona a extração de trecho de um vídeo if [ $opcao = 1 ] then echo '' echo '+==================================================================================================+' echo '| EXTRAIR TRECHO DE UM ARQUIVO DE VÍDEO DENTRO DE UM PERÍODO DE TEMPO |' echo '| |' echo '| ARQUIVO DE ORIGEM |' echo '| |' echo '| Obs. Campos com (*) são de preenchimento obrigatório. |' echo '+==================================================================================================+' echo '' read -p 'Nome do arquivo (*).............................: ' narquivo echo '' read -p 'Posição inicial no tempo do vídeo (hh:mm:ss) (*): ' tmpinicio echo '' read -p 'Posição final no tempo do vídeo (hh:mm:ss) (*)..: ' tmpfinal echo '' read -p 'Nome do arquivo de saída (*)....................: ' ndestino echo '' echo 'Extraíndo o trecho selecionado, aguarde ...' echo '' tarquivo=$narquivo if [ ! -f $tarquivo ]; then echo 'Arquivo inexistente! Verifique e tente novamente.' elif [ "$narquivo" = "" ]; then echo 'Nome de arquivo inválido! Verifique e tente novamente.' else ffmpeg -i $narquivo -ss $tmpinicio -to $tmpfinal -hide_banner $ndestino echo '' echo 'Arquivo '$ndestino 'gerado com sucesso!' fi sleep 3 #fim da extração fi #OPÇÃO 2, executa alteração na resolução do vídeo if [ $opcao = 2 ] then echo '' echo '+==================================================================================================+' echo '| MODIFICAR A RESOLUÇÃO DE UM ARQUIVO DE VÍDEO |' echo '| |' echo '| ARQUIVO DE ORIGEM |' echo '| |' echo '| Obs. Campos com (*) são de preenchimento obrigatório. |' echo '+==================================================================================================+' echo '' read -p 'Nome do arquivo (*)..................................: ' narquivo echo '' read -p 'Nome do arquivo de saída (*).........................: ' ndestino echo '' read -p 'Nova resolução do arquivo de saída (Ex. 1280x720) (*): ' nresolucao echo '' echo 'Alterando a resolução do vídoeo, aguarde ...' echo '' tarquivo=$narquivo if [ ! -f $tarquivo ]; then echo 'Arquivo inexistente! Verifique e tente novamente.' elif [ "$narquivo" = "" ]; then echo 'Nome de arquivo inválido! Verifique e tente novamente.' else ffmpeg -i $narquivo -vf scale=$nresolucao $ndestino -hide_banner echo '' echo 'Arquivo '$ndestino 'gerado com sucesso!' fi sleep 3 #fim da alteração de resolução do vídeo fi #OPÇÃO 4, tira uma selfie com a webcam e salva em um arquivo if [ $opcao = 3 ] then echo '' echo '+==================================================================================================+' echo '| TIRAR UMA SEFIEL UTILIZANDO A WEBCAM |' echo '| |' echo '| |' echo '| Obs. Campos com (*) são de preenchimento obrigatório. |' echo '+==================================================================================================+' echo '' read -p "Nome do arquivo de saída com a extenção desejada (.bmp .jpg .png) (*):" arqsaida echo '' read -p "Resolução da imagem (Ex. 1280x720) (*)...............................:" tamimagem echo '' echo 'Sorria e aguarde 5 segundos para a selfie!' sleep 5 ffmpeg -y -i /dev/video0 -s $tamimagem -vframes 1 $arqsaida echo '' echo 'Arquivo '$arqsaida 'gerado com sucesso!' sleep 3 #fim da alteração de resolução do vídeo fi #se escolher a última opção, sai do programa if [ $opcao = 4 ] then echo '' echo '' echo ' ------------------------------------' read -p ' Deseja sair do programa (Sim/Não)? ' -n 1 sair if [ $sair = 's' -o $sair = 'S' ] then clear exit fi fi done #Fim do script
Rastreando suas encomendas dos Correios
Script shell para automatizar downloads do MegaUpload
Instalar e ativar o tema aero-aio do superkaramba
Renomeador Automático de Arquivos de Mídia
Automatizando o serviço do Redmine via webrick
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Pastas da raiz foram para a área de trabalho (4)
usb's param de funcionar do nada (6)
Como criar condições de monitoria de 2 IPs no Zabbix (0)
Alguém já usou o framework Avalonia para desenvolver interfaces de usu... (2)