2009-03-12 4 views
1

Je cherche une librairie java pour transcoder efficacement et rapidement et manipuler des fichiers mp3. Je travaille sur un serveur de streaming sophistiqué qui mélange de la musique et a d'autres fonctions permettant aux utilisateurs d'interagir entre eux. Une recommandation fonctonallity par exemple devrait s'estomper sur le flux de l'utilisateur expéditeur au destinataire de la recommandation.Java pour transcoder et manipuler des fichiers mp3

Tout le fuctionallity est implémenté maintenant et fonctionne bien en utilisant des dispositifs UPnP-AV. La prochaine étape serait de ne pas simplement changer les pistes comme je le fais maintenant. Ce devrait être un fondu lisse entre les chansons.

Des suggestions à ce sujet? Mayby Java n'est pas la bonne solution pour travailler avec le son. Si vous connaissez une meilleure façon de faire du transcodage et de la manipulation de l'audio, faites-le moi savoir.

(Transcodage est nécessaire car toutes les sources audio sont disponibles en mp3 mais à l'intérieur, je ne travaille qu'avec MP3)

+0

"Cela devrait être un fondu entre les morceaux" C'est ce qu'on appelle la lecture sans intervalle. Cela pourrait aider votre recherche. –

Répondre

1

L'un des meilleurs encodeurs MP3 là-bas est LAME. Il y a un wrapper API pour Java appelé LAMEOnJ, mais il nécessite un JNIEasy license, dont la version gratuite doit être téléchargée tous les 5 jours. Franchement, je ne sais pas pourquoi vous voudriez travailler avec MP3 en interne par opposition aux fichiers WAV; ça va probablement être plus de travail. De plus, il y a le patent thing.

Tout autour, il vaut probablement mieux travailler avec le Java Sound API. Il y a un bon paquet open source appelé Tritonus. Tritonus ne supporte que l'API complète (en particulier, la sortie audio) sur Linux, mais ils ont quelques useful plugins qui fonctionnent sur n'importe quelle plate-forme (y compris un encodeur MP3, dont je ne peux pas parler de la qualité).

+0

L'utilisation de mp3 n'est que la première étape. Je voudrais soutenir un large éventail de sources audio et tous les formats de maire pour le streaming. Il serait peut-être préférable d'utiliser wav en interne et de convertir tous les médias dans ce format avant de traiter les données. – Timo

+0

Mais ensuite, je dois transcoder à nouveau lorsque les données sont transmises à un client. Je voudrais utiliser MP3 pour cela en raison de sa large adoption. Est-il possible de faire ce transcodage rapidement? Et parallèle au traitement de sorte que les premiers octets lus sont diffusés avant que le fichier entier est converti? – Timo

+0

Je préconise seulement de ne pas faire votre mixage au format MP3. C'est plus facile de le faire en WAV et de le convertir à la volée pour la sortie. Vous pouvez produire dans n'importe quel format vos désirs de coeur; le transcodage est significativement plus rapide que la vitesse de lecture, et vous devriez mélanger assez loin pour avoir un bon tampon. – Pesto

1

Ou utilisez Xuggler pour décoder ou encoder des fichiers MP3. Il utilise LAME sous les couvertures, est open-source (LGPL) et gratuit, et fonctionne sur Mac, Windows et Linux.

Questions connexes