1

Web ページで mp3 サウンドを再生しようとしています。サウンドは SQL データベースに mp3 として保存されているため、Service メソッドによって byte[] として返されます。

私の問題は、Chrome ではこれが正常に動作することですが、IE では動作しません。ASPX URL をソースとして使用し始めるとすぐに、サウンドの再生が妨げられます。私ももう少し成功してみましたが、動的 URL では試していません。明らかな何かが欠けているのでしょうか、それとも IE だけが難しいのでしょうか。デバッグ中に、IE がこの URL を呼び出そうとさえしていないことがわかりました。これは、IE が URL を気に入らないと判断したためです。どんな助けでも大歓迎です。

  1. <audio><source> 方法_

方法 i. (IE では動作しません)

    <audio controls="controls" >
      <source src="PlayAudio.aspx?AudioId=AUDIO00253" />
      Sound Not Supported
    </audio>

方法 ii. (IE では動作しません)

    <audio controls="controls" >
      <source src="Cyclone.mp3" />
      Sound Not Supported
     </audio>
  1. <embed>方法_

方法 i. (IE では動作しません)

   <embed  src="PlayAudio.aspx?AudioId=AUDIO00253" autostart="true" ></embed>

方法 ii。(IEで動作します)

   <embed  src="Cyclone.mp3" autostart="true"></embed>

これらの 4 つの方法はすべて Chrome で正常に機能します

ASPX メソッドを使用して mp3 バイト ストリームを提供します。これは Chrome で動作するため、問題なく動作することがわかっています。

  private void SendAudio( byte[] audio )
  {
    // Stream byte array to memory stream
    var memStream = new MemoryStream( audio );

    // Write memory stream to response
    Response.ContentType = "audio/mpeg";
    memStream.WriteTo( Response.OutputStream );
    memStream.Close();
  }
4

2 に答える 2

0

一瞬これで行き詰まりました。ここでは、embed もIE の.aspxまたは.ashxファイルでは機能しませんでしたが、従来の .asp では機能しました。おそらく、拡張機能には何らかの検証があります。.asp ファイルを最新の asp.net ビジュアル スタジオ プロジェクトに追加できます。

于 2015-01-02T17:20:01.750 に答える
0

まず<audio>&<source>タグは HTML 5 で新しく追加されたもので、IE ではサポートされていないため、Internet Explorer では機能しません (FireFox 4+、Chrome 3+、Safari 4+、Opera 9+、およびその他の言語では正常に機能するはずです)。 HTML 5 対応ブラウザ)。

次に、コードはメソッドに対して正しいですが、過去に. タグの src 属性には、<embed>実行するスクリプトではなく、実際のサウンド ファイルが必要だと思います。

現在、ブラウザはスクリプトを再生しようとしていますが、再生できません。サウンド データはデータベースに保存されるため、タグのあるページでは<embed>、一時ファイルを作成してデータを書き込み、その一時ファイルを<embed>タグで呼び出す必要があります。

私は ASPX の完全なプロではありませんが、調べてみます。

乾杯 :)

于 2012-08-20T23:13:36.853 に答える