1414 * limitations under the License.
1515 */
1616
17- // Client that sends audio to Speech.NonStreamingRecognize via gRPC and returns transcription.
17+ // Client that sends audio to Speech.SyncRecognize via gRPC and returns transcription.
1818//
1919// Uses a service account for OAuth2 authentication, which you may obtain at
2020// https://console.developers.google.com
2626package com .google .cloud .speech .grpc .demos ;
2727
2828import com .google .auth .oauth2 .GoogleCredentials ;
29- import com .google .cloud .speech .v1 . AudioRequest ;
30- import com .google .cloud .speech .v1 . InitialRecognizeRequest ;
31- import com .google .cloud .speech .v1 . InitialRecognizeRequest .AudioEncoding ;
32- import com .google .cloud .speech .v1 . NonStreamingRecognizeResponse ;
33- import com .google .cloud .speech .v1 . RecognizeRequest ;
34- import com .google .cloud .speech .v1 .SpeechGrpc ;
29+ import com .google .cloud .speech .v1beta1 . RecognitionAudio ;
30+ import com .google .cloud .speech .v1beta1 . RecognitionConfig ;
31+ import com .google .cloud .speech .v1beta1 . RecognitionConfig .AudioEncoding ;
32+ import com .google .cloud .speech .v1beta1 . SyncRecognizeRequest ;
33+ import com .google .cloud .speech .v1beta1 . SyncRecognizeResponse ;
34+ import com .google .cloud .speech .v1beta1 .SpeechGrpc ;
3535import com .google .protobuf .TextFormat ;
3636
3737import io .grpc .ManagedChannel ;
5757import java .util .logging .Logger ;
5858
5959/**
60- * Client that sends audio to Speech.NonStreamingRecognize and returns transcript.
60+ * Client that sends audio to Speech.SyncRecognize and returns transcript.
6161 */
62- public class NonStreamingRecognizeClient {
62+ public class SyncRecognizeClient {
6363
6464 private static final Logger logger =
65- Logger .getLogger (NonStreamingRecognizeClient .class .getName ());
65+ Logger .getLogger (SyncRecognizeClient .class .getName ());
6666
6767 private static final List <String > OAUTH2_SCOPES =
6868 Arrays .asList ("https://www.googleapis.com/auth/cloud-platform" );
@@ -78,7 +78,7 @@ public class NonStreamingRecognizeClient {
7878 /**
7979 * Construct client connecting to Cloud Speech server at {@code host:port}.
8080 */
81- public NonStreamingRecognizeClient (String host , int port , URI input , int samplingRate )
81+ public SyncRecognizeClient (String host , int port , URI input , int samplingRate )
8282 throws IOException {
8383 this .host = host ;
8484 this .port = port ;
@@ -95,8 +95,8 @@ public NonStreamingRecognizeClient(String host, int port, URI input, int samplin
9595 logger .info ("Created blockingStub for " + host + ":" + port );
9696 }
9797
98- private AudioRequest createAudioRequest () throws IOException {
99- return AudioRequestFactory . createRequest (this .input );
98+ private RecognitionAudio createRecognitionAudio () throws IOException {
99+ return RecognitionAudioFactory . createRecognitionAudio (this .input );
100100 }
101101
102102 public void shutdown () throws InterruptedException {
@@ -105,25 +105,26 @@ public void shutdown() throws InterruptedException {
105105
106106 /** Send a non-streaming-recognize request to server. */
107107 public void recognize () {
108- AudioRequest audio ;
108+ RecognitionAudio audio ;
109109 try {
110- audio = createAudioRequest ();
110+ audio = createRecognitionAudio ();
111111 } catch (IOException e ) {
112112 logger .log (Level .WARNING , "Failed to read audio uri input: " + input );
113113 return ;
114114 }
115115 logger .info ("Sending " + audio .getContent ().size () + " bytes from audio uri input: " + input );
116- InitialRecognizeRequest initial = InitialRecognizeRequest .newBuilder ()
117- .setEncoding (AudioEncoding .LINEAR16 )
118- .setSampleRate (samplingRate )
116+ RecognitionConfig config = RecognitionConfig .newBuilder ()
117+ .setEncoding (AudioEncoding .LINEAR16 )
118+ .setSampleRate (samplingRate )
119+ .build ();
120+ SyncRecognizeRequest request = SyncRecognizeRequest .newBuilder ()
121+ .setConfig (config )
122+ .setAudio (audio )
119123 .build ();
120- RecognizeRequest request = RecognizeRequest .newBuilder ()
121- .setInitialRequest (initial )
122- .setAudioRequest (audio )
123- .build ();
124- NonStreamingRecognizeResponse response ;
124+
125+ SyncRecognizeResponse response ;
125126 try {
126- response = blockingStub .nonStreamingRecognize (request );
127+ response = blockingStub .syncRecognize (request );
127128 } catch (StatusRuntimeException e ) {
128129 logger .log (Level .WARNING , "RPC failed: {0}" , e .getStatus ());
129130 return ;
@@ -196,8 +197,8 @@ public static void main(String[] args) throws Exception {
196197 System .exit (1 );
197198 }
198199
199- NonStreamingRecognizeClient client =
200- new NonStreamingRecognizeClient (host , port , URI .create (audioFile ), sampling );
200+ SyncRecognizeClient client =
201+ new SyncRecognizeClient (host , port , URI .create (audioFile ), sampling );
201202 try {
202203 client .recognize ();
203204 } finally {
0 commit comments