2014-09-09 3 views
5

Я ищу простое решение для записи аудиофайла и загрузки его на s3.AngularJS + HTML5 запись аудиофайла

Мои поисковые запросы приходят, чтобы найти:

WebRTC-Experiment, который является наиболее popuplar решением я мог бы найти.

также есть рабочий пример в следующей ссылке: https://www.webrtc-experiment.com/RecordRTC/

Я также нашел ngCamRecorder, который не был поддержан светлячок еще.

Я ищу простое решение + рабочий пример и предложение.

  1. Какое решение является наиболее популярным при использовании с AngularJS?

  2. если вы можете предоставить свой собственный пример или ссылку на рабочий пример, который я могу использовать.

  3. если вы также использовали S3, я хотел бы знать, как вы можете нажать файл на S3 и получить ссылку на контроллер.

Решение, которое я нашел, выбросить ошибку и включить рабочий пример без объяснения кода. Я также хотел бы знать, как нажать на s3.

Это код, я реализован на примере:

$scope.start_recording = function() 
{ 
    navigator.getUserMedia(session, function (mediaStream) { 
     window.recordRTC = RecordRTC(MediaStream); 
     recordRTC.startRecording(); 
    }, function(error){console.log(error)}); 
}; 

$scope.stop_recording = function() 
{ 
    navigator.getUserMedia({audio: true}, function(mediaStream) { 
     window.recordRTC = RecordRTC(MediaStream); 
     recordRTC.startRecording(); 
    }); 
}; 

Он просто выдаст ошибку: не определено не функция на recordrtc.js линии 641

if(!mediaStream.getAudioTracks().length) throw 'Your stream has no audio tracks.'; 

очевидно mediaStrem равна нулю.

Спасибо.

ответ

0

У меня такая же проблема, и я понял это. Аргумент функции в функции успеха navigation.getUserMedia() должен быть «MediaStream» вместо «mediaStream».

5

Для этого есть обертка AngularJS, это простая директива, которая поддерживает HTML5 (RecorderJS), Cordova Media и Flash.

Использование прост

<ng-audio-recorder audio-model="someModel" auto-start="false"> 
    <!-- controls --> 
    <button ng-click='recorder.startRecording()'>Start</button> 
    <button ng-click='recorder.stopRecording()'>Stop</button> 
</ng-audio-recorder> 

Вы можете увидеть полное использование здесь:

https://github.com/logbon72/angular-recorder

+0

Полное раскрытие: Я работал над этим плагином, я раздвоенный из другого проекта записи. – tlogbon

+0

Проект, над которым я работаю, использует npm с браузером вместо беседки. Как я могу интегрировать этот модуль с моим приложением? –