2013年02月17日

JWPlayerでマルチデバイスな映像再生はどこまでできるのか?

このエントリーをはてなブックマークに追加
JWPlayerの最新バージョン6を使って、さまざまなデバイスを利用して、どれだけ映像配信ができるかを試してみました。(2013年2月16日現在)

調査の条件は以下のとおりです。
[映像プレーヤー] JWPlayer6。Flash版、HTML5版とも
[配信方法]
  • ダウンロード配信
  • ストリーミング配信(FMS4.5を利用)
  • HLS配信(FMS4.5を利用)
[デバイス(端末)]
  • WindowsPC(Win7)
  • Mac(OS X)
  • iPhone4S
  • iPad(第3世代)
  • Galaxy Nexus(Android 4.1.x)
  • Galaxy Tab 10.1(Android 3.2.x)

※JWPlayerを使ったHTMLページの作成は以下のJWPlayerのウィザードを利用しています。
http://www.longtailvideo.com/jw-player/wizard/

1.ダウンロード配信
(1)jwplayer().setup関数のfileにhttpプロトコルを通したMP4ファイルを指定して再生
(2)jwplayer().seek関数にて、映像をジャンプさせる

【結果】
(1)普通に再生
WinPC、Mac、iPhone、iPad、Galaxy Tab、Galaxy Nexusとも再生。
JWPlayerのFlash版、HTML5版ともに再生。
ただし、Android系はオートプレーが効かない模様。

(2)シークして再生
WinPC、Mac、iPhone、iPad、Galaxy Tab、Galaxy Nexusとも再生。
映像の後ろの方の映像は、シークまでにやはり時間がかかるが、後ろまでシークさせると2回目からのシークはやや速くなる。

2.ストリーミング配信(FMS4.5を利用)
(1)jwplayer().setup関数のfileにrtmpプロトコルを通したMP4ファイルを指定して再生
(2)jwplayer().seek関数にて、映像をジャンプさせる

【結果】
(1)普通に再生
PC(WinPC、MacPC)は、HTML5版、Flash版ともに再生。
iOS系(iPhone、iPad)は、HTML5版、Flash版ともにNG。
 iOS系は当然Flash未対応のため、Flash版のJWPlayerはそもそもNG。
Android系は、HTML5版はNG。Flash版は再生された。Flash版もNG。
 Flash版は自動再生されなかった。
 (訂正 2013/2/25 AndroidでもFlash版は再生されませんでした。よってAndroidではいっさい再生できません。)
 HTML版はrtmpプロトコルでは再生できないみたい。
 ちなみに、rtspプロトコルならAndroid系は対応しているということでトライしてみたが、FMS4.5が未対応なのか再生できなかった。

(2)シークして再生
(1)で再生されたもののみしか当然試せないのだが、以下のとおりで、再生されるとシークもすべてできた。
PC(WinPC、MacPC)のHTML5版、Flash版ともに再生
AndroidのFlash版で再生

3.HLS配信(FMS4.5を利用)
そもそもFlash Media Serverを利用してHLS配信を実施するということが普通でないのかもしれないです。僕が例えば5秒ごとのTSファイルを作成し、それをm3u8ファイルでくるんだというのではなく、擬似的にこれらの仕組みをFMSにお願いするという形で今回は実施しています。

※FMSを利用してHLS配信をするときには、再生させる映像ファイルの拡張子を、xxxxxx.mp4からxxxxxx.mp4.m3u8と指定する必要があります。

(1)jwplayer().setup関数のfileにhtmlプロトコルを通したMP4ファイルを指定して再生(実際にはxxxxxx.mp4.m3u8)
(2)jwplayer().seek関数にて、映像をジャンプさせる

【結果】
(1)普通に再生
PCでは、MacのブラウザSafariでのみ、HTML5版で再生
iOS(iPhone、iPad)では、HTML5版で再生
Android系では、HTML5版、Flash版でも再生ができなかった。
 Androidの4.0以降ではHLS通信に対応とありますが、今回のFMSを利用したHLS配信はバージョン4.1でも再生することができず。

(2)シークして再生
(1)で再生が成功した、MacでのSafariやiOS系では問題なくシークが実行される

使っているプレイヤーやストリーミングサーバが特殊とも言える環境と言えるのかもしれませんが、僕が望んでいるような結果にはなかなか至らないようです。マルチデバイスで映像再生、というのは本当に悩ましい状況です。特にAndroidについては、OSのバージョンによりFlashに対応していたり、していなかったりがあり、端末やバージョンをしぼれないようなケースでは、どう対応していくか本当に悩みどころです。(AndroidでのFlashの状況については、また別のエントリーで)

HLS配信は、環境を整えてもう少し深く検証していきたいですね。

(訂正 2013/2/25)
AndroidではFMSを使ったストリーミングでFlash版でも再生されませんでした。よってAndroidではいっさい再生できません。ただしJWPlayerをバージョン5にすると、FMSを使ったストリーミングでFlash版を使った再生はできました。

posted by motti at 17:51 | Comment(0) | TrackBack(0) | スマホ/タブレット | このブログの読者になる | はてなブックマークに追加
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/323367948

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。