audioObjects[id].isReady = true;
if (!audioObjects[id].src) {
+
var setSrc = function(id, src) {
//assigning src sets playbackRate to default value equal to 1
//so if playbackRate was set before first run of play() function
};
if(RegExp('^((file\:\/\/)|(/)).*').test(src)) {
- setSrc(id,src);
+ try {
+ tizen.filesystem.resolve(src, function() {
+ setSrc(id, src);
+ }, function(error) {
+ console.log('Filesystem resolve failed');
+ Media.onStatus(id, Media.MEDIA_ERROR, new MediaError(MediaError.MEDIA_ERR_ABORTED, error.message));
+ }, 'r');
+ } catch (error) {
+ console.log('Error during filesystem resolve');
+ Media.onStatus(id, Media.MEDIA_ERROR, new MediaError(MediaError.MEDIA_ERR_ABORTED, error.message));
+ }
return;
}
- if(!RegExp('.*!(\/\/).*').test(src)) {
+ if(RegExp('.*!(\/\/).*').test(src)) {
try {
tizen.filesystem.resolve('documents', function(dir) {
setSrc(id, dir.toURI() + '/' + src);
Media.onStatus(id, Media.MEDIA_ERROR, new MediaError(MediaError.MEDIA_ERR_ABORTED, error.message));
}
return;
- } else {
- setSrc(id, src);
}
+ setSrc(id, src);
+ return;
}
audioObjects[id].play();
startRecordingAudio: function(successCallback, errorCallback, args) {
var id = args[0];
console.log('media::startRecordingAudio()');
-
- recorder.rec();
+ try {
+ tizen.filesystem.resolve('documents', function() {
+ recorder.rec();
+ }, function (error) {
+ Media.onStatus(id, Media.MEDIA_ERROR, new MediaError(MediaError.MEDIA_ERR_ABORTED, error.message));
+ }, 'rw');
+ } catch (error) {
+ Media.onStatus(id, Media.MEDIA_ERROR, new MediaError(MediaError.MEDIA_ERR_ABORTED, error.message));
+ return;
+ }
},
stopRecordingAudio: function(successCallback, errorCallback, args) {
var id = args[0];