4.0 KiB
4.0 KiB
VideoPlayer
機能:複数の動画フォーマット(MP4、HLS .m3u8、DASH .mpd)をサポートする動画プレーヤーコントロール。再生コントロールバーを内蔵しており、再生/一時停止、音量調整、再生速度変更、音声トラック切替、全画面表示などの機能に対応しています。
タイプ:通常コントロール
親クラス:bricks.VBox
初期化パラメータ
| パラメータ名 | 型 | 説明 |
|---|---|---|
url |
String | 動画リソースのURL。.mp4、.m3u8(HLS)、.mpd(DASH)形式をサポート |
autoplay |
Boolean | 自動再生を行うかどうか。デフォルトは false |
例:
new bricks.VideoPlayer({ url: 'https://example.com/video.m3u8', autoplay: true });
主なイベント
| イベント名 | 発生条件 |
|---|---|
domon |
コントロールがDOMにマウントされたときに発生。プレーヤーの初期化に使用されます。 |
domoff |
コントロールがDOMから削除されたときに発生。プレーヤーのリソース解放に使用されます。 |
click |
再生領域がクリックされたときにコントロールバーを表示し、非表示タイマーを開始します。 |
play_ok |
(Iptvで使用)外部から監視可能で、動画が正常に再生開始した際に報告されます。 |
play_failed |
(Iptvで使用)動画の読み込みに失敗または再生できない場合に発生し、報告されます。 |
注意:
play_okおよびplay_failedはVideoPlayerから直接ディスパッチされるわけではなく、サブクラスまたは組み合わせコントロール(例:Iptv)が状態を判定した後に手動で呼び出されます。
Iptv
機能:IPTV用途に特化した再生コントロール。チャンネル情報を動的に取得し、自動的に VideoPlayer を読み込んで再生します。また、再生成功/失敗時にサーバーへステータスを報告する機能も備えています。
タイプ:コンテナコントロール
親クラス:bricks.VBox
初期化パラメータ
| パラメータ名 | 型 | 説明 |
|---|---|---|
iptv_data_url |
String | チャンネルデータを取得するAPIのURL。url、tv_name、id などを含むJSONデータを返す必要があります。 |
playok_url |
String | 再生成功時に報告を行うAPIのアドレス(任意) |
playfailed_url |
String | 再生失敗時に報告を行うAPIのアドレス(任意) |
例:
new bricks.Iptv({ iptv_data_url: '/api/iptv/channel', playok_url: '/api/report/playok', playfailed_url: '/api/report/playfailed' });
主なイベント
| イベント名 | 発生条件 |
|---|---|
play_ok |
内部の VideoPlayer が正常に再生を開始したとき、playok_url に対してGETリクエストを送信して報告を行います。 |
play_failed |
VideoPlayer の再生に失敗したとき、playfailed_url に対してGETリクエストを送信して報告を行います。 |
説明:これらのイベントは、
VideoPlayerの低レベルな動作(メタデータの正常読み込みなど)を監視することで間接的にトリガーされます。現在は業務ロジックによる判断に依存しています。
メソッド説明
setValue(data):現在再生中のチャンネルデータを更新します(例:チャンネル切り替え)。タイトルと動画ソースも同時に更新されます。- パラメータ
data:url、tv_name、idを含むオブジェクト - 例:
iptvWidget.setValue({ id: "cctv1", tv_name: "CCTV-1 総合", url: "https://live.example.com/cctv1.m3u8" });
- パラメータ