Запись аудио в браузере и загрузка его с помощью ASP.NET MVC
Всем привет
я хочу записать аудиофайл и должен загрузить его с помощью MVC5
пожалуйста, дайте мне soultions относительно этого..
Что я уже пробовал:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Live input record and playback</title> <style type='text/css'> ul { list-style: none; } #recordingslist audio { display: block; margin-bottom: 10px; } </style> </head> <body> @*<h1>Recorder.js simple WAV export example</h1> <p>Make sure you are using a recent version of Google Chrome.</p> <p>Also before you enable microphone input either plug in headphones or turn the volume down if you want to avoid ear splitting feedback!</p>*@ <button onclick="startRecording(this);">record</button> <button onclick="stopRecording(this);" disabled>stop</button> <h2>Recordings</h2> <ul id="recordingslist"></ul> <h2>Log</h2> <pre id="log">
функция __log(e, data) {
войти.innerHTML будет += "\п" + е + "" + (данные || ");
}
ВАР audio_context;
регистратор var;
функция startUserMedia(поток) {
var input = audio_context.createMediaStreamSource(поток);
__log('создан медиа-поток.');
// Раскомментируйте, если вы хотите, чтобы аудио напрямую отзывалось
//input.connect(audio_context.destination);
//__журнал (вход подключен к аудио контексте назначения'.);
регистратор = новый регистратор(вход);
_Диктофон _log('инициализации'.);
}
функция startRecording(кнопка) {
рекордер & & amp; рекордер.запись();
кнопки.инвалидов = True;
кнопки.nextElementSibling.отменено = ложь;
__log('запись...');
}
функция stopRecording(кнопка) {
магнитофон и усилитель; & диктофон.стоп();
кнопки.инвалидов = True;
кнопка.previousElementSibling.отменено = ложь;
__log('остановлена запись.');
// создать ссылку для загрузки WAV с помощью Blob-объекта аудиоданных
createDownloadLink();
диктофон.понятно();
}
функция createDownloadLink() {
recorder && recorder.exportWAV(функция(blob) {
ВАР урл = URL-адрес.createObjectURL(BLOB-объектов);
ВАР ли = документ.метод createElement('литий');
ВАР ас = документ.метод createElement('аудио');
ВАР ХФ = документ.метод createElement('а');
АУ.контроль = истина;
АУ.в src = Url-адрес;
кв.с href = url-адрес;
кв.скачать = новая дата().toISOString() + '.в формате WAV';
кв.innerHTML будет = ХФ.скачать;
ли.метода appendChild(ас);
ли.метода appendChild(ВЧ);
recordingslist.метода appendChild(ли);
});
}
window.onload = функция init() {
пробовать {
// прокладка webkit
окно.AudioContext = окно.AudioContext || окно.webkitAudioContext;
navigator.getUserMedia = navigator.getUserMedia || навигатор.webkitGetUserMedia;
окно.URL = окно.URL || окно.webkitURL;
audio_context = новый Аудиоконтекст;
__log('настройка звукового контекста.');
_Навигатор _log ('.getUserMedia можно ' + (навигатор.getUserMedia можно ? 'доступный'.: 'нет!'));
} catch (e) {
предупреждение("нет поддержки веб-аудио в этом браузере!");
}
navigator.getUserMedia({audio: true}, startUserMedia, function(e) {
__log('нет живого аудиовхода:' + e);
});
};