2013-07-08 27 views
5

生のオーディオデータとしてHTML5 JavaScriptのビデオからオーディオトラックを抽出するにはどうすればよいですか?私。サンプルの配列?HTML5の動画から音声を抽出するにはどうすればよいですか?

私はHTML5 Video APIの新機能を使用しています。

+0

Javascriptがこのようなタスクに適しているかどうかわかりません。 http://stackoverflow.com/questions/11182587/extract-audio-from-video-stream-using-javascript –

答えて

7

Web Audio APIは、まさにあなたが望むものです。特に、MediaElementAudioSourceNodeAnalyserNodeにフィードしたいとします。残念ながら、Web Audio APIはChromeでのみ実装されています(FFで実装されています)。さらにChrome doesn't have full support for MediaElementAudioSourceNode yetも実装されています。

var context = new webkitAudioContext(); 

// feed video into a MediaElementSourceNode, and feed that into AnalyserNode 
// due to a bug in Chrome, this must run after onload 
var videoElement = document.querySelector('myVideo'); 
var mediaSourceNode = context.createMediaElementSource(videoElement); 
var analyserNode = context.createAnalyser(); 
mediaSourceNode.connect(analyserNode); 
analyserNode.connect(context.destination); 

videoElement.play(); 

// run this part on loop to sample the current audio position 
sample = new Float32Array(analyser.frequencyBinCount); 
analyser.getFloatFrequencyData(sample); 
+0

ありがとう、これはちょうど私が後にしたものでした。すぐにもっと多くのブラウザがこれをサポートしてくれることを願っています。 – James

+0

もう一度行くことができますか?いくつかのサンプルと映像があれば、ビデオを作成できますか? – James

+0

@ジェームズかもしれませんか? Audio APIを使用すると、サンプルをバッファリングして何らかの形で再生することができますが、わかりません。いずれの場合でも、実際のビデオ*ファイル*を作成することはできませんが、ミュートされたビデオとオーディオ再生を同期させることができます。 – apsillers

関連する問題