From: Pawel Andruszkiewicz Date: Fri, 1 Apr 2016 14:25:53 +0000 (+0200) Subject: [Media] Create only one AudioContext(). X-Git-Tag: submit/tizen/20160405.071417^2~1^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b049d59cd2cdaf9d38a0e4f1367f8b94ee6dc4fe;p=platform%2Fcore%2Fapi%2Fcordova-plugins.git [Media] Create only one AudioContext(). Fix for unit tests (expected error code in case of non-existent file). [Verification] TCT pass rate: 100% (46/46/0/0/0) Change-Id: Iefe550ade09c0e372d98d5706dbed7d2ae103a8f Signed-off-by: Pawel Andruszkiewicz --- diff --git a/src/media/cordova_media_api.js b/src/media/cordova_media_api.js index f9f3931..d7aa46b 100755 --- a/src/media/cordova_media_api.js +++ b/src/media/cordova_media_api.js @@ -23,6 +23,10 @@ cordova.define(plugin_name, function(require, exports, module) { var audioObjects = {}; var recorder = null; + // creates the audio context + var audioContext = window.AudioContext || window.webkitAudioContext; + var context = new audioContext(); + function Recorder(_filename) { var recorder = null; var recording = false; @@ -31,11 +35,6 @@ cordova.define(plugin_name, function(require, exports, module) { var audioInput = null; var sampleRate = null; var filename = _filename; - - // creates the audio context - var audioContext = window.AudioContext || window.webkitAudioContext; - var context = new audioContext(); - var audioBlob = null; this.rec = function(){ @@ -243,11 +242,16 @@ cordova.define(plugin_name, function(require, exports, module) { }; audioObjects[id].onErrorCB = function (event) { - console.log('media::onErrorCB() - MEDIA_ERROR -> ' + event.srcElement.error); + var err = event.srcElement.error.code === MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED ? + { code: MediaError.MEDIA_ERR_ABORTED } : + event.srcElement.error; + Object.freeze(err); + + console.log('media::onErrorCB() - MEDIA_ERROR -> ' + err); - Media.onStatus(id, Media.MEDIA_ERROR, event.srcElement.error); + Media.onStatus(id, Media.MEDIA_ERROR, err); if (errorCallback) { - errorCallback(event.srcElement.error); + errorCallback(err); } };