2014-09-09 21 views
5

Tôi đang tìm một giải pháp đơn giản để ghi tệp âm thanh và tải tệp đó lên s3.AngularJS + tệp âm thanh ghi HTML5

tìm kiếm web của tôi đưa ra để tìm:

WebRTC-Experiment đó là giải pháp popuplar nhất tôi có thể tìm thấy.

nó cũng có một ví dụ làm việc tại liên kết sau: https://www.webrtc-experiment.com/RecordRTC/

Tôi cũng thấy ngCamRecorder mà đã không được hỗ trợ bởi firefox được nêu ra.

Tôi đang tìm một giải pháp đơn giản + ví dụ làm việc và đề xuất.

  1. Giải pháp nào xuất hiện nhiều nhất để sử dụng với AngularJS?

  2. nếu bạn có thể cung cấp ví dụ của riêng bạn hoặc liên kết đến ví dụ hoạt động mà tôi có thể sử dụng.

  3. nếu bạn cũng sử dụng S3, tôi muốn biết cách bạn có thể đẩy tệp vào S3 và nhận liên kết tới bộ điều khiển.

Giải pháp tôi tìm thấy, lỗi ném và bao gồm ví dụ hoạt động mà không có mã được giải thích. Tôi cũng muốn biết cách đẩy nó vào s3.

Đây là mã tôi thực hiện từ ví dụ:

$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(); 
    }); 
}; 

Nó chỉ đơn giản ném một lỗi: không xác định được không phải là một chức năng trên đường dây recordrtc.js 641

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

rõ ràng mediaStrem là null.

Cảm ơn.

Trả lời

0

Tôi gặp vấn đề tương tự và đã tìm ra. Đối số hàm trong hàm thành công của navigation.getUserMedia() được cho là "MediaStream" thay vì "mediaStream".

5

Có một trình bao bọc AngularJS cho điều này, đó là một chỉ thị đơn giản hỗ trợ HTML5 (RecorderJS), Cordova Media và Flash.

Cách sử dụng rất đơn giản

<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> 

Bạn có thể xem cách sử dụng đầy đủ ở đây:

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

+0

Khai báo đầy đủ: Tôi làm việc trên plugin này, tôi chia hai nó từ một dự án thu âm. – tlogbon

+0

Dự án tôi đang làm là sử dụng npm với trình duyệt thay vì bower. Tôi làm cách nào để tích hợp mô-đun này với ứng dụng của mình? –

Các vấn đề liên quan