在NodeJS中读取连续的二进制数据stream

我正在尝试从Node中的stream(从subprocess创build)中读取大量的二进制数据。 我正在使用stdout.on('data')事件来获取数据。
无论我search多less,我似乎无法find传入callback的参数的任何文档。 typeof(data)表示这是一个对象,但从我所知道的来看,它只是一个数组。

这是一个数组? 还是一个string? 无论如何,我怎样才能得到一个字节数组?
这是我的代码:

 var childProc = require('child_process'), spawn = childProc.spawn; // /home/ubuntu/bin/ffmpeg -f video4linux2 -r 1 -s 640x480 -i /dev/video0 -c:v rawvideo -f rawvideo -pix_fmt rgb8 - var streamProc = spawn('/home/ubuntu/bin/ffmpeg', [ '-f', 'video4linux2', '-r', '1', '-s', '640x480', '-i', '/dev/video0', '-c:v', 'rawvideo', '-f', 'rawvideo', '-pix_fmt', 'rgb24', '-' ]); streamProc.stdout.on('data', function(data) { var bytes = []; //Do some magical conversion here to populate the array //debugger; console.log('OUT: ' + bytes.join()); //Just some debugging steps }); streamProc.stderr.on('data', function(data) { //debugger; if(process.argv.indexOf('showerr') != -1) console.log('ERR: ' + data); }); streamProc.on('close',function(exitCode) { console.log('EXT: Program exited with code ' + exitCode); }); 

我错过了什么明显的?

这是Buffer实例

也看看NodeBasicFFMPEG , ffmpeg-node , node-fluent-ffmpeg

请注意,“数据”事件只给你一个数据块,你可能需要重新组装它使用像缓冲区列表库