私は、YouTube の動画再生の「ブロック」メカニズムを作動させる背後にあるロジックを理解しようとしています。
ここでは、JS Fiddle 内に埋め込まれた再生がブロックされている曲を再生しようとしています。それが機能することを観察します。
ここで、Google Chrome 拡張機能内でまったく同じコードを使用します。
クリックして拡張機能をダウンロードするには、http://www.meomixes.com/をクリックしてください。
拡張機能への直接リンクについては、http://www.meomixes.com/Test.crxを参照してください。
同じ YouTube ビデオを再生できないことに注意してください。
このシナリオでのデバッグ オプションは何だろうと思っていました。誰が私が何を探求すべきかについて何か考えを持っていますか? マニフェストで次のアクセス許可を要求しようとしましたが、効果はありませんでした:
"permissions": [
"http://*.youtube.com",
"https://*.youtube.com",
"http://*.google.com",
"https://*.google.com"
]
ここに Test.crx の完全なソースを配置しました: http://www.meomixes.com/Test.zip ロードするには:
- 解凍する
- Google Chrome の拡張機能ページに移動し、「開発者モード」を有効にします
- [パッケージ化されていない拡張機能を読み込む] をクリックし、解凍したディレクトリをポイントします。
- ビデオが再生されないことを確認します。
最後に: この曲は Facebook の投稿で楽しそうに再生されます。
編集:問題の動画のhttp://gdata.youtube.com/feeds/api/videos/UfESt2KdOdc?v=2&prettyprint=trueを見つけました。これはhttp://apiblog.youtube.com/2011/12/understanding-playback-restrictions.htmlとペアになっています。
最初の応答に基づいているだけです。基本的に、テレビやGoogle Chrome拡張機能などの「外部デバイス」で再生できないようにする「シンジケーション」と呼ばれる設定があります。
現在、この問題を回避する方法を検討しています。