Comment jouer au son dans Python

Comment jouer au son dans Python

Comment jouer au son dans Python

C'est une tâche facile de lire le son à l'aide du script Python, car cette langue contient de nombreux modules pour utiliser le script afin de lire ou d'enregistrer le son. En utilisant ces modules, vous pouvez lire des fichiers audio tels que MP3, WAV et d'autres types de fichiers audio. Vous devez d'abord installer le module de son avant d'utiliser le module dans le script. Ce tutoriel montrera comment installer différents types de modules Python pour jouer au son.

Jouer le son en utilisant PlaySound

Le jouer son Le module est le module le plus simple à utiliser pour jouer au son. Ce module fonctionne à la fois sur Python 2 et Python 3, et est testé pour lire uniquement les fichiers WAV et MP3. Il ne contient qu'une seule méthode, nommée jouer son(), avec un argument pour que Linux prenne le nom de fichier audio pour jouer.

Installation:

Exécutez la commande pip3 suivante pour installer ce module dans Python 3:

$ PIP3 Installer PlaySound

Exemple: lire des fichiers WAV et MP3 à l'aide de PlaySound

Dans le script suivant, un nom de fichier WAV sera d'abord pris comme entrée et le fichier sera lu en utilisant le jouer son() méthode. Ensuite, un nom de fichier MP3 sera entré et joué via la même méthode.

#!/ usr / bin / env python3
# Importer le module PlaySound
de PlaySound Import PlaySound
# Entrée un nom de fichier WAV existant
wavfile = input ("Entrez un nom de fichier wav:")
# Lire le fichier wav
PlaySound (wavfile)
# Saisir un nom de fichier MP3 existant
mp3File = Input ("Entrez un nom de fichier MP3:")
# Lisez le fichier MP3
playsound (mp3file)

Sortir:

Si les deux fichiers existent, alors le fichier son commencera à jouer.

Jouer du son à l'aide de pydub

Le pydub Le module prend en charge Python 2 et Python 3. Ce module a de nombreuses fonctionnalités utiles autres que les modules de son Python. Le module Pydub prend en charge différents types de fichiers audio. Ce module peut être utilisé pour diviser les segments de tout fichier audio ou des segments d'ajout dans les fichiers audio. Vous pouvez également ajouter un effet simple sur le son du son. Ce module dépend directement de deux autres modules, appelés ffmpeg et libavcodec-extra. Avant d'installer le module Pydub, vous devez d'abord installer ces modules.

Installation:

Exécutez les commandes suivantes pour installer le package Pydub de Python:

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

Exemple-1: Lisez les fichiers WAV et MP3 locaux

Ce module utilise le form_file () Méthode pour la lecture du fichier wav et form_mp3 () Méthode pour lire un fichier MP3. Le jouer() La méthode est utilisée ici pour lire le fichier WAV et MP3:

#!/ usr / bin / env python3
à partir de l'audiose de Pydub
de Pydub.Playage de la lecture
# Entrée un nom de fichier WAV existant
wavfile = input ("Entrez un nom de fichier wav:")
# Chargez le fichier dans pydub
son = audiosing.From_file (wavfile)
imprimer ("lecture du fichier wav…")
# lire le fichier
jouer son)
# Saisir un nom de fichier MP3 existant
mp3File = Input ("Entrez un nom de fichier MP3:")
# Chargez le fichier dans pydub
musique = audiosing.de_mp3 (mp3file)
Imprimer ("Lire un fichier MP3…")
# lire le fichier
jouer de la musique)

Sortir:

Si des noms de fichiers WAV et MP3 existent, le son jouera et la sortie suivante apparaîtra:

Exemple-2: Télécharger et lire les fichiers WAV et MP3 à partir de l'URL

L'exemple suivant montre comment un fichier WAV ou MP3 peut être lu après avoir téléchargé le fichier à partir d'un emplacement d'URL valide. Le module Urllib est utilisé dans le script pour télécharger le fichier son.

