1. ホーム
  2. html

[解決済み] ChromeとOperaでアプリケーション/x-directorの動画が再生されない

2022-02-17 21:24:34

質問

youtubeの動画を埋め込んだサイトがあり、そのソースコードは以下の通りです。

<object width="300" height="200" 
   data="http://www.youtube.com/embed/G7S5GEp****" 
   type="application/x-director">
<param name="url" value="http://www.youtube.com/embed/G7S5GEp****" />
<param name="src" value="http://www.youtube.com/embed/G7S5GEp****" />
<param name="sound" value="true" /><param name="progress" value="true" />
<param name="autostart" value="true" />
<param name="swstretchstyle" value="none" />
<param name="swstretchhalign" value="none" />
<param name="swstretchvalign" value="none" /></object>

問題は、OperaとChromeではこのビデオが再生されず、ビデオの代わりに"このプラグインはサポートされていません"と表示される灰色の画面が表示されることです。一方、IEとMozilla Firefoxは問題なくビデオを再生します。2台のPCで動画とブラウザの挙動を確認しました。

  1. 私が見つけたのは アプリケーション/x-director はAdobe Shockwave Playerの動画です。ということで、これが問題だと思いました。しかし、IEとFirefoxは、私のPCにShockwaveがインストールされていなくても、ビデオを再生します。Shockwaveをインストールしようとしましたが、ChromeとOperaはchrome://pluginsまたはopera://pluginsにShockwaveプラグインが表示されず、まだ動画は再生されません。

  2. それから、IEやFirefoxで動画を見て、マウスの右ボタンでクリックすると、"HTML5プレイヤーについて"と書かれたメニューが出て、そのページに行くと、html5の説明とhtml5をサポートしているかブラウザをチェックするyoutubeのページが出てきます(私のブラウザは最新でサポートしています)。

    また、SOの質問を見つけました。 HTML5でshockwaveファイルを埋め込む 私のビデオの構文はHTML5構文であると言われているところです。

<object data="..." type="application/x-director" ...></object>

  • つまり、私のビデオはShockwaveビデオなのかHTML5ビデオなのか理解できないのです。また、どうすればChromeやOperaで正しく再生できるようになりますか?
  • 見ての通り、このソースコードはデフォルトでは多くのブラウザで再生できません。ほとんどのブラウザで正しく再生できるようにするために、サイトのページにyoutubeのビデオを挿入する最良の方法は何でしょうか?(私が理解する限り、多くのブラウザはAdobe Flash製品のサポートを停止する傾向があるので、それはhtml5-videoであるべきです)?

何かご助言を頂ければ幸いです。ご清聴ありがとうございました。

どのように解決するのですか?

<ブロッククオート

サイトのページにYoutubeの動画を挿入するのに最適な方法は何ですか? ほとんどのブラウザで正しく再生されるようにするには?

ほとんどのブラウザは、動画ファイルがvideoタグに入れられることを期待しています。Youtube を使用しているため、動画ファイル (mp4) ではなくページリンク (http) を使用しているため、i-frame 内にページを読み込む必要があります。Youtubeのサーバーはこのリクエストを見ると、そのリンクのビデオプレーヤーを返します...

表示されているものを置き換える <object> -をベースにしたコードブロックを次のように変更します。 <iframe> バージョン...

<iframe width="300" height="200"
src="https://www.youtube.com/embed/G7S5GEp****">
</iframe>

また、それに関しても...

  • application/x-director は小さなミスで、本来は application/x-shockwave .
    それは 小さい を停止させないので マシンが動いているのに...

  • <object> タグはhttpのリンクを埋め込むためのものではありません。Flashアプリを埋め込むには、入力ソースとしてSWFファイル(Flashの出力)へのリンクを記述します。例:Androidアプリをブラウザに埋め込む場合、これも <object> ここで data="mysite/myapp.APK"...etc

  • 使用方法 youtube.com/embed/ HTML5 -をベースとしたプレーヤーです。 <iframe> タグ)を使用します。

  • 使用方法 youtube.com/v/ フラッシュ -ベースのプレーヤー ( <object> タグ)を使用します。

  • また、Flashの場合は width="300" height="200" が小さすぎると、特にChromeではバナーサイズと認識されてブロックされます(Flash広告が自動ブロックされる)。最低でも width="800" height="600" さもなければ、YoutubeのSWFアプリ(または他のSWF)が自分のサーバーのhtmlファイルと同じフォルダに存在しなければならない唯一の修正方法です。