[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] convertesor de musica com Zenity
From: |
MrBiTs |
Subject: |
Re: [shell-script] convertesor de musica com Zenity |
Date: |
Mon, 05 Dec 2011 09:37:01 -0200 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:8.0) Gecko/20111105 Thunderbird/8.0 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Bom dia
Bacana o "convertesor". Com esse nome, de ser das Organizações Tabajara :)
Eu recomendo que ele (e quaisquer outros códigos que precisem ser enviados)
sejam postados num paste-bin da vida, para evitar que
formatação de e-mail quebre o script.
Se você notar, as linhas mais extensas aparecem assim na mensagem:
novoformato=$(zenity --list --height=280 --title "Conversor de música"
--text "Novo formato" --radiolist --column "Marque"
- --column "Extensão" FALSE wma FALSE flac FALSE ogg FALSE wav TRUE mp3 FALSE
aac FALSE flv)
Se alguém simplesmente copiar e colar o código num arquivo, vai ter erros que,
talvez, ele não tenha interesse de procurar e
corrigir, e seu código não será aproveitado, invalidando então a sua
contribuição. No caso de um problema, seu código pode não ser
analizado, e você ficará sem sua resposta.
A sorte de muitas pessoas é que nossa lista é muito boa e temos várias pessoas
que não se importam em adivinhar o que o
participante está perguntando, não se importam em corrigir código, mas isso não
é assim em todos os lugares, então fica a minha
recomendação.
Não testei o código, mas parabéns ao seu amigo.
Um abraço
>
> Bom dia
>
> Estes dias um colega de trabalho pediu para converter umas músicas de wma
> para mp3. Tranquilo de fazer usando o "ffmpeg", só
> que eram mais de uma, então usei um laço "for". Como ele ainda é novo no
> linux, resolver fazer tudo com zenity para que ele
> possa usar sem abrir o terminal. O resultado esta abaixo, estou
> compartilhando para que se interessar, em funções com retorno e
> menu com ida e vinda.
>
> #!/bin/bash
>
>
> #Script para converter múscisas #Criado: 03/12/2011 #Autor: Marlon V. Reck
> #e-mail: address@hidden
>
>
> #variaveis contador=0 totalarq=0 cont=0 g_retorno=tela_original
>
> function baybay { local retorno="$1" test "$retorno" -eq 1 && exit }
>
> #verifica se é arquivo ou diretório function verifica_diretorio { local
> dir="$diretorio" local ori="$original" local verifica
> for verifica in "$dir"/*."$ori";do if [ -f "$verifica" ]; then
> g_retorno=tela_novof else zenity --error --text="Arquivo não
> encontrado no diretório indicado.\nTente novamente!" --title="Conversor de
> música"; g_retorno=tela_diretorio fi done }
>
> #verifica se os formatos são iguais function verifica_extensao { local
> arqorig="$original" local arqnovo="$novoformato" if [
> "$arqorig" = "$arqnovo" ]; then zenity --error --text="Os formatos escolhidos
> são iguais.\nTente novamente!" --title="Conversor
> de música"; g_retorno=tela_novof else g_retorno=tela_qualidade fi }
>
> while [ "$g_retorno" != fim ]; do case "$g_retorno" in tela_original) #tela
> para escolha do arquivo que vai ser convertido
> original=$(zenity --list --height=280 --title "Conversor de música" --text
> "Formato original" --radiolist --column "Marque" --
> column "Extensão" TRUE wma FALSE flac FALSE ogg FALSE wav FALSE mp3 FALSE aac
> FALSE flv) baybay "$?" g_retorno=tela_diretorio
> ;;
>
> tela_diretorio) #tela para escolher onde esta o arquivo diretorio=$(zenity
> --file-selection --directory --title="Selecione o
> diretório dos arquivos "$original"." --file-filter="*.$original") baybay "$?"
> verifica_diretorio "$diretorio" "$original" ;;
>
> tela_novof) #tela para escolher o novo formato do arquivo
> novoformato=$(zenity --list --height=280 --title "Conversor de
> música" --text "Novo formato" --radiolist --column "Marque" --column
> "Extensão" FALSE wma FALSE flac FALSE ogg FALSE wav TRUE
> mp3 FALSE aac FALSE flv) baybay "$?" verifica_extensao "$original"
> "$novoformato" ;;
>
> tela_qualidade) #tela para escolher a qualidade do arquivo qualidade=$(zenity
> --list --height=280 --title "Conversor de música"
> --text "Escolha a qualidade do arquivo convertido" -- radiolist --column
> "Marque" --column "kbps" FALSE 64 FALSE 96 TRUE 128
> FALSE 192 FALSE 256 FALSE 320) baybay "$?"
>
> #contador de arquivos for contador in "$diretorio"/*."$original";do let
> totalarq++; done #acrescenta +1 no total de arquivos
> totalarq=$((totalarq+1))
>
> #conversão if [ "$novoformato" = "ogg" ]; then codec="-acodec libvorbis" else
> codec="-acodec libmp3lame" fi
>
> for nome in "$diretorio"/*."$original"; do # echo para montar a barra de
> progresso echo "# Convertendo "$nome"" echo $((++cont
> * 100/$totalarq)) #pega o nome do arquivo sem extensão x=$(echo "$nome" | cut
> -f1 -d".") ffmpeg -loglevel quiet -i "$nome" -f
> "$novoformato" $codec -ab "$qualidade""k" -ar 44100 "$x"."$novoformato" done
> | zenity --progress --auto-close --width 290
> --no-cancel --title="Convertendo "$original" para "$novoformato""
> g_retorno=fim ;; esac done;
>
> Atenciosamente Marlon V. Reck address@hidden
>
>
> ------------------------------------
>
> --------------------------------------------------------------------- Esta
> lista não admite a abordagem de outras liguagens de
> programação, como perl, C etc. Quem insistir em não seguir esta regra será
> moderado sem prévio aviso.
> --------------------------------------------------------------------- Sair da
> lista:
> address@hidden
> --------------------------------------------------------------------- Esta
> lista é
> moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org Grupo:
> gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>
- --
LLAP
.0. MrBiTs .'. - address@hidden
..0 GnuPG -
http://keyserver.fug.com.br:11371/pks/lookup?op=get&search=0x6EC818FC2B3CA5AB
000 http://www.mrbits.com.br
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (Darwin)
iQEcBAEBCAAGBQJO3KzdAAoJEG7IGPwrPKWrg0cH/15d3mHvHSbJKoFQsb0AzTfw
gjvkIkRidt8X4HEN0b/ShM2m98dDjhv3Cd5uz3CCl4xts+CCpOg9ZaV83jtFTJo2
9l6XrscvbBLaQbXhhOqS4xHqlDi5VHONlprKiS17GTQNDEjnkX0bL+jEjpuR+toL
xA/znJSuzyO8/xG6f9ciId0GocJJ5jUlpjCvcIDZ9RrlngSYrRbBdSQOG3twuQSb
IYbgDEbQXVCjMNknG+z9xgiB5tintEfQ8JEvDk0vYr78sfVIEjODsHfNBz9tYzh/
1iyiAXlNAGgjinO991LjIziInGsJ7q8Vo7YoZ/lgfpPs3u0fZpEjvxarYUx0TyU=
=XSop
-----END PGP SIGNATURE-----
Re: convertesor de musica com Zenity, Daniel, 2011/12/05