in speech/src/main/java/com/example/speech/Recognize.java [62:125]
public static void main(String... args) throws Exception {
if (args.length < 1) {
System.out.println("Usage:");
System.out.printf(
"\tjava %s \"<command>\" \"<path-to-image>\"\n"
+ "Commands:\n"
+ "\tsyncrecognize | asyncrecognize | streamrecognize | micstreamrecognize \n"
+ "\t| wordoffsets | auto-punctuation | stream-punctuation \n"
+ "\t| enhanced-model | model-selection | multi-channel\n"
+ "Path:\n\tA file path (ex: ./resources/audio.raw) or a URI "
+ "for a Cloud Storage resource (gs://...)\n",
Recognize.class.getCanonicalName());
return;
}
String command = args[0];
String path = args.length > 1 ? args[1] : "";
// Use command and GCS path pattern to invoke transcription.
if (command.equals("syncrecognize")) {
if (path.startsWith("gs://")) {
syncRecognizeGcs(path);
} else {
syncRecognizeFile(path);
}
} else if (command.equals("wordoffsets")) {
if (path.startsWith("gs://")) {
asyncRecognizeWords(path);
} else {
syncRecognizeWords(path);
}
} else if (command.equals("asyncrecognize")) {
if (path.startsWith("gs://")) {
asyncRecognizeGcs(path);
} else {
asyncRecognizeFile(path);
}
} else if (command.equals("streamrecognize")) {
streamingRecognizeFile(path);
} else if (command.equals("micstreamrecognize")) {
streamingMicRecognize();
} else if (command.equals("auto-punctuation")) {
if (path.startsWith("gs://")) {
transcribeGcsWithAutomaticPunctuation(path);
} else {
transcribeFileWithAutomaticPunctuation(path);
}
} else if (command.equals("stream-punctuation")) {
streamingTranscribeWithAutomaticPunctuation(path);
} else if (command.equals("enhanced-model")) {
transcribeFileWithEnhancedModel(path);
} else if (command.equals("model-selection")) {
if (path.startsWith("gs://")) {
transcribeModelSelectionGcs(path);
} else {
transcribeModelSelection(path);
}
} else if (command.equals("multi-channel")) {
if (path.startsWith("gs://")) {
transcribeMultiChannelGcs(path);
} else {
transcribeMultiChannel(path);
}
}
}