Je veux créer un égaliseur simple pour android. Comment puis-je le faire? Essayez de trouver des méthodes dans la classe MediaPlayer. Mais toutes mes tentatives ont échoué.Comment créer un égaliseur pour android
Répondre
Réponse simple ... vous ne pouvez pas le faire avec le framework ou avec Java (car il n'y a pas de support JMF sous Android). Vous devez utiliser NDK et JNI pour compiler une bibliothèque native avec le support de l'égaliseur. Si vous connaissez le C/C++, il y a beaucoup de bibliothèques qui offrent cette fonctionnalité, mais si vous ne connaissez pas le C/C++ ou que vous n'avez pas les moyens de payer quelqu'un, je vous recommande de passer à autre chose. Il y a même quelques exemples de travail pour Android, si vous regardez autour, qui utilisent libmpg123 ... mais libmpg123 ne fournit qu'une interface d'égalisation pour les mp3. J'ai trouvé que c'est assez bogué en général et compromis la stabilité de l'application de telle sorte qu'il verrouillerait android et je devrais tirer la batterie pour redémarrer le téléphone. En outre, il y avait beaucoup d'écrêtage audio, même avec l'égaliseur plat. C'est mon expérience ...
Salut, Merci pour ce commentaire, mais j'ai plus de recherche pour la bibliothèque c/C++ pour l'égaliseur android, mais je ne trouve pas. Si vous soutiendrez alors je pense que mon problème serait résolu, veuillez vous demander, si vous avez peu de temps pour aider, s'il vous plaît partager quelques informations pour la bibliothèque. Merci encore ... –
utiliser la classe d'égaliseur bro – Learner
J'espère que le lien ci-dessous est utile pour vous.
J'ai utilisé les mêmes classes de l'exemple de l'échantillon. Obtenir \t java.lang.UnsupportedOperationException: AudioEffect: erreur d'opération de paramètre non valide sur nougat. – AkhilGite
Android a intégré dans le moteur de équalizer, mais il ne se trouve pas dans la classe MediaPlayer, becouse il est une classe se trouve dans le paquet android.media.audioFx.
http://developer.android.com/reference/android/media/audiofx/Equalizer.html
Merci. Mais cela ne fonctionne que pour les versions Android <= 2.3. Ce n'est pas si important maintenant, de cause. – MistaGreen
@MistaGreen oui vous avez raison.Si vous résoudre ce problème signifie s'il vous plaît aidez-moi –
Vous pouvez créer un égaliseur comme
Equalizer equalizer = new Equalizer(0,mediaplayer.getAudioSessionId());
equalizer.setEnabled(true);
equalizer.getNumberOfBands(); //it tells you the number of equalizer in device.
equalizer.getNumberOfPresets();//like Normal Classic,Dance Flat,Folk Heavy Metal,Hip Hop,Jazz, Pop, Rock
http://developer.android.com/reference/android/media/audiofx/Equalizer.html
obtenir une erreur sur nougat android. – AkhilGite
quelle erreur vous obtenez. Envoyer un journal – Nepster
vous pouvez voir ici [link] (http://stackoverflow.com/questions/40967977/java-lang-unsupportedoperationexception-audioeffect-invalid-parameter-operatio). J'ai posé une question sur stackoverflow – AkhilGite
Vous allez devoir trouver une question plus précise pour obtenir une bonne réponse ici . Qu'avez-vous essayé exactement? qu'est-ce qui a échoué? Qu'essayez-vous exactement d'accomplir? –
Je suis en train d'écrire un lecteur multimédia pour Android. Et j'ai besoin de créer Equalizer pour ça. Je ne trouve pas de moyens standard pour modifier le flux audio dans Android. J'ai trouvé quelques égaliseurs J2SE. Mais en utilisant des classes spécifiques à J2SE. – MistaGreen
Bonjour, je suis à la recherche de la même implémentation. S'il vous plaît fournissez-moi une idée de base sur la façon de mettre en œuvre cela? – AndiM