From: Pawel Kaczmarczyk
Date: Thu, 8 Feb 2018 09:57:15 +0000 (+0100)
Subject: [Media] Fix deprecated API
X-Git-Tag: submit/tizen/20180514.095841~6
X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=848caf6a36a6b3482e31b57ed44b862893d1a48f;p=platform%2Fcore%2Fapi%2Fcordova-plugins.git
[Media] Fix deprecated API
[Verification]
tct-media-cordova-tizen-tests passrate 100%
tested in Chromium console
Change-Id: I7938d1a1016c67f3862d49dabed02b2d510154a2
Signed-off-by: Pawel Kaczmarczyk
---
diff --git a/src/lib/plugins/cordova-plugin-media/tizen/Media.js b/src/lib/plugins/cordova-plugin-media/tizen/Media.js
index 0f29b19..717be92 100755
--- a/src/lib/plugins/cordova-plugin-media/tizen/Media.js
+++ b/src/lib/plugins/cordova-plugin-media/tizen/Media.js
@@ -36,25 +36,37 @@ cordova.define(plugin_name, function(require, exports, module) {
var sampleRate = null;
var filename = _filename;
var audioBlob = null;
+ var leftchannel = [];
+ var rightchannel = [];
this.rec = function(){
-
- if (!navigator.getUserMedia)
+ if (navigator.mediaDevices.getUserMedia){
+ navigator.mediaDevices.getUserMedia({audio:true})
+ .then(onGetUserMedia)
+ .catch(function(e) {
+ console.log('Error capturing audio: ' + e.name + ': ' + e.message);
+ });
+ } else {
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia ||
navigator.mozGetUserMedia || navigator.msGetUserMedia;
-
- if (navigator.getUserMedia){
- navigator.getUserMedia({audio:true}, onGetUserMedia, function(e) {
- console.log('Error capturing audio.');
- });
- } else {
- console.log('getUserMedia not supported in this browser.');
+ if(navigator.getUserMedia) {
+ navigator.getUserMedia({audio: true}, onGetUserMedia, function(e) {
+ console.log('Error capturing audio: ' + e.name + ': ' + e.message);
+ })
+ } else {
+ console.log('getUserMedia not supported in this browser.');
+ }
}
}
this.stop = function (){
recording = false;
- audioBlob.stop();
+ var tracks = audioBlob.getAudioTracks();
+
+ tracks.forEach(function(track) {
+ track.stop();
+ });
+
recorder.disconnect();
// flat the left and right channels down
@@ -100,8 +112,6 @@ cordova.define(plugin_name, function(require, exports, module) {
function onGetUserMedia(stream){
recording = true;
- var leftchannel = [];
- var rightchannel = [];
recordingLength = 0;
audioBlob = stream;
@@ -123,7 +133,7 @@ cordova.define(plugin_name, function(require, exports, module) {
Lower values for buffer size will result in a lower (better) latency.
Higher values will be necessary to avoid audio breakup and glitches */
var bufferSize = 2048;
- recorder = context.createJavaScriptNode(bufferSize, 2, 2);
+ recorder = context.createScriptProcessor(bufferSize, 2, 2);
recorder.onaudioprocess = function(sample){
if (!recording) {