こんにちは、オタクです。
なので、スカパーオンデマンドでKawaiian.tvを見ています。
スカパーオンデマンドをPCで見ようとしたら絵が出ないじゃないですか。
推しメンが見れないじゃないですか、困った。
(ちなみにiPhone、Androidでは見れました。が2019/2現在事前ダウンロードの機能がないので駄目です。)
なぜなのか?原因を探ります。
私の環境
OS:Windows10 Professional(v1803,build 17134.471)
使用ブラウザ:Google chrome (v71.0.3578.98)
Flash:v32.0.0.142
ちなみに彼らの言う推奨動作環境は
もちろん全部満たしているし、なんなら推奨ネットワーク速度の50倍はある。
ちなみに似たような構成のWindow7 PCでも試して同じ結果であった。
エラー状況
Google Chrome:音だけ出る.映像が出ない.
Edge:音もクソもない.「Unsupported codec コード:a11」
↓追加でテスト
IE:「Unsupported codec コード:a11」
Firefox:OK!!
ちなみにミニモードでは普通に再生できる…(これもHTML5)
そんな変なコーデック使ってる???そんなわけ…
サポート
とりあえず送った.
でも面白くないので調べる.
通信を眺めてみる
まず第一に、よくある質問では、「Flashを有効にして…Cookieを有効にして…Javascriptを有効にして…」などと書いてあるが、もちろん確認済みである。
そもそもよくある質問をよく読むと、Flashプレイヤーを使っているチャンネルはごくわずかである。*1
つまりこのプレイヤーはHTML5で動いている。
おそらくHLS(HTTP Live Streaming)が使われているんだろうなぁと思いながら、なんとなくネットワークタブを眺めていると、マスタープレイリストが流れてきました。
バックボーンはulizaでした。っていうのはどうでもよくて…
m3u8があるのだからtsもあるよねってことで適当に選んだセグメントを保存して、
みたら暗号化されてた。
しかし、マスタープレイリストに鍵があるので、
#EXT-X-KEY:METHOD=AES-128,URI=(ここにキーの在り処が入る)
復号しまして、 メディア情報を眺めてみても、
ちなみに結論から言うと、Firefoxは使わないので、結局全部ffmpegに流し込みました。
Google ChromeはHTML5上のvideoタグでH.264をサポートしない?
Chromeの開発者ブログによれば
Though H.264 plays an important role in video, as our goal is to enable open innovation, support for the codec will be removed and our resources directed towards completely open codec technologies.
という発表がされたのが2011年であるが、かなり普及したコーデックでもあり、現在も削除されていないのが実情らしい、
つまり対応している…
やっぱりコーデックの問題?
IEでYoutubeを再生するとmp4になることは周知の事実(ほんとか?)
つまり確実に対応してるし、ということでIEでもやってみたが、上に書いたとおり駄目であった。
そして最後の砦、Firefox。再生できた…
とりあえずこのエラーで困った人はFirefoxでぜひお試しを。
しかし、動作要件にはChromeがあるから、しっくりこない…。
原因わかったら追加します…。
P.S.今日も推しメンが可愛い。
追記
Chromeで黒画面、音声のみ出力される現象は、私が独自に入れていたChrome拡張機能の「Video speed Controller」のオーバーレイが原因でした。
いままで多くのHTML5のvideoタグで活用してきましたが干渉したのはこれが初めてです。
また、HTML5上のプレイヤーですがFlashも視聴制御に使っているそうです、オイオイ…
で、ChromeはPPAPIによる(ブラウザ組み込み)Flash、EdgeはOS上のFlashを使うようで、ご丁寧にインストールしてあげないと行けなかったようです。
というわけで2ブラウザとも解決したのでした…よかった…
*1:※スカパーオンデマンドにはKawaiiantv以外にもたくさんのチャンネルがある