2010-09-12 25 views
2

Actuellement, Phonon travaille sur Windows avec un backend DS. Cependant, il ne jouera pas certains fichiers mp3 et bien qu'il semble jouer des fichiers m4a (la barre de progression de la chanson continue de bouger), aucun son ne sortira. L'application est construite en utilisant PyQt4 sous Windows et est destinée aux utilisateurs de Windows.Phonon sur Windows

Je sais que ce n'est pas la faute de mon programme car quand j'ai remplacé un fichier par un autre qui ne jouait pas normalement avec celui qui l'a fait, la chanson a parfaitement joué. J'ai téléchargé phonon vlc, et j'ai essayé de le construire, mais je ne peux pas obtenir CMake pour créer un makefile. Chaque fois que j'essaie, il me dit que le dev-cpp gcc n'est pas capable de faire un simple fichier de test. J'ai également essayé de télécharger clémentine et amorak pour voir si je pouvais faire fonctionner ça, mais j'ai aussi eu les mêmes problèmes là-bas. Quelqu'un at-il déjà rencontré ce genre de problème auparavant?

+0

Pouvez-vous déterminer ce qui est différent sur les mp3 qui fonctionnent et ceux qui ne fonctionnent pas? Recherchez les différences de débit et si elles sont ou non des débits binaires variables. Vérifiez également que les fichiers sont effectivement des mp3 et non d'autres types de médias avec une extension de nom de fichier mp3 sur eux. Cela peut fournir une idée de ce que phonon a des problèmes avec. Vous pouvez vérifier les erreurs renvoyées par les fonctions de lecture. –

+0

Les fichiers sont parfaitement compatibles avec les autres lecteurs multimédias. Je vais essayer d'isoler la différence, puis de la republier. – Nikwin

+0

Surtout les chansons qui ne jouent pas ont un débit binaire de 320 kbps, bien qu'il y ait un couple avec un débit binaire de 256 et il y a quelques chansons avec un débit de 320 kbps qui jouent. – Nikwin

Répondre

1

J'ai récemment rencontré le même problème. Il semble que Phonon a un peu un peu d'empressement sur les tags ID3, en particulier ceux compressés. J'ai pris pour créer une copie temporaire de chaque mp3 que j'ouvre et en utilisant mutagen pour supprimer les étiquettes de cette copie. J'ouvre ensuite le fichier temporaire de-tagged en utilisant PyQt/Phonon, et tout fonctionne comme prévu. BTW, mutagène est génial. Phonon a un peu l'habitude d'échouer raisonnablement silencieusement. C'est ce que je fais: vérifiez si votre MediaObject est dans un Phonon.ErrorState; si c'est le cas, cochez errorString(), généralement un message incompréhensible. Google ce message et essayez de travailler à partir de là.

Édition: Hmm, intéressant. Ce n'est pas Phonon qui a le problème, c'est le backend de DirectShow qui ne peut pas lire le fichier avec les en-têtes ID3 compressés. Bien que le «correctif» que je décris ci-dessus fonctionne, j'ai trouvé que j'avais toujours des problèmes à jouer d'autres types de fichiers, par exemple. .m4a, malgré l'installation des bons codecs.

La solution consistait à installer le K-Lite Codec Pack et à utiliser l'outil Win7DSFilterTweaker qui lui est fourni pour changer le décodeur par défaut pour les différents types de codecs de "Microsoft" à "ffdshow". Vous devrez peut-être également exécuter l'outil de configuration du décodeur audio ffdshow et cocher la case Afficher la boîte de dialogue lorsqu'une application inconnue tente de charger ffshow dans l'onglet du contrôle DirectShow.

+0

Salut, j'ai le même problème. Je me demande pourquoi le MediaPlayer peut lire le fichier audio. Existe-t-il un moyen de décompresser le tag ID3? –