GCKUIMediaController クラス

GCKUIMediaController クラス リファレンス

概要

Cast レシーバーでのメディア再生のステータスを制御または表示するために使用される 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:
 UIImageViewGCKUIImageHints インスタンスにバインドします。詳細...
 
(void) - unbindView:
 指定されたビューのバインドを解除します。詳細...
 
(void) - unbindAllViews
 バインドされているすべてのビューのバインドを解除します。詳細...
 
(GCKMediaRepeatMode- cycleRepeatMode
 キューの繰り返しモードを、サイクルの次のモードに変更します。詳細
 
(void) - selectTracks
 メディア トラック選択 UI を表示するための便利なメソッド。詳細...
 

プロパティの概要

id< GCKUIMediaControllerDelegatedelegate
 GCKUIMediaController から通知を受け取るためのデリゲート。詳細...
 
GCKSessionsession
 このコントローラに関連付けられているセッション。詳細...
 
BOOL mediaLoaded
 現在、メディアがレシーバーに読み込まれている(または読み込み中である)かどうか。詳細...
 
BOOL hasCurrentQueueItem
 キューに現在のアイテムがあるかどうか。詳細...
 
BOOL hasLoadingQueueItem
 キューにプリロード中のアイテムがあるかどうか。詳細...
 
GCKMediaPlayerState lastKnownPlayerState
 最後に確認されたメディア プレーヤーの状態。詳細...
 
NSTimeInterval lastKnownStreamPosition
 最後に認識されたメディア ストリームの位置。詳細...
 
UIButton * playButton
 「再生」ボタン。詳細...
 
UIButton * pauseButton
 一時停止ボタン。詳細...
 
GCKUIButtonplayPauseToggleButton
 再生/一時停止の切り替えボタン。詳細...
 
GCKUIPlayPauseToggleControllerplayPauseToggleController
 「再生/一時停止」切り替えコントローラ。詳細...
 
UIButton * stopButton
 [停止] ボタン。詳細...
 
GCKUIButtonforward30SecondsButton
 現在再生中のメディア アイテムを 30 秒早送りするためのボタン。詳細...
 
GCKUIButtonrewind30SecondsButton
 現在再生中のメディア アイテムを 30 秒巻き戻すためのボタン。詳細...
 
UIButton * pauseQueueButton
 現在のアイテムの再生が終了したら、キューの再生を一時停止するためのボタン。詳細...
 
UIButton * nextButton
 [次へ] ボタン。詳細...
 
UIButton * previousButton
 「前へ」ボタン。詳細...
 
GCKUIButtonrepeatModeButton
 利用可能なキューの繰り返しモードを切り替えるためのボタン。詳細...
 
UISlider * streamPositionSlider
 現在のストリーム位置を表示および変更するためのスライダー。詳細...
 
UIProgressView * streamProgressView
 現在のストリームの進行状況を表示するビュー。詳細...
 
UILabel * streamPositionLabel
 現在のストリーム位置を分と秒で表示するラベル。詳細...
 
UILabel * streamDurationLabel
 現在のストリームの再生時間を分と秒で表示するラベル。詳細...
 
UILabel * streamTimeRemainingLabel
 残りのストリーミング時間(再生時間から現在位置を引いた時間)を分と秒で表示するラベル。詳細...
 
GCKUIStreamPositionControllerstreamPositionController
 ストリーム位置コントローラ。詳細...
 
BOOL displayTimeRemainingAsNegativeValue
 残りのストリーム時間が負の値(「-1:23:45」など)として表示されるかどうか。詳細...
 
UIButton * tracksButton
 音声トラックやクローズド キャプション、字幕を選択するためのボタン。詳細...
 
UILabel * smartSubtitleLabel
 現在読み込まれているメディアの字幕を表示するためのラベル。詳細...
 
UIActivityIndicatorView * mediaLoadingIndicator
 メディアが読み込み状態であることを示すアクティビティ インジケーター ビュー。詳細...
 

メソッドの詳細

- (instancetype) init

インスタンスを初期化します。

- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key 

UILabel をメタデータキーにバインドします。

ビューには、対応するメタデータ フィールドの現在の値が表示されます。

事前定義されたメタデータキーの一覧については、GCKMediaMetadata をご覧ください。

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

UILabel をメタデータキーにバインドします。

ビューには、対応するメタデータ フィールドの現在の値が表示されます。

事前定義されたメタデータキーの一覧については、GCKMediaMetadata をご覧ください。

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key 

UITextView をメタデータキーにバインドします。

ビューには、対応するメタデータ フィールドの現在の値が表示されます。

事前定義されたメタデータキーの一覧については、GCKMediaMetadata をご覧ください。

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

UITextView をメタデータキーにバインドします。

ビューには、対応するメタデータ フィールドの現在の値が表示されます。

事前定義されたメタデータキーの一覧については、GCKMediaMetadata をご覧ください。

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindImageView: (UIImageView *)  imageView
toImageHints: (GCKUIImageHints *)  imageHints 

UIImageViewGCKUIImageHints インスタンスにバインドします。

現在インストールされている UIImagePicker を使用して、ビューのメタデータから画像を選択します。

Parameters
imageViewThe UIImageView that will display the selected image.
imageHintsThe image hints.
- (void) unbindView: (UIView *)  view

指定されたビューのバインドを解除します。

Parameters
viewThe view to unbind.
- (void) unbindAllViews

バインドされているすべてのビューのバインドを解除します。

- (GCKMediaRepeatMode) cycleRepeatMode

キューの繰り返しモードを、サイクルの次のモードに変更します。

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

戻り値
新しいリピートモード。
- (void) selectTracks

メディア トラック選択 UI を表示するための便利なメソッド。

プロパティの詳細

- (id<GCKUIMediaControllerDelegate>) delegate
readwritenonatomicweak

GCKUIMediaController から通知を受け取るためのデリゲート。

- (GCKSession*) session
readnonatomicstrong

このコントローラに関連付けられているセッション。

- (BOOL) mediaLoaded
readnonatomicassign

現在、メディアがレシーバーに読み込まれている(または読み込み中である)かどうか。

キャスト セッションがアクティブでない場合は、NO になります。

- (BOOL) hasCurrentQueueItem
readnonatomicassign

キューに現在のアイテムがあるかどうか。

- (BOOL) hasLoadingQueueItem
readnonatomicassign

キューにプリロード中のアイテムがあるかどうか。

- (GCKMediaPlayerState) lastKnownPlayerState
readnonatomicassign

最後に確認されたメディア プレーヤーの状態。

キャスト セッションがアクティブでない場合、これは最後のセッションが終了する直前のプレーヤーの状態になります。以前のセッションがない場合は GCKMediaPlayerStateUnknown になります。

- (NSTimeInterval) lastKnownStreamPosition
readnonatomicassign

最後に認識されたメディア ストリームの位置。

キャスト セッションがアクティブでない場合、これは最後のセッションが終了する直前のメディアのストリーム位置になります。以前のセッションがない場合は kGCKInvalidTimeInterval になります。

- (UIButton*) playButton
readwritenonatomicweak

「再生」ボタン。

ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで開始または再開されます。再生がすでに進行中の場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (UIButton*) pauseButton
readwritenonatomicweak

一時停止ボタン。

ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで一時停止します。現在読み込まれているメディアが一時停止をサポートしていない場合、現在再生が進行していない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (GCKUIButton*) playPauseToggleButton
readwritenonatomicweak

再生/一時停止の切り替えボタン。

呼び出し元は、ボタンの GCKUIControlStatePlay 状態と GCKUIControlStatePause 状態に適切なアイコンを設定する必要があります。つまり、再生状態には一時停止アイコン、一時停止状態には再生アイコンを設定します。ボタンの状態は、レシーバーの現在の再生状態を反映するように自動的に更新されます。ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで一時停止または再開されます。現在読み込まれているメディアが一時停止をサポートしていない場合、再生が現在進行中または一時停止中でない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (GCKUIPlayPauseToggleController*) playPauseToggleController
readwritenonatomicstrong

「再生/一時停止」切り替えコントローラ。

カスタムのアプリ提供の再生/一時停止切り替え UI の代わりとして使用されます。詳しくは、GCKUIPlayPauseToggleController をご覧ください。

発足
3.4
- (UIButton*) stopButton
readwritenonatomicweak

[停止] ボタン。

ボタンをタップすると、現在読み込まれているメディアの再生がレシーバーで停止します。現在読み込まれているメディアがない場合、または現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (GCKUIButton*) forward30SecondsButton
readwritenonatomicweak

現在再生中のメディア アイテムを 30 秒早送りするためのボタン。

現在読み込まれているメディアがない場合、または現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (GCKUIButton*) rewind30SecondsButton
readwritenonatomicweak

現在再生中のメディア アイテムを 30 秒巻き戻すためのボタン。

現在読み込まれているメディアがない場合、または現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (UIButton*) pauseQueueButton
readwritenonatomicweak

現在のアイテムの再生が終了したら、キューの再生を一時停止するためのボタン。

- (UIButton*) nextButton
readwritenonatomicweak

[次へ] ボタン。

ボタンをタップすると、再生はキュー内の次のメディア アイテムに移動します。オペレーションがサポートされていない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (UIButton*) previousButton
readwritenonatomicweak

「前へ」ボタン。

ボタンをタップすると、再生はキュー内の前のメディア アイテムに移動します。オペレーションがサポートされていない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (GCKUIButton*) repeatModeButton
readwritenonatomicweak

利用可能なキューの繰り返しモードを切り替えるボタン。

GCKMediaRepeatMode を参照)。呼び出し元は、ボタンの UIControlStateNormal(リピート オフ)、GCKUIControlStateRepeatSingleGCKUIControlStateRepeatAllGCKUIControlStateShuffle の各状態に適切なアイコンを設定する必要があります。ボタンの状態は、レシーバーの現在のキュー リピート モードを反映するように自動的に更新されます。ボタンをタップすると、次の順序で次のリピート モードに切り替わります。

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

