Pitão

Como reproduzir sons em Python

Como reproduzir sons em Python

Como reproduzir sons em Python

É uma tarefa fácil reproduzir som usando o script Python, porque esta linguagem contém muitos módulos para usar o script a fim de reproduzir ou gravar som. Usando esses módulos, você pode reproduzir arquivos de áudio como mp3, wav e outros tipos de arquivo de áudio. Você deve primeiro instalar o módulo de som antes de usar o módulo no script. Este tutorial mostrará como instalar diferentes tipos de módulos Python para reproduzir som.

Tocar som usando playound

O tocar música módulo é o módulo mais simples de usar para tocar som. Este módulo funciona em Python 2 e Python 3 e foi testado para reproduzir apenas arquivos wav e mp3. Ele contém apenas um método, denominado tocar música(), com um argumento para o Linux pegar o nome do arquivo de áudio para tocar.

Instalação:

Execute o seguinte comando pip3 para instalar este módulo no Python 3:

$ pip3 install playsound

Exemplo: reprodução de arquivos wav e mp3 usando o Playsound

No script a seguir, um nome de arquivo wav será tomado como entrada primeiro e o arquivo será reproduzido usando o tocar música() método. Em seguida, um nome de arquivo mp3 será inserido e reproduzido pelo mesmo método.

#!/ usr / bin / env python3
# Importar módulo de som
de playound importar playound
 
# Insira um nome de arquivo wav existente
wavFile = input ("Digite um nome de arquivo wav:")
# Reproduza o arquivo wav
playound (wavFile)
 
# Insira um nome de arquivo mp3 existente
mp3File = input ("Digite um nome de arquivo mp3:")
# Toque o arquivo mp3
playound (mp3File)

Resultado:

Se ambos os arquivos existirem, o arquivo de som começará a ser reproduzido.

Tocar som usando pydub

O pydub módulo suporta Python 2 e Python 3. Este módulo tem muitos recursos úteis além dos módulos de som Python. O módulo pydub suporta diferentes tipos de arquivos de áudio. Este módulo pode ser usado para dividir segmentos de qualquer arquivo de áudio ou anexar segmentos aos arquivos de áudio. Você também pode adicionar um efeito simples em cima do som. Este módulo depende diretamente de dois outros módulos, chamados ffmpeg e libavcodec-extra. Antes de instalar o módulo pydub, você deve primeiro instalar esses módulos.

Instalação:

Execute os seguintes comandos para instalar o pacote pydub do Python:

$ sudo apt-get install ffmpeg libavcodec-extra
$ pip3 install pydub

Exemplo-1: reproduzir arquivos wav e mp3 locais

Este módulo usa o form_file () método para reproduzir arquivo wav e form_mp3 () método para reproduzir um arquivo mp3. O Reproduzir() método é usado aqui para reproduzir o arquivo wav e mp3:

#!/ usr / bin / env python3
from pydub import AudioSegment
de pydub.reproduzir importar reproduzir
# Insira um nome de arquivo wav existente
wavFile = input ("Digite um nome de arquivo wav:")
# carregue o arquivo no pydub
sound = AudioSegment.from_file (wavFile)
print ("Reproduzindo arquivo wav…")
# reproduz o arquivo
tocar música)
# Insira um nome de arquivo mp3 existente
mp3File = input ("Digite um nome de arquivo mp3:")
# carregue o arquivo no pydub
music = AudioSegment.from_mp3 (mp3File)
imprimir ("Reproduzindo arquivo mp3…")
# reproduz o arquivo
tocar música)

Resultado:

Se houver nomes de arquivo wav e mp3, o som será reproduzido e a seguinte saída aparecerá:

Exemplo-2: Baixe e reproduza arquivos wav e mp3 de URL

O exemplo a seguir mostra como qualquer arquivo wav ou mp3 pode ser reproduzido após o download do arquivo de um local de URL válido. O módulo urllib é usado no script para baixar o arquivo de som.

