1

障害を持つ子供のための識字率向上の Web サイトでは、あらゆる年齢の読者向けに初歩的な本を提供しています。サーバー上で生成された mp3 ファイルを使用して本を読み上げる機能が含まれています。サポートしているブラウザーでは HTML5 オーディオを使用し、サポートしていないブラウザーでは Flash にフォールバックします。ユーザーの 4% 以上が JavaScript を無効にしているため、利用可能な html5 shim に頼ることができません。

非常に短い mp3 ファイルが 1 回だけではなく、何度も再生されることを除いて、実装は問題なく動作します。ここで厄介な例を聞くことができます: http://tarheelreader.org/2012/01/19/the-m-book/?voice=child . ループを聞くには、Firefox または IE を使用して Flash にフォールバックする必要があります。

フォールバックに player_mp3_mini.swf を使用しています。次のようなコードで:

<object class="flashplayer" type="application/x-shockwave-flash" data="/theme
    /player_mp3_mini.swf" width="1" height="1">
  <param name="movie" value="/theme/player_mp3_mini.swf" />
  <param name="bgcolor" value="#ff0000" />
  <param name="FlashVars" value="mp3={{{eurl}}}&amp;autoplay=1" />
</object>

その最初のページの mp3 ファイルは 2756 バイトで、ループしない 2 番目のページは 2653 バイトなので、すべての短いファイルが繰り返されるわけではありません。byteslimit変数を試してみましたが、効果はありません。

すべてのユーザーに JavaScript を必要とせずにこの問題を解決するための修正、回避策、代替手段、何かを探しています。

4

1 に答える 1

0

ミニプレーヤーで 1-c.mp3 MP3 ファイルを試しました (ループを制御する「loop=0」パラメーターをサポートする通常のプレーヤーバージョンでも)、Flash プレーヤーは説明どおりにループし続けます。

これをローカルの HTML ページで再現できたので、mp3 を再エンコードしました (Audacity を使用し、32kb を保持しましたが、ビットレートは一定にしました)。ファイルは 2.8kb から 5.6kb に変更されましたが、ミニ プレーヤーでループせずに再生されました。したがって、ループしている MP3 を再エンコードする必要があると思いますが、おそらくさらに数 kb のコストがかかります。または、最終的には、小さな MP3 をより適切に処理できる別の MP3 Flash プレーヤーを見つけます。

于 2013-02-13T03:05:02.800 に答える