wav ファイルに対して DeepSpeech をテストしたところ、問題なく動作しました。ディープ スピーチに関する問題は、1 つの単語も認識しないオーディオ ストリームを使用しようとすると発生します。オーディオ ストリームは、PCM 48khz ステレオ符号付き 16 ビット リトル エンディアンです。ストリームを他の形式、sampleRate、およびチャネルに変換しようとしましたが、まったく成功しませんでした。nodejsでDeepSpeechを使用しています
modelStream = englishModel.createStream();
let chunks = [];
stream.on('data', chunk => {
chunks.push(chunk);
}).on('close', () => {
const buffer = Buffer.concat(chunks);
let stream = new Duplex();
stream.push(buffer);
stream.push(null);
let audioStream = new MemoryStream();
stream.pipe(Sox({
global: {
'no-dither': true,
},
output: {
bits: 16,
rate: desiredSampleRate,
channels: 1,
encoding: 'signed-integer',
endian: 'little',
compression: 0.0,
type: 'raw'
}
})).
pipe(audioStream);
audioStream.on('finish', () => {
let audioBuffer = audioStream.toBuffer();
const audioLength = (audioBuffer.length / 2) * (1 / desiredSampleRate);
console.log('audio length', audioLength);
let result = englishModel.stt(audioBuffer);
console.log('result:', result);
});