Intereting Posts

Речь Google Api v1 не работает?

Я разработал приложение с использованием речи Google Api v1

Https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang= "+ language_code;

И эта ссылка была использована для получения ответа. Он отлично работал, но с сегодняшнего дня он не работает. Я не получаю ответа от этой ссылки. У кого-нибудь есть идея? Есть ли альтернативные ссылки? Пожалуйста помоги

protected String doInBackground(Void... params) { // TODO Auto-generated method stub String urlString = "https://www.google.com/speech-api/v2/recognize?xjerr=1&client=chromium&lang=" + language_code; // String urlString = "https://www.google.com/speech-api/v2/recognize? output=json&lang="+language_code+"s&key=AIzaSyCnl6MRydhw_5fLXIdASxkLJzcJh5iX0M4"; // Log.e("SpeechRecognizer url : ", urlString); // String urlString = // "https://www.google.com/speech-api/v1/recognize?xjerr=1&client=speech2text&lang=" // + language_code; URL url; try { Log.e("", "started speech to text"); FLAC_FileEncoder fileEncoder = new FLAC_FileEncoder(); File inputfile = new File(Environment.getExternalStorageDirectory() .getPath() + "/SpeechLibrary/speech.wav"); File outputfile = new File(Environment .getExternalStorageDirectory().getPath() + "/SpeechLibrary/speech.flac"); fileEncoder.encode(inputfile, outputfile); url = new URL(urlString); HttpURLConnection con = (HttpURLConnection) url.openConnection(); con.setDefaultUseCaches(true); con.setConnectTimeout(20000); con.setReadTimeout(60000); con.setDoInput(true); con.setDoOutput(true); con.setInstanceFollowRedirects(true); con.setRequestMethod("POST"); // con.setRequestProperty("User-Agent", // "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12"); con.setRequestProperty("Content-Type", "audio/x-flac;rate=16000"); File file = new File(Environment.getExternalStorageDirectory() .getPath() + "/SpeechLibrary/speech.flac"); byte[] buffer = new byte[(int) file.length()]; FileInputStream fis = new FileInputStream(file); fis.read(buffer); fis.close(); OutputStream os = con.getOutputStream(); os.write(buffer); os.close(); con.connect(); con.getResponseMessage(); InputStreamReader inputStreamReader = new InputStreamReader( con.getInputStream(), "UTF-8"); BufferedReader br = new BufferedReader(inputStreamReader); String s; StringBuilder resultContent = new StringBuilder(); while ((s = br.readLine()) != null) { resultContent.append(s + "\n"); } JSONObject jsonResponse = new JSONObject(resultContent.toString()); JSONArray jsonArray = jsonResponse.getJSONArray("hypotheses"); Log.e("Response String: ", resultContent.toString()); if (jsonArray.length() != 0) { output = jsonArray.getJSONObject(0).getString("utterance"); confidence_level = Double.parseDouble(jsonArray .getJSONObject(0).getString("confidence")); } else if (jsonArray.length() == 0) { } // output=resultContent.toString(); } catch (Exception e) { output = ""; confidence_level = -1; e.printStackTrace(); Log.e("ERROR IN PARSING:", e.toString()); if (e.toString().contains("java.net.UnknownHostException:")||e.toString().contains("java.net.SocketException")) { return "NETWORK ISSUE"; } } return null; } 

Есть ли у кого-то еще такая же проблема ?.

Solutions Collecting From Web of "Речь Google Api v1 не работает?"

Недавно Google закрыл API v1. V2 API теперь требует ключа, а потоковый API v2 ограничен 50 запросами в день. Вы можете получить ключ, как описано здесь:

http://www.chromium.org/developers/how-tos/api-keys

Однако никаких гарантий по неограниченному использованию нет.

https://github.com/gillesdemey/google-speech-v2

Если вы ищете Java API, проверьте это . Он поддерживает новый API Duplex и API V2. Поставляется с удобным учебником. Возможно, неплохо было бы мигрировать, прежде чем Google выключит V1, если это еще не сделано.

Невозможно получить дополнительную квоту для API речи Chrome. Вместо этого посмотрите на API облачной речи .

НЕ отправляйте в хромовые группы / списки рассылки по вопросам, касающимся Speech API.