31 de março de 2009

GMP3Gain

Há alguns anos, quando o Windows ainda era o meu sistema operacional padrão, eu usava um software muito eficiente, para ajustar os volumes dos meus arquivos em MP3. O nome desse software era MP3Gain e era realmente muito fácil utilizá-lo.

Quando eu migrei para o Linux, descobri que o MP3Gain era um software livre e que estava disponível um pacote para instalação no meu sistema (openSUSE, à época). Assim que eu pude, instalei o referido programa, mas me deparei com  a triste realidade de que, comparado ao Windows, era muito mais difícil utilizar o MP3Gain no Linux, pois ele não contava com uma interface gráfica com o usuário (GUI). Logo, eu procurei aprender os parâmetros de modo texto, para poder utilizá-lo. Esse aprendizado deu origem ao texto publicado neste blog sob o nome de Normalização, na série MP3 no Linux. Com isso eu descobri a existência de uma interface gráfica feita em Java, mas eu a considerei tão ruim, que preferi utilizar o modo texto.

O tempo passou e eu realizei outra grande migração, desta vez para o OS X e descobri que o MP3Gain também estava disponível para este sistema, sob o nome de MacMP3Gain. À princípio, eu não gostei muito da interface do programa no Mac, mas logo me acostumei e cheguei à conclusão de que era melhor que aquela do Windows, pois executava a operação muito mais rapidamente e não tinha tantas frescuragens.

Neste mesmo período eu estava estudando Python e, tentando encontrar um bom projeto para me dedicar, como forma de me aprofundar mais nesta linguagem, logo pensei que eu poderia criar uma boa interface para o MP3Gain, similar à do Mac, para ser usada no Linux. Esse projeto permaneceu na minha cabeça durante um bom tempo, enquanto eu me aprofundava em Python e aprendia formas de criar aplicativos gráficos.

Quando descobri a dupla PyGTK e Glade, para criar aplicativos em GTK com Python, cheguei à conclusão que seria daquela forma que eu implementaria a tão sonhada interface para o MP3Gain no Linux. Mais algum tempo de maturação e adaptação ao binding e ao aplicativo, em março de 2009 começou a empreitada. Para aproveitar melhor a experiência e aprender mais, resolvi usar o Git para controlar as versões deste software, o que coincidiu com a minha apresentação ao GitHub, uma rede social em torno de códigos gerenciados pelo Git. Obviamente estava ali, a forma com que aquele código seria publicado na Internet.



Quase um mês depois do início do desenvolvimento (creio que este tempo seria muito reduzido, se eu trabalhasse por mais horas no software e se eu tivesse mais experiência na linguagem), venho apresentar a versão 0.0.11 do GMP3Gain. Com esta versão, pode-se selecionar um diretório ou uma árvore de diretórios, que contenham suas MP3s, definir alguns ajustes de normalização, como ganho álbum ou rádio, permitir clipping e alterar o volume padrão das músicas e aplicá-los às mesmas, gerando o resultado esperado.

Figura 1. Tela principal do GMP3Gain.


A interface segue o mesmo estilo daquela do Mac, simples e objetiva e apesar do trabalho não estar concluído, já dá para usar o software com alguma segurança (nos meus testes, a normalização foi feita com sucesso).

O logotipo do projeto faz referência ao logo original do MP3Gain, mas estilizado para parecer um G deitado, referenciando a biblioteca GTK.

Para concluir, segue um screencast que eu fiz, mostrando um exemplo de utilização do GMP3Gain. Neste exemplo, o GMP3Gain é executado a partir de um terminal, onde pode-se observar o funcionamento do mesmo para normalizar um álbum (No Code – Pearl Jam – 1996). No caso, pode-se observar que o processo de normalização é totalmente automatizado, descartando a intervenção do usuário via modo texto. Ah! Para quem quiser participar do desenvolvimento ou obter o software, o link para a página do mesmo no GitHub é https://github.com/joselopes/gmp3gain/tree

Vídeo 1 – Demonstração do GMP3Gain.




Leia Também

3 comentários:

  1. Nossa! Caramba! Pirei para isso... sempre quis aprender a mexer com essa parte da info - meus irmãos são analistas, mas nunca tem paciência para ensinar uma analfa q nem eu... e nossa, seu texto como sempre muito claro e objetivo, e o resultado perfeito.

    O vídeo me deu uma saudade de quando eu usava ubuntu... era a única a usar o sistema no meu antigo serviço... os outros tudo tinha medo de deixar o windows... acho q pela experiência com o ubuntu talvez tenha gostado bastante do mac os, pois acho q já estava acostumada com a diferença do windows...

    parabéns pela idéia de colocar uma interface no programa... essa parte de ter q digitar tudo é que mais me embanana rsrs

    Sorte com seu projeto (aliás, ele já está muito bom... palavra de leiga) =D

    ResponderExcluir
  2. Valeu!
    Muito bom saber que o programa causou uma boa impressão e melhor ainda saber que essa é a opinião de uma leiga (ainda que, pelo que você disse, eu não te considere tão leiga assim). Agora já na versão 0.0.12, o GMP3Gain consegue realizar grande parte do trabalho que antes era feito "no braço", dentro do Linux. Faltam algumas coisas a serem implementadas, como exibição para o usuário do que está acontecendo (o que se está normalizando) e melhor adequação do software ao sistema, mas grande parte do trabalho já está feita.
    Já o Linux é um caso sério. Tô rodando ele dentro do Mac, porque não dá vontade de largar... :-)
    Obrigado pelo comentário positivo!
    É bom trabalhar com feedback!

    ResponderExcluir
  3. Olá! de novo :-)
    Passando para te desejar uma excelente Páscoa! bjs

    ResponderExcluir