すべてのプロダクト
Search
ドキュメントセンター

ApsaraVideo VOD:API リファレンス

最終更新日:Sep 11, 2026

AliPlayerKit は、プレーヤーの動作をコントロールするための豊富な API セットを提供します。このドキュメントでは、iOS 上の AliPlayerKit の主要な API について詳しく説明します。

説明

AliPlayerKit には、クラスやメソッドなどのすべてのコア API に関する詳細なコードコメントが含まれています。Xcode では、クイックヘルプ (Option + クリック) を使用してこれらのコメントを表示し、開発を加速できます。これにより、API は AI プログラミングツールにとってもよりフレンドリになります。

コアクラスの概要

クラス名

タイプ

責務

ライフサイクル

AliPlayerKit

グローバルエントリーポイント

SDK の初期化、グローバル構成、ファクトリ/プリローダー管理

アプリのライフサイクル

AliPlayerView

ビューコンテナ

プレーヤービュー管理、スロットシステムのホスト

UIView と同じ

AliPlayerController

再生コントローラー

再生コントロール、状態管理、ストラテジー連携

`destroy` によって手動で解放

AliPlayerModel

データモデル

ビデオソースと再生パラメーターをカプセル化

値オブジェクト、独立したライフサイクルなし

PlayerStateStore

状態ストア

プレーヤーの現在状態への読み取り専用アクセス

コントローラーに従う

PlayerViewState

ビュー状態

UI レイヤーの状態 (フルスクリーン、コントロールバーの表示/非表示) への読み取り専用アクセス

AliPlayerView に従う

SlotManager

スロットマネージャー

スロット登録、表示/非表示コントロール、要素レベルの管理

AliPlayerView に従う

StrategyManager

ストラテジーマネージャー

ストラテジーの登録、開始、停止、リセット

コントローラーに従う

StrategyRegistry

ストラテジーレジストリ

グローバルデフォルトストラテジーファクトリ管理 (シングルトン)

アプリのライフサイクル

LogHub

ログセンター

ログ出力とオブザーバー管理 (シングルトン)

アプリのライフサイクル

LocaleManager

ローカライズ管理

多言語サポートとプロバイダーインジェクション (シングルトン)

アプリのライフサイクル

AliPlayerKit (グローバル API)

AliPlayerKit は、SDK の初期化と構成を行うためのグローバル設定クラスです。このクラスはインスタンス化できません。すべてのメソッドはクラスメソッドです。

初期化メソッド

メソッド

パラメーター

戻り値

説明

+ (void)setup

-

void

SDK を初期化します。`dispatch_once` がべき等性を保証します。アプリの起動時にこのメソッドを呼び出してください。

+ (BOOL)isInitialized

-

BOOL

SDK が初期化されているかどうかを確認します。

+ (void)setOnGlobalInitBlock:

OnGlobalInitBlock block

void

グローバル初期化の完了後にカスタム構成コールバックを設定します。このメソッドは `setup` の前に呼び出してください。

ステータス照会とバージョン情報

メソッド

パラメーター

戻り値

説明

+ (NSString *)getPlayerKitVersion

-

NSString *

PlayerKit のバージョン番号を取得します。

+ (NSString *)getSdkVersion

-

NSString *

基盤となる AliPlayer SDK のバージョン番号を取得します。

デバッグ構成

メソッド

パラメーター

戻り値

説明

+ (void)setDebugModeEnabled:

BOOL enabled

void

デバッグモードを有効または無効にします。

+ (BOOL)isDebugModeEnabled

-

BOOL

デバッグモードが有効かどうかを確認します。

+ (void)setLogPanelEnabled:

BOOL enabled

void

ログパネルを有効または無効にします。この機能はデバッグ専用です。

+ (BOOL)isLogPanelEnabled

-

BOOL

ログパネルが有効かどうかを確認します。

ログ構成

メソッド

パラメーター

戻り値

説明

+ (void)setLogLevel:

LogLevel level

void

ログレベルを設定します。このレベル未満のログは無視されます。デフォルトのレベルは Info です。

+ (LogLevel)logLevel

-

LogLevel

現在のログレベルを取得します。

+ (void)enableConsoleLog:

BOOL enable

void

コンソールログ出力を有効または無効にします。

+ (BOOL)isConsoleLogEnabled

-

BOOL

コンソールログ出力が有効かどうかを確認します。

プレーヤーファクトリ

メソッド

パラメーター

説明

+ (void)setPlayerFactory:

id<PlayerFactory> factory

カスタムプレーヤーファクトリを設定します。`nil` を渡すと、デフォルトのファクトリに戻ります。

+ (id<PlayerFactory>)playerFactory

-

現在のプレーヤーファクトリを取得します。

プリロード

メソッド

パラメーター

説明

+ (void)setPreloader:

id<PlayerPreloader> preloader

カスタムプリローダーを設定します。`nil` を渡すと、デフォルトのプリローダーに戻ります。

+ (id<PlayerPreloader>)preloader

-

現在のプリローダーを取得します。

キャッシュ管理

メソッド

説明

+ (void)clearCaches

プレーヤーのローカルメディアキャッシュをクリアします。このメソッドは `setup` の後に呼び出してください。

国際化

メソッド

パラメーター

説明

+ (void)setLanguageCode:

NSString * languageCode

言語を手動で指定します。サポートされている言語は `zh-Hans` と `en` です。

+ (void)setLocaleProvider:

id<LocaleProvider> provider

カスタムローカライズプロバイダーを注入します。これは最も高い優先度を持ちます。

+ (void)resetLocaleToSystemLanguage

-

言語をシステム言語に従うようにリセットします。

+ (NSString *)currentLanguageCode

-

現在の言語コードを取得します。

AliPlayerView (ビュー API)

AliPlayerView はプレーヤーのビューコンテナです。コントローラーのバインディングとスロットシステムを管理します。レンダリングビューは、内部の PlayerSurfaceSlot によって作成および管理されます。

プロパティ

プロパティ

タイプ

説明

controller

AliPlayerController *

関連付けられたプレーヤーコントローラー。

viewState

PlayerViewState *

フルスクリーンやコントロールバーの表示/非表示など、ビデオ間で保持される UI 状態。

slotManager

SlotManager *

スロットマネージャー。アタッチする前に事前構成できます。

fullscreenTransition

id<FullscreenTransition>

フルスクリーン遷移アニメーションの実装。デフォルトでは、独立したウィンドウ回転ソリューションが使用されます。

onBackPressed

void (^)(void)

戻るボタンイベントのコールバック。

説明

