Преобразование речи в текст Google Cloud, без конечной фразы на испанском языке sh (es-ES) - PullRequest
0 голосов
/ 29 мая 2020

У меня небольшая проблема с Google Cloud Speech-to-Text на испанском языке sh.

У меня есть этот код:

    const requestMIC = {
    config: {
    encoding: encoding,
    sampleRateHertz: sampleRateHertz,
    languageCode: 'es-ES',
    },
    interimResults: false, // If you want interim results, set this to true
    enableAutomaticPunctuation: true,
    //single_utterance: false,
    maxAlternatives: 20,
    single_utterance: true,

  };

  // Create a recognize stream
  const recognizeStreamMicToSpeech = clientSTT
      .streamingRecognize(requestMIC)
      .on('error', console.error)
    .on('data', data =>
    process.stdout.write(
        data.results[0] && data.results[0].alternatives[0]
        ? "Traduccion MIC:" + data.results[0].alternatives[0].transcript + "\n"
        //? "Traduccion MIC:" + translateText(data.results[0].alternatives[0].transcript,'es',2) + "\n"
        : '\n\nReached transcription time limit, press Ctrl+C\n'
    )
);

    // Start recording and send the microphone input to the Speech API.
    // Ensure SoX is installed, see https://www.npmjs.com/package/node-record-lpcm16#dependencies
console.log("Start Recoding MIC");
recording
    .record({
    sampleRateHertz: sampleRateHertz,
    threshold: 0,
    // Other options, see https://www.npmjs.com/package/node-record-lpcm16#options
    verbose: false,
    recordProgram: 'arecord', // Try also "arecord" or "sox"
    silence: '5.0',
    //thresholdStart: '0.1',
    //thresholdStart: '0.5',
    //endOnSilence: true,
    })
    .stream()
    .on('error', console.error)
    .pipe(recognizeStreamMicToSpeech);

Проблема кажется простой, но я не не знаю, как с этим бороться. Если я выберу язык: «en-US», и я говорю на английском sh, Google распознает мой голос и фразу «fini sh» правильно, поэтому, если я скажу:

Hello, world! (silence) Today it will be a nice day!

Результат это: (2 фразы, 2 строки)

  • Привет, мир!
  • Сегодня будет хороший день!

Но, если я выберу Испанский sh (es-ES) с тем же кодом, и я говорю:

Hola, Mundo! (silence) Hoy sera un gran dia!

Результат: (1 фраза, 2 строки)

  • Hola, Mundo ! Hoy sera un gran dia! .... и никогда не заканчивается ..

Google никогда не заканчивает sh фразу, он не определяет «конец фразы», ​​и каждая фраза, которую я сказал, объединяется с предыдущей один ...

Знаете почему?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...