Je travaille sur un projet qui nécessite des données audio à diffuser via http to / depuis Server. P>
Nous devons compresser les données audio à l'aide de SpeEx. P>
En flash, nous pouvons utiliser Alchemy et LibSeex, mais comment pouvons-nous le faire en JavaScript. HTML5 peut être utilisé. P>
merci. p>
Peter p>
4 Réponses :
J'ai eu une exigence similaire et j'ai fini par écrire un applet Java qui a utilisé JSPEEX et l'a appelé de JS. p>
J'ai récemment mis en place un client HTML5 / VoIP réussi à l'aide du port JS SpeeX suivant, véritablement génial: p>
https://github.com/jpemartins/speex.js P>
Pour l'instant, vous aurez besoin d'attendre le médiastreamrecorder ou de sauter le pistolet comme je l'ai fait et en utilisant ceci: p>
https://github.com/jwagener/recorder.js/ p>
Quant à la façon dont vous trouverez tout le terrain ensemble dans un système slick, votre appel :) p>
espoir que j'ai aidé p>
Pour référence, la mise en œuvre de base de l'enregistrement audio HTML 5 et du téléchargement ... Juste à la partie encodante est ici: Learnwithecho. com / testature.html
Hey Sirjamm, je ne suppose pas que cette solution réussie est sur GitHub? J'aimerais voir comment vous avez reçu enregistreur.js et speex.js pour travailler ensemble!
Je travaille sur un projet appelé Audiorecorder qui correspond exactement à vos besoins. Vous pouvez le trouver ici. https://github.com/dbieber/audiorecorder . P>
Ceci s'appuie sur le codec SpeeX compilé EMSCRIPTEN déjà mentionné: JPEMartins / SpeeX.js. P>
Si vous avez déjà l'audio et que vous souhaitez simplement le coder, appelez Codec.encode (échantillons). Vous pouvez également utiliser Audiorecorder pour enregistrer l'audio - il y a un exemple sur GitHub ici: http: / /dbieber.github.io/audiorecorder/examples/recorder.html P>
La mise en œuvre suppose actuellement une audio à 1 canaux et si vous voulez deux canaux, vous pouvez simplement encoder ou décoder deux fois. P>
J'ai posté une réponse sur Comment puis-je Play .spx File par HTML5? . P>
avec Speex.js, je peux maintenant jouer un discours de Word pour mon projet de dictionnaire en ligne. P>
La réponse la plus probable est "S'il n'y a pas de codec pure JS, vous devez écrire un vous-même" :(
La réécriture d'une libère spéex est ......
Ensuite, vous devez diffuser un format pris en charge par des navigateurs. Voir WEBRTC WEBRTC.ORG Personne ne vous oblige à utiliser SpeeX?
Hmmm. Speex est assez standard pour la reconnaissance vocale. Le taux de compression est assez agréable: 1/7 ou même moins mais pas de distorsion apparente pour la reconnaissance vocale. Je ne sais pas comment fonctionne le codec audio ISAC / ILBC.
Mais Speex n'est pas standard pour le Web, ni les navigateurs ... Donc :)