現在アクティブなキャスト セッションがない場合、ボタンは無効になります。

- (UISlider*) streamPositionSlider
readwritenonatomicweak

現在のストリーム位置を表示および変更するためのスライダー。

ユーザーがスライダーの値を変更すると、現在読み込まれているメディアのストリーム位置がレシーバーで更新されます。レシーバでメディアの再生が進行中の場合、スライダーの値は現在のストリーム位置を反映するようにリアルタイムで更新されます。現在読み込まれているメディアがシークをサポートしていない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、スライダーは無効になります。

- (UIProgressView*) streamProgressView
readwritenonatomicweak

現在のストリームの進行状況を表示するビュー。

レシーバーでメディアの再生が進行中の場合、ビューの値は現在のストリーム位置を反映するようにリアルタイムで更新されます。現在読み込まれているメディアがライブ配信の場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ビューは無効になります。

- (UILabel*) streamPositionLabel
readwritenonatomicweak

現在のストリーム位置を分と秒で表示するラベル。

現在読み込まれているメディアがない場合や、現在アクティブな Cast セッションがない場合、ラベルにはローカライズされた「--:--」が表示されます。

- (UILabel*) streamDurationLabel
readwritenonatomicweak

現在のストリームの再生時間を分と秒で表示するラベル。

現在読み込まれているメディアに再生時間がない場合(ライブ配信など)、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ラベルには「--:--」のローカライズされた形式が表示されます。

