web-audio-recorder-ts 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +62 -0
- package/README.md +261 -0
- package/dist/core/WebAudioRecorder.d.ts +85 -0
- package/dist/core/WebAudioRecorder.d.ts.map +1 -0
- package/dist/core/types.d.ts +109 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/encoders/Mp3LameEncoder.d.ts +48 -0
- package/dist/encoders/Mp3LameEncoder.d.ts.map +1 -0
- package/dist/encoders/OggVorbisEncoder.d.ts +48 -0
- package/dist/encoders/OggVorbisEncoder.d.ts.map +1 -0
- package/dist/encoders/WavAudioEncoder.d.ts +47 -0
- package/dist/encoders/WavAudioEncoder.d.ts.map +1 -0
- package/dist/index.cjs.js +770 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.esm.js +760 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/index.umd.js +776 -0
- package/dist/index.umd.js.map +1 -0
- package/dist/lib/Mp3LameEncoder.min.js +18 -0
- package/dist/lib/Mp3LameEncoder.min.js.mem +0 -0
- package/dist/lib/OggVorbisEncoder.min.js +17 -0
- package/dist/lib/OggVorbisEncoder.min.js.mem +0 -0
- package/dist/lib/WavAudioEncoder.min.js +1 -0
- package/dist/recorders/WebAudioRecorderMp3.d.ts +29 -0
- package/dist/recorders/WebAudioRecorderMp3.d.ts.map +1 -0
- package/dist/recorders/WebAudioRecorderOgg.d.ts +29 -0
- package/dist/recorders/WebAudioRecorderOgg.d.ts.map +1 -0
- package/dist/recorders/WebAudioRecorderWav.d.ts +20 -0
- package/dist/recorders/WebAudioRecorderWav.d.ts.map +1 -0
- package/lib/Mp3LameEncoder.min.js +18 -0
- package/lib/Mp3LameEncoder.min.js.mem +0 -0
- package/lib/OggVorbisEncoder.min.js +17 -0
- package/lib/OggVorbisEncoder.min.js.mem +0 -0
- package/lib/WavAudioEncoder.min.js +1 -0
- package/package.json +62 -0
- package/types/mp3-lame-encoder.d.ts +28 -0
- package/types/ogg-vorbis-encoder.d.ts +28 -0
- package/types/wav-audio-encoder.d.ts +17 -0
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(n){var a=Math.min,s=Math.max;var e=function(n,a,e){var s=e.length;for(var t=0;t<s;++t)n.setUint8(a+t,e.charCodeAt(t))};var t=function(t,e){this.sampleRate=t;this.numChannels=e;this.numSamples=0;this.dataViews=[]};t.prototype.encode=function(r){var t=r[0].length,u=this.numChannels,h=new DataView(new ArrayBuffer(t*u*2)),o=0;for(var e=0;e<t;++e)for(var n=0;n<u;++n){var i=r[n][e]*32767;h.setInt16(o,i<0?s(i,-32768):a(i,32767),true);o+=2}this.dataViews.push(h);this.numSamples+=t};t.prototype.finish=function(s){var n=this.numChannels*this.numSamples*2,t=new DataView(new ArrayBuffer(44));e(t,0,"RIFF");t.setUint32(4,36+n,true);e(t,8,"WAVE");e(t,12,"fmt ");t.setUint32(16,16,true);t.setUint16(20,1,true);t.setUint16(22,this.numChannels,true);t.setUint32(24,this.sampleRate,true);t.setUint32(28,this.sampleRate*4,true);t.setUint16(32,this.numChannels*2,true);t.setUint16(34,16,true);e(t,36,"data");t.setUint32(40,n,true);this.dataViews.unshift(t);var a=new Blob(this.dataViews,{type:"audio/wav"});this.cleanup();return a};t.prototype.cancel=t.prototype.cleanup=function(){delete this.dataViews};n.WavAudioEncoder=t})(self);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recorder MP3 usando WebAudioRecorder
|
|
3
|
+
*
|
|
4
|
+
* @module recorders/WebAudioRecorderMp3
|
|
5
|
+
*/
|
|
6
|
+
import { WebAudioRecorder } from '../core/WebAudioRecorder';
|
|
7
|
+
import { RecorderOptions, Mp3Options } from '../core/types';
|
|
8
|
+
/**
|
|
9
|
+
* Classe para gravação de áudio em formato MP3
|
|
10
|
+
*/
|
|
11
|
+
export declare class WebAudioRecorderMp3 extends WebAudioRecorder {
|
|
12
|
+
private mp3Options;
|
|
13
|
+
/**
|
|
14
|
+
* Cria uma instância do recorder MP3
|
|
15
|
+
*
|
|
16
|
+
* @param audioContext - Contexto de áudio Web Audio API
|
|
17
|
+
* @param options - Opções de configuração do recorder
|
|
18
|
+
* @param mp3Options - Opções específicas do encoder MP3
|
|
19
|
+
*/
|
|
20
|
+
constructor(audioContext: AudioContext, options?: RecorderOptions, mp3Options?: Mp3Options);
|
|
21
|
+
/**
|
|
22
|
+
* Carrega o script Mp3LameEncoder antes de usar
|
|
23
|
+
*
|
|
24
|
+
* @param scriptUrl - URL do script Mp3LameEncoder.min.js
|
|
25
|
+
* @returns Promise que resolve quando o script é carregado
|
|
26
|
+
*/
|
|
27
|
+
static loadEncoder(scriptUrl: string): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=WebAudioRecorderMp3.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebAudioRecorderMp3.d.ts","sourceRoot":"","sources":["../../src/recorders/WebAudioRecorderMp3.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE5D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gBAAgB;IACvD,OAAO,CAAC,UAAU,CAAa;IAE/B;;;;;;OAMG;gBAED,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE,eAAoB,EAC7B,UAAU,GAAE,UAAe;IAU7B;;;;;OAKG;WACU,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recorder OGG Vorbis usando WebAudioRecorder
|
|
3
|
+
*
|
|
4
|
+
* @module recorders/WebAudioRecorderOgg
|
|
5
|
+
*/
|
|
6
|
+
import { WebAudioRecorder } from '../core/WebAudioRecorder';
|
|
7
|
+
import { RecorderOptions, OggVorbisOptions } from '../core/types';
|
|
8
|
+
/**
|
|
9
|
+
* Classe para gravação de áudio em formato OGG Vorbis
|
|
10
|
+
*/
|
|
11
|
+
export declare class WebAudioRecorderOgg extends WebAudioRecorder {
|
|
12
|
+
private oggOptions;
|
|
13
|
+
/**
|
|
14
|
+
* Cria uma instância do recorder OGG Vorbis
|
|
15
|
+
*
|
|
16
|
+
* @param audioContext - Contexto de áudio Web Audio API
|
|
17
|
+
* @param options - Opções de configuração do recorder
|
|
18
|
+
* @param oggOptions - Opções específicas do encoder OGG
|
|
19
|
+
*/
|
|
20
|
+
constructor(audioContext: AudioContext, options?: RecorderOptions, oggOptions?: OggVorbisOptions);
|
|
21
|
+
/**
|
|
22
|
+
* Carrega o script OggVorbisEncoder antes de usar
|
|
23
|
+
*
|
|
24
|
+
* @param scriptUrl - URL do script OggVorbisEncoder.min.js
|
|
25
|
+
* @returns Promise que resolve quando o script é carregado
|
|
26
|
+
*/
|
|
27
|
+
static loadEncoder(scriptUrl: string): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=WebAudioRecorderOgg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebAudioRecorderOgg.d.ts","sourceRoot":"","sources":["../../src/recorders/WebAudioRecorderOgg.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAElE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gBAAgB;IACvD,OAAO,CAAC,UAAU,CAAmB;IAErC;;;;;;OAMG;gBAED,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE,eAAoB,EAC7B,UAAU,GAAE,gBAAqB;IAUnC;;;;;OAKG;WACU,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recorder WAV usando WebAudioRecorder
|
|
3
|
+
*
|
|
4
|
+
* @module recorders/WebAudioRecorderWav
|
|
5
|
+
*/
|
|
6
|
+
import { WebAudioRecorder } from '../core/WebAudioRecorder';
|
|
7
|
+
import { RecorderOptions } from '../core/types';
|
|
8
|
+
/**
|
|
9
|
+
* Classe para gravação de áudio em formato WAV
|
|
10
|
+
*/
|
|
11
|
+
export declare class WebAudioRecorderWav extends WebAudioRecorder {
|
|
12
|
+
/**
|
|
13
|
+
* Cria uma instância do recorder WAV
|
|
14
|
+
*
|
|
15
|
+
* @param audioContext - Contexto de áudio Web Audio API
|
|
16
|
+
* @param options - Opções de configuração do recorder
|
|
17
|
+
*/
|
|
18
|
+
constructor(audioContext: AudioContext, options?: RecorderOptions);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=WebAudioRecorderWav.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebAudioRecorderWav.d.ts","sourceRoot":"","sources":["../../src/recorders/WebAudioRecorderWav.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gBAAgB;IACvD;;;;;OAKG;gBACS,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,eAAoB;CAOtE"}
|