18

It seems I can only use Flash or Java to record voice on a web app. Is there a way of doing it via JavaScript?

4

4 に答える 4

16

それは可能ですが、現時点ではソリューションがすべてのプラットフォームで機能するわけではありません。

<input type="file" accept="audio/*;capture=microphone">

HTML5メディアキャプチャを参照してください

現在サポートされているもの:

Android 3.0ブラウザー、Chrome for Android(0.16)、Firefox Mobile 10.0、iOS6 Safari、およびChrome(部分サポート)

リンク:

http://www.html5rocks.com/en/tutorials/getusermedia/intro/

HTML5によるオーディオキャプチャ

于 2013-02-26T06:26:29.673 に答える
4

Javascript はハードウェアに直接アクセスできません。必要なのは、クライアント側のテクノロジーです。一つには、フラッシュ。

Javascript は非常に簡単にフラッシュと通信できるため、フラッシュ レコーダーを非表示にして、html/js/css を使用してレコーダーの UI を構築できます。

一例を次に示します: https://github.com/jwagener/recorder.js/blob/master/examples/example-1.html

ここに別のものがあります: http://blogupstairs.com/flashwavrecorder-javascript-flash-audio-recorder/

これはまさにあなたが必要としているものではないことは理解していますが、JS ソリューションが必要な理由を教えてくれませんでした。これはフラッシュの依存関係の問題を解決しませんが、フラッシュなしで UI を構築できるため、UI の問題は解決します。

于 2013-02-26T06:42:44.260 に答える
1

もう 1 つのよく知られているソリューションは WAMI です。純粋な JavaScript ではないことはわかっていますが、役に立つかもしれません。

「これを書いている時点では、ほとんどのブラウザーは WebRTC の getUserMedia() をまだサポートしていません。この getUserMedia() は、Web 開発者が Javascript を介してマイクにアクセスできるようにすることを約束しています。このプロジェクトは、Flash をサポートするブラウザーにとって次善の策を実現します。WAMI レコーダーを使用すると、オーディオを収集できます。プロプライエタリなメディア サーバー ソフトウェアをインストールせずに、サーバーにインストールできます。」 https://code.google.com/p/wami-recorder/

node.js を使用した別の例 このサンプル アプリケーションは JavaScript で記述されており、Web サーバーとフレームワークに Node と Express を使用しています。これを機能させるには、Node.js WebAPI ライブラリだけでなく、Web サーバーに 3 つすべてをインストールする必要があります。 nodejs 音声録音の例

于 2013-10-31T02:55:53.073 に答える
1

はい、純粋な HTML/JavaScript の方法がありますが、Firefox と Chrome でのみ機能します: http://audior.ec/blog/recording-mp3-using-only-html5-and-javascript-recordmp3-js/

直接デモ: http://audior.ec/recordmp3js/

于 2015-10-02T13:51:41.397 に答える