#!/ usr / bin / env python3
# Importer les modules nécessaires
à partir de l'audiose de Pydub
de Pydub.Playage de la lecture
Importer Urllib
# Définissez le nom de fichier WAV
filename = "Service-Bell.wav "
# Téléchargez le fichier wav à partir de l'URL
imprimer ("téléchargement de fichier wav…")
Urllib.demande.UrlretReve ("http: // Soundbible.com /.php?id = 2218 & type = wav ", nom de fichier)
# Chargez le fichier dans pydub
son = audiosing.From_file (nom de fichier)
imprimer ("lecture du fichier wav…")
# lire le fichier
jouer son)
# Définissez le nom de fichier MP3
FileName = "Birds.mp3 "
# Télécharger un fichier MP3
imprimer ("téléchargement de fichiers MP3…")
Urllib.demande.UrlretReve ("http: // Soundbible.com /.php?id = 2207 & type = mp3 ", nom de fichier)
# Chargez le fichier dans pydub
Birdsound = Audiosegment.de_mp3 (nom de fichier)
Imprimer ("Lire un fichier MP3…")
# Jouez le résultat
jouer (Birdsound)
Imprimer ("terminé.")

Sortir:

Le fichier son commencera à jouer après la fin du téléchargement, et la sortie suivante apparaîtra:

Jouer un son à l'aide de tksnack

Le tksnack Le module dépend d'un autre module, nommé Tkinter, pour activer un tk Objet dans le script. tksnack Les commandes peuvent être utilisées après initialiser le tk objet. Vous devez installer les deux tkinker et tksnack Packages pour Python 3.

Installation:

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

Exemple: lecture du fichier wav à l'aide de tksnack

Dans le script suivant, le module Tksnack est initialisé en utilisant l'objet Tkinter et le suivant jouer() la méthode est utilisée pour lire le fichier wav. Ici le blocage L'argument spécifie que le son jouera de manière asynchrone.

# Importer les modules de nécessité
Importer Tkinter
importer tksnack
Importer un système d'exploitation
# Initialiser l'objet TK pour utiliser Tksnack
racine = tkinter.Tk ()
tksnack.InitializeNack (racine)
# Définir l'objet Tksnack
son = tksnack.Son()
# Entrée un nom de fichier WAV existant
wavfile = input ("Entrez un nom de fichier wav:")
Si OS.chemin.existe (wavfile):
# Lisez le fichier
son.lire (wavfile)
# Jouer son
son.jouer (bloquer = 1)
autre:
# Imprimez le message si le chemin du fichier n'existe pas
imprimer ("le fichier wav n'existe pas.")

Sortir:

Le son commencera à jouer si le fichier WAV existe, et la sortie suivante apparaîtra:

Jouer du son à l'aide de Simpleaudio

Le simpleaudio Le module est un paquet de Python 3 qui peut lire des sons audio. Ce module est principalement conçu pour lire des fichiers WAV et des tableaux Numpy. Vous devrez installer le package avant d'utiliser ce module. Ce package son dépend directement d'un autre package appelé libasound2-dev. Vous devrez installer le libasound2-dev package d'abord, et après cela, vous pouvez installer le simpleaudio emballer.

Installation:

Exécutez la commande suivante pour installer les packages:

$ sudo apt-get install libasound2-dev
$ PIP3 Installer Simpleaudio

Exemple: lecture du fichier WAV à l'aide de Simpleaudio

Dans le script suivant, tout nom de fichier WAV sera pris comme l'entrée. Si le fichier existe, le script lit le fichier son; Sinon, le script affichera un message d'erreur.

#!/ usr / bin / env python3
# Importer le module sonore Simpleaudio
Importer Simpleaudio comme SA
# Entrez un nom de fichier WAV existant
wavfile = input ("Entrez un nom de fichier wav:")
# Lisez le son si le fichier WAV existe
essayer:
# Définir l'objet pour jouer
w_object = sa.Waveobject.From_wave_file (wavfile)
# Définir l'objet pour contrôler le jeu
p_object = w_object.jouer()
imprimer ("Sound joue ...")
p_object.wait_done ()
Imprimer ("terminé.")
# Imprimer le message d'erreur si le fichier n'existe pas
Sauf FileNotFoundError:
imprimer ("le fichier wav n'existe pas")

Sortir:

Le fichier audio jouera et la sortie suivante apparaîtra après avoir joué le son:

Conclusion

Les utilisations de base de quatre modules Python pour jouer du son sont expliqués dans ce tutoriel en utilisant un certain nombre d'exemples. La tâche de jeu sonore est affichée dans ce tutoriel uniquement, mais vous pouvez enregistrer, modifier et différentes tâches liées au son en utilisant le script Python.