#!/ usr / bin / env python3
# Importe os módulos necessários
from pydub import AudioSegment
de pydub.reproduzir importar reproduzir
importar urllib
# Defina o nome do arquivo wav
filename = "campainha de serviço.wav "
# Baixe o arquivo wav do url
imprimir ("baixando arquivo wav…")
urllib.solicitação.urlretrieve ("http: // soundbible.com / agarrar.php?id = 2218 & type = wav ", nome do arquivo)
# carregue o arquivo no pydub
sound = AudioSegment.from_file (nome do arquivo)
print ("Reproduzindo arquivo wav…")
# reproduz o arquivo
tocar música)
# Defina o nome do arquivo mp3
nome do arquivo = "pássaros.mp3 "
# Baixe um arquivo mp3
imprimir ("baixando arquivo mp3 ...")
urllib.solicitação.urlretrieve ("http: // soundbible.com / agarrar.php?id = 2207 & type = mp3 ", nome do arquivo)
# carregue o arquivo no pydub
birdsound = AudioSegment.from_mp3 (nome do arquivo)
imprimir ("Reproduzindo arquivo mp3 ...")
# Jogue o resultado
brincar (som dos pássaros)
imprimir ("Concluído.")

Resultado:

O arquivo de som começará a tocar após completar o download, e a seguinte saída aparecerá:

Tocar som usando tksnack

O tksnack módulo depende de outro módulo, denominado tkinter, para ativar um tk objeto no script.  tksnack comandos podem ser usados ​​após a inicialização do tk objeto. Você deve instalar ambos mexer e tksnack pacotes para Python 3.

Instalação:

$ sudo apt-get install python3-tk
$ sudo apt-get install python3-tksnack

Exemplo: reproduzir arquivo wav usando tksnack

No script a seguir, o módulo tkSnack é inicializado usando o objeto tkinter, e o próximo Reproduzir() método é usado para reproduzir o arquivo wav. Aqui o bloqueio argumento especifica que o som será reproduzido de forma assíncrona.

#!/ usr / bin / env python3
# Importar módulos necessários
importar tkinter
import tkSnack
importar os
 
# Inicialize o objeto tk para usar tksnack
root = tkinter.Tk ()
tkSnack.initializeSnack (root)
 
#Define o objeto tksnack
sound = tkSnack.Som()
 
# Insira um nome de arquivo wav existente
wavFile = input ("Digite um nome de arquivo wav:")
 
se os.caminho.existe (wavFile):
# Leia o arquivo
som.ler (wavFile)
# Tocar música
som.jogar (bloqueio = 1)
senão:
# Imprime a mensagem se o caminho do arquivo não existir
print ("O ficheiro Wav não existe.")

Resultado:

O som começará a tocar se o arquivo wav existir, e a seguinte saída aparecerá:

Tocar som usando simpleaudio

O áudio simples módulo é um pacote do Python 3 que pode reproduzir sons de áudio. Este módulo é projetado principalmente para reproduzir arquivos WAV e matrizes NumPy. Você precisará instalar o pacote antes de usar este módulo. Este pacote de som depende diretamente de outro pacote chamado libasound2-dev. Você precisará instalar o libasound2-dev pacote primeiro, e depois disso, você pode instalar o áudio simples pacote.

Instalação:

Execute o seguinte comando para instalar os pacotes:

$ sudo apt-get install libasound2-dev
$ pip3 install simpleaudio

Exemplo: Tocar arquivo wav usando simpleaudio

No script a seguir, qualquer nome de arquivo wav será tomado como entrada. Se o arquivo existir, o script reproduzirá o arquivo de som; caso contrário, o script exibirá uma mensagem de erro.

#!/ usr / bin / env python3
# Importar módulo de som simpleaudio
importar simpleaudio as sa
# Insira um nome de arquivo wav existente
wavFile = input ("Digite um nome de arquivo wav:")
 
# Toque o som se o arquivo wav existir
tentar:
# Defina o objeto para jogar
w_object = sa.WaveObject.from_wave_file (wavFile)
# Defina o objeto para controlar o jogo
p_object = w_object.Reproduzir()
imprimir ("O som está tocando ...")
p_object.wait_done ()
imprimir ("Concluído.")
# Imprimir mensagem de erro se o arquivo não existir
exceto FileNotFoundError:
imprimir ("Arquivo Wav não existe")

Resultado:

O arquivo de som será reproduzido e a seguinte saída aparecerá após a reprodução do som:

Conclusão

Os usos básicos de quatro módulos Python para reproduzir som são explicados neste tutorial usando uma série de exemplos. A tarefa de reprodução de som é mostrada apenas neste tutorial, mas você pode gravar, editar e diferentes tarefas relacionadas a sons usando o script Python.

Como alterar o ponteiro do mouse e tamanho do cursor, cor e esquema no Windows 10
O ponteiro do mouse e o cursor no Windows 10 são aspectos muito importantes do sistema operacional. Isso também pode ser dito para outros sistemas ope...
Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...