YouTube HD動画をembedするブックマークレット その2
(この動画に深い意味はないです。練習してみただけw)
公開したら早々に、HD対応してない動画を自動で検出すべきとか、突っ込みを入れてくる人がいたので、なんとかHD動画があるかどうか、調べる手段がないかと思ったらkwmrさんが教えてくれたのが、creazy photographさんの↓のエントリー
今回は、外部のAPIを使わずにHD動画の有無を確認する方法を見つけたので紹介します。
[From Youtube でHD動画に対応しているか確認する裏技見つけた ::: creazy photograph]
キーとなるのはFLVの在処を探し出した時と同様、ページ内にあるJavaScript変数「swfArgs」になります。
実はこのswfArgs変数の中に「fmt_map」という気になる要素が入っているのですが暗号めいていて意味までは分かりませんでした。しかし、HD動画を見るための「&fmt=22」を加えたページで見てみたところこれが動画フォーマットに関連する値である事は間違いないようなのです。
なるほど、ってか、このスクリプトそのまま改変したら、すぐ作れちゃうじゃんということで、そのまま参考にさせていただいてしまったのが↓のブックマークレット
今見てるYouTubeの動画をHD画質でembedするタグを生成するブックマークレットその2(幅640px版)
今見てるYouTubeの動画をHD画質でembedするタグを生成するブックマークレットその2(幅500px版)
今見てるYouTubeの動画をHD画質でembedするタグを生成するブックマークレットその2(幅425px版)
ほんとそのまま改良させてもらっちゃってます(汗)
こっちのスクリプトの場合、一度HD動画の存在確認をしてるので、なければ通常の動画を埋め込みます。
一旦HD動画確認用にajaxでリクエストを投げてる分、第一弾よりちょっと重いです。あと、サイト側の変更で、追従できなくなるパターンもありそう。シンプルなのは前回のやつなので、一応そっちも残しておきつつお好きな方を使ってくださいませ。
(追記)モダシンパパのブログは640pxが収まりきれないということだったので、YouTubeの標準の425px版も作ってみました。
(追記)さらにみたいもんさんが500pxが欲しいというのでリンクを増やしました。ここまでくるとスクリプト自体可変対応にしたほうがいいかなぁ、、、
(追記) このBookmarkletを作るときに参考にさせていただいたcreazy photographさんがさらにすばらしいbookmarkletを作成されてます→ 動画を楽しもう!(Youtube のHD動画を色/サイズをカスタマイズした上でembedできるブックマークレット) ::: creazy photograph