@@ -17,7 +17,7 @@ declare module wavefile {
17
17
* 'RIFF', 'RIFX' and 'RF64' are supported.
18
18
* @type {string }
19
19
*/
20
- container : string ;
20
+ container : 'RIFF' | 'RIFX' | 'RF64' ;
21
21
/**
22
22
* @type {number }
23
23
*/
@@ -27,12 +27,12 @@ declare module wavefile {
27
27
* Always 'WAVE'.
28
28
* @type {string }
29
29
*/
30
- format : string ;
30
+ format : 'WAVE' ;
31
31
/**
32
32
* The data of the 'fmt' chunk.
33
33
* @type {!Object<string, *> }
34
34
*/
35
- fmt : object ;
35
+ fmt : WaveFileFmtChunk ;
36
36
/**
37
37
* The data of the 'fact' chunk.
38
38
* @type {!Object<string, *> }
@@ -78,7 +78,7 @@ declare module wavefile {
78
78
* The data of the 'data' chunk.
79
79
* @type {!Object<string, *> }
80
80
*/
81
- data : object ;
81
+ data : WaveFileDataChunk ;
82
82
/**
83
83
* The data of the 'LIST' chunks.
84
84
* Each item in this list look like this:
@@ -390,4 +390,43 @@ declare module wavefile {
390
390
*/
391
391
get_PMX ( ) : string ;
392
392
}
393
+
394
+ type WaveFileDataChunk = {
395
+ /** @type {string } */
396
+ chunkId : 'data' ;
397
+ /** @type {number } */
398
+ chunkSize : number ;
399
+ /** @type {!Uint8Array } */
400
+ samples : Uint8Array ;
401
+ } ;
402
+
403
+ type WaveFileFmtChunk = {
404
+ /** @type {string } */
405
+ chunkId : 'fmt ' ;
406
+ /** @type {number } */
407
+ chunkSize : number ;
408
+ /** @type {number } */
409
+ audioFormat : number ;
410
+ /** @type {number } */
411
+ numChannels : number ;
412
+ /** @type {number } */
413
+ sampleRate : number ;
414
+ /** @type {number } */
415
+ byteRate : number ;
416
+ /** @type {number } */
417
+ blockAlign : number ;
418
+ /** @type {number } */
419
+ bitsPerSample : number ;
420
+ /** @type {number } */
421
+ cbSize : number ;
422
+ /** @type {number } */
423
+ validBitsPerSample : number ;
424
+ /** @type {number } */
425
+ dwChannelMask : number ;
426
+ /**
427
+ * 4 32-bit values representing a 128-bit ID
428
+ * @type {!Array<number> }
429
+ */
430
+ subformat : readonly [ number , number , number , number ] ;
431
+ } ;
393
432
}
0 commit comments