diff --git a/README.md b/README.md index 9578d89..dff9bc5 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,8 @@ npm i vue-audio-recorder --save | attempts | Number | Number of recording attempts | | headers | Object | HTTP headers | | time | Number | Time limit for the record (minutes) | +| bit-rate | Number | Default: 128 | +| sample-rate | Number | Default: 44100 | | filename | String | Download/Upload filename | | upload-url | String | URL for uploading | | show-download-button | Boolean | If it is true show a download button. Default: true | diff --git a/demo/app.vue b/demo/app.vue index e160827..c6e84bd 100644 --- a/demo/app.vue +++ b/demo/app.vue @@ -20,7 +20,8 @@ :select-record="callback" :before-upload="callback" :successful-upload="callback" - :failed-upload="callback"/> + :failed-upload="callback" + :bit-rate="192"/> diff --git a/src/components/recorder.vue b/src/components/recorder.vue index 1426535..32170e7 100644 --- a/src/components/recorder.vue +++ b/src/components/recorder.vue @@ -260,6 +260,9 @@ attempts : { type: Number }, time : { type: Number }, + bitRate : { type: Number, default: 128 }, + sampleRate : { type: Number, default: 44100 }, + showDownloadButton : { type: Boolean, default: true }, showUploadButton : { type: Boolean, default: true }, @@ -343,7 +346,9 @@ beforeRecording : this.beforeRecording, afterRecording : this.afterRecording, pauseRecording : this.pauseRecording, - micFailed : this.micFailed + micFailed : this.micFailed, + bitRate : this.bitRate, + sampleRate : this.sampleRate }) } }, diff --git a/src/lib/encoder.js b/src/lib/encoder.js index b1be79e..944de62 100644 --- a/src/lib/encoder.js +++ b/src/lib/encoder.js @@ -2,8 +2,8 @@ import { Mp3Encoder } from 'lamejs' export default class { constructor(config) { - this.bitRate = config.bitRate || 128 - this.sampleRate = config.sampleRate || 44100 + this.bitRate = config.bitRate + this.sampleRate = config.sampleRate this.dataBuffer = [] this.encoder = new Mp3Encoder(1, this.sampleRate, this.bitRate) } diff --git a/src/lib/recorder.js b/src/lib/recorder.js index bdeb7f2..69e02a1 100644 --- a/src/lib/recorder.js +++ b/src/lib/recorder.js @@ -7,6 +7,8 @@ export default class { this.pauseRecording = options.pauseRecording this.afterRecording = options.afterRecording this.micFailed = options.micFailed + this.bitRate = options.bitRate + this.sampleRate = options.sampleRate this.bufferSize = 4096 this.records = [] @@ -37,7 +39,10 @@ export default class { .catch(this._micError.bind(this)) this.isPause = false this.isRecording = true - this.lameEncoder = new Encoder({}) + this.lameEncoder = new Encoder({ + bitRate : this.bitRate, + sampleRate : this.sampleRate + }) } stop () {