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.674 ]
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
SlackBuild para empacotar o Firefox (binário) pro Slackware
Script simples de backup de arquivos em máquina remota
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (6)