下に示すWebページ(※1)はBGMのリピート付きで自動スクロールします。
そこでの音声ファイルはmidファイルです。
そのWebページのソースコードを参考に自作のWebページに
BGM付を付け、自動スクロールさせています。
音声ファイルをmidファイルからmp3ファイルに変更すると
ブラウザが Google Chrome の場合にだけ、BGMは繰り返しません。
・Internet Explorer
・Firefox
では問題ありません。
Firefoxでのリピートに関しては、先の質問(※2)でいただいた回答で対処済みです。
Google Chromeでもmp3ファイルでBGMを繰り返すようにするにはどうすればよいでしょうか?
(※1)
●New Year Wishes
http://llerrah.com/newyearwishes.htm
(最初少しだけ手動でスクロールすればあとは自動スクロールします)
(※2) http://q.hatena.ne.jp/1362328969
お手本の http://llerrah.com/newyearwishes.htm の
<SCRIPT language="JavaScript"> if ((navigator.userAgent.indexOf("Firefox")!=-1) && navigator.appVersion.indexOf("Win") > 0) { document.writeln("<embed type=application/x-mplayer2 pluginspage=http://www.microsoft.com/Windows/MediaPlayer/ Name=MediaPlayer src=midi/mhastime.mid AutoStart=True ShowStatusBar=0 HEIGHT=1 WIDTH=1></embed>"); } else if ((navigator.userAgent.indexOf("MSIE"))!=-1) document.writeln("<BGSOUND SRC=midi/mhastime.mid LOOP=INFINITE VOLUME=-500>"); else document.write( '<embed src = "midi/mhastime.mid" autostart="true" HEIGHT=1 WIDTH=1 loop="true" ></embed>' ); </SCRIPT>
に倣って、
Google Chrome の場合、
document.write( '<embed src = "SomeMusic.mid" autostart="true" HEIGHT=1 WIDTH=1 loop="true" ></embed>' );
とすれば、BGM"SomeMusic.mid"がリピートされるけれど、
document.write( '<embed src = "AnotherMusic.mp3" autostart="true" HEIGHT=1 WIDTH=1 loop="true" ></embed>' );
とすれば、BGM"AnotherMusic.mp3"はリピートされずに1回のみ。
コメント(15件)
「type="audio/mpeg"」を指定するか、あるいは「qtsrc」に再生するファイルを指定すると、「QuickTime Plug-in」で再生させる事ができます。
※環境によってインストールされているプラグインが異なりますので、コードをもう少し見直す必要があるかもしれません。(「QuickTime Plug-in」がインストールされていない環境で、ダウンロード先の表示がされるように「pluginspage=http://www.apple.com/quicktime/download/」あるいは「pluginspage=http://www.apple.com/jp/quicktime/download/」を指定するなど・・・)
http://support.apple.com/kb/TA26486?viewlocale=ja_JP&locale=ja_JP
http://phpjavascriptroom.com/?t=strm&p=mov_embed
> 「type="audio/mpeg"」を指定するか、あるいは「qtsrc」に再生するファイルを指定すると、
> 「QuickTime Plug-in」で再生させる事ができます。
この部分はコメントというより回答だと思われますが・・・。
> 「type="audio/mpeg"」を指定するか
document.write( '<embed type="audio/mpeg" src = "AnotherMusic.mp3" autostart="true" HEIGHT=1 WIDTH=1 loop="true"></embed>' );
でリピートしました。
> あるいは「qtsrc」に再生するファイルを指定する
document.write( '<embed qtsrc = "AnotherMusic.mp3" autostart="true" HEIGHT=1 WIDTH=1 loop="true" ></embed>' );
では音自体が出なくなります。
回答ならばベストアンサーに相当する内容だと思います。
無料質問ではありますが、よろしかったら回答欄へもお願いします。
「qtsrc」を指定すると再生されなくなるという事は、「QuickTime Player」がインストールされていない、または「QuickTime Plug-in」が停止されている状態でしょうか?
OS、Firefoxのバージョン、導入済みのプラグインの他、Google Chromeのバージョンと導入済みのプラグインも教えてください。
※「Google Chromeの設定」ボタン→「設定」を実行後、「詳細設定を表示」をクリック→「プライバシー」の箇所の「コンテンツの設定」をクリック→「プラグイン」の箇所の「プラグインを個別に無効にする」をクリックすると「プラグイン」タブが表示されます。(右上の「詳細」をクリックすると、各プラグインの詳細情報が確認できます。)
※Firefoxの場合は、「Firefox」ボタン→「アドオン」を実行後、「プラグイン」タブをクリックすると表示されます。(各プラグインの欄に表示されている「詳細」をクリックすると詳細情報が確認できます。)
「pluginspage」に再生に必要なプラグインのダウンロードURLを指定しておくと、インストールされていない場合にリンクが設定されたアイコンが表示されますが、「width」と「height」を小さくしているので見えないと思います。
何を使って再生しているかも確認して欲しいので、一旦「width=320」と「height=280」を指定して、再生に使用しているプレーヤーを確認してみてください。(※「type=audio/mpeg」を指定した場合と指定しなかった場合の2種類)
※プレーヤーを表示していないのは、お手本のコードがそうなっているからでしょうか?
mkonomiさん自身は、表示してもしなくてもどちらでも大丈夫ですか?
また、お手本のコードにはこだわらず、ある程度の環境で自動で繰り返し再生される事を優先しますか?
※再生プレーヤーは環境によって異なりますので、訪問者によってはmkonomiさんとは違う状態で表示されます。
必要なプラグインが何もインストールされていない環境では再生されませんし、プレーヤーを表示していない場合は、再生する為にプラグインのインストールが必要な事を知る事もできません。
私はrouge_2008さんと議論できるレベルの知識を持ち合わせていませんので、
的確に返答できるか自信がありませんが、できる範囲でお答えします。
> 「qtsrc」を指定すると再生されなくなるという事は、
> 「QuickTime Player」がインストールされていない、
> または「QuickTime Plug-in」が停止されている状態でしょうか?
Plug-inのことは良く理解できていませんが、
src = "SomeMusic.mid"のとき(qtsrc = "AnotherMusic.mp3"のときではありません)に
始めて Google Chrome でアクセスするときには画面上部に
『QuickTime player を実行するにはユーザーの許可が必要です。
[今回は実行する] [このサイトでは常に実行する]』
と表示されます。[今回は実行する]を選べば、音声が出てリピートします。
参考になりますでしょうか?
> OS、Firefoxのバージョン、の他、
■OS
XP3
■Firefoxのバージョン
19.0
■導入済みのプラグイン
Plug-inのことは良く理解できていませんので、調べ方がわかりません。
> Google Chromeのバージョンと導入済みのプラグインも教えてください。
■Google Chromeのバージョン
バージョン 25.0.1364.152 m
■導入済みのプラグイン
Plug-inの仕組みはほとんど理解できていません。
Adobe Flash Player (2 files) - バージョン: 11,6,602,171
MicrosoftR DRM - バージョン: 9.00.00.4503
Windows Media Player - バージョン: 3.0.2.629
Chrome Remote Desktop Viewer
Picasa - バージョン: 3, 1, 0, 0
MicrosoftR DRM - バージョン: 9.00.00.4503
QuickTime Player (7 files) - バージョン: 7.6.9 (1680.9)
RealNetworks(tm) Chrome Background Extension Plug-In (32-bit) - バージョン: 12.0.1.669
Native Client
RealPlayer (3 files) - バージョン: 16.0.0.282
RealNetworks(tm) RealDownloader Chrome Background Extension Plug-In (32-bit) - バージョン: 1.3.0.208
RealNetworks(tm) RealDownloader HTML5VideoShim Plug-In (32-bit) - バージョン: 1.3.0.208
RealNetworks(tm) RealDownloader PepperFlashVideoShim Plug-In (32-bit) - バージョン: 1.3.0.208
RealDownloader Plugin - バージョン: 1.3.0.208
Google Update - バージョン: 1.3.21.135
CANON iMAGE GATEWAY Album Plugin Utility - バージョン: Version 1.1.1.8
NPCIG.dll - バージョン: 1, 0, 0, 5 CANON iMAGE GATEWAY Mycamera Plugin
AVG SiteSafety plugin - バージョン: 14, 1, 0, 10
Java(TM) (2 files) - バージョン: 6.0.330.3 重要なセキュリティ アップデートをダウンロードする
McAfee Security Scanner + - バージョン: 3,0,318,0
Silverlight - バージョン: 5.1.10411.0
iTunes Application Detector - バージョン: 1.0.1.1
Windows Presentation Foundation - バージョン: 3.5.30729.1 built by: SP
> ※Firefoxの場合は、
> 「Firefox」ボタン→「アドオン」を実行後、
> 「プラグイン」タブをクリックすると表示されます。
> (各プラグインの欄に表示されている「詳細」をクリックすると詳細情報が確認できます。)
「Firefox」ボタンというのは、どういう状況のときどこにあるのでしょうか?
> 「pluginspage」に再生に必要なプラグインのダウンロードURLを指定しておくと、
> インストールされていない場合にリンクが設定されたアイコンが表示されますが、
> 「width」と「height」を小さくしているので見えないと思います。
> 何を使って再生しているかも確認して欲しいので、一旦「width=320」と「height=280」を指定して、
> 再生に使用しているプレーヤーを確認してみてください。
> (※「type=audio/mpeg」を指定した場合と指定しなかった場合の2種類)
「pluginspage」とはどこのパラメータ(?)ですか?
「pluginspage」に再生に必要なプラグインのダウンロードURLを指定する記述例をおねがいします。
> ※プレーヤーを表示していないのは、お手本のコードがそうなっているからでしょうか?
> mkonomiさん自身は、表示してもしなくてもどちらでも大丈夫ですか?
> また、お手本のコードにはこだわらず、ある程度の環境で自動で繰り返し再生される事を優先しますか?
プレーヤーを表示という表現自体が理解できません。
なんらかの設定をすれば、どこかにプレーヤーに関する情報が表示されるということのようですが・・。
上にも書きましたが、もともと、私はrouge_2008さんと議論できるレベルの知識を持ち合わせて
いないようで、お手数をおかけして申し訳ありません。
> 「pluginspage」に再生に必要なプラグインのダウンロードURLを指定する記述例をおねがいします。
記述例はお手本のコード(<embed ・・)の中にありました。
試してみて報告いたします。
(議論をする種類の質問ではないと思っています・・・)
Google Chromeにインストールされている音楽および動画ファイル再生に関するプラグインは次の3つのようです。
・Windows Media Player - バージョン: 3.0.2.629
・QuickTime Player (7 files) - バージョン: 7.6.9 (1680.9)
・RealPlayer (3 files) - バージョン: 16.0.0.282
※私の場合は「RealPlayer」はインストールされていないので分かりませんが、音楽再生プレーヤーの「RealPlayer」(http://jp.real.com/)をインストールしているからではないかと思います。
「Windows Media Player」はWindows標準の音楽・動画再生ソフト、「QuickTime Player」はApple社の音楽・動画再生ソフトをインストールしている事によって追加されているようです。
これらのプラグインのインストールの仕組みはほとんどのブラウザで同じではないかと思いますので、おそらくFirefoxも同じプラグインが導入されていると思います。
※ちなみにGoogle ChromeではFirefoxのプラグインフォルダからもプラグインを読み込んでいるようでした。(Google Chromeの「プラグイン」タブを表示して、表示画面右上(※ブラウザ全体ではなく表示部分右上)の「詳細」をクリックするとさらに各プラグインの詳細情報が確認できますので、リンクをクリックして確認してみてください。)
Firefoxのブラウザ画面左上に「Firefox」と書かれたボタンがあります。(※メニューバーを表示している場合は、「ツール」→「アドオン」でも表示されたと思います。)
> プレーヤーを表示という表現自体が理解できません。
音楽再生ソフトを起動するとソフトの画面が起動しますが、ブラウザでも同じような画面がコンテンツ描画領域(※ページの内容表示部分)に表示されます。(ソフトよりはかなりシンプルな画面ですが・・・)
以前の質問で参考に提示したページでは、コントローラーという表現になっていたと思いますが、「再生」「停止」等のボタンを指しているようでしたので、「プレーヤー」と表現しています。(「プラグイン」の方が分かりやすいかもしれませんが、Google Chromeの場合、標準の音楽・動画プレーヤーも搭載されているようでしたので・・・)
コントローラーが表示されていないと、再生に必要なプラグインが何もインストールされていない環境では、音が再生されないままになり、プラグインのインストールが必要なメッセージも表示されません。
そのような環境では再生されなくても構わないのか、どのような動作にしたいのか希望を聞いています。(もし再生して欲しい場合は、訪問者にプラグインのインストールを告知する必要がありますので、コントローラーを表示する必要があります。)
どのような環境でも音が再生される方法というのは無理だと思いますので、希望の動作の優先順位によって何かは諦める必要がありそうです。
どのような動作にしたいのか検討してみてください。
※音楽・動画再生に関する代表的なプラグインは、おそらくこのコメントの上に書いた3つになると思います。(mkonomiさんの環境でGoogle Chromeにインストールされているプラグインと同じ。)(ほとんどの訪問者の環境でも上記3つの内のどれかがインストールされている可能性があります・・・)
※ちなみに現在のコードでは、Javascriptで条件によってコードを出力していますので、Javascriptが無効な環境では音が再生されません。(コード自体が出力されないので・・・)
document.write( '<embed src=matsubara02.mp3 autostart="true" HEIGHT=1 WIDTH=1 loop="true"></embed>' );
に
type="audio/mpeg"
pluginspage=http://www.apple.com/jp/quicktime/download/
を追加し、
height=1
width=1
を
height=280
width=320
に変更して
document.write( '<embed type="audio/mpeg" pluginspage=http://www.apple.com/jp/quicktime/download/ src=matsubara02.mp3 autostart="true" height=280 width=320 loop="true"></embed>' );
と書き変えて試してみました。
Google chromeでローカルに再生すると、
画面上部に
『QuickTime player を実行するにはユーザーの許可が必要です。[今回は実行する] [このサイトでは常に実行する]』
と表示されます。
[今回は実行する]を選ぶと、音声が出て、リピートしました。
画面上部にはプレイヤーのプログレスバーが表示されています。
そのバージョン情報を見るとQuicktimePlug-in 7.6.9です。
──
(2)次に、 type="audio/mpeg"を外して
document.write( '<embed pluginspage=http://www.apple.com/jp/quicktime/download/ src=matsubara02.mp3 autostart="true" height=280 width=320 loop="true"></embed>' );
で試してみました。
画面上部に
『QuickTime player を実行するには・・・』
などは表示さずに、いきなり音声が再生しますが、リピートしません。
画面上部にはプレイヤーのプログレスバーが表示されています。
今度は背景色が黒です。
これはChrome独自のプレーヤーかと思われますが、そのバージョン情報を見る方法は分かりません
──
(3)次に、 pluginspage=http://www.apple.com/jp/quicktime/download/を外して
document.write( '<embed src=matsubara02.mp3 autostart="true" height=280 width=320 loop="true"></embed>' );
で試してみました。これで height、width 以外は元に戻ったはずです。
結果は(2)とまったく一緒です。
──
(4)次に、 type="audio/mpeg"を追加して
document.write( '<embed type="audio/mpeg" src=matsubara02.mp3 autostart="true" height=280 width=320 loop="true"></embed>' );
で試してみました。
結果は(1)とまったく一緒です。
──
意外だったのは height、width 以外は元に戻ったはずの(3)です。
以前はローカル再生では音声が出ていませんでしたので。
《考 察》
pluginspage=http://www.apple.com/jp/quicktime/download/を外して
の有無に関係なく
type="audio/mpeg"があればQuicktimePlug-inで、
type="audio/mpeg"がなければChrome独自のプレーヤーで
再生するようです。
そして、QuicktimePlug-inで再生の時に loop="true"が意味を持つようです。
Chrome独自のプレーヤーで繰り返し再生を指定する方法もあろうかと想像できますが、
その調べ方がわかりません。
> (議論をする種類の質問ではないと思っています・・・)
"議論"という用語は適切でなかったと思っています。
要は、私がrouge_2008からの問いかけを正しく理解して、期待通りの応答ができていないかも
知れなと懸念しているということを表現したかっただけです。
丁寧で詳細なアドバイスをありがとうございました。
おかげで、かなり理解が深まりました。
> ※プレーヤーを表示していないのは、お手本のコードがそうなっているからでしょうか?
> mkonomiさん自身は、表示してもしなくてもどちらでも大丈夫ですか?
> また、お手本のコードにはこだわらず、ある程度の環境で自動で繰り返し再生される事を優先しますか?
今では、この問いかけの意味も理解できるようになりました。
自作のWebページでは音声はさほど重要ではありません。
大学同窓のページでメンバー各自の47年前の卒業当時の写真と現在の写真をペアで表示したものを
オートスクロールさせ、BGMに学生歌を繰り返すというものです。
閲覧時に学生歌が1回だけで終了しても、まったく聞こえなくても問題にはなりません。
作成している自分だけがこだわっているのです。
> pluginspage=http://www.apple.com/jp/quicktime/download/を外して
> の有無に関係なく
> type="audio/mpeg"があればQuicktimePlug-inで、
> type="audio/mpeg"がなければChrome独自のプレーヤーで
> 再生するようです。
「type="audio/mpeg」の有無による動作はこちらも同じです。
「RealPlayer」がインストールされた環境でも「QuickTime Player」がインストールされた環境では、「QuickTime Player」が優先されるようですね。
プラグインが対応しているMIMEタイプを指定すると、任意のプラグインで再生できるようです。(※Google Chromeの「プラグイン」タブにアクセスして、「詳細」リンクをクリックすると確認できます。「QuickTime Player」「Windows Media Player」「RealPlayer」等、それぞれが対応しているMIMEタイプを確認してみてください。)
「pluginspage」には再生に必要なプラグインのダウンロードURLを指定します。再生に使用するプラグインがインストールされていなかった場合に表示されるアイコンのリンク先になりますので、プラグインがインストールされている環境では動作に影響はありません。
(再生に使用されるプラグインを指定できない場合は、この属性は指定しない方が無難だと思います。どのプラグインが使用されるかは環境によって異なりますので、「type」属性(※目的のプラグインだけが対応しているMIMEタイプを指定)とセットで指定して使用する必要があります。ただし、Google Chromeは独自のプレーヤーがありますので、繰り返し再生に拘らない場合は「type」も「pluginspage」も指定しなくても大丈夫です。)
「Windows Media Player」および「QuickTime Player」(Firefoxでは「QuickTime Plug-in」)が対応している属性は、以前の質問の回答内とこの質問のコメントに記載した参考ページで確認できます。(以下に再度記載します。)
・【Windows Media Playerのコントロールの種類】
http://phpjavascriptroom.com/?t=strm&p=wmv_control
・【QuickTime: EMBED タグアトリビュート】
http://support.apple.com/kb/TA26486?viewlocale=ja_JP&locale=ja_JP
http://phpjavascriptroom.com/?t=strm&p=mov_embed
Chromeの独自プレーヤーが対応している属性は私も分かりません・・・
※先ほどのコメントの次の部分に間違いがありましたので訂正します。(新しい質問「http://q.hatena.ne.jp/1362530357」と関係あるかもしれません。)
「Windows Media Player」はWindows標準の音楽・動画再生ソフト、「QuickTime Player」はApple社の音楽・動画再生ソフトをインストールしている事によって追加されているようです。
「Windows Media Player」の場合、XP以前のOSの場合のみ標準でプラグインがインストールされているようです。
私の場合はVistaですが、Firefox用のプラグインを独自に追加インストールしました。(mkonomiさんとはインストールされているプラグインのバージョンも違います。)
http://support.mozilla.org/ja/kb/play-windows-media-files-in-firefox
------------------------------------------------------------------
Firefox で Windows メディアを再生するには、Windows Media Player プラグインをインストールする必要があります。プラグインには 2 つの異なるバージョンがあります:
Windows XP までに含まれているオリジナルバージョン。
Windows XP 以降専用の新しいバージョン。利用するにはダウンロードしてインストールする必要があります。
この記事は、Windows XP 以降で Windows Media Plugin のバージョンを確認し、インストールする方法について説明します。XP ユーザはすでに古いプラグインを持っていますが、新しいプラグインのインストールが推奨されます。
------------------------------------------------------------------
上記ページの手順に従ってインストールした後、動作を確認してみてください。
※インストールする前に現在のプラグインの場所を確認(Google Chromeの「プラグイン」タブで「詳細」表示)して、プラグインファイルのバックアップを残して置いてください。(拡張子を「txt」あるいは「backup」などに変更するだけでも大丈夫ですが、コピーを別の場所に作成して置く方が安全です。)
※新しいプラグインはFirefoxの「Plugins」フォルダにインストールされ、「アドオン」の「プラグイン」タブでは「Microsoft Windows Media Player Firefox Plugin」と表示されると思います。
音楽を再生しているページの趣旨は分かりましたが、その上でどのような動作になるのが希望でしょう?
質問として投稿している問題だけ解決されれば、現状のままでも特に問題ないという事でしょうか?
「qtsrc」を指定する場合は、「src」と一緒に指定して使用する必要があるようです。
「qtsrc」だけを指定した場合は、こちらでも再生されませんでした。
※「src」には「qtsrc」とは別の存在するファイルを指定する必要があるようです。簡単に動作確認しただけですが、同じファイルを指定した場合、「src」が優先(?)されるらしくChromeの独自プレーヤーで再生されました。
※「src」のファイルパスを引き継ぐようですので、ファイルの指定方法には注意が必要です。(「src」では「ディレクトリ名/ファイル名」で指定した場合、「qtsrc」にはファイル名のみ指定する必要がありました。)
タイトルバー左端の火狐マークのことではありませんね。
相変わらず、「Firefox」と書かれたボタンがわかりません。
表示指定の関連で表示されていないのかもしれません。
> (※メニューバーを表示している場合は、「ツール」→「アドオン」でも表示されたと思います。)
メニューバーから「ツール」→「アドオン」で表示されました。
表示された情報はコピペできません。
・QuickTime Plugin 7.6.9 7.6.9.0
は確かに含まれています。
> 質問として投稿している問題だけ解決されれば、現状のままでも特に問題ないという事でしょうか?
仰る様に現状のままで特に問題ありません。
同窓生たちは今昔対比の写真を見るだけで満足しているようです。
不可解な動作を解明したいという個人的好奇心だけでフォローしています。
rouge_2008さんのコメントについていくのに必死です。
Webページ作成に関しては、昔から見よう見まねで、系統的に学んだことがありません。
用いられる用語も勘が頼りですが、当面、MIMEタイプとは何かがわかりません。
> 相変わらず、「Firefox」と書かれたボタンがわかりません。
メニューバーを表示している時は表示されないようですね。
メニューバーの表示・非表示の操作で「Firefox」ボタンも切り替わりました。
動作については現状のままで問題ないという事で了解しました。
とりあえず現在確認している問題(※Firefoxでローカルファイルを表示した際の動作)についてですが、こちらではやはり相対パスの指定で問題なく再生されます。
今のところ、mkonomiさんと私の環境ではWindows Media Playerのプラグインに違いがある事が分かっていますので、上でコメントした『Windows Media Player プラグイン利用ガイド』(http://support.mozilla.org/ja/kb/play-windows-media-files-in-firefox)の「プラグインがインストールされているか確認する」と「プラグインをインストールする」を参考にしてインストールし、動作を確認してみてください。
※インストール実行前に、標準のWindows Media Playerプラグインのバックアップも忘れないようにしてください。(名前を変更するか、あるいは別の場所に移動したら、FirefoxおよびGoogle Chromeでプラグインが認識されなくなっている事を確認し、その後で新しいプラグインのインストールを試すといいです。)
MIMEタイプは、この質問で出ている「audio/mpeg」や「application/x-mplayer2」といったものです。
HTMLファイルであれば「text/html」ですが、仕様など詳しい事は私も知りません。
とりあえず次のページで説明されている事だけ覚えておくといいのではないかと思います。
http://www.tohoho-web.com/wwwxx015.htm
※分からない用語があった場合は、検索して分かる程度の事だけ覚えておけば特に困らないと思います。
Firefox用のプラグインをインストールする前に、Google Chromeで現在の「Windows Media Player」プラグインでローカルで再生した場合の動作を確認してみてください。
「type="application/x-mplayer2"」を指定すると、「Windows Media Player」プラグインで再生するようです。
※「src」にWMAファイルを指定しても「Windows Media Player」プラグインで再生するかもしれません。
※インストール時の操作について・・・
『Windows Media Player プラグイン利用ガイド』
http://support.mozilla.org/ja/kb/play-windows-media-files-in-firefox
※「プラグインをインストールする」の5の手順でのFirefoxの終了についてですが、いろいろな環境の手順が記載されているようですが、どれか一つ自分の環境に該当する操作を実行するといいです。
いつもの終了操作を実行してみてください。