こんにちは この記事では、「Voice Weather and News Informer」サイトでできることについてお話したいと思います。たとえば、都市を選択すると、実際の天気予報だけでなく、任意のニュースも表示されます。 実際、このスクリプトはSmart Homeシステムで通知するために開発されましたが、この記事で行われたホスティングでPHPをサポートしているサイトであれば簡単にやり直すことができます。 音声合成の例では、YandexのSpeechKit Cloud APIテクノロジーと、PHPで記述されたXML天気予報およびニュースパーサーYandexが使用されます。
実装に必要なもの:
- PHPをサポートするWebサーバー(ローカルのデンバータイプを使用できます)。
- Yandex SpeechKitキー(非営利プロジェクトの場合は、無料で入手できます)。
- サイトなしでキーが提供されない場合、Hostinger.ruにサイトを作成できます。
- 都市IDのリスト。
この資料は情報提供のみを目的として提供されているため、サイトへのインストールプロセスおよび都市の追加はここでは考慮されません。
動作原理:
- 選択した都市のmp3ファイルのリクエストを送信します。
- XMLファイルを解析し、必要なパラメーターを取得します。
- 単語の語尾を修正して正しい発音を設定します。
- mp3ファイルを生成するためのパラメーター(音声、音色、ファイル形式、言語、テキスト)を設定します。
- mp3ファイルを生成します。
- Audio HTML 5オブジェクトを作成し、ファイルを再生します。
都市を選択するためのフォームを含むスクリプトindex.html<!DOCTYPE html> <html lang="ru"> <head> <title> SpeechKit Cloud API Yandex.</title> <meta charset="utf-8"> </head> <body> <script language="javascript" type="text/javascript"> function Get_Weather() { var tts_text=document.getElementById('weather').value; console.log(tts_text); var response="weather.php?&q="+encodeURI(tts_text); </script> <h1><span> SpeechKit Cloud API Yandex.</span></h1> <h2></h2> <select size="1" onclick="Get_Weather();" id="weather"> <option disabled> </option> <option value="27612"></option> <option value="34880"></option> <option value="26063">-</option> <option value="25913"></option> </select> <h2></h2> <select size="1" onclick="Get_News();" id="news"> <option disabled> </option> <option selected value="Astrakhan"></option> <option value="Volgograd"></option> <option value="Krasnodar"></option> <option value="Moscow"></option> <option value="Saratov"></option> </select> </body> </html>
Gordaは、
select要素に新しい
オプションパラメーターを設定することで追加
できます。
天気weather.phpのmp3ファイルを生成するためのスクリプト スクリプトでは、
SpeechKit_Cloud_API_Keyを受け取ったキーに変更する必要があります。
news.phpニュースのmp3ファイルを生成するスクリプト <?php $city=$_GET['q']; $data_file="http://news.yandex.ru/".$city."/index.rss";
スクリプトでは、
SpeechKit_Cloud_API_Keyを受け取ったキーに変更する必要があります。 このテクノロジーは、日付と時刻の表明にも使用できます。 言語、音色、声(男性と女性)を変更することができます。音声合成のすべてのパラメーターの説明は、下にあるSpeechKit Cloud APIへのリンクにあります。
上記のスクリプトは、Google ChromeおよびIceweaselブラウザーでテストされましたが、HTML 5 Web Audioをサポートする他のブラウザーで正しく動作するはずです。
PS中古文献
Yandexを公開します。
あなたの天気Yandexからの天気YandexからのニュースSpeechKit Cloud APIこちらのSpeechKit Cloud APIを
ご覧ください 。
YouTubeで何が起こったのかを見てください(7分目の冒頭の例-RHVoiceを使用した音声合成)。
記述されたコードは理想的であると主張するものではなく、いつでも変更できます。