`onBackPressed` コールバックは、非フルスクリーンモードでトリガーされます。フルスクリーンモードでは、プレーヤーはフルスクリーンを終了することで戻る操作を自動的に処理します。このコールバックが設定されていない場合、プレーヤーはレスポンダーチェーンを介して `pop` や `dismiss` などのデフォルトのナビゲーション動作を試みます。

コントローラーバインディング

メソッド

パラメーター

説明

- (void)attach:

AliPlayerController * controller

コントローラーをバインドし、スロットシステムをアクティブ化します。

- (void)detach

-

コントローラーを破棄せずにデタッチします。

呼び出しのタイミング:

  • attach::コントローラーが configure: を呼び出した後にコンポーネントがアタッチされます。その後、slotManager の構成に基づいてスロットシステムが自動的に構築されます。

  • detach:ビューが破棄される直前、または別のコントローラーをバインドする必要がある場合に、このメソッドを呼び出します。

AliPlayerController (コントローラー API)

AliPlayerController は再生コントローラーです。再生操作の統一されたエントリーポイントとして機能し、プレーヤーの作成、構成、およびコントロールのロジックをカプセル化します。

プロパティ

プロパティ

タイプ

説明

playerModel

AliPlayerModel *

現在の再生構成モデル。

playerState

PlayerState

現在のプレーヤー状態。

currentPosition

NSInteger

現在の再生位置 (ミリ秒)。

duration

NSInteger

ビデオの総持続時間 (ミリ秒)。

stateStore

PlayerStateStore *

状態ストア。

strategyManager

StrategyManager *

ストラテジーマネージャー。

lifecycleStrategy

id<PlayerLifecycleStrategy>

現在のライフサイクルストラテジー。

autoLifecycleManagement

BOOL

フォアグラウンドとバックグラウンドのライフサイクルを自動的に管理するかどうかを指定します。デフォルト:YES。

controlsVisibilityLocked

BOOL

コントロールバーの表示/非表示のロックフラグ。

説明

controlsVisibilityLocked が YES に設定されている場合、setControlsVisible:NO リクエストは無視され、コントロールバーは表示されたままになります。これは、プログレスバーのドラッグなど、コントロールバーを常に表示する必要があるインタラクティブなシナリオで使用されます。

コンストラクター

メソッド

パラメーター

説明

- (instancetype)init

-

デフォルトのライフサイクルストラテジーでコントローラーを作成します。

- (instancetype)initWithLifecycleStrategy:

id<PlayerLifecycleStrategy> strategy

カスタムライフサイクルストラテジーでコントローラーを作成します。

構成と再生コントロール

メソッド

パラメーター

説明

- (void)configure:

AliPlayerModel * model

プレーヤーを構成し、再生を準備します。

- (void)play

-

再生を開始または再開します。

- (void)pause

-

再生を一時停止します。

- (void)toggle

-

再生と一時停止を切り替えます。

- (void)replay

-

最初から再生を再開します。

- (void)stop

-

再生を停止します。

- (void)seekTo:

NSInteger position (ミリ秒)

特定の位置にシークします。

- (void)setRate:

float rate

再生速度を設定します。1.0 が通常速度です。

- (void)setLoop:

BOOL loop

ループ再生を設定します。

- (void)setMuted:

BOOL muted

音声をミュートするかどうかを設定します。

- (void)setMirrorMode:

MirrorMode mirrorMode

ミラーモードを設定します。

- (void)setScaleMode:

ScaleMode scaleMode

スケーリングモードを設定します。

- (void)setRotateMode:

RotateMode rotateMode

回転角度を設定します。

- (void)selectTrack:

TrackQuality * quality

ビデオ品質を切り替えます。

- (void)snapshot

-

現在のビデオフレームのスナップショットを撮影します。

UI コントロール

メソッド

パラメーター

戻り値

説明

- (void)setControlsVisible:

BOOL visible

void

コントロールバーの表示/非表示を設定します。

- (void)setFullscreen:

BOOL fullscreen

void

アニメーション付きでフルスクリーンモードを設定します。

- (void)setFullscreen:animated:

BOOL fullscreen, BOOL animated

void

アニメーションの有無を選択してフルスクリーンモードを設定します。

ライフサイクルメソッド

メソッド

パラメーター

戻り値

説明

- (void)onResume

-

void

再生を再開します。バックグラウンドから復帰する際に呼び出します。

- (void)onPause

-

void

再生を一時停止します。バックグラウンドに移行する際に呼び出します。

- (void)destroy

-

void

プレーヤーを破棄し、すべてのリソースを解放します。

通知デリゲート

メソッド

パラメーター

戻り値

説明

- (void)addNotificationDelegate:

id<PlayerNotificationDelegate> delegate

void

通知デリゲートを追加します。弱参照によって保持されます。

- (void)removeNotificationDelegate:

id<PlayerNotificationDelegate> delegate

void

通知デリゲートを削除します。

AliPlayerModel (モデル API)

AliPlayerModel はプレーヤーの構成モデルです。再生に必要なすべての構成情報をカプセル化します。

プロパティ

プロパティ

タイプ

デフォルト値

説明

videoSource

VideoSource *

-

ビデオデータソース。これは必須です。

sceneType

SceneType

SceneTypeVOD

再生シナリオタイプ。

coverUrl

NSString *

nil

サムネイル URL。

videoTitle

NSString *

nil

ビデオタイトル。

autoPlay

BOOL

YES

自動再生を有効にするかどうかを指定します。

traceId

NSString *

nil

再生品質モニタリングのためのトラッキング識別子。

startTime

NSInteger

0

開始位置 (ミリ秒)。

hardwareDecode

BOOL

YES

ハードウェアデコードを有効にするかどうかを指定します。

allowScreenSleep

BOOL

NO

画面のスリープを許可するかどうかを指定します。

disableScreenshot

BOOL

NO

スクリーンショットと画面録画を無効にするかどうかを指定します。

onPlayerConfigBlock

void (^)(id<MediaPlayer>)

nil

インスタンスレベルのカスタム構成コールバック。

作成メソッド

メソッド

パラメーター

戻り値

説明

- (instancetype)initWithVideoSource:

VideoSource * videoSource

AliPlayerModel *

ビデオソースからモデルを作成します。これは指定イニシャライザです。

通知システム

AliPlayerKit は、コンポーネント間のイベント通信に Dispatcher + Delegate パターンを使用します。各 AliPlayerController は独立した Dispatcher インスタンスを持ち、これにより異なるプレーヤーインスタンスからのイベントが互いに干渉するのを防ぎます。すべてのコールバックはメインスレッドでディスパッチされます。

