Как извлечь аудиодорожку из видео в HTML5 Javascript в качестве исходных аудиоданных? То есть массив образцов?Как можно извлечь аудио из видео в HTML5?
Я совершенно новичок в API HTML5 Video, поэтому пример будет замечательным.
Как извлечь аудиодорожку из видео в HTML5 Javascript в качестве исходных аудиоданных? То есть массив образцов?Как можно извлечь аудио из видео в HTML5?
Я совершенно новичок в API HTML5 Video, поэтому пример будет замечательным.
Web Audio API - это именно то, что вы хотите. В частности, вы хотите подать MediaElementAudioSourceNode
в AnalyserNode
. К сожалению, API Web Audio реализован только в 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);
Большое спасибо, это было именно то, что мне нужно. Надеемся, что больше браузеров будет поддерживать это в ближайшее время. – James
Можем ли мы пойти другим путем? Учитывая некоторые образцы и кадры, можно ли создать видео? – James
@ Джеймс Может быть? Аудио API может позволить вам буферизовать образцы и воспроизводить их каким-то образом, но я не уверен. В любом случае вы не смогли бы создать фактический видеофайл *, но вы могли бы синхронизировать отключенное видео с воспроизведением звука. – apsillers
Я не знаю, подходит ли Javascript для таких задач. Пожалуйста, обратитесь к этой теме: http://stackoverflow.com/questions/11182587/extract-audio-from-video-stream-using-javascript –