2016-04-08 16 views
3

Akışlı bir ses girişi alan bir uygulama oluşturmaya çalışıyorum (örneğin: mikrofonda bir satır) ve IBM Bluemix (Watson) kullanarak Konuşmadan Metne geçme .Watson STT Java - Websockets Java ve HTTP POST arasında değişen sonuçlar POST

Örnek Java kodunu here bulunan kısaca değiştirdim. Bu örnek bir WAV gönderir, ancak bir FLAC gönderirim ... bu konuyla alakasız olmalı.

Sonuçlar kötü, çok kötü. Java Websockets kodunu kullanırken aldığım şey budur: Yukarıdaki sonuçları aşağıdakilerle karşılaştırın. Aynı şeyi gönderme yerine cURL (HTTP POST) kullanılırken Bu sonuçlar şunlardır:

neredeyse kusursuz bir sonuç
{ 
    "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 
} 

.

Websockets kullanırken neden fark var?

+1

Depoda bir sorun yarattım ve bu sayfaya göz atacağım https://github.com/watson-developer-cloud/java-sdk/issues/231 –

+0

Kullandığınız ses dosyasını ekleyebilir misiniz? sorun ? –

+0

@GermanAttanasio İşte dosya. https://s3.amazonaws.com/mozart-company/tmp/4.flac – abdielou

cevap

2

Sorun, 3.0.0-RC1 sürümünde giderilmiştir.

Sen yeni kavanoz alabilirsiniz:

  1. Maven

    <dependency> 
        <groupId>com.ibm.watson.developer_cloud</groupId> 
        <artifactId>java-sdk</artifactId> 
        <version>3.0.0-RC1</version> 
    </dependency> 
    
  2. Gradle

    'com.ibm.watson.developer_cloud:java-sdk:3.0.0-RC1' 
    
  3. JAR

    indirin https://s3.amazonaws.com/mozart-company/tmp/4.flac

    :(~ 1.4MB) Burada


Yuvalarının

SpeechToText service = new SpeechToText(); 
service.setUsernameAndPassword("<username>", "<password>"); 

FileInputStream audio = new FileInputStream("path-to-audio-file.flac"); 

RecognizeOptions options = new RecognizeOptions.Builder() 
    .continuous(true) 
    .interimResults(true) 
    .contentType(HttpMediaType.AUDIO_FLAC) 
    .build(); 

service.recognizeUsingWebSocket(audio, options, new BaseRecognizeCallback() { 
    @Override 
    public void onTranscription(SpeechResults speechResults) { 
    System.out.println(speechResults); 
    } 
}); 

} test

FLAC dosyası kullanılarak bir FLAC ses dosyası tanımak için nasıl bir örneğidir


Not:3.0.0-RC1, yayın adayı'dur. Gelecek hafta bir üretim sürümü yapacağız (3.0.1).

+1

Great üzerinde çalışacak. Kontrol edip bilmeni istiyorum. – abdielou

+1

Sweet. Harika hızlı çalışıyor. – abdielou