Tocando um MP3 com Python
Neste artigo vamos tocar uma música MP3 diretamente do nosso código Python. Aprenderemos como criar um music player (tocador de músicas) com apenas algumas linhas de código. Nosso objetivo é escrever um programa em Python que abra e reproduza o áudio de um arquivo MP3. Este projeto é fruto de um desafio do curso de Python (Mundo 1) da plataforma Curso em Vídeo.
Importante lembrar que existem diferentes bibliotecas ou módulos para tocar músicas, porém neste pequeno artigo vamos explorar um módulo que é bastante conhecido pela comunidade de programadores, o Pygame. Muito utilizado para criação de jogos. E, como jogos geralmente tem música, esse módulo se encaixa perfeitamente em nosso objetivo, pois carrega consigo recursos bastante úteis para manipulação de arquivos de áudio.
Basicamente, Pygame é uma biblioteca multiplataforma gratuita e de código aberto para o desenvolvimento de aplicativos multimídia, como videogames, usando Python. Ele usa a biblioteca Simple DirectMedia Layer e várias outras bibliotecas populares para abstrair as funções mais comuns, tornando a escrita desses programas uma tarefa mais intuitiva. Para conhecer mais sobre Pygame, ter acesso a tutoriais e ver a documentação de referência completa para toda a biblioteca clique aqui.
Instalando o Pygame
Como não estamos falando de Python nativo, o primeiro passo é a instalação do pacote necessário por meio do comando !pip install pygame, porém dependendo do seu ambiente de desenvolvimento esse comando pode mudar um pouco. Certamente, você também poderá instalá-lo pela guia extensões direto na interface do seu ambiente do seu trabalho. Ou mesmo pelo Terminal ou Prompt de Comando, a depender do seu sistema operacional.
Importando o módulo Pygame
Feita a instalação do pacote vamos importar a biblioteca necessária. Como estamos falando de uma biblioteca e não do Python nativo, é necessário primeiro importá-la. O que pode ser feito com o comando: import. Esse comando é utilizado sempre que precisamos importar uma nova biblioteca.
Iniciando Pygame
Próximo passo é iniciar o Pygame, que podemos fazer utilizando o comando pygame.init(), para inicializar todos os módulos Pygame importados. Contudo, Pygame tem muitas funcionalidades utilizadas para criar jogos como, carregar imagem, som, vídeos, controlar eventos etc. Como vamos usar apenas o mixer do Pygame, opcionalmente utilizaremos o comando pygame.mixer.init().
Carregando arquivo
Com o módulo inicializado vamos carregar nosso arquivo de música para que esteja pronto para reprodução, fazemos isso por meio do comando pygame.mixer.music.load('sua_musica.mp3'), substituindo 'sua_musica.mp3' pelo nome do arquivo que desejamos carregar.
Um detalhe importante: para que não haja erro no carregamento do arquivo de áudio, ele deve ser salvo no mesmo diretório (pasta) onde se encontra salvo o script.py de nosso music player, como vemos na imagem abaixo.
Recomendados pelo LinkedIn
Outra nota é que este projeto foi inicialmente escrito e testado no Pycharm, uma IDE para o autêntico desenvolvimento Python. O programa também poderá ser testado no VS Code, outro editor de código com suporte para operações de desenvolvimento. Em ambos o programa funciona bem.
Porém por entendermos ser mais didático, optamos por fazer a documentação do projeto no Colab, que permite escrever e executar Python diretamente no navegador. Contudo, não foi possível executar o programa no Colab. Justamente devido a um erro de carregamento do arquivo.
Aparentemente, conforme a descrição do erro, não foi possível abrir o dispositivo de áudio: Arquivo ou diretório inexistente. Se você souber resolver, deixe a solução nos comentários.
Reprodução da música
Agora que carregamos nosso arquivo mp3, chegou o momento de colocarmos a música para tocar. Para tanto, vamos usar o comando pygame.mixer.music.play(). Para finalizar vamos implementar um loop (while) para verificar se o canal de música está em uso, caso não ele sai do loop e encerra. E para sair do programa, adicionamos a última linha do código: pygame.quit().
Script
Vejamos então, como ficou o script completo de nosso music player.
Para testar o programa, acesse aqui o link do Notebook completo no Colab e baixe o script para rodar na máquina de sua preferência. Dependendo do seu ambiente de desenvolvimento, poderá haver uma pequena mudança no padrão de instalação do pacote Pygame, o restante dos passos se aplica da mesma forma que apresentamos aqui.
Conclusão
Neste breve artigo vimos como é possível desenvolvermos com Python uma aplicação simples para tocar músicas, utilizando um pouco da biblioteca Pygame. Contudo, existem muitas possibilidades. E se você gostou, pode melhorar o script, acrescentando outras funcionalidades ao projeto, como uma interface gráfica por exemplo, controles de volume, um temporizador da música etc. Enfim, para aguçar a curiosidade e aprofundar os conhecimentos, visite o site do Pygame e tenha acesso à documentação oficial clicando aqui.