- (UILabel*) streamTimeRemainingLabel
readwritenonatomicweak

残りストリーミング時間(再生時間から現在位置を引いた時間)を分と秒で表示するラベル。

現在読み込まれているメディアに再生時間がない場合(ライブ配信など)、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ラベルには「--:--」のローカライズされた形式が表示されます。

- (GCKUIStreamPositionController*) streamPositionController
readwritenonatomicstrong

ストリーム位置コントローラ。

カスタムのアプリケーション提供ストリーム位置やシーク UI の代わりに使用されます。詳しくは、GCKUIStreamPositionController をご覧ください。

発足
3.4
- (BOOL) displayTimeRemainingAsNegativeValue
readwritenonatomicassign

残りのストリーミング時間が「-1:23:45」のように負の値で表示されるかどうか。

デフォルトでは、このプロパティは YES に設定されています。

- (UIButton*) tracksButton
readwritenonatomicweak

音声トラックやクローズド キャプション、字幕を選択するためのボタン。

ボタンをタップすると、メディア トラック選択 UI がユーザーに表示されます。現在読み込まれているメディアに選択可能なメディア トラックがない場合、現在読み込まれているメディアがない場合、現在アクティブな Cast セッションがない場合、ボタンは無効になります。

- (UILabel*) smartSubtitleLabel
readwritenonatomicweak

現在読み込まれているメディアの字幕を表示するためのラベル。

メタデータに字幕フィールドが明示的に設定されていない場合、ラベルにはメディアタイプに基づいて最も適切なメタデータ フィールドが表示されます(映画の場合はスタジオ名、音楽トラックの場合はアーティスト名など)。

- (UIActivityIndicatorView*) mediaLoadingIndicator
readwritenonatomicweak

メディアが読み込み状態であることを示すアクティビティ インジケーター ビュー。