PlayerNotificationDelegate (プレーヤー通知デリゲート)

プレーヤーの状態変化コールバックのためのプロトコルです。すべてのメソッドは @optional です。

再生状態

メソッド

パラメーター

説明

- playerDidChangeState:

PlayerState state

プレーヤーの状態が変化します。

- playerDidPreparedWithDuration:

NSInteger duration (ミリ秒)

プレーヤーの準備が完了し、再生可能な状態になります。

- playerDidRenderFirstFrame

-

最初のフレームがレンダリングされます。

- playerDidCompletion

-

再生が完了します。

再生進捗

メソッド

パラメーター

説明

- playerDidUpdateCurrentPosition:duration:bufferedPosition:

position, duration, bufferedPosition (ミリ秒)

再生進捗を定期的に報告します。

エラーとスナップショット

メソッド

パラメーター

説明

- playerDidEncounterError:

NSError * error

再生エラーが発生しました。

- playerDidCompleteSnapshot:

UIImage *

スナップショットが撮影されます。

ビデオ情報

メソッド

パラメーター

説明

- playerDidChangeVideoWidth:height:

NSInteger width, height

ビデオのディメンションが変化します。

UI 状態

メソッド

パラメーター

説明

- playerDidChangeFullscreen:

BOOL isFullscreen

フルスクリーン状態が変化します。

- playerDidChangeControlsVisible:

BOOL visible

コントロールバーの表示/非表示が変化します。

ロード状態

メソッド

パラメーター

説明

- playerDidLoadingBegin

-

バッファリングが開始します。

- playerDidLoadingEnd

-

バッファリングが終了します。

- playerDidUpdateLoadingProgress:

float progress (0-100)

バッファリングの進捗が更新されます。

表示モード

メソッド

パラメーター

説明

- playerDidChangeMirrorMode:

MirrorMode mirrorMode

ミラーモードが変化します。

- playerDidChangeScaleMode:

ScaleMode scaleMode

スケーリングモードが変化します。

- playerDidChangeRotateMode:

RotateMode rotateMode

回転モードが変化します。

トラック

メソッド

パラメーター

説明

- playerDidTrackReady:

NSArray<TrackQuality *> * tracks

利用可能なトラックに関する情報が準備完了になります。

- playerDidTrackChanged:

TrackQuality * quality

トラックが切り替わります。

GestureNotificationDelegate (ジェスチャー通知デリゲート)

ジェスチャーインタラクションイベントのコールバックのためのプロトコルです。すべてのメソッドは @optional です。イベントは GestureNotificationDispatcher によってマルチキャストされます。

シングルタップ

メソッド

パラメーター

説明

- gestureDidSingleTap

-

シングルタップジェスチャーがトリガーされます。これは通常、コントロールバーの表示/非表示を切り替えるために使用されます。

長押し (再生速度)

メソッド

パラメーター

説明

- gestureDidBeginLongPress

-

長押しが開始されます。これにより、早送り再生がアクティブになります。

- gestureDidEndLongPress

-

長押しが終了します。これにより、通常の再生速度に戻ります。

輝度 (左垂直ドラッグ)

メソッド

パラメーター

説明

- gestureDidUpdateBrightnessWithPercent:

CGFloat currentPercent (0.0 から 1.0)

輝度が調整中です。

- gestureDidEndBrightnessAdjust

-

輝度調整が終了します。

音量 (右垂直ドラッグ)

メソッド

パラメーター

説明

- gestureDidUpdateVolumeWithPercent:

CGFloat currentPercent (0.0 から 1.0)

音量が調整中です。

- gestureDidEndVolumeAdjust

-

音量調整が終了します。

SlotActionNotificationDelegate (スロットアクション通知デリゲート)

スロット間のアクションイベントのための通知プロトコルです。スロット間の直接的なメソッド呼び出しを分離するために使用されます。すべてのメソッドは @optional であり、メインスレッドに非同期でディスパッチされます。

メソッド

パラメーター

説明

- slotDidRequestToggleSettingMenu

-

設定メニューの表示/非表示の切り替えをリクエストします。これは通常、`TopBarSlot` によってトリガーされます。

- slotDidRequestShowSpeedPanel

-

再生速度選択パネルの表示をリクエストします。これは通常、`BottomBarSlot` によってトリガーされます。

- slotDidRequestShowQualityPanel

-

ビデオ品質選択パネルの表示をリクエストします。これは通常、`BottomBarSlot` によってトリガーされます。

プレーヤープロトコル

AliPlayerKit は、プロトコルを通じてプレーヤーのコア機能と動作制約を定義します。

MediaPlayer (プレーヤープロトコル)

このプロトコルは、プレーヤーのコア操作インターフェイスを定義します。PlayerFactory を使用してインスタンスを作成できます。

プロパティ

プロパティ

タイプ

説明

playerId

NSString *

プレーヤーの一意の識別子。

state

PlayerState

現在の再生状態。

currentPosition

NSInteger

現在の位置 (ミリ秒)。

duration

NSInteger

総持続時間 (ミリ秒)。

speed

float

現在の再生速度。

loop

BOOL

ループ再生を設定します。

muted

BOOL

音声がミュートされているかどうかを指定します。

mirrorMode

MirrorMode

現在のミラーモード。

scaleMode

ScaleMode

現在のスケーリングモード。

rotateMode

RotateMode

現在の回転角度。

stateStore

PlayerStateStore *

状態ストア。

再生コントロール

メソッド

パラメーター

説明

- setDataSource:

AliPlayerModel * model

ビデオデータソースを設定します。

- prepare

-

プレーヤーリソースを非同期で準備します。

- start

-

再生を開始します。

- pause

-

再生を一時停止します。

- toggle

-

再生と一時停止を切り替えます。

- replay

-

最初から再生を再開します。

- seekTo:

NSInteger position (ミリ秒)

特定の位置にシークします。

- stop

-

停止。

- destroy

-

プレーヤーを破棄し、リソースを解放します。

再生設定

メソッド

パラメーター

説明

- setSpeed:

float speed

再生速度を設定します (0.5 から 2.0)。

- setLoop:

BOOL loop

ループ再生を設定します。

- setMuted:

BOOL muted

音声をミュートします。

- setMirrorMode:

MirrorMode mode

ミラーモードを設定します。

- setScaleMode:

ScaleMode mode

スケーリングモードを設定します。

- setRotateMode:

RotateMode mode

回転角度を設定します。

- selectTrack:

TrackQuality * quality

ビデオ品質を切り替えます。

- snapshot

-

現在のフレームのスナップショットを撮影します。

PlayerLifecycleStrategy (ライフサイクルストラテジープロトコル)

このプロトコルは、プレーヤーインスタンスの取得とリサイクルの動作を定義します。

メソッド

メソッド

パラメーター

戻り値

説明

- setupWithFactory:

id<PlayerFactory> factory

void

プレーヤーファクトリを注入します。これは最初に呼び出す必要があります。

- acquirePlayer

-

id<MediaPlayer>

プレーヤーインスタンスを取得します。

- recyclePlayer:force:

player, BOOL force

void

プレーヤーインスタンスをリサイクルします。

- clear

-

void

キャッシュされたすべてのインスタンスを解放します。

- preloadWithCount: (@optional)

NSInteger count

void

指定された数のインスタンスをプールにプリロードします。

- acquirePlayerWithUniqueId: (@optional)

NSString * uniqueId

id<MediaPlayer>

ID でプレーヤーを取得します。これは IdScoped ストラテジーに固有です。

- recyclePlayer:uniqueId:force: (@optional)

player, uniqueId, force

void

ID でプレーヤーをリサイクルします。これは IdScoped ストラテジーに固有です。

組み込みストラテジー実装

ストラテジークラス

動作

シナリオ

DefaultLifecycleStrategy

毎回新しいインスタンスを作成し、リサイクル時に破棄します。

通常のビデオ再生。

SingletonLifecycleStrategy

グローバルな一意のインスタンス (sharedInstance シングルトン)

リスト再生、メモリに敏感なシナリオ。

ReusePoolLifecycleStrategy

LIFO 再利用プール。

ショートビデオリスト。

IdScopedPoolLifecycleStrategy

ID バインディング + LRU エビクション。

ビデオプリロード。

FullscreenTransition (フルスクリーン遷移プロトコル)

このプロトコルは、フルスクリーンモードへの移行と終了の遷移動作を定義します。

メソッド / プロパティ

パラメーター

説明

- enterFullscreenWithPlayerView:animated:completion:

playerView, animated, completion

フルスクリーンに移行します。

- exitFullscreenWithPlayerView:animated:completion:

playerView, animated, completion

フルスクリーンを終了します。

isInFullscreen (readonly)

-

プレーヤーがフルスクリーンモードであるかどうかを指定します。

デフォルト実装の DefaultFullscreenTransition は、独立したウィンドウ回転ソリューションを使用します。playerView.fullscreenTransition を介してカスタム実装を注入できます。

スロットシステム

スロットシステムは、合成可能で交換可能な UI レイヤー管理メカニズムを提供します。

SlotProtocol (スロットプロトコル)

スロットのライフサイクルコールバックを定義できます。

メソッド

パラメーター

説明

- onAttach:

id<SlotHost> host

スロットがホストにアタッチされます。

- onDetach

-

スロットがホストからデタッチされます。

- onBindData:

AliPlayerModel * model

再生データがバインドされます。

- onUnbindData

-

再生データがアンバインドされます。

BaseSlot (ベーススロットクラス)

すべての組み込みスロットの抽象基底クラス (UIView のサブクラス) で、SlotProtocol プロトコルを実装し、共通の機能を提供します。

プロパティ

プロパティ

タイプ

説明

host

id<SlotHost>

スロットがアタッチされているホスト。

slotType

SlotType

スロットタイプ識別子。SlotHostLayout によって注入されます。

safeAreaEdges

SlotSafeAreaEdge

回避するセーフエリアエッジ。デフォルト:すべて。

deferContentCreation

BOOL

遅延コンテンツ作成のスイッチ。

contentReady

BOOL

コンテンツの準備ができているかどうかを指定します。

touchPassthrough

BOOL

タッチパススルーのスイッチ。デフォルト:YES。

メソッド

メソッド

タイプ

説明

- setupContentView

-

サブクラスはこのメソッドをオーバーライドして、カスタム UI 要素を追加します。

- show / - hide

-

スロットを表示または非表示にします。

- showWithAnimation: / - hideWithAnimation:

BOOL animated

アニメーション付きでスロットを表示または非表示にします。

- isShowing

-

現在表示されているかどうかを示します。

- dismiss

-

ホストを介してスロットを正しく削除します。

- onRegisterElements

-

サブクラスはこのメソッドをオーバーライドして、デフォルトで表示される要素のビットマスクを宣言します。

- isElementVisible:

NSUInteger element

特定の要素の最終的な表示状態を照会します。

- currentSceneType

-

現在のシーンタイプを安全に読み取ります。

- ensureContentReady

-

遅延コンテンツの準備ができていることを確認します。

SlotManager (スロットマネージャー)

SlotManager は、スロットシステムの統一された管理エントリーポイントです。AliPlayerView.slotManager を使用して取得できます。

登録メソッド

メソッド

パラメーター

説明

- registerSlotType:provider:

type, SlotProvider block

スロットプロバイダーを登録または置き換えます。

- unregisterSlotType:

SlotType type

スロットプロバイダーを登録解除します。

- isRegistered:

SlotType type

登録されているかどうかを確認します。

- registerCustomSlotType:provider:

CustomSlotType * type, provider

カスタムスロットを登録します。

- unregisterCustomSlotType:

CustomSlotType * type

カスタムスロットを登録解除します。

スロットの表示/非表示

メソッド

パラメーター

説明

- hideSlot:

SlotType type

スロット全体を非表示にします。

- showSlot:

SlotType type

非表示のスロットを表示します。

- isSlotHidden:

SlotType type

スロットが非表示かどうかを確認します。

要素レベルの表示/非表示

メソッド

パラメーター

説明

- hideElements:forSlot:

NSUInteger mask, SlotType type

ビットマスクを使用して、スロット内の特定の要素を非表示にします。

- showElements:forSlot:

NSUInteger mask, SlotType type

以前に非表示にされた要素を表示します。

- setHiddenElementMask:forSlot:

NSUInteger mask, SlotType type

非表示要素マスクを置き換えます。これにより、既存のマスクが上書きされます。

- setAllHiddenElementMasks:

NSDictionary * config

すべての非表示要素を一括で設定します。

- clearAllElementMasks

-

すべての要素の表示/非表示構成をクリアします。

ランタイムアクセス

メソッド

パラメーター

戻り値

説明

- slotViewForType:

SlotType type

UIView<SlotProtocol> *

アタッチされたスロットビューを取得します。

- rebuildSlots

-

void

すべてのスロットを再構築します。

- clearAll

-

void

初期状態にリセットします。

SlotType (スロットタイプ定数)

定数

値

説明

SlotTypePlayerSurface

10

プレーヤーレンダリングビューレイヤー (最下層)。

SlotTypeGestureControl

20

ジェスチャー認識およびコントロールレイヤー。

SlotTypeLandscapeHint

30

横向きヒントレイヤー。

SlotTypeCover

40

ビデオサムネイルレイヤー。

SlotTypeCenterDisplay

50

中央表示レイヤー (再生速度、輝度、音量)。

SlotTypePlayState

60

再生状態インジケーターレイヤー (ロード中、エラー、完了)。

SlotTypeLogPanel

70

ログパネルレイヤー。

SlotTypeTopBar

80

上部ナビゲーションバーレイヤー。

SlotTypeBottomBar

90

下部コントロールバーレイヤー。

SlotTypeSettingMenu

100

設定メニューレイヤー。

SlotTypeOptionPanel

110

オプションパネルレイヤー (再生速度、品質)。

CustomSlotType (カスタムスロットタイプ)

これは、組み込みスロット間にカスタムスロットを挿入するために使用されます。組み込みの SlotType 列挙値は 10 の間隔 (10, 20, ..., 110) で配置されており、CustomSlotType は order フィールドを使用して挿入位置を指定します。

プロパティ / メソッド

説明

key

登録、検索、および等価性チェックに使用される一意の識別子。

order

スロットの Z 軸上の位置を決定するソート値。値が小さいほど下に配置されます。

+ typeWithKey:order:

カスタムスロットタイプインスタンスを作成します。

// TopBar (80) と BottomBar (90) の間にカスタムスロットを挿入
CustomSlotType *type = [CustomSlotType typeWithKey:@"myCustomSlot" order:85];
[playerView.slotManager registerCustomSlotType:type provider:^UIView<SlotProtocol> *(UIView *parentView) {
    return [[MyCustomSlotView alloc] initWithFrame:parentView.bounds];
}];

SlotElements (スロット要素ビットマスク)

SlotManager の hideElements:forSlot: および showElements:forSlot: メソッドを使用して、スロット内の個々の UI 要素に対して詳細な表示/非表示コントロールを実装できます。

トップバー要素 (TopBarElement)

定数

ビット

説明

TopBarElementBack

1 << 0

戻るボタン。

TopBarElementTitle

1 << 1

タイトルテキスト。

TopBarElementDownload

1 << 2

ダウンロードボタン。

TopBarElementSnapshot

1 << 3

スナップショットボタン。

TopBarElementSettings

1 << 4

設定ボタン。

ボトムバー要素 (BottomBarElement)

定数

ビット

説明

BottomBarElementPlay

1 << 0

再生/一時停止ボタン。

BottomBarElementProgress

1 << 1

プログレスバー。

BottomBarElementRefresh

1 << 2

更新ボタン。

BottomBarElementSpeed

1 << 3

再生速度ボタン。横向きレイアウトでのみ表示されます。

設定メニュー要素 (SettingMenuElement)

定数

ビット

説明

SettingMenuElementSpeed

1 << 0

再生速度オプション。

SettingMenuElementTrackInfo

1 << 1

品質情報。

SettingMenuElementLoop

1 << 2

ループ再生。

SettingMenuElementMute

1 << 3

ミュート。

SettingMenuElementMirrorMode

1 << 4

ミラーモード。

SettingMenuElementRotateMode

1 << 5

回転モード。

SettingMenuElementScaleMode

1 << 6

スケーリングモード。

SettingMenuElementSubtitle

1 << 7

字幕。

中央表示レイヤー要素 (CenterDisplayElement)

定数

ビット

説明

CenterDisplayElementVolume

1 << 0

音量インジケーター。

CenterDisplayElementBrightness

1 << 1

輝度インジケーター。

CenterDisplayElementSpeed

1 << 2

再生速度インジケーター。

ジェスチャーコントロール要素 (GestureElement)

説明

これらの定数は、UI 要素の表示/非表示ではなく、ジェスチャーインタラクションの有効化と無効化を制御します。ジェスチャービットが非表示に設定されると、対応するジェスチャーは無効になります。

定数

ビット

説明

GestureElementSingleTap

1 << 0

シングルタップジェスチャー。

GestureElementDoubleTap

1 << 1

ダブルタップジェスチャー。

GestureElementLongPress

1 << 2

長押しジェスチャー。

GestureElementHorizontalDrag

1 << 3

水平ドラッグ (進捗)。

GestureElementLeftVerticalDrag

1 << 4

左垂直ドラッグ (輝度)。

GestureElementRightVerticalDrag

1 << 5

右垂直ドラッグ (音量)。

再生状態レイヤー要素 (PlayStateElement)

定数

ビット

説明

PlayStateElementErrorMessage

1 << 0

エラーメッセージ。

PlayStateElementLoadingMessage

1 << 1

ロード中メッセージ。

状態ストア

PlayerStateStore

PlayerStateStore は、現在の再生状態の読み取り専用スナップショットを保持します。AliPlayerController.stateStore を通じて取得できます。

プロパティ

タイプ

デフォルト値

説明

playState

PlayerState

PlayerStateIdle

現在の再生状態。

duration

NSInteger

0

総持続時間 (ミリ秒)。

currentPosition

NSInteger

0

現在の位置 (ミリ秒)。

bufferedPosition

NSInteger

0

バッファリングされた位置 (ミリ秒)。

speed

float

1.0

現在の再生速度。

loop

BOOL

NO

ループ再生を設定します。

muted

BOOL

NO

音声がミュートされているかどうかを指定します。

mirrorMode

MirrorMode

MirrorModeNone

ミラーモード。

scaleMode

ScaleMode

ScaleModeCenterCrop

スケーリングモード。

rotateMode

RotateMode

RotateModeDegree0

回転角度。

videoWidth

NSInteger

0

ビデオの元の幅。

videoHeight

NSInteger

0

ビデオの元の高さ。

trackQualityList

NSArray<TrackQuality *> *

nil

利用可能なビデオ品質のリスト。

selectedTrackQuality

TrackQuality *

nil

現在選択されているビデオ品質。

PlayerViewState

PlayerViewState は、UI レイヤーに関連する永続的な状態を保持します。AliPlayerView.viewState を通じて取得できます。この状態はビデオ切り替え間で保持され、状態更新には自動的な重複排除が含まれます。

プロパティ / メソッド

タイプ

デフォルト値

説明

fullscreen

BOOL (readonly)

NO

プレーヤーがフルスクリーンモードであるかどうかを指定します。

controlsVisible

BOOL (readonly)

NO

コントロールバーが表示されているかどうかを指定します。

- reset

-

-

すべての状態をデフォルト値にリセットします。

- updateFullscreen:

BOOL fullscreen

-

フルスクリーン状態を更新します。

- updateControlsVisible:

BOOL controlsVisible

-

コントロールバーの表示/非表示を更新します。

ビデオソース

VideoSource (ビデオソースモデル)

プロパティ

タイプ

説明

sourceType

VideoSourceType

ビデオソースタイプ。

uniqueId

NSString *

一意の識別子。VidAuth/VidSts の場合は `vid`、URL の場合は `url` を返します。

url

NSString *

ビデオ URL。URL タイプの場合に有効です。

vid

NSString *

ビデオ ID。VidAuth/VidSts の場合に有効です。

playAuth

NSString *

再生認証情報。VidAuth の場合に有効です。

accessKeyId

NSString *

STS AccessKeyId。

accessKeySecret

NSString *

STS AccessKeySecret。

securityToken

NSString *

STS SecurityToken。

region

NSString *

リージョン ID。

ファクトリメソッド

メソッド

パラメーター

戻り値

説明

+ vidAuthSourceWithVid:playAuth:

vid, playAuth

VideoSource *

VidAuth ビデオソースを作成します。推奨されます。

+ vidStsSourceWithVid:accessKeyId:accessKeySecret:securityToken:region:

vid, keyId, secret, token, region

VideoSource *

VidSts ビデオソースを作成します。

+ urlSourceWithUrl:

url

VideoSource *

URL ビデオソースを作成します。

- (BOOL)isValid

-

BOOL

構成を検証します。

VideoSourceType (ビデオソースタイプ)

定数

値

説明

VideoSourceTypeVidAuth

0

VID + PlayAuth 再生認証情報。推奨されます。

VideoSourceTypeVidSts

1

VID + STS 一時認証情報。

VideoSourceTypeUrl

2

直接 URL 再生。

ストラテジーシステム

ストラテジーシステムは、再生動作を拡張するためのプラグ可能なメカニズムを提供します。ストラテジー名はグローバルに一意である必要があります。

StrategyProtocol (ストラテジープロトコル)

このプロトコルは、ストラテジーのライフサイクル契約を定義します。ストラテジー名はグローバルに一意である必要があります。

メソッド

パラメーター

説明

- strategyName (@required)

-

ストラテジーの一意の識別子名。

- strategyDidStart: (@required)

StrategyContext * context

ストラテジーが開始され、プレーヤーコンテキストにバインドされます。

- strategyDidStop (@required)

-

ストラテジーが停止し、コンテキストからアンバインドされます。

- strategyDidReset: (@required)

StrategyContext * context

ストラテジーがリセットされます。これはビデオソースが切り替えられたときに呼び出されます。

StrategyContext (ストラテジー コンテキスト)

読み取り専用のプレーヤー環境コンテキストで、ストラテジーに提供され、ストラテジーの開始時に StrategyManager によって作成および渡されます。

プロパティ

タイプ

説明

controller

AliPlayerController *

関連付けられたプレーヤーコントローラー。

playerModel

AliPlayerModel *

現在の再生構成モデル。

stateStore

PlayerStateStore *

プレーヤー状態ストア。

重要

このオブジェクトは strategyDidStop の後に無効になり、引き続き使用してはいけません。

BaseStrategy (ベースストラテジークラス)

ストラテジーの抽象基底クラスで、StrategyProtocol と PlayerNotificationDelegate を実装し、プレーヤーイベントのサブスクリプションとアンサブスクリプションを自動的に処理します。

プロパティ / メソッド

説明

context (readonly, nullable)

現在のストラテジー コンテキスト。start と stop の間でのみ有効です。

- resetInternalState

サブクラスが内部状態(カウンターやタイマーなど)をリセットするためのフックメソッド。

ライフサイクルフロー: strategyDidStart: → コンテキストを保存 → 通知エージェントを登録 → strategyDidReset: → コンテキストを更新 → resetInternalState を呼び出し → strategyDidStop → 通知エージェントを登録解除 → コンテキストをクリア。

説明

子クラスは strategyName メソッドをオーバーライドする必要があります。strategyDidStart:、strategyDidStop、または strategyDidReset: をオーバーライドする場合は、super を呼び出す必要があります。

StrategyManager (ストラテジーマネージャー)

各 AliPlayerController には StrategyManager インスタンスがあります。ストラテジーは登録順に実行され、各ストラテジーのライフサイクル呼び出しは @try/@catch を使用して分離されます。

メソッド

メソッド

パラメーター

説明

- registerStrategy:

id<StrategyProtocol> strategy

ストラテジーを登録します。同じ名前のストラテジーが存在する場合、停止して置き換えられます。

- unregisterStrategyWithName:

NSString * name

名前でストラテジーを登録解除します。

- strategyWithName:

NSString * name

名前でストラテジーを検索します。

- startWithController:playerModel:

controller, playerModel

登録されたすべてのストラテジーを開始します。

- resetWithPlayerModel:

AliPlayerModel * playerModel

すべてのストラテジーをリセットします。これはビデオソースが切り替えられたときに使用されます。

- stop

-

すべてのストラテジーを停止します。

- destroy

-

すべてのストラテジーを停止して削除します。

プロパティ

プロパティ

タイプ

説明

strategyCount

NSUInteger

現在登録されているストラテジーの数。

started

BOOL

マネージャーが実行中かどうかを示します。

StrategyRegistry (グローバルストラテジーレジストリ)

グローバルストラテジーレジストリはシングルトンで、ストラテジーファクトリブロックのグループを管理します。新しい AliPlayerController が作成されるたびに、登録されたすべてのファクトリがインスタンス化され、StrategyManager に applyToManager: を使用して注入されます。

メソッド

パラメーター

説明

+ sharedRegistry

-

グローバルレジストリシングルトンを取得します。

- addGlobalStrategyFactory:

StrategyFactory factory

グローバルストラテジーファクトリを追加します。

- clearGlobalStrategies

-

組み込みのものを含むすべてのグローバルストラテジーファクトリを削除します。

- applyToManager:

StrategyManager * manager

すべてのグローバルストラテジーをインスタンス化し、指定されたマネージャーに登録します。

- resetToDefault

-

デフォルトの組み込みストラテジー構成を復元します。

説明

組み込みストラテジー (FirstFrameStrategy、StutterDetectStrategy、および TrafficProtectionStrategy) は、初回アクセス時に自動的に登録されます。

組み込みストラテジー

FirstFrameStrategy (初回フレームまでの時間モニタリング)

プレーヤーの準備開始から最初のフレームがレンダリングされるまでの時間を測定します。準備フェーズ (Preparing から Prepared) とレンダリングフェーズ (Prepared から FirstFrameRendered) に分けられます。

プロパティ

タイプ

説明

delegate

id<FirstFrameStrategyDelegate> (weak)

コールバックデリゲート

FirstFrameStrategyDelegate コールバック:

メソッド

パラメーター

説明

- firstFrameStrategy:didRenderFirstFrameWithPrepareTime:renderTime:totalTime:

strategy, prepareTimeMs, renderTimeMs, totalTimeMs

最初のフレームがレンダリングされました。

StutterDetectStrategy (スタッタリング検出)

Loading イベントをリッスンすることでコマ落ちを検出します。最初のフレームがレンダリングされる前の Loading はカウントされません。

プロパティ

タイプ

説明

stutterCount

NSInteger

現在のセッションにおけるスタッター回数。

totalStutterDurationMs

NSInteger

現在のセッションにおけるコマ落ちの総持続時間 (ミリ秒)。

stutterThresholdMs

NSInteger

コマ落ちのしきい値 (ミリ秒)。デフォルト:0。

delegate

id<StutterDetectStrategyDelegate>

コールバックデリゲート。

- initWithThreshold:

NSInteger

指定されたしきい値でコマ落ち検出ストラテジーを作成します。

StutterDetectStrategyDelegate コールバック:

メソッド

パラメーター

説明

- stutterDetectStrategy:didStutter:

strategy, durationMs

スタッターが検出されます。

- stutterDetectStrategy:didAnalyzeSession:validPlayDuration:totalStutterDuration:stutterCount:

strategy, stayDurationMs, validPlayDurationMs, totalStutterDurationMs, stutterCount

再生セッション分析が完了しました。

TrafficProtectionStrategy (トラフィック保護)

ネットワークステータスの変化を監視し、セルラーネットワークでの再生を検出します。検出とログ記録のみを行い、再生を自動的に一時停止することはありません。

プロパティ

タイプ

説明

isOnCellularNetwork

BOOL

デバイスが現在セルラーネットワーク上にあるかどうかを指定します。

delegate

id<TrafficProtectionStrategyDelegate>

コールバックデリゲート。

TrafficProtectionStrategyDelegate コールバック:

メソッド

パラメーター

説明

- trafficProtectionStrategyDidDetectCellularNetwork:

strategy

セルラーネットワークでの再生が検出されました。

- trafficProtectionStrategyDidDetectWifiNetwork:

strategy

ネットワークが Wi-Fi に戻りました。

ログシステム

ログシステムは、ログ出力とオブザーバー登録のための統一メカニズムを提供します。

LogHub (ログセンター)

ログ出力とオブザーバー登録を統合するログ管理センター (シングルトン) です。ハイブリッドスレッドモデルを使用します。コンソール出力は呼び出しスレッド上で同期的に実行され、オブザーバー通知はバックグラウンドシリアルキューに非同期でディスパッチされます。

プロパティ

プロパティ

タイプ

デフォルト値

説明

logEnabled

BOOL

YES

ログ出力を有効にするかどうかを指定します。

logLevel

LogLevel

LogLevelInfo

最小ログ出力レベル。

consoleLogEnabled

BOOL

YES

コンソール (NSLog) 出力を有効にするかどうかを指定します。

オブザーバー管理

メソッド

パラメーター

説明

+ sharedHub

-

共有 LogHub シングルトンを取得します。

- addObserver:

id<LogObserver> observer

ログオブザーバーを追加します。強参照によって保持されます。

- removeObserver:

id<LogObserver> observer

ログオブザーバーを削除します。

ログ出力

メソッド

パラメーター

説明

- v:msg:

tag, message

Verbose レベルのログを出力します。

- d:msg:

tag, message

Debug レベルのログを出力します。

- i:msg:

tag, message

Info レベルのログを出力します。

- w:msg:

tag, message

Warn レベルのログを出力します。

- e:msg:

tag, message

Error レベルのログを出力します。

- e:msg:error:

tag, message, error (nullable)

関連するエラーオブジェクト付きで Error レベルのログを出力します。

- log:tag:msg:

level, tag, message

指定されたレベルでログを出力します。

ユーティリティメソッド

メソッド

パラメーター

戻り値

説明

+ levelToString:

LogLevel level

NSString *

ログレベルを省略文字列 (V/D/I/W/E/N) に変換します。

+ stringToLevel:

NSString * levelName

LogLevel

レベル名文字列を列挙値に戻します。

LogObserver (ログオブザーバープロトコル)

このプロトコルを実装して、カスタムログ処理 (ファイルへの書き込みやサーバーへの報告など) のためにすべてのログ出力コールバックを受信します。

メソッド

パラメーター

説明

- onLog: (@required)

LogInfo * logInfo

ログ出力コールバック。サブスレッドで実行されます。

LogInfo (ログ情報モデル)

単一のログエントリのデータモデルです。

プロパティ

タイプ

説明

level

LogLevel

ログレベル。

tag

NSString *

ログタグ。

message

NSString *

ログメッセージ。

timestamp

NSDate *

タイムスタンプ。

threadName

NSString *

スレッド名。

fileName

NSString *

ソースファイル名。

line

NSInteger

ソースコード行番号。

error

NSError *

関連するエラーオブジェクト。

- formattedString

-

フォーマット済みログ文字列を取得します。

プリロードシステム

プリロードシステムは、プレーヤー SDK のグローバルプリロード機能をカプセル化します。[AliPlayerKit preloader] から取得できます。

PlayerPreloader (プリロードプロトコル)

このプロトコルは、プレーヤー SDK のグローバルプリロード機能をカプセル化します。[AliPlayerKit preloader] から取得できます。

メソッド

パラメーター

戻り値

説明

- addTask:delegate:

task, delegate

NSString * (タスク ID)

プリロードタスクを追加します。

- cancelTask:

NSString * taskId

void

特定のタスクをキャンセルします。

- pauseTask:

NSString * taskId

void

特定のタスクを一時停止します。

- resumeTask:

NSString * taskId

void

特定のタスクを再開します。

- cancelAll

-

void

すべてのプリロードタスクをキャンセルします。

PlayerPreloadTask (プリロードタスク)

プロパティ

タイプ

説明

videoSource

VideoSource *

ビデオデータソース。

preloadConfig

PlayerPreloadConfig *

プリロード構成。

- initWithVideoSource:preloadConfig:

videoSource, preloadConfig

プリロードタスクを作成します。

