index.d.ts 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. interface recorderConfig {
  2. sampleBits?: number, // 采样位数
  3. sampleRate?: number, // 采样率
  4. numChannels?: number, // 声道数
  5. compiling?: boolean, // 是否边录边播
  6. }
  7. interface dataview {
  8. byteLength: number,
  9. buffer: {
  10. byteLength: number,
  11. },
  12. getUint8: any,
  13. }
  14. declare class Recorder {
  15. private isrecording: boolean;
  16. private isplaying: boolean;
  17. private ispause: boolean;
  18. private context: any;
  19. protected config: recorderConfig;
  20. private size: number;
  21. private lBuffer: Array<Float32Array>;
  22. private rBuffer: Array<Float32Array>;
  23. private PCM: any;
  24. private tempPCM: Array<DataView>;
  25. private audioInput: any;
  26. private inputSampleRate: number;
  27. private inputSampleBits: number;
  28. private outputSampleRate: number;
  29. private oututSampleBits: number;
  30. private analyser: any;
  31. private source: any;
  32. private recorder: any;
  33. private stream: any;
  34. private littleEdian: boolean;
  35. private prevDomainData: any;
  36. private playStamp: number;
  37. private playTime: number;
  38. private offset: number;
  39. private needRecord: boolean;
  40. public fileSize: number;
  41. public duration: number;
  42. public onprocess: (duration: number) => void;
  43. public onprogress: (payload: {
  44. duration: number,
  45. fileSize: number,
  46. vol: number,
  47. data: Array<DataView>,
  48. }) => void;
  49. public onplay: () => void;
  50. public onpauseplay: () => void;
  51. public onresumeplay: () => void;
  52. public onstopplay: () => void;
  53. public onplayend: () => void;
  54. constructor(options?: recorderConfig);
  55. public setOption: (options?: recorderConfig) => void
  56. initRecorder(): void;
  57. start(): Promise<{}>;
  58. pause(): void;
  59. resume(): void;
  60. stop(): void;
  61. play(): void;
  62. getPlayTime(): number;
  63. pausePlay(): void;
  64. resumePlay(): void;
  65. stopPlay(): void;
  66. destroy(): Promise<{}>;
  67. getWholeData(): any;
  68. getNextData(): any;
  69. getRecordAnalyseData(): any;
  70. getPlayAnalyseData(): any;
  71. getPCMBlob(): any;
  72. downloadPCM(name: string): void;
  73. getWAVBlob(): any;
  74. downloadWAV(name: string): void;
  75. static playAudio(blob): void;
  76. static compress(data, inputSampleRate: number, outputSampleRate: number);
  77. static encodePCM(bytes, sampleBits: number, littleEdian: boolean);
  78. static encodeWAV(bytes: dataview, inputSampleRate: number, outputSampleRate: number, numChannels: number, oututSampleBits: number, littleEdian: boolean);
  79. static throwError(message: string)
  80. }
  81. type UserName = string
  82. export default Recorder