/**************************************************************************** * * LiveAct(R) PRO * Framework Customize * * (c) 2016 CRI Middleware Co., Ltd. * Version : 1.99.674.0 * ****************************************************************************/ "use strict"; // frameworkの読み込み確認コード if(typeof(CriLaFw) === "undefined" || !CriLaFw.isScriptLoaded){ console.log("LiveAct Warning : cri_liveact_framework.js is not loaded"); } // 360度動画において、下記機能をONにするフラグです。 // [拡大 / 縮小] // PC : マウスホイール // スマートフォン : 指2本ピンチアウト / イン // [移動] // PC : SHIFT + マウスドラッグ // スマートフォン : 指2本フリック // // スクロール時に邪魔になる場合は下記1行をコメントアウトしてください。 CriLaFw.swipeZoom = true; // スクロールイン自動再生機能で、再生開始/停止位置を調整する設定です。 // CriLaFw.setScrollInViewMargin(head_margin, tail_margin); // head_margin: 再生開始位置, tail_margin: 再生終了位置(順方向スクロールの場合) // 要素の縦幅との割合を指定します。単位はパーセントです。 // 0: 要素が少しでも画面に表示されていれば再生 // 50: 要素が半分画面に表示されていれば再生(デフォルト:Facebook iOSアプリと同等) // 100: 要素の全体が画面に表示されていれば再生 // それ以上: より画面中央までスクロールする必要があります // 負の値: より画面外にあっても再生されます CriLaFw.setScrollInViewMargin(50, 50); // 大量の動画をページにおいても安定して再生する機能です // ビューポートから近いCriLaFw.setLoadQueueSizeで指定した数だけ動画を読み込みます。 // 既に読み込まれている動画より別の動画の距離が近くなると、既に読まれている動画をアンロードします。 // 下記コメントを外すと有効になります。 // CriLaFw.setLoadQueueSize(3); // GAへイベントを送信 CriLaFw.sendAnalytics = function(player, event_action) { // GAに再生イベントを送信するサンプル if(typeof (gtag) == "function") { var scene_name = player.getCurrentSceneName(); gtag('event', event_action, {'event_category': 'LiveAct(R) PRO', 'event_label': scene_name, 'value':0, 'non_interaction': true }); } // 旧版のGAにイベントを送信するサンプル else if (typeof (ga) == "function") { var scene_name = player.getCurrentSceneName(); ga('send', 'event', 'LiveAct(R) PRO', event_action, scene_name, 0, { 'nonInteraction': 1 }); } else if (typeof (_gaq) == "object" && _gaq !== null) { if(typeof (_gaq.push) == "function"){ var scene_name = player.getCurrentSceneName(); _gaq.push(['_trackEvent', 'LiveAct(R) PRO', event_action, scene_name, 0, true]); } } } // 再生開始のイベントを送付する関数 CriLaFw.playCounted = function (player) { // 累計再生数の取得するサンプル //var count = CriLaFw.getPlayCount(); CriLaFw.sendAnalytics(player, 'la-play'); } // 動画の終端イベントを送付する関数 CriLaFw.endCounted = function (player) { CriLaFw.sendAnalytics(player, 'la-play-end'); } // 動画の自動再生がブラウザなどに拒否された時にイベントを送付する関数 CriLaFw.playRejectedCounted = function (player) { CriLaFw.sendAnalytics(player, 'la-play-rejected'); } // ---------------------------------------- // ユーザカスタムボタンの作成のサンプル関数 // ---------------------------------------- CriLaFw.registerCustomButton = function (player) { // コンストラクタの引数には、ボタンのレイアウト・見た目を整形する // CSSクラス名を指定します。 // この例では、lac-user-button1クラスを指定しています。 // cri_liveact.cssの中の、以下の記述に対応しています。 // - lac-user-button1 // ... ボタンの配置 // - lac-user-button1::before // ... ボタンアイコンの見た目 var sample_button = new CriLaPlayerControlButton("lac-user-button1"); // ボタンの名前を設定します。 // この名前は、player.setControlStyleメソッドで、 // ボタンの表示/非表示を切り替える際に使用します。 var sample_name = "sampleButton"; // ボタンを押したときに実行したい処理(イベントリスナ)を記述してください。 function sample_func (){ console.log("ユーザーカスタムボタンが押されました。"); }; // ボタンにイベントリスナを登録します。 sample_button.addEventListener("down", sample_func); // ボタンをプレーヤに登録します。 player.addComponent(sample_name, sample_button); }; // プレイヤーのセットアップを行います // デフォルトの動作に加えて、何か行いたいときに使用します CriLaFw.setupPlayer = function (player) { // ---------------------------------------- // ユーザカスタムボタンを追加するサンプルコード // 下記コメントアウトを外すと有効化します。 // ---------------------------------------- // CriLaFw.registerCustomButton(player); }; // LiveAct(R) PRO PlayerとDOMの並列読み込み CriLaFw.startParallelLoad(); // 上記1行をコメントアウトすると、 // DOMの読み込みが完了してから、動画の読み込みを行うようになります。 // この場合、data-load-priorityを基準として読み込みが行われます。 // 詳細はマニュアルを参照してください。 // ---------------------------------------- // フレームワークのコードの開始 // ---------------------------------------- CriLaEventDispatcher.ready(CriLaFw.initialize);