Watson STT Java - Unterschiedliche Ergebnisse zwischen Websockets Java und HTTP POST

Ich versuche, eine App zu erstellen, die einen gestreamten Audioeingang (z. B. eine Mikrofonleitung) verwendet und mit IBM Bluemix (Watson) Speech-to-Text ausführt.

Ich habe den gefundenen Java-Beispielcode kurz geändertHie. Dieses Beispiel sendet eine WAV, aber stattdessen sende ich eine FLAC ... das ist [sollte] irrelevant.

Die Ergebnisse sind schlecht, sehr schlecht. Folgendes erhalte ich, wenn ich den Java Websockets-Code verwende:

{
  "result_index": 0,
  "results": [
    {
      "final": true,
      "alternatives": [
        {
          "transcript": "it was six weeks ago today the terror ",
          "confidence": 0.92
        }
      ]
    }
  ]
}

Jetzt vergleichen Sie die obigen Ergebnisse mit den folgenden. Dies sind die Ergebnisse, wenn dasselbe gesendet wird, stattdessen jedoch cURL (HTTP POST) verwendet wird:

{
   "results": [
  {
     "alternatives": [
        {
           "confidence": 0.945,
           "transcript": "it was six weeks ago today the terrorists attacked the U. S. consulate in Benghazi Libya now we've obtained email alerts that were put out by the state department as the attack unfolded as you know four Americans were killed including ambassador Christopher Stevens "
        }
     ],
     "final": true
  },
  {
     "alternatives": [
        {
           "confidence": 0.942,
           "transcript": "sharyl Attkisson has our story "
        }
     ],
     "final": true
  }
   ],
   "result_index": 0
}

Das ist ein fast einwandfreies Ergebnis.

Warum der Unterschied bei der Verwendung von Websockets?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage