概要
キャスト レシーバーでのメディア再生ステータスを制御または表示するために使用する、UI ビューのコントローラ。
呼び出し元のアプリは、適切なプロパティを設定して、メディア関連の UI コントロールをコントローラに登録します。コントローラは、適切なメディア コマンドをレシーバーに発行することでコントロールでのタッチイベントに応答し、レシーバーから受信したステータス情報とメディア メタデータに基づいてコントロールを更新します。コントローラは、現在のセッションやメディア プレーヤーの状態に応じて、UI コントロールを自動的に有効または無効にします。さらに、リクエストの処理中はすべてのコントロールが無効になります。
委譲プロトコルについては、GCKUIMediaControllerDelegate をご覧ください。
- 開始:
- 3.0
NSObject を継承します。
インスタンス メソッドの概要 | |
| (instancetype) | - init |
| インスタンスを初期化します。その他... | |
| (void) | - bindLabel:toMetadataKey: |
| UILabel をメタデータキーにバインドします。その他... | |
| (void) | - bindLabel:toMetadataKey:withFormatter: |
| UILabel をメタデータキーにバインドします。その他... | |
| (void) | - bindTextView:toMetadataKey: |
| UITextView をメタデータキーにバインドします。その他... | |
| (void) | - bindTextView:toMetadataKey:withFormatter: |
| UITextView をメタデータキーにバインドします。その他... | |
| (void) | - bindImageView:toImageHints: |
| UIImageView を GCKUIImageHints インスタンスにバインドします。その他... | |
| (void) | - bindControlView:toRewindForTime: |
UIControl をバインドし、渡された値(秒単位)で現在のアイテムの再生を巻き戻します。その他... | |
| (void) | - bindControlView:toForwardForTime: |
UIControl をバインドして、渡された値(秒)で現在のアイテムの再生を転送します。その他... | |
| (void) | - unbindView: |
| 指定したビューのバインドを解除します。その他... | |
| (void) | - unbindAllViews |
| バインドされたすべてのビューをバインド解除します。その他... | |
| (GCKMediaRepeatMode) | - cycleRepeatMode |
| キューの繰り返しモードを、サイクル内の次のモードに変更します: その他... | |
| (void) | - selectTracks |
| メディア トラック選択 UI を表示するための便利なメソッドです。その他... | |
| (void) | - skipAd |
| 広告のスキップリクエストを送信して監視します。その他... | |
プロパティの概要 | |
| id< GCKUIMediaControllerDelegate > | delegate |
| GCKUIMediaController からの通知を受信するためのデリゲート。その他... | |
| GCKSession * | session |
| このコントローラに関連付けられているセッション。その他... | |
| BOOL | mediaLoaded |
| レシーバーに現在読み込まれている(または読み込み中)メディアがあるかどうか。その他... | |
| BOOL | hasCurrentQueueItem |
| キューに現在のアイテムがあるかどうか。その他... | |
| BOOL | hasLoadingQueueItem |
| キューにプリロードされているアイテムがあるかどうか。その他... | |
| GCKMediaPlayerState | lastKnownPlayerState |
| 既知の最新のメディア プレーヤーの状態。その他... | |
| NSTimeInterval | lastKnownStreamPosition |
| 既知の最新のメディア ストリームの位置。その他... | |
| UIButton * | playButton |
| 「再生」ボタン。その他... | |
| UIButton * | pauseButton |
| 「一時停止」ボタン。その他... | |
| GCKUIMultistateButton * | playPauseToggleButton |
| 「再生/一時停止」の切り替えボタン。その他... | |
| GCKUIPlayPauseToggleController * | playPauseToggleController |
| 「再生/一時停止」の切り替えコントローラ。その他... | |
| UIButton * | stopButton |
| 「停止」ボタン。その他... | |
| UIButton * | forward30SecondsButton |
| 現在再生中のメディア アイテムを 30 秒早送りするためのボタン。その他... | |
| UIButton * | rewind30SecondsButton |
| 現在再生中のメディア アイテムを 30 秒前までシークするためのボタン。その他... | |
| UIButton * | pauseQueueButton |
| 現在のアイテムの再生が終了した後でキューの再生を一時停止するボタン。その他... | |
| UIButton * | nextButton |
| [次へ] ボタン。その他... | |
| UIButton * | previousButton |
| 「前へ」ボタン。その他... | |
| GCKUIMultistateButton * | repeatModeButton |
| キューの繰り返しモードを切り替えるボタン。その他... | |
| UISlider * | streamPositionSlider |
| 現在の配信位置を表示、変更するためのスライダー。その他... | |
| UIProgressView * | streamProgressView |
| 現在のストリーミングの進行状況を表示するビュー。その他... | |
| UILabel * | streamPositionLabel |
| 現在の配信位置を示すラベル(分と秒)。その他... | |
| UILabel * | streamDurationLabel |
| 現在のライブ配信の長さ(分と秒)を示すラベル。その他... | |
| UILabel * | streamTimeRemainingLabel |
| 残りのライブ配信時間(再生時間から位置を引いた値)を分と秒で表示するラベル。その他... | |
| GCKUIStreamPositionController * | streamPositionController |
| ストリーム ポジション コントローラ。その他... | |
| GCKUIPlaybackRateController * | playbackRateController |
| ストリーム再生レート コントローラ。その他... | |
| BOOL | displayTimeRemainingAsNegativeValue |
| 残りのストリーミング時間を負の値で表示するかどうか(例: -1:23:45)。その他... | |
| BOOL | hideStreamPositionControlsForLiveContent |
| ライブ コンテンツで、配信位置コントロール(配信位置スライダー、配信位置ラベル、配信時間ラベル、配信進行状況ビューなど)を非表示にするかどうかを指定します。その他... | |
| UIButton * | tracksButton |
| 音声トラックまたは字幕を選択するためのボタン。その他... | |
| UILabel * | smartSubtitleLabel |
| 現在読み込まれているメディアのサブタイトルを表示するラベル。その他... | |
| UIActivityIndicatorView * | mediaLoadingIndicator |
| メディアが読み込み状態にあることを示すアクティビティ インジケーター ビュー。その他... | |
| UILabel * | skipAdLabel |
| 広告をスキップできる残り時間を示すラベル。その他... | |
| UIButton * | skipAdButton |
| 現在の広告をスキップするボタン。その他... | |
メソッドの詳細
| - (instancetype) init |
インスタンスを初期化します。
| - (void) bindLabel: | (UILabel *) | label | |
| toMetadataKey: | (NSString *) | key | |
UILabel をメタデータキーにバインドします。
対応するメタデータ フィールドの現在の値がビューに表示されます。
事前定義済みのメタデータキーのリストについては、GCKMediaMetadata をご覧ください。
- Parameters
-
label The UILabel that will display the value. key The metadata key.
| - (void) bindLabel: | (UILabel *) | label | |
| toMetadataKey: | (NSString *) | key | |
| withFormatter: | (GCKUIValueFormatter) | formatter | |
UILabel をメタデータキーにバインドします。
対応するメタデータ フィールドの現在の値がビューに表示されます。
事前定義済みのメタデータキーのリストについては、GCKMediaMetadata をご覧ください。
- Parameters
-
label The UILabel that will display the value. key The metadata key. formatter A block that will produce the desired string representation of the value.
| - (void) bindTextView: | (UITextView *) | textView | |
| toMetadataKey: | (NSString *) | key | |
UITextView をメタデータキーにバインドします。
対応するメタデータ フィールドの現在の値がビューに表示されます。
事前定義済みのメタデータキーのリストについては、GCKMediaMetadata をご覧ください。
- Parameters
-
textView The UITextView that will display the value. key The metadata key.
| - (void) bindTextView: | (UITextView *) | textView | |
| toMetadataKey: | (NSString *) | key | |
| withFormatter: | (GCKUIValueFormatter) | formatter | |
UITextView をメタデータキーにバインドします。
対応するメタデータ フィールドの現在の値がビューに表示されます。
事前定義済みのメタデータキーのリストについては、GCKMediaMetadata をご覧ください。
- Parameters
-
textView The UITextView that will display the value. key The metadata key. formatter A block that will produce the desired string representation of the value.
| - (void) bindImageView: | (UIImageView *) | imageView | |
| toImageHints: | (GCKUIImageHints *) | imageHints | |
UIImageView を GCKUIImageHints インスタンスにバインドします。
現在インストールされている GCKUIImagePicker を使用して、ビューのメタデータから画像を選択します。
- Parameters
-
imageView The UIImageView that will display the selected image. imageHints The image hints.
| - (void) bindControlView: | (UIControl *) | control | |
| toRewindForTime: | (NSTimeInterval) | rewindSeconds | |
UIControl をバインドし、渡された値(秒単位)で現在のアイテムの再生を巻き戻します。
ビューは、GCKCastSession 状態、リモートの再生状態、ライブストリームかどうかに基づいて更新されます。また、UIControlEventTouchUpInside イベントをキャプチャするために、ターゲットが UIControl に追加されます。このタイプのターゲットを UIControl に追加しないでください。イベントをキャプチャするには、代わりに GCKUIMediaControllerDelegate メソッドを使用します。
- Parameters
-
control The UI element that the user interacts with. Typically this would be an instance of UIButton.rewindSeconds The number of seconds to rewind the media.
| - (void) bindControlView: | (UIControl *) | control | |
| toForwardForTime: | (NSTimeInterval) | forwardSeconds | |
UIControl をバインドして、渡された値(秒)で現在のアイテムの再生を転送します。
ビューは、GCKCastSession 状態、リモートの再生状態、ライブストリームかどうかに基づいて更新されます。また、UIControlEventTouchUpInside イベントをキャプチャするために、ターゲットが UIControl に追加されます。このタイプのターゲットを UIControl に追加しないでください。イベントをキャプチャするには、代わりに GCKUIMediaControllerDelegate メソッドを使用します。
- Parameters
-
control The UI element that the user interacts with. Typically this would be an instance of UIButton.forwardSeconds The number of seconds to skip the media.
| - (void) unbindView: | (UIView *) | view |
指定したビューのバインドを解除します。
- Parameters
-
view The view to unbind.
| - (void) unbindAllViews |
バインドされたすべてのビューをバインド解除します。
| - (GCKMediaRepeatMode) cycleRepeatMode |
キューの繰り返しモードをサイクル内の次のモードに変更します。
GCKMediaRepeatModeOff → GCKMediaRepeatModeAll → GCKMediaRepeatModeSingle → GCKMediaRepeatModeAllAndShuffle
- 戻り値
- 新しいリピートモード。
| - (void) selectTracks |
メディア トラック選択 UI を表示するための便利なメソッドです。
| - (void) skipAd |
広告のスキップリクエストを送信して監視します。
- 開始:
- 4.3
物件の詳細
|
readwritenonatomicweak |
GCKUIMediaController からの通知を受信するためのデリゲート。
|
readnonatomicstrong |
このコントローラに関連付けられているセッション。
|
readnonatomicassign |
レシーバーに現在読み込まれている(または読み込み中)メディアがあるかどうか。
アクティブなキャスト セッションがない場合、ステータスは NO になります。
|
readnonatomicassign |
キューに現在のアイテムがあるかどうか。
|
readnonatomicassign |
キューにプリロードされているアイテムがあるかどうか。
|
readnonatomicassign |
既知の最新のメディア プレーヤーの状態。
アクティブなキャスト セッションがない場合、最後のセッションが終了する直前のプレーヤーの状態です。以前のセッションが存在しない場合は、GCKMediaPlayerStateUnknown になります。
|
readnonatomicassign |
既知の最新のメディア ストリームの位置。
アクティブなキャスト セッションがない場合、最後のセッションが終了する直前のメディアのストリーム位置になります。以前のセッションがない場合は kGCKInvalidTimeInterval になります。
|
readwritenonatomicweak |
「再生」ボタン。
ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで開始または再開されます。すでに再生が進行中の場合、メディアが現在読み込まれていない場合、またはアクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
「一時停止」ボタン。
ボタンをタップすると、レシーバーで現在読み込まれているメディアの再生が一時停止します。現在読み込まれているメディアが一時停止に対応していない場合、再生が進行中でない場合、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
「再生/一時停止」の切り替えボタン。
呼び出し元は、ボタンの GCKUIButtonStatePlay、GCKUIButtonStatePlayLive、GCKUIButtonStatePause 状態に対して適切なアイコンを設定する必要があります。つまり、「一時停止」アイコンは再生状態、「停止」アイコンは再生状態、「停止」アイコンは再生状態、「再生」アイコンは一時停止状態に対して設定する必要があります。ボタンの状態は、レシーバーでの現在の再生状態を反映するために自動的に更新されます。ボタンをタップすると、レシーバー上で、現在読み込まれているメディアの再生が一時停止または再開されます。現在読み込まれているメディアが一時停止に対応していない場合、再生が進行中でないか一時停止していない場合、現在メディアが読み込まれていない場合、または現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicstrong |
「再生/一時停止」の切り替えコントローラ。
アプリから提供されるカスタムの再生/一時停止切り替え UI の代用となります。詳しくは、GCKUIPlayPauseToggleController をご覧ください。
- 開始:
- 3.4
|
readwritenonatomicweak |
「停止」ボタン。
ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで停止します。現在読み込まれているメディアがない場合や、現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
現在再生中のメディア アイテムを 30 秒早送りするためのボタン。
現在読み込まれているメディアがない場合や、現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
現在再生中のメディア アイテムを 30 秒前までシークするためのボタン。
現在読み込まれているメディアがない場合や、現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
現在のアイテムの再生が終了した後でキューの再生を一時停止するボタン。
|
readwritenonatomicweak |
[次へ] ボタン。
ボタンをタップすると、キュー内の次のメディア アイテムに再生が移ります。操作がサポートされていない場合、メディアが読み込まれていない場合、アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
「前へ」ボタン。
ボタンをタップすると、キュー内の前のメディア アイテムに再生が移動します。操作がサポートされていない場合、メディアが読み込まれていない場合、アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
キューの繰り返しモードを切り替えるボタン。
(GCKMediaRepeatMode をご覧ください)。呼び出し元は、ボタンの GCKUIButtonStateRepeatOff、GCKUIButtonStateRepeatSingle、GCKUIButtonStateRepeatAll、GCKUIButtonStateShuffle の状態に適したアイコンを設定する必要があります。ボタンの状態は、レシーバーの現在のキューの繰り返しモードを反映するように自動的に更新されます。ボタンをタップすると、次の順番で次のリピートモードに切り替わります。
GCKMediaRepeatModeOff → GCKMediaRepeatModeAll → GCKMediaRepeatModeSingle → GCKMediaRepeatModeAllAndShuffle
現在アクティブなキャスト セッションがない場合、ボタンは無効になります。
|
readwritenonatomicweak |
現在の配信位置を表示、変更するためのスライダー。
ユーザーがスライダーの値を変更すると、現在読み込まれているメディアのストリーム位置がレシーバーで更新されます。レシーバーでメディアの再生が進行中に、スライダーの値がリアルタイムで更新され、現在のストリーム位置が反映されます。現在読み込まれているメディアが移動に対応していない場合、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、スライダーが無効になります。
|
readwritenonatomicweak |
現在のストリーミングの進行状況を表示するビュー。
レシーバーでメディアの再生が進行中に、ビューの値がリアルタイムで更新され、現在のストリーム位置が反映されます。現在読み込まれているメディアがライブ ストリームの場合、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、ビューが無効になります。
|
readwritenonatomicweak |
現在の配信位置を示すラベル(分と秒)。
現在読み込まれているメディアがない場合や、現在アクティブなキャスト セッションがない場合は、ローカライズされた形式の「--:--」がラベルに表示されます。
|
readwritenonatomicweak |
現在のライブ配信の長さ(分と秒)を示すラベル。
現在読み込まれているメディアに再生時間が設定されていない場合(ライブ ストリームの場合など)、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、ラベルにローカライズされた形式で「--:--」と表示されます。
|
readwritenonatomicweak |
残りのライブ配信時間(再生時間から位置を引いた値)を分と秒で表示するラベル。
現在読み込まれているメディアに再生時間が設定されていない場合(ライブ ストリームの場合など)、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、ラベルにローカライズされた形式で「--:--」と表示されます。
|
readwritenonatomicstrong |
ストリーム ポジション コントローラ。
アプリから提供されるカスタムのストリーム位置やシーク UI の代用となります。詳しくは、GCKUIStreamPositionController をご覧ください。
- 開始:
- 3.4
|
readwritenonatomicstrong |
|
readwritenonatomicassign |
残りのストリーミング時間を負の値で表示するかどうか(例: -1:23:45)。
デフォルトでは、このプロパティは YES に設定されています。
|
readwritenonatomicassign |
ライブ コンテンツで、配信位置コントロール(配信位置スライダー、配信位置ラベル、配信時間ラベル、配信進行状況ビューなど)を非表示にするかどうかを指定します。
デフォルト値は NO です。
- 開始:
- 4.0
|
readwritenonatomicweak |
音声トラックまたは字幕を選択するためのボタン。
ボタンをタップすると、メディア トラック選択 UI がユーザーに表示されます。現在読み込まれているメディアに選択可能なメディア トラックがない場合、現在読み込まれているメディアがない場合、または現在アクティブなキャスト セッションがない場合は、ボタンが無効になります。
|
readwritenonatomicweak |
現在読み込まれているメディアのサブタイトルを表示するラベル。
メタデータに字幕フィールドが明示的に設定されていない場合、レーベルはメディアタイプに基づいて最適なメタデータ フィールドを表示します(映画のスタジオ名や音楽トラックのアーティスト名など)。
|
readwritenonatomicweak |
メディアが読み込み状態にあることを示すアクティビティ インジケーター ビュー。
|
readwritenonatomicweak |
広告をスキップできる残り時間を示すラベル。
- 開始:
- 4.3
|
readwritenonatomicweak |
現在の広告をスキップするボタン。
- 開始:
- 4.3