2016-04-26 18 views
2

Zuerst entschuldige ich mich, da ich im Wesentlichen neu bin mit Audio zu arbeiten.HTML5-Audio Browser nicht in der Lage, mit IMA ADPCM codierte WAV-Datei zu decodieren

Die Webanwendung, an der ich derzeit arbeite, die mit asp.net/vb.net entworfen wurde, ermöglicht Benutzern das Aufnehmen und Wiedergeben von Audio mithilfe des Nanogong-Applets (http://nanogong.ust.hk/doc_faq.html). Wir wechseln zu HTML5-Audio, da die Unterstützung für das NPAPI-Plugin von den meisten Browsern (außer Firefox bis Ende dieses Jahres) entfernt wurde.

Nanogong verwendet 4-Bit-IMA-ADPCM zum Codieren von WAV-Dateien. Ich bin in der Lage, die Nanogong WAV-Datei in 16-Bit-PCM mit Sox zu konvertieren, und dann mit dieser WAV-Datei erstellen Sie eine ogg-Version mit oggenc2 und eine MP3-Version mit lame. Wir brauchen die ogg-Dateien für Firefox und Chrome und die mp3 für Safari.

Was ich gerne erfahren würde ist, warum Browser nicht in der Lage zu sein scheinen, das 4-Bit-IMA-ADPCM-Format zu spielen? Können sie nur PCM-Format in 8-Bit oder 16-Bit wiedergeben? In Firefox zeigt Firebug an, dass die IMA-ADPCM-WAV-Datei nicht decodiert werden kann; Chrome und Opera erwähnen nichts in der Entwicklerkonsole, aber ich denke, es ist dasselbe wie Firefox, da die Datei in diesen Browsern nicht abgespielt wird.

Ich habe versucht, im Internet zu suchen, aber es scheint nicht viel über HTML5 Audio zu sein, oder die meisten davon scheinen ältere Informationen zu sein. Ich sehe auch mehr Artikel über die Konvertierung von PCM zu ADPCM.

Jede Anleitung oder Ressourcen würden sehr geschätzt werden. Vielen Dank!!

Antwort

2

Browser-Anbieter müssen kein bestimmtes Audioformat unterstützen. Es gibt Probleme wie die Lizenzierung, obwohl sie in diesem Fall vielleicht nicht so relevant sind, die Anbieter nur die grundlegendsten (wie unkomprimierte PCM) und gebräuchliche Formate (MP3, OGG usw.) unterstützen und in einigen Fällen auf dem zugrunde liegenden basieren System zum Decodieren von Audio (oder Video). Die Größe der Codebasis relativ zur Verstärkung könnte ein weiterer Faktor sein.

4-Bit IMA ADPCM würde ab heute in die Kategorie "nicht so häufig" fallen, was wahrscheinlich ist, warum es keine Unterstützung in den Browsern zu finden gibt.

Es ist möglich, dies zu umgehen, indem Sie das Format manuell mit der Audio-API (die den IE eliminiert) und der binären Analyse/Decodierung unterstützen. Ich mache das ist meine audio-reader-js Bibliothek, aber zur Zeit habe ich keine Unterstützung für IMA codierte Daten. Es kann aber auch als Grundlage dafür verwendet werden, diese Unterstützung zu implementieren.

+0

Vielen Dank für die Antwort! Ich habe mich gefragt, ob dieses Format weniger verbreitet ist, aber für vieles neu zu sein, war nicht sicher. Ich werde mir auf jeden Fall deine Bibliothek ansehen, die du erwähnt hast. :) – AmyW