Я отправил 16-битный массив на сервер и сохранил его в файл
var io = require('socket.io')();
const fs = require('fs');
var spawn = require('child_process').spawn;
const port = 3000;
io.listen(port);
console.log("listening port 3000 ...");
io.on('connection', (client) => {
console.log('any value');
client.on('createConnection', () => {
client.emit('connectionResponse', 'New Client with ID: ' + client.id);
});
client.on('connection', (data) => {
console.log("client connected");
})
client.on('audio', (data) => {
// phone audio data parameters
//Recording.init({
//bufferSize: 256,
//sampleRate: 8000,
//bitsPerChannel: 16,
//channelsPerFrame: 1,
// play created out.pcm file with this command in linux machine
// aplay -r 8000 -t raw -f S16_LE out.pcm
console.log("data recivied");
for(let i=0 ; i < data.length; i++ ){
var buf = new Buffer(2);
buf.writeInt16LE(data[i],0);
console.log(buf);
fs.appendFile('out.pcm',buf, (err) => {
if (err) throw err;
//console.log('xThe lyrics were updated!');
})
}
});
})
С помощью этой команды можно воспроизвести созданный файл out.pcm на компьютере с Linux
aplay -r 8000 -t raw -f S16_LE out.pcm