Como ver/ouvir vídeo/áudio via Terminal de modo prático
Publicado por Sidnei Serra (última atualização em 28/07/2025)
[ Hits: 1.602 ]
Homepage: https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw
Tendo como base o script postado pelo Ênio Ferlin (blog: http://lattes.cnpq.br/0097812690686190) através de sua postagem em https://www.vivaolinux.com.br/dica/Procurando-vdeos-de-YouTube-pelo-terminal-e-assistindo-via-mpv-20... dei um upgrade no mesmo onde você escolhe a resolução do vídeo e se quer ver ou apenas ouvir, com as escolhas sendo mostradas em H264 e AAC para facilitar ao máximo o desempenho em máquinas mais modestas que podem ficar sobrecarregadas com AV1, VP9 e Opus.
O uso é como o original do autor (sugiro a leitura em caso de erro): o nome aqui é "escolha.sh", salve ou coloque o arquivo em /usr/local/bin/ e, no Terminal, digite sem as aspas "escolha.sh palavras a procurar". Ou seja, se você quiser procurar por vídeos/áudios que tenham "jogo seleção brasileira feminina" seria:
escolha.sh jogo seleção brasileira feminina
vai aparecer as opções de áudio e vídeo, escolha a desejada e aguarde um pouco. As opções encontradas (no script, 8 delas mas podem ser aumentadas) listarão a sua procura e depois é só escolher a desejada. Dá até pra procurar por playlists.
Pacotes para instalar:
jq
mpv
yt-dlp
ffmpeg
#!/bin/bash
tempfile=$(mktemp)
youtube_dl_log=$(mktemp)
# Escolher resolução
echo "Escolha a qualidade desejada:"
echo "1) 360p"
echo "2) 480p (padrão compatível: AVC1 + MP4A)"
echo "3) 720p"
echo "4) 1080p"
echo "5) Apenas áudio (MP3/AAC)"
read -rp "Digite o número da opção: " quality_choice
# Definir o formato com base na escolha
case "$quality_choice" in
1) format="bestvideo[height<=360][vcodec^=avc1]+bestaudio[acodec^=mp4a]" ;;
2) format="bestvideo[height<=480][vcodec^=avc1]+bestaudio[acodec^=mp4a]" ;;
3) format="bestvideo[height<=720][vcodec^=avc1]+bestaudio[acodec^=mp4a]" ;;
4) format="bestvideo[height<=1080][vcodec^=avc1]+bestaudio[acodec^=mp4a]" ;;
5) format="bestaudio[acodec^=mp4a]" ;;
*) echo "Opção inválida. Usando 480p como padrão."; format="bestvideo[height<=480][vcodec^=avc1]+bestaudio[acodec^=mp4a]" ;;
esac
query="ytsearch8:$*"
yt-dlp -j "$query" > "$tempfile" 2>"$youtube_dl_log"
if [ ! -s "$tempfile" ]; then
echo "Nenhum resultado encontrado ou erro no yt-dlp:"
cat "$youtube_dl_log"
rm "$tempfile" "$youtube_dl_log"
exit 1
fi
declare -a youtube_urls
declare -a youtube_titles
mapfile -t youtube_titles < <(jq -r '.fulltitle' "$tempfile")
mapfile -t youtube_urls < <(jq -r '.webpage_url' "$tempfile")
for i in "${!youtube_titles[@]}"; do
printf "[%d] %s\n" $((i + 1)) "${youtube_titles[$i]}"
done
while true; do
echo -e "\nDigite o número do vídeo escolhido (ou 'q' para sair):"
read -r input
if [[ "$input" == "q" ]]; then
break
elif [[ "$input" =~ ^[0-9]+$ ]] && (( input >= 1 && input <= ${#youtube_urls[@]} )); then
echo "Iniciando vídeo em mpv com formato: $format"
mpv --ytdl-format="$format" "${youtube_urls[$((input - 1))]}"
break
else
echo "Entrada inválida."
fi
done
rm "$tempfile" "$youtube_dl_log"
Script em Yad para baixar vídeos ou áudio em MP3 do Youtube.
Shell scrip de monitoramento de rede
Text User Interface (TUI) com whiptail
Nenhum comentário foi encontrado.
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Usando dracut e dispensando genkernel no Gentoo + LUKS + Btrfs
Curso GRÁTIS: OCS Inventory NG - Do Deploy ao Hardening com foco em Segurança da Informação!
Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
Quando vocês pararam de testar distros? (19)
O que houve com slackware ??? (6)
Instalar Linux em notebook Sony Vaio VPCEG13EB (9)
Pendrive do Ubuntu 24.04 travando ao tentar fazer a instalação dual bo... (5)









