EQPlayerAccessAPIクラスは、プレイヤーの操作や状態の取得を行います。
EQPlayerAccessAPIへのアクセスは、プレイヤーインスタンス自体ではなく、プレイヤーインスタンスのaccessorオブジェクトに対して行ってください。
プレイヤーインスタンスが player の場合は、player.method() や player.property ではなく、player.accessor.method() や player.accessor.property としてください。
また、生成したプレイヤーインスタンス、accessorオブジェクトは、プレイヤーの状態に応じて参照先が変わる場合がございます。
そのため、別の変数への受け渡しをした上でのご利用はしないでください。非推奨の例)var accessor2 = player.accessor;
EQPlayerAccessAPIへのアクセスは、プレイヤー準備完了のイベントを取得してからのご使用を推奨いたしまします。
※プレイヤー準備完了イベントについては当ページ下部にある【■イベント】をご参照ください。
推奨例)
player.accessor.addEventListener("landing", function (){ player.accessor.addEventListener("change_state", changeStatus); player.accessor.setCurrentTime(time); }); |
■メソッド
・getCurrentAPI()
getCurrentAPI():String |
配信するプレイヤー種別を取得します。
■戻り値
“HTML5API”:HTML5プレイヤー
“NativeHLS”:Android端末搭載プレイヤー(ストリーミング)
“SWFAPI”:Flashプレイヤー
“isNotReady”:Landingイベント前に呼ばれるとこちらを返します
var api = player.accessor.getCurrentAPI(); |
・addEventListener()
addEventListener(type:String, callback:Function):Void |
プレイヤーから発生するイベントに対するイベントリスナーを登録します。
■パラメーター
type:リッスンするイベントタイプ(使用できるイベントタイプは後述のイベントを参照ください。)
callback:typeパラメーターで指定したイベントが発生した時に実行する関数
player.accessor.addEventListener("complete", playerComplete); |
・removeEventListener()
removeEventListener(type:String, callback:Function):Void |
イベントリスナーを削除します。
■パラメーター
type:削除するイベントタイプ(使用できるイベントタイプは後述のイベントを参照ください。)
callback:typeパラメーターで指定したイベントが発生した時に実行する関数
player.accessor.removeEventListener("progress", timeCounterUpdate); |
・play()
play():Void |
動画の再生を開始します。(一時停止からの再開時にも使用します。)
Androidの一部端末ではサポートされません。
player.accessor.play(); |
・pause()
pause():Void |
動画の再生を一時停止します。(一時停止からの再開には、playメソッドを使用してください。)
Androidの一部端末ではサポートされません。
player.accessor.pause(); |
・getCurrentTime()
getCurrentTime():Number |
現在の再生位置を取得します。(秒単位。小数点以下の表記はミリ秒オーダー)
Androidの一部端末ではサポートされません。
playingPosition = player.accessor.getCurrentTime(); |
・setCurrentTime()
setCurrentTime(time:Number):Void |
再生中の動画の再生位置を指定します。
シーク操作を行う場合などに使用します。動画の再生中、または一時停止中にのみ使用できます。
Androidの一部端末ではサポートされません。
■パラメーター
time:再生位置(秒単位。ミリ秒オーダーでの指定は小数点以下で表記。正の数値以外や動画の長さ(尺)
を超える数値を指定した場合は、無視されます。)
player.accessor.setCurrentTime(120); |
・getTotalTime()
getTotalTime():Number |
動画の長さ(尺)を秒単位で取得します。メタ情報から取得しますが、動画再生後に取得する場合は
videoタグから取得する場合があります。
Androidの一部端末ではサポートされません。
var duration = player.accessor.getTotalTime(); |
・changeQuality ()
changeQuality(quality:Number):Void |
動画の画質を変更します。
Androidの一部端末ではサポートされません。
■パラメーター
quality:画質 (PlayerFactoryIF.create()のdefault_qualityパラメータに準じます。)
player.accessor.changeQuality(4); |
・mute()
mute(enabled:Boolean):Boolean |
音声ミュート・アンミュートを指定します。
iOS・Androidの一部端末ではサポートされません。
■パラメーター
enabled:音声ミュート状態(true: 有効, false: 無効)
■戻り値
設定後のミュート状態。(enabledパラメーターに準じます。)
player.accessor.mute(true); |
・isMuted ()
isMuted():Boolean |
現在のミュート状態を取得します。(戻り値はenabledパラメーターに準じます。)
iOS・Androidの一部端末ではサポートされません。
unmuteButtonVisible = player.accessor.isMuted(); |
・setVolume ()
setVolume(vol:Number):Void |
ボリューム(音量)を設定します。
iOS全般・Androidの一部端末ではサポートされません。
※ミュート状態でこのメソッドがコールされた場合、ミュートは無効(解除)となります。
■パラメーター
vol:ボリューム(0から100までの整数)
player.accessor.setVolume(75); |
・getVolume ()
getVolume():Number |
現在のボリュームを取得します。(setVolume()のvolパラメーターに準じます。)
iOS全般・Androidの一部端末ではサポートされません。
volume = player.accessor.getVolume(); |
・getPlaybackRate ()
getPlaybackRate():Number |
現在の再生速度を取得します。
Flashプレイヤー、ならびにAndroidではサポートされません。
var speed = player.accessor.getPlaybackRate(); |
・setPlayback Rate()
setPlaybackRate(Number):void |
■パラメーター
pr:PlaybackRate 速度設定(0.5~2.0の数値)
1.0は登録できません。
5つまで、登録可能です。(1つは必須で設定が必要)
再生速度を変更します。
指定範囲は0.5~2までの小数点第一位までとなります。
Flashプレイヤー、ならびにAndroidではサポートされません。
player.accessor.setPlaybackRate(2.0); |
・getSubtitles
getSubtitles():Number |
現在の字幕の表示順序番号を取得します。
var cc = player.accessor.getSubtitles(); |
・changeSubtitles
changeSubtitles(subtitles:Number):void |
■パラメーター
Subtitles:字幕の表示順序番号(※字幕オフは1となります。)
字幕の言語を変更します。
player.accessor.changeSubtitles(2); |
・setVideoAnalyticsEnabled()
setVideoAnalyticsEnabled(enabled:Boolean):Boolean |
動画視聴解析系Cookieの制御状態を指定します。(Cookie制御機能の詳細についてはこちら)
※基本的にはこちらで指定した設定が最優先となりますが、
ブラウザの更新ボタンを押す等、画面のリロードを行った場合、
APIで設定した値は破棄され、プレイヤータグのvaで設定された値が有効になります。
■パラメーター
enabled:動画視聴解析系Cookieの制御状態(true: 動画視聴解析系Cookieを有効, false: 動画視聴解析系Cookieを無効)
player.accessor.setVideoAnalyticsEnabled(true); |
・setFunctionalityCookieEnabled()
setFunctionalityCookieEnabled(enabled:Boolean):Boolean |
プレイヤーレジューム機能系Cookieの制御状態を指定します。(Cookie制御機能の詳細についてはこちら)
※基本的にはこちらで指定した設定が最優先となりますが、
ブラウザの更新ボタンを押す等、画面のリロードを行った場合、
APIで設定した値は破棄され、プレイヤータグのfcで設定された値が有効になります。
■パラメーター
enabled:プレイヤーレジューム機能系Cookieの制御状態(true: プレイヤーレジューム機能系Cookieを有効, false: プレイヤーレジューム機能系Cookieを無効)
player.accessor.setFunctionalityCookieEnabled(true); |
■プロパティ
・progressRate
progressRate:Number |
progressイベントの1秒間あたりの発生回数を取得・設定します。(デフォルト値:10)Read/Write
プロパティです。再生中の設定はサポートしていません。次回の再生時から適用されます。
視聴するデバイスの性能などにより、progressイベントが設定した回数通り発生しないことがあります。
player.accessor.progressRate = 10; // 1秒間に10回progressイベントを発生させる var pgrRate = player.accessor.progressRate; |
・state
state:String |
動画プレイヤーの状態を取得します。戻り値は、イベントで定義しているイベントタイプの文字列です。
(change_state, progressを除きます。)
var playerState = player.accessor.state; |
・getMetaId
state:String |
現在表示している動画IDを取得します。
var cc = player.accessor.getMetaId(); |
■イベント
EQPlayerAccessAPI.{addEventListener,removeEventListener} におけるイベントでは、
以下のイベントタイプ(イベント名)を使用してください。
EQPlayerAccessAPI.stateで取得するステータスは、これらのイベントタイプ(イベント名)と
同じ文字列です。※change_state、progressのステータスは取得できません。
・landing
ー プレイヤー設定情報・動画メタ情報の読み込みと初回のバッファリングが完了し、プレイヤーの
準備が完了した。
このイベントの発生は1回のみです。
・change_state
ー プレイヤーの状態が変化しました。
change_stateイベントでプレイヤーの状態を把握する場合は、
イベントリスナーでEQPlayerAccessAPI.stateの値を参照してください。
・buffering
ー バッファリングを開始しました。
HTML5プレイヤーではサポートされません。
一時停止中のシーク操作によるバッファリングではこのイベントは発生しません。
・playing
ー 再生を開始しました。(一時停止からの再開を含む)
・progress
ー 動画を再生しています。(このイベントは動画の再生中に定期的に発生します。発生タイミングは EQPlayerAccessAPI.progressRate の設定で変更可能です。)
・paused
ー 一時停止しました。
・seek_start
ー シークを開始しました。
・complete
ー 動画を完視聴(最後まで視聴)しました。
・fullscreen
ー 全画面表示しました。
・exitFullscreen
ー 全画面表示を解除しました。
■プレイリスト用 メソッド
・autoadvance()
autoadvance(enable:boolean):void |
再生している動画が視聴完了したときにプレイリストの次の動画を表示する。
■パラメータ
enable:true であれば再生している動画が視聴完了したときにプレイリストの次の動画を表示する。
falseであれば次の動画を表示しない。連続再生の設定を上書きする。
・currentIndex()
currentIndex():number |
再生している動画のインデックスを返す。
■戻り値
正常であれば0以上のインデックスを返す。異常であれば-1を返す。
・currentItem()
currentItem(index?:number):object |
再生している動画の情報を返す、またはプレイリスト中の動画を表示する。
■パラメータ
index:(省略可) 0以上のプレイリスト中の動画のインデックス。
■戻り値
フォーマット
{
mid:”mid_text”,
title:”title_text”,
thumbnail:”thumbnail_URL”,
duration:duration_number
}
indexを指定した場合、動画が存在すればその動画の情報を返し、動画を表示する。
存在しない場合indexを指定しない場合と同じとする。
indexを指定しない場合、正常であれば再生中(表示中)の動画の情報を返す。
異常であれば{}を返す。
・first()
first ():void |
プレイリストの最初の動画を表示する。
・indexOf()
indexOf (mid:number):number indexOf (mid:string):number |
プレイリストの最初からmidで検索し、最初に一致した動画のインデックスを返す。
■パラメータ
mid:動画のmid(数値or難読化mid)。
■戻り値
一致するデータがある場合0以上のインデックスを返す。見つからない場合-1を返す。
・last()
last():void |
プレイリストの最後の動画を表示する。
・lastIndex()
lastIndex():number |
プレイリストの最後の動画のインデックスを返す。
■戻り値
正常であればプレイリストの最後の動画のインデックスを0以上の数値で返す。
異常であれば-1を返す。
・next()
next():void |
再生している動画の次の動画を表示する。
再生している動画が最後の動画の場合、最初の動画を表示する。
・nextIndex()
nextIndex():number |
再生している動画の次の動画のインデックスを返す。
■戻り値
再生している動画の次の動画のインデックスを0以上の数値で返す。
再生している動画が最後の動画の場合、プレイリストの最初の動画のインデックスを返す。
・previous()
previous():void |
再生している動画の前の動画を表示する。
再生している動画が最初の動画の場合、最後の動画を表示する。
・previousIndex()
previousIndex():number |
再生している動画の前の動画のインデックスを返す。
■戻り値
再生している動画の前の動画のインデックスを0以上の数値で返す。
再生している動画が最初の動画の場合、プレイリストの最後の動画のインデックスを返す。
・repeat()
repeat(enable:boolean):void |
プレイリスト内の動画を最後まで再生した後、プレイリストの最初の動画を表示する。
■パラメータ
enable:trueのときプレイリストの最初から再生する処理を行う。
falseのときプレイリストの最初から再生する処理を行わない。
・playOnSelect
playOnSelect(enable:boolean):void |
プレイリスト内で新しい動画に切り替わった時、表示後再生するようにする。
■パラメータ
enable:trueのとき表示後再生する処理を行う。
falseのとき表示後再生する処理を行わない。
■プレイリスト用 イベント
・beforeplaylistitem
ー プレイリスト内で新しい動画に切り替わる前に通知。
・playlistitem
ー プレイリスト内で新しい動画に切り替わった後に通知。
参考)プレイリスト
<script type="text/javascript" charset="UTF-8" src="https://ssl-cache.stream.ne.jp/www**/*********/jmc_pub/jmc_swf/player/t3/if.js"></script> <script type="text/javascript"> player = jstream_t3.PlayerFactoryIF.create({ b: "*********.eq.webcdn.stream.ne.jp/www50/eqa922iwao/jmc_pub/jmc_swf/player/", c: "*********", m: "***", v:"https://api03-platform.stream.co.jp/valog/beacon.txt", s:{ fa:"center", ft:"%E3%83%95%E3%83%83%E3%82%BF%E3%83%BC%EF%BC%88%E4%B8%AD%E5%A4%AE%EF%BC%89", hp:380, sn:"f,t,l,g", wp:640, pr:"0.5,0.8,1.5,1.8,2.0", dq:"0", mdq:"0" }, }); player.accessor.addEventlistener(“landing”,{ //初期表示の動画のプレリストインデックスをコンソールに出力 console.log(player.accessor.playlist. currentIndex()); }); </script> |
・error
ー エラーが発生しました。
エラーの内容は、ステータスコードとしてイベントハンドラの第一引数のcodeプロパティで 取得できます。 player.accessor.addEventListener("error", someErrorHandler); function someEventHandler(info) { statusCode = info.code; return; } |