audio-vs1053b
Advanced tools
Comparing version 0.1.6 to 0.1.9
62
index.js
@@ -174,2 +174,3 @@ // Copyright 2014 Technical Machine, Inc. See the COPYRIGHT | ||
playStream.bufferedLen = 0; | ||
playStream.last = 0; | ||
@@ -184,3 +185,2 @@ playStream._write = function (chunk, enc, next) { | ||
this.bufs = []; this.bufferedLen = 0; | ||
var ret = audio.queue(audioData); | ||
@@ -195,2 +195,12 @@ if (ret < 0) { | ||
audio.on('queued', function(id) { | ||
playStream.last = id; | ||
}) | ||
process.on('audio_playback_complete', function(err, stream_id) { | ||
if (stream_id === playStream.last) { | ||
playStream.emit('end'); | ||
} | ||
}) | ||
playStream.on('finish', function flush() { | ||
@@ -243,6 +253,6 @@ var audioData = Buffer.concat(this.bufs); | ||
else { | ||
while (!this.MP3_DREQ); | ||
while (!this.MP3_DREQ.read()); | ||
this._writeSciRegister16(SCI_MODE, 0x4800, callback); | ||
} | ||
}); | ||
}.bind(this)); | ||
} | ||
@@ -541,4 +551,2 @@ }.bind(this)) | ||
this.emit('error', err, track); | ||
return; | ||
@@ -550,5 +558,7 @@ } | ||
if (track.callback) { | ||
// Add it to the callbacks dict | ||
// Add it to the callbacks dict | ||
_audioCallbacks[track.id] = track.callback; | ||
} | ||
this.emit('queued', track.id); | ||
} | ||
@@ -606,4 +616,6 @@ } | ||
if (ret < 0) { | ||
err = new Error("A buffer is not being played."); | ||
this.emit('error', err); | ||
if (callback) { | ||
callback(new Error("A buffer is not being played.")); | ||
} | ||
return; | ||
} | ||
@@ -636,3 +648,2 @@ | ||
err = new Error("Not in a valid state to call stop."); | ||
this.emit('error', err); | ||
} | ||
@@ -687,3 +698,2 @@ | ||
} | ||
self.emit('error', err); | ||
return; | ||
@@ -715,4 +725,2 @@ } | ||
this.emit('error', err); | ||
return; | ||
@@ -735,15 +743,4 @@ } | ||
process.once('audio_recording_complete', function recStopped(length) { | ||
var ret = hw.audio_stop_recording(); | ||
process.unref(); | ||
// If a callback was provided, return it | ||
if (callback) { | ||
callback(); | ||
} | ||
// Stop recording | ||
self.emit('stopRecording'); | ||
}); | ||
var ret = hw.audio_stop_recording(); | ||
if (ret < 0) { | ||
@@ -755,6 +752,19 @@ var err = new Error("Not in valid state to stop recording."); | ||
} | ||
this.emit('error', err); | ||
} | ||
else { | ||
function recStopped(length) { | ||
process.unref(); | ||
// If a callback was provided, return it | ||
if (callback) { | ||
callback(); | ||
} | ||
// Stop recording | ||
self.emit('stopRecording'); | ||
} | ||
process.once('audio_recording_complete', recStopped); | ||
process.ref(); | ||
@@ -761,0 +771,0 @@ } |
{ | ||
"name": "audio-vs1053b", | ||
"version": "0.1.6", | ||
"version": "0.1.9", | ||
"description": "Library to run the Tessel Audio Module. Plays and records sound.", | ||
@@ -19,4 +19,6 @@ "main": "index.js", | ||
"author": "", | ||
"dependencies": {}, | ||
"devDependencies": { | ||
"tinytap": "~0.0.2" | ||
"async": "^0.9.0", | ||
"tinytap": "^0.2.0" | ||
}, | ||
@@ -23,0 +25,0 @@ "directories": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
427983
0
2
20
986