UNPKG

react-native-audio-api

Version:

react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification

46 lines (45 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _AudioBufferBaseSourceNode = _interopRequireDefault(require("./AudioBufferBaseSourceNode")); var _errors = require("../errors"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } class AudioBufferQueueSourceNode extends _AudioBufferBaseSourceNode.default { enqueueBuffer(buffer) { return this.node.enqueueBuffer(buffer.buffer); } dequeueBuffer(bufferId) { const id = parseInt(bufferId, 10); if (isNaN(id) || id < 0) { throw new _errors.RangeError(`bufferId must be a non-negative integer: ${bufferId}`); } this.node.dequeueBuffer(id); } clearBuffers() { this.node.clearBuffers(); } start(when = 0, offset) { if (when < 0) { throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`); } if (offset) { if (offset < 0) { throw new _errors.RangeError(`offset must be a finite non-negative number: ${offset}`); } } this.node.start(when); } stop(when = 0) { if (when < 0) { throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`); } this.node.stop(when); } pause() { this.node.pause(); } } exports.default = AudioBufferQueueSourceNode; //# sourceMappingURL=AudioBufferQueueSourceNode.js.map