Audio html5 arrau buffer
привет всем, кто знает, скажите, как из
var audio = new Audio('audio.mp3') вытащить массив данных? audio.arraybuffer нету заранее спасибо всем участникам и тем кто поддержал мой вопрос, для все я думаю пригодится или понадобиться! |
мне кажется, только хакеры на такое способны) Шутка :help:
|
Вот документация по классу Audio:
https://developer.mozilla.org/en-US/...oElement/Audio Смотрите какие методы и свойства он имеет и извлекайте, что вам нужно. |
Сам я не дока в этом.
Но знакомые что то такое делали, правда для видео. Скорее всего надо использовать API MediaRecorder и MediaStream https://developer.mozilla.org/en-US/...ia_Streams_API https://developer.mozilla.org/en-US/.../MediaRecorder |
Для на чала о том, как вытащить массив данных из аудиофайла, выбранного на компьютере с помощью диалога:
<input id=myfile type=file>
var data_L, data_R;
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
var source = audioCtx.createBufferSource();
myfile.onchange = function(){
var reader = new FileReader();
reader.readAsArrayBuffer(this.files[0]);
reader.onload = function(e){
audioCtx.decodeAudioData(e.target.result, function(buffer){
data_L = buffer.getChannelData(0); // получаем исходные семплы
data_R = buffer.getChannelData(1); // аудиофайла с помощью Web Audio API
// Теперь соответственно в массивах data_L и data_R находятся
// аудиоданные левого и правого каналов аудиофайла
});
}
}
Чуть позже изложу, как вытащить массив данных из аудиофайла на сервере. |
| Часовой пояс GMT +3, время: 02:00. |