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.986 ]
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
createrootkde - programas do KDE 5 como root
ShadowBurn - grava, copia e apaga CD/DVD
Verificando a versão mais recente do Wine via script
Echoc (Comando echo, mas com cores)
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? (12)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









