react-native-audio-api
Version:
react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification
31 lines (30 loc) • 1.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = changePlaybackSpeed;
var _AudioBuffer = _interopRequireDefault(require("./AudioBuffer"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
class AudioStretcher {
static instance = null;
constructor() {
this.stretcher = global.createAudioStretcher();
}
static getInstance() {
if (!AudioStretcher.instance) {
AudioStretcher.instance = new AudioStretcher();
}
return AudioStretcher.instance;
}
async changePlaybackSpeedInstance(input, playbackSpeed) {
const buffer = await this.stretcher.changePlaybackSpeed(input.buffer, playbackSpeed);
if (!buffer) {
throw new Error('Failed to change playback speed');
}
return new _AudioBuffer.default(buffer);
}
}
async function changePlaybackSpeed(input, playbackSpeed) {
return AudioStretcher.getInstance().changePlaybackSpeedInstance(input, playbackSpeed);
}
//# sourceMappingURL=AudioStretcher.js.map