mp3の再生プレイヤーについて

mp3の再生プレイヤーについて

- Yuuki Murakami の投稿
返信数: 8

いつもお世話になっております。村上です。

以前から音声データを使用したコンテンツを作成して
問題を作成しております。
ローカルネットワークだと音声データの再生はスムーズに行われますが
外部のネットワークからの場合、正常に動作しません。

プレイヤーを見ている限り、ローカルネットワークの場合
音声がダウンロードされてからプレイヤーが再生されるように見えていますが、
外部ネットワークから同じ音声を再生した場合、ダウンロードよりも再生の進行状況が
早く音声データが全てを再生する前にスライドバーが端まで到達してしまい、
音声ファイルの再生が途中で止まってしまう状況になっています。
(わかりにくい文章で申し訳ありません)

上記の現象がおきているため、以下の2点を行うことが出来るかをお聞きしたいと思います。

1.マルチメディアプラグインのバージョンアップ、及び他のプレイヤーへの
  差し替えが可能でしょうか?

2.音声ファイルを全てダウンロードさせてから、音声ファイルを再生させるという
  動きをさせることは可能でしょうか?

いつも質問ばかりで申し訳ありませんが、ご教授していただけないでしょうか?

以上、宜しくお願い致します。

Yuuki Murakami への返信

Re: mp3の再生プレイヤーについて

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators
下記の投稿 ( 2番目 ) を参考にされてはいかがでしょうか。
http://moodle.org/mod/forum/discuss.php?d=41401

Yuuki Murakami への返信

Re: mp3の再生プレイヤーについて

- Timothy Takemoto の投稿

1.マルチメディアプラグインのバージョンアップ、及び他のプレイヤーへの
  差し替えが可能でしょうか?

そういえば、最近新しいバーションがありましたがそれは巻き戻しボタンを付け加えるためのものでした。swfファイルと一緒にmacromedia flashで編集できるflaファイルもありましたので、flashが上手ならご自分で編集できます。私はflashも持っていますが、ぜんぜん。下記の
http://moodle.org/mod/forum/discuss.php?d=43955

2.音声ファイルを全てダウンロードさせてから、音声ファイルを再生させるという
  動きをさせることは可能でしょうか?
面白い提案です。たしかに、再生がダウンロードを追いつきますと止まりますから、せめて「バッファー(buffer)」の時間あるいはおっしゃるようにダウンロードしてからのプレーヤーの再生があればよいですね。英語のフォーラムで訊いてみます。

Timothy Takemoto への返信

Re: mp3の再生プレイヤーについて

- Yuuki Murakami の投稿
Takemoto様

先日、Yoshida様から返答いただいた後、調査をしておりました。
flaファイルから現在、改良を行っております。

音声ファイルを作成すると移動するバーがいきなり真ん中くらい
まで移動し、ダウンロードよりも再生が早いために途中で終わってしまう
という現象ですが、2つの原因がわかりました。

1つはバッファタイムです。
ご指摘のあるようにflaをMarcomedia Flashで開いて設定できる
バッファタイムを変更することでダウンロードの時間を稼ぐことが
出来るようになりました。

またもう一つの原因はmp3のエンコード方式です。
以前はituneでエンコードをしていましたが、バージョンの違いにより
ヘッダー情報に必要な情報が書き込まれないことがわかり、WMP10にて
エンコードした場合、必要な情報がヘッダーに書き込まれることが
わかっています。

現在、バグ修正中ですので、もう少し待っていただければ
修正箇所などの情報がまとまると思います。

返信ありがとうございました。
Yuuki Murakami への返信

Re: mp3の再生プレイヤーについて

- Timothy Takemoto の投稿

フラッシュのエキスパートがいらっしゃってよろしいですね。

バッファータイムが設定できるなんていいですね。この間島根県立大学でムードル研究会を行った際に、モードルで試験を行っている皆様はバッファーがほしかったそうです。現在は試験開始(?)後5分間座ってダウンロードを待ってもらっているそうです!

エンコードのお話は私に難しいですが、教育ではAudacityというフリースフトを使っており、それにはID3v2とID3v1しかありません。いずれでも大丈夫ですよね?audacity
新プレーヤーを楽しみにしています。

武本Timothy

Timothy Takemoto への返信

Re: mp3の再生プレイヤーについて

- Yuuki Murakami の投稿

プレイヤーの動きがわかりましたので、報告させていただきます。
以前、投稿させていただいた記事で書き込みさせていただきます。

スライダーが揺れる現象について原因が解明しました。
この現象はローカルのネットワークでは通信速度が速いため、現象が
発生せず、5MBほどの少し大きめの音声ファイルを外部のネットワークから
再生したときに発生する現象がわかりました。

「音声ファイルを作成すると移動するバーがいきなり真ん中くらい
まで移動し、ダウンロードよりも再生が早いために途中で終わってしまう」
という現象ですが、詳細には音声ファイルの総再生時間が曲を読み込んだ
時点では確定されず、音声ファイルをダウンロードにするにつれて
総再生時間がころころ変わり、その結果、スライダーが揺れるという
状況になっています。

再生すると動くスライダーの位置判定情報が次のようになっています。
スライダーの位置 = s.position(音声ファイルの再生位置)/ s.duration(音声ファイルの長さ)
再生した段階では「s.duration」が完全にダウンロードされるまでわからないため、
上の式の分母がコロコロ変わることによってスライダーの位置が揺れるという動きになっています。

私の職場では外部からもユーザが音声ファイルに触る状況にあり、動き自体を
改造しました。「s.duration」の代わりに「TLEN」という音声ファイルの長さを読み取って
音声ファイルの長さを揺れないように改造しました。

なお「TLEN」はmp3ファイルのID3v2.3以降に対応しているエンコーダでmp3ファイルを
作成した時にヘッダー情報に書き込まれますが、エンコーダによってはヘッダー情報に
書き込まれないということがわかり、現時点で確認出来ているエンコーダは
「Windows Media Player10」で「TLEN」の値が取得できることがわかっています。
「iTune」も最新版で試してみましたが駄目でした。

また武本様も仰っていますが、バッファ時間はデフォルトで「20秒」になっており、
これは20秒間再生出来るまでの音声ファイルをダウンロード出来た時点で
音声ファイルが再生されるようになっています。
つまり「180秒」に変更すると再生ボタンを押すとダウンロードを3分間再生できるだけの
音声をダウンロードしてから再生が始るようになります。

添付させていただいたプレイヤーは「TLEN」を読み込むことが出来るプレイヤーです。
ID3v2.3以降で「TLEN」がヘッダー情報にある音声ファイルにのみ有効です。
またバッファ時間は「20秒」です。ご依頼がありましたら、バッファ時間を変更して
再度提供させていただきます。バッファ時間はどの音声ファイルにも有効です。
設定した時間分を再生できるファイルをダウンロードしてから再生が始ります。

以上、宜しくお願い致します。

【設置方法】
/moodle/filter/mediaplugin/の下にある[ mp3player.swf ]が再生プレイヤーですので
差し替える前に一度バックアップすることをお勧めします。

Yuuki Murakami への返信

Re: mp3の再生プレイヤーについて

- Timothy Takemoto の投稿

村上さま

どうもありがとうございます。ご説明は私には理解しにくいところがありますが、試させていただきます。

TLENは音声ファイルの長さが自動的に記録されている情報でしょうか?つまり、我々がバッファーの長を設定するのではなく、音声ファイルの長さによってバッファーの長さが変わるという仕組みかなと思っています。

お礼まで

武本