Skip to content

Commit 845c2ab

Browse files
committed
minor refactoring
1 parent 1eac44c commit 845c2ab

File tree

1 file changed

+27
-18
lines changed

1 file changed

+27
-18
lines changed

library/audioDataAnalyzer.js

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
// nodejs child_process
3-
var childProcess = require('child_process');
3+
var childProcessSpawn = require('child_process').spawn;
44

55
/**
66
*
@@ -22,8 +22,15 @@ var analyzer = function analyzerConstructor() {
2222
*/
2323
analyzer.prototype.getData = function getDataFunction(trackPath, callback) {
2424

25+
var stdoutOuputString = '';
26+
var stderrOuputString = '';
27+
28+
var trackData = {};
29+
30+
//console.log(trackPath);
31+
2532
// ffprobe file data
26-
var ffprobeSpawn = childProcess.spawn(
33+
var ffprobeSpawn = childProcessSpawn(
2734
'ffprobe',
2835
[
2936
trackPath,
@@ -35,31 +42,30 @@ analyzer.prototype.getData = function getDataFunction(trackPath, callback) {
3542
'json'
3643
]
3744
);
38-
39-
var stdoutOuputString = '';
40-
var stderrOuputString = '';
45+
46+
//ffprobeSpawn.stdout.setEncoding('utf8');
47+
ffprobeSpawn.stderr.setEncoding('utf8');
4148

4249
// ffprobe recieves data on stdout
4350
ffprobeSpawn.stdout.on('data', function(data) {
4451

4552
stdoutOuputString += data;
4653

4754
});
48-
49-
var trackData = {};
5055

5156
ffprobeSpawn.stdout.on('end', function(data) {
5257

5358
//console.log('ffprobeSpawn stdout end');
59+
//console.log(stdoutOuputString);
5460

5561
if (stdoutOuputString !== '') {
5662

57-
//console.log('stdoutOuput');
58-
//console.log(stdoutOuputString);
59-
6063
// parse the ffprobe json string response
6164
var stdoutOuput = JSON.parse(stdoutOuputString);
6265

66+
//console.log(stdoutOuput);
67+
//console.log(Object.keys(stdoutOuput).length);
68+
6369
if (Object.keys(stdoutOuput).length > 0) {
6470

6571
// create a trackdata object with the informations we need
@@ -70,13 +76,13 @@ analyzer.prototype.getData = function getDataFunction(trackPath, callback) {
7076
trackData.channels = stdoutOuput['streams'][0]['channels'];
7177

7278
}
79+
80+
//console.log(trackData);
7381

7482
}
7583

7684
});
7785

78-
ffprobeSpawn.stderr.setEncoding('utf8');
79-
8086
ffprobeSpawn.stderr.on('data', function(data) {
8187

8288
stderrOuputString += data;
@@ -106,13 +112,18 @@ analyzer.prototype.getData = function getDataFunction(trackPath, callback) {
106112

107113
} else {
108114

115+
//console.log(trackData);
116+
//console.log(Object.keys(trackData).length);
117+
109118
// if the trackdata object isnt empty
110119
if (Object.keys(trackData).length > 0) {
111120

112121
callback(false, trackData);
113122

114123
} else {
115124

125+
//console.log('ffprobe did not output any data');
126+
116127
callback('ffprobe did not output any data');
117128

118129
}
@@ -158,9 +169,6 @@ analyzer.prototype.getPeaks = function getValuesFunction(trackPath, peaksAmountR
158169

159170
if (!error) {
160171

161-
//console.log('ffprobe track data: ');
162-
//console.log(trackData);
163-
164172
if (peaksAmountRaw !== undefined) {
165173

166174
var peaksAmount = parseInt(peaksAmountRaw);
@@ -172,7 +180,7 @@ analyzer.prototype.getPeaks = function getValuesFunction(trackPath, peaksAmountR
172180
}
173181

174182
// get audio pcm as 16bit little endians
175-
var ffmpegSpawn = childProcess.spawn(
183+
var ffmpegSpawn = childProcessSpawn(
176184
'ffmpeg',
177185
[
178186
'-i',
@@ -195,6 +203,9 @@ analyzer.prototype.getPeaks = function getValuesFunction(trackPath, peaksAmountR
195203
var stdoutOuputString = '';
196204
var stderrOuputString = '';
197205

206+
//ffmpegSpawn.stdout.setEncoding('utf8');
207+
ffmpegSpawn.stderr.setEncoding('utf8');
208+
198209
var samples = [];
199210

200211
ffmpegSpawn.stdout.on('data', function(buffer) {
@@ -300,8 +311,6 @@ analyzer.prototype.getPeaks = function getValuesFunction(trackPath, peaksAmountR
300311

301312
});
302313

303-
ffmpegSpawn.stderr.setEncoding('utf8');
304-
305314
ffmpegSpawn.stderr.on('data', function(data) {
306315

307316
//console.log(data.toString());

0 commit comments

Comments
 (0)