source: gs3-extensions/web-audio/trunk/js-mad/jsmad-master/tests/node/output.js@ 28388

Last change on this file since 28388 was 28388, checked in by davidb, 11 years ago

Set of JS, CSS, PNG etc web resources to support a mixture of audio player/document display capabilities

File size: 1.5 KB
Line 
1var fs = require('fs');
2var sys = require('sys');
3
4require('./typed-array.js');
5require('../../mad.js');
6require('../../id3.js');
7require('../../layer3.js');
8require('../../synth.js');
9require("../../mad.js");
10require("../../rq_table.js");
11require("../../imdct_s.js");
12require("../../huffman.js");
13require("../../bit.js");
14require("../../stream.js");
15require("../../id3.js");
16require("../../layer3.js");
17require("../../frame.js");
18require("../../synth.js");
19
20// var data = fs.readFileSync("one_second_of_silence.mp3", "binary");
21// var data = fs.readFileSync("one_second_beep.mp3", "binary");
22 var data = fs.readFileSync("output.mp3", "binary");
23// var data = fs.readFileSync("soul-2.mp3", "binary");
24
25console.log("Reading a " + Math.round(data.length / 1024) + "KB file");
26
27var stream = new Mad.Stream(data);
28
29ID3_skipHeader(stream);
30
31var STEPS_COUNT = 0;
32
33var frame = null;
34
35var allmin = 0;
36var allmax = 0;
37
38while (frame = Mad.Frame.decode(stream)) {
39 var synth = new Mad.Synth();
40 synth.frame(frame);
41
42 var samples = synth.pcm.samples[0];
43
44 var min = 0.0;
45 var max = 0.0;
46 var mean = 0.0;
47
48 for (var i = 0; i < samples.length; i++) {
49 var sample = samples[i];
50 mean += (sample / samples.length);
51 if(min > sample) min = sample;
52 if(max < sample) max = sample;
53 }
54
55 console.log("min = " + min + ", max = " + max + ", mean = " + mean);
56 if(allmin > min) allmin = min;
57 if(allmax < max) allmax = max;
58}
59
60console.log("allmin = " + allmin + ", allmax = " + allmax);
61
62console.log("error code: " + stream.error);
Note: See TracBrowser for help on using the repository browser.