2014-05-01 2 views
4

Qu'est-ce qu'un bon package pour lire des fichiers MP3 en python? Il devrait être quelque chose qui est maintenu et est multi plate-forme (Win, Mac, Linux) et quelque chose avec une structure d'appel simple et répétable, plutôt que d'avoir à effectuer une configuration complexe chaque fois que le même fichier est ouvert (j'utilise les sons différentes boucles et ne doivent pas avoir à se soucier constamment si un canal est plein ou d'autres facteurs). Il doit également être relativement petit. Je ne veux pas importer une boîte à outils GUI entière juste pour que je puisse jouer une petite cloche et alerter les sons. Enfin, il doit être non-bloquant; J'en ai besoin pour lire le fichier une fois et passer à autre chose sans bloquer tout le programme. J'ai utilisé PyAudiere pour lire des fichiers MP3 à partir de python, car il répondait à tous ces critères. Malheureusement, le paquet a été abandonné, et j'ai donc besoin de trouver un remplacement (PyAudiere a été mis à jour en python 2.6 et fonctionne encore en 2.7 si vous le bidouillez manuellement en changeant la version, mais ce n'est pas une solution à long terme trouver une copie du paquet est maintenant difficile).Lecture de fichiers son en python

+0

J'ai continué à regarder autour et il semble que tout ce qui supporte les MP3, sauf PyGame a été abandonné. Cela ne peut pas être vrai. – Elliot

Répondre

0

Salut Essayez les bibliothèques suivantes:

  1. PyMedia

  2. pygame

  3. PyAudio

  4. pyglet

+0

PyMedia a été mis à jour en 2006, ce qui est encore plus tôt que PyAudiere. PyGame Je le savais déjà, mais c'est une immense bibliothèque qui couvre tout, du rendu aux contrôles en passant par les sons, et qui est vraiment exagéré pour vouloir mettre des pings alertes dans un programme (je joue littéralement des sons différents pour faire savoir aux gens terminé). Je vais l'utiliser si je dois mais j'espérais quelque chose d'un peu moins lourd. – Elliot

+0

Hmm .. Le seul autre choix est pyglet ... et comme vous l'avez dit c'est vraiment mauvais qu'il n'y a pas de bibliothèque lighweight appropriée pour la même chose! –

+0

Pyglet fonctionne comme un sous-processus qui bloque le programme. Pygame fait aussi bien. PyAudio lit d'une manière complexe sur un morceau qui est sujette à des problèmes, et ne fonctionne pas de façon fiable sur MP3 de toute façon. Voir http://guzalexander.com/2012/08/17/playing-a-sound-with-python.html pour des exemples. – Elliot