私は会社で働いており、新しいデモページを作ろうとしています。機能していないページを正確に説明したいと思いますが、残念ながら、サーバー上のさまざまなスクリプトや、同じドメイン名に送信する必要がある AJAX 要求に関連付けられています。ただし、進行状況を可能な限り説明します。
基本的に、私のセッション コードはほぼ期待どおりに動作しています。これは問題がある場所ではありません。問題は、「Say It」ボタンをクリックした後に再生される音声が Chrome で期待どおりに機能することですが、Firefox は最初の音声要求のみを再生し、後続の音声要求が別のテキストで再生された後でも再生され、Internet Explorer では何も再生されません。関連するコードはすべて head セクションにあり、3 つの関数のグループがすべての処理を制御します。「Say It」ボタンが押されたときに formSubmit() が呼び出され、オーディオが読み込まれると onAudioLoad() が呼び出され、limitText() が呼び出されます。これにより、ユーザーが入力できるテキストの量が制限されます。
したがって、formSumbmit() は AJAX リクエストをサーバー スクリプトに送信し、次の 2 つのいずれかを返します。
1) 正しい src 属性を持つ source 要素を含む HTML5 オーディオ タグ、または 2) セッションの有効期限が切れたことを示す p 要素。
私は単純に、恐ろしいエコー (実際の mp3/ogg 変換ソフトウェアが原因である場合とそうでない場合があります) なしでオーディオを再生し、すべてのブラウザーで期待どおりに動作するようにしようとしています。
onAudioLoad は、人々が私たちの製品を簡単に盗むのを避けるために、オーディオを削除するリクエストを送信します:D
予想される行動:
デモ テキスト領域に存在するテキストはすべてサーバー側に送信されて合成され、クライアントのスピーカーから音声が再生されます。
さらに質問がある場合は、定期的にここに戻ってきます。
デモの URL は次のとおりです。
http://www.cepstral.com/demos/temp/cepstral_tts_demo.php
助けてくれてありがとう。
究極の質問:
これが Chrome では期待どおりに機能するのに、Firefox 11 と IE9 では機能しないのはなぜですか?
Firefox では、最初のオーディオ リクエストのみが再生されます。
IE9 ではオーディオは再生されません。
オーディオが決して安全ではないことは承知しています。私たちは、一般ユーザーにとってより困難なものにしようとしているだけです。