1
- /*! p5.sound.js v0.3.9 2018-09-08 */
1
+ /*! p5.sound.js v0.3.9 2018-09-10 */
2
2
/**
3
3
* p5.sound extends p5 with <a href="http://caniuse.com/audio-api"
4
4
* target="_blank">Web Audio</a> functionality including audio input,
@@ -1060,15 +1060,21 @@ soundfile = function () {
1060
1060
request . onload = function ( ) {
1061
1061
if ( request . status === 200 ) {
1062
1062
// on sucess loading file:
1063
+ if ( ! self . panner )
1064
+ return ;
1063
1065
ac . decodeAudioData ( request . response , // success decoding buffer:
1064
1066
function ( buff ) {
1067
+ if ( ! self . panner )
1068
+ return ;
1065
1069
self . buffer = buff ;
1066
1070
self . panner . inputChannels ( buff . numberOfChannels ) ;
1067
1071
if ( callback ) {
1068
1072
callback ( self ) ;
1069
1073
}
1070
1074
} , // error decoding buffer. "e" is undefined in Chrome 11/22/2015
1071
1075
function ( ) {
1076
+ if ( ! self . panner )
1077
+ return ;
1072
1078
var err = new CustomError ( 'decodeAudioData' , errorTrace , self . url ) ;
1073
1079
var msg = 'AudioContext error at decodeAudioData for ' + self . url ;
1074
1080
if ( errorCallback ) {
@@ -1079,6 +1085,8 @@ soundfile = function () {
1079
1085
}
1080
1086
} ) ;
1081
1087
} else {
1088
+ if ( ! self . panner )
1089
+ return ;
1082
1090
var err = new CustomError ( 'loadSound' , errorTrace , self . url ) ;
1083
1091
var msg = 'Unable to load ' + self . url + '. The request status was: ' + request . status + ' (' + request . statusText + ')' ;
1084
1092
if ( errorCallback ) {
@@ -1104,7 +1112,11 @@ soundfile = function () {
1104
1112
} else if ( this . file !== undefined ) {
1105
1113
var reader = new FileReader ( ) ;
1106
1114
reader . onload = function ( ) {
1115
+ if ( ! self . panner )
1116
+ return ;
1107
1117
ac . decodeAudioData ( reader . result , function ( buff ) {
1118
+ if ( ! self . panner )
1119
+ return ;
1108
1120
self . buffer = buff ;
1109
1121
self . panner . inputChannels ( buff . numberOfChannels ) ;
1110
1122
if ( callback ) {
@@ -1113,6 +1125,8 @@ soundfile = function () {
1113
1125
} ) ;
1114
1126
} ;
1115
1127
reader . onerror = function ( e ) {
1128
+ if ( ! self . panner )
1129
+ return ;
1116
1130
if ( onerror ) {
1117
1131
onerror ( e ) ;
1118
1132
}
@@ -2012,6 +2026,8 @@ soundfile = function () {
2012
2026
// Render the song
2013
2027
// act on the result
2014
2028
offlineContext . oncomplete = function ( e ) {
2029
+ if ( ! self . panner )
2030
+ return ;
2015
2031
var filteredBuffer = e . renderedBuffer ;
2016
2032
var bufferData = filteredBuffer . getChannelData ( 0 ) ;
2017
2033
// step 1:
@@ -2306,9 +2322,10 @@ soundfile = function () {
2306
2322
* <div><code>
2307
2323
* var inp, button, mySound;
2308
2324
* var fileName = 'cool';
2309
- * function setup () {
2325
+ * function preload () {
2310
2326
* mySound = loadSound('assets/doorbell.mp3');
2311
- *
2327
+ * }
2328
+ * function setup() {
2312
2329
* btn = createButton('click to save file');
2313
2330
* btn.position(0, 0);
2314
2331
* btn.mouseClicked(handleMouseClick);
0 commit comments