ARS Vídeos - Cortador de vídeos e webcam shooter
Publicado por Alexandre Rodrigues dos Santos (última atualização em 22/12/2023)
[ Hits: 3.066 ]
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
Grave arquivos em pendrive sem sistema de arquivos
dForm - Formatador de Dispositivos
Shell script para duplicação de CD's
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (11)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