PlayerPreloadConfig (プリロード構成)

プロパティ

タイプ

デフォルト値

説明

preloadDuration

NSInteger

3000

プリロード持続時間 (ミリ秒)。

loadStartPositionMs

NSInteger

0

プリロード開始位置 (ミリ秒)。

defaultQuality

NSString *

@"AUTO"

デフォルト品質識別子。

defaultResolution

NSInteger

0

デフォルト解像度。0 は制限なしを意味します。

defaultBandWidth

NSInteger

0

デフォルトビットレート。0 は制限なしを意味します。

networkTimeout

NSInteger

0

ネットワークタイムアウト (ミリ秒)。0 は SDK デフォルトを使用します。

networkRetryCount

NSInteger

0

ネットワークリトライ回数。0 は SDK デフォルトを使用します。

referrer

NSString * (nullable)

nil

リファラー情報。

customHeaders

NSArray<NSString *> *

nil

カスタムリクエストヘッダー。

作成メソッド

メソッド

パラメーター

説明

- init

-

デフォルト設定で構成を作成します。

- initWithPreloadDuration:defaultQuality:

preloadDuration, defaultQuality

指定されたプリロード持続時間とデフォルト品質で構成を作成します。

PreloadDelegate (プリロードデリゲート)

このプロトコルは、プリロードタスクのステータスイベントを受信します。すべてのメソッドは @required です。

説明

コールバックはバックグラウンドスレッドでトリガーされる可能性があります。メインスレッドにディスパッチして処理する必要があります。

メソッド

パラメーター

説明

- preloadTaskDidComplete:source:

taskId, source

プリロードタスクが完了しました。

- preloadTaskDidFail:source:error:

taskId, source, error

プリロードタスクが失敗しました。

- preloadTaskDidCancel:source:

taskId, source

プリロードタスクがキャンセルされました。

ローカライズシステム

ローカライズシステムは、PlayerKit の多言語サポートを管理します。3 つのモードをサポートしています。システム言語に自動的に従うモード、手動で言語を指定するモード、カスタムプロバイダーを使用するモードです。

LocaleManager (ローカライズマネージャー)

PlayerKit の多言語サポートを管理するローカライズマネージャー (シングルトン) です。

解決チェーン: カスタムプロバイダー (注入されている場合) → 手動で指定された言語のバンドル (手動モード) → システム言語に従う SDK バンドル → フォールバックとしてキー自体を返します。

プロパティ

プロパティ

タイプ

説明

currentLanguageCode

NSString *

現在の言語コード。

localeMode

LocaleMode

現在の言語モード。

localeProvider

id<LocaleProvider>

現在注入されているカスタムプロバイダー。

メソッド

メソッド

パラメーター

説明

+ sharedManager

-

シングルトンインスタンスを取得します。

- setLanguageCode:

NSString * languageCode

言語を手動で設定します。これにより、手動モードに切り替わります。

- setLocaleProvider:

id<LocaleProvider> provider

カスタムプロバイダーを注入します。弱参照によって保持されます。`nil` を渡すと削除されます。

- resetToSystemLanguage

-

言語をシステム言語に従うようにリセットします。

- localizedStringForKey:

NSString * key

ローカライズされた文字列を照会します。

LocaleMode (言語モード)

定数

値

説明

LocaleModeSystem

0

システム言語に従います。これがデフォルトです。

LocaleModeManual

1

言語コードを手動で指定します。

LocaleProvider (ローカライズプロバイダープロトコル)

ホストアプリはこのプロトコルを実装して、PlayerKit のカスタム翻訳を提供できます。

メソッド

パラメーター

戻り値

説明

- localizedStringForKey: (@optional)

NSString * キー

NSString * (null 許容)

指定されたキーに対応するローカライズされた文字列を返します。nil が返された場合、SDK がフォールバックとして処理します。

LocaleDidChangeNotification (言語変更通知)

言語モードまたは言語コードが変更されると、LocaleDidChangeNotification 通知がメインスレッド上で送信されます。userInfo 辞書には、LocaleLanguageCodeKey キーの下に新しい言語コードが含まれます。

主要な列挙型と定数

AliPlayerKit で使用されるコア列挙型。

PlayerState (プレーヤー状態)

定数

値

説明

PlayerStateIdle

0

アイドル。初期化済みですが、リソースはロードされていません。

PlayerStatePreparing

1

準備中。リソースを非同期でロード中です。

PlayerStatePrepared

2

準備完了。再生を開始する準備ができています。

PlayerStatePlaying

3

再生中。

PlayerStatePaused

4

一時停止中。

PlayerStateCompleted

5

完了。

PlayerStateStopped

6

停止。

PlayerStateError

7

エラー状態。

SceneType (シナリオタイプ)

定数

値

説明

SceneTypeVOD

0

ビデオオンデマンドシナリオ

SceneTypeLive

1

ライブストリーミングシナリオ。

SceneTypeVideoList

2

ビデオリストまたはショートビデオストリームシナリオ。

SceneTypeRestricted

3

制限付き再生シナリオ。

SceneTypeMinimal

4

ミニマリスト再生ページシナリオ。

ScaleMode (スケーリングモード)

定数

値

説明

ScaleModeFitXY

0

ビューを埋めるように伸縮します。

ScaleModeFitCenter

1

ビューに合うように比例的にスケーリングします。黒枠が残る場合があります。

ScaleModeCenterCrop

2

比例的にスケーリングし、埋まるようにクロップします。

MirrorMode (ミラーモード)

定数

値

説明

MirrorModeNone

0

ミラーリングなし。

MirrorModeHorizontal

1

水平ミラーリング。

MirrorModeVertical

2

垂直ミラーリング。

RotateMode (回転モード)

定数

値

説明

RotateModeDegree0

0

0 度。

RotateModeDegree90

90

90 度。

RotateModeDegree180

180

180 度。

RotateModeDegree270

270

270 度。

LogLevel (ログレベル)

定数

値

説明

LogLevelVerbose

0

最も詳細なデバッグ情報。

LogLevelDebug

1

デバッグレベル。

LogLevelInfo

2

Info レベル。これがデフォルトです。

LogLevelWarn

3

警告レベル。

LogLevelError

4

エラーレベル。

LogLevelNone

100

すべてのログを無効にします。

TrackType (トラックタイプ)

定数

値

説明

TrackTypeUnknown

0

不明。

TrackTypeVideo

1

ビデオトラック。

TrackTypeAudio

2

オーディオトラック。

TrackTypeSubtitle

3

字幕トラック。

TrackTypeVOD

4

VOD トラック。