在Android小工具中使用Google Speech API(默认免费版本),可以通过以下步骤实现:
dependencies {
implementation 'com.google.cloud:google-cloud-speech:2.2.0'
}
import com.google.cloud.speech.v1p1beta1.RecognitionAudio;
import com.google.cloud.speech.v1p1beta1.RecognitionConfig;
import com.google.cloud.speech.v1p1beta1.RecognitionResult;
import com.google.cloud.speech.v1p1beta1.SpeechClient;
import com.google.cloud.speech.v1p1beta1.SpeechRecognitionAlternative;
import com.google.cloud.speech.v1p1beta1.SpeechRecognitionResult;
import com.google.protobuf.ByteString;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class SpeechToTextExample {
public static void main(String[] args) throws IOException {
// 读取音频文件
Path path = Paths.get("path/to/audio/file.wav");
byte[] audioBytes = Files.readAllBytes(path);
ByteString audioData = ByteString.copyFrom(audioBytes);
// 配置识别参数
RecognitionConfig config = RecognitionConfig.newBuilder()
.setEncoding(RecognitionConfig.AudioEncoding.LINEAR16)
.setSampleRateHertz(16000)
.setLanguageCode("en-US")
.build();
RecognitionAudio audio = RecognitionAudio.newBuilder()
.setContent(audioData)
.build();
// 创建SpeechClient并发送识别请求
try (SpeechClient speechClient = SpeechClient.create()) {
RecognizeResponse response = speechClient.recognize(config, audio);
for (SpeechRecognitionResult result : response.getResultsList()) {
SpeechRecognitionAlternative alternative = result.getAlternativesList().get(0);
System.out.printf("Transcript: %s%n", alternative.getTranscript());
}
}
}
}
请注意,上述示例代码仅为演示目的,你需要根据你的实际需求进行适当的修改。
对于Google Cloud的替代产品和服务,腾讯云提供了自己的语音识别服务,称为腾讯云语音识别(ASR)。你可以在腾讯云官方网站上了解更多关于腾讯云语音识别的信息和产品介绍。
腾讯云语音识别产品介绍链接:https://cloud.tencent.com/product/asr
领取专属 10元无门槛券
手把手带您无忧上云