Java语音识别3300
linshiyx1 发布于2016-06 浏览:1854 回复:1
0
收藏
快速回复
public interface Ei {
@Headers({"Content-Type: application/json; charset=utf-8"})
@POST("server_api?lan=zh&cuid=C8-FF-28-21-12-CB&token=24.0cbc93a7b2b611536.......282335-8214396")
Call upload(@Body String js);

}

map = new HashMap();
map.put("format", "amr");
map.put("rate", 8000);
map.put("channel", 1);
map.put("cuid", "跟上面写的一样");
map.put("token", "跟上面写的一样");
map.put("len", file.length()); //file是amr文件
try {
FileInputStream inputFile = new FileInputStream(file);
byte[] buffer = new byte[(int) file.length()];
inputFile.read(buffer);
inputFile.close();
String base = Base64.encodeToString(buffer, Base64.DEFAULT);
map.put("speech", base);
} catch (Exception e) {
e.printStackTrace();
}
JSONObject json = new JSONObject(map);

js = json.toString();

retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build(); Ei ei = retrofit.create(Ei.class);

Call c = ei.upload(js);

c.enqueu(new Callback()) {.....}


两天了,完全不知道哪个参数错了,报错3300,而且返回的sn有数字值。

求大神指点

对了Android中音频的设置应该也没问题

mediaRecorder = new MediaRecorder();
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mediaRecorder.setAudioEncodingBitRate(16);
mediaRecorder.setAudioSamplingRate(8000);
mediaRecorder.setAudioChannels(1);


收藏
点赞
0
个赞
共1条回复 最后由用户已被禁言回复于2022-04
#2mosal4hi回复于2016-06

下载 语音识别Demo应用   ,我们有java的demo

0
TOP
切换版块