Convertir wav en ogg sur le moteur d'application (ou en javascript?)

J'ai construit une petite application de moteur d'application qui permet aux utilisateurs de télécharger des enregistrements courts. Certains des enregistrements sont effectués dans le navigateur avec https://github.com/mattdiamond/Recorderjs , qui crée des fichiers wav. Pour économiser de l'espace, j'aimerais les convertir en ogg avant de les écrire sur le magasin de données du moteur d'application, de sorte que j'utilise moins de ma bande passante sortante lorsque je rejette les enregistrements audio sur les utilisateurs.

Comment puis-je faire ceci? J'ai googlé autour et, apparemment, il existe un outil de ligne de commande appelé oggenc qui code pour ogg – mais je suis plutôt sûr de ne pouvoir installer (ou, même si je peux l'installer, faire des appels) sur le moteur d'application.

J'ai trouvé une question similaire sur Encode audio de getUserMedia () à un .OGG en JavaScript – ce lien vers https://github.com/jpemartins/speex.js , un projet qui semble pouvoir éventuellement être capable de convertir à partir de Wav to ogg in javascript (ce qui serait génial), mais, autant que je peux le dire, ne le fait pas pour le moment. À https://github.com/jpemartins/speex.js/issues/4, les auteurs mentionnent que WAV -> … -> OGG n'est pas encore possible.

Que dois-je essayer d'autre?

Edit: Le code de mon moteur d'application est écrit en Python, donc une autre possibilité serait de faire la conversion, avec un module python qui peut convertir wav en ogg. Je pense que http://pymedia.org/ peut le faire, mais je devrais l'installer sur le moteur d'application – est-ce possible?

Pymedia n'est pas un python pur, donc vous ne pourrez pas l'utiliser sur le moteur d'application.

Vous voulez probablement construire quelque chose sur Compute Engine pour ce faire.

À condition qu'il soit possible de remplacer l'enregistreur de Matt Diamond par sa fourche, chris-rudmin / Recorderjs ( page de démonstration ) dans AppEngine, cela devrait être réalisable. Ou encodez d'abord à WAV et utilisez opusenc.js ( page de démonstration ), qui est un port Emscripten de l'outil Opusenc, pour convertir un fichier WAV temporaire en client client Ogg-Opus.