GCKMediaMetadata 類別

GCKMediaMetadata 類別參考資料

總覽

媒體中繼資料的容器。

中繼資料有媒體類型、圖片清單 (選用),以及一組中繼資料欄位。一般中繼資料欄位的鍵會預先定義為常數,但應用程式可自行定義及使用的其他欄位。

預先定義的欄位值具有預先定義的類型。舉例來說,軌道編號是 NSInteger,而建立日期則是 NSString,以 ISO-8601 表示日期和時間。如果嘗試在欄位中儲存不正確類型的值,則會引發 NSInvalidArgumentException

請注意,Cast 通訊協定會限制特定媒體類型可使用的中繼資料欄位。當 MediaMetadata 物件已序列化為 JSON,以傳送至投放接收器,則任何特定媒體類型不支援的預先定義欄位都不會納入序列化格式,但一律會納入應用程式定義的欄位。預先定義欄位的完整清單如下:

欄位值類型有效的中繼資料類型
kGCKMetadataKeyCreationDate NSDate GCKMediaMetadataTypePhoto
kGCKMetadataKeyReleaseDate NSDate GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyBroadcastDate NSDate GCKMediaMetadataTypeTVShow
kGCKMetadataKeyTitle NSString GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypePhoto
kGCKMetadataKeySubtitle NSString GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovie
kGCKMetadataKeyArtist NSString GCKMediaMetadataTypePhotoGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypeGeneric
kGCKMetadataKeyAlbumArtist NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyAlbumTitle NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyComposer NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyDiscNumber NSInteger GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyTrackNumber NSInteger GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeySeasonNumber NSInteger GCKMediaMetadataTypeTVShow
kGCKMetadataKeyEpisodeNumber NSInteger GCKMediaMetadataTypeTVShow
kGCKMetadataKeySeriesTitle NSString GCKMediaMetadataTypeTVShow
kGCKMetadataKeyStudio NSString GCKMediaMetadataTypeMovie
kGCKMetadataKeyWidth NSInteger GCKMediaMetadataTypePhoto
kGCKMetadataKeyHeight NSInteger GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationName NSString GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLatitude 雙倍體GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLongitude 雙倍體GCKMediaMetadataTypePhoto

繼承 NSObject、<NSclone> 和 <NSSecureCoding>。

執行個體方法摘要

(instancetype) - initWithMetadataType:
 以指定媒體類型初始化新的空白 MediaMetadata。更多...
 
(instancetype) - init
 使用一般中繼資料類型初始化。更多...
 
(GCKMediaMetadataType- metadataType
 中繼資料類型。更多...
 
(NSArray *) - images
 取得映像檔清單。更多...
 
(void) - removeAllMediaImages
 移除目前的所有圖片。更多...
 
(void) - addImage:
 將圖片新增至圖片清單。更多...
 
(BOOL) - containsKey:
 測試物件是否包含具有指定鍵的欄位。更多...
 
(NSArray< NSString * > *) - allKeys
 針對物件中的所有欄位傳回一組鍵。更多...
 
(nullable id) - objectForKey:
 讀取欄位值。更多...
 
(void) - setString:forKey:
 將值儲存在字串欄位中。更多...
 
(nullable NSString *) - stringForKey:
 讀取字串欄位的值。更多...
 
(void) - setInteger:forKey:
 將值儲存在整數欄位中。更多...
 
(NSInteger) - integerForKey:
 讀取整數欄位的值。更多...
 
(NSInteger) - integerForKey:defaultValue:
 讀取整數欄位的值。更多...
 
(void) - setDouble:forKey:
 將值儲存在 double 欄位中。更多...
 
(double) - doubleForKey:
 讀取 double 欄位的值。更多...
 
(double) - doubleForKey:defaultValue:
 讀取 double 欄位的值。更多...
 
(void) - setDate:forKey:
 以受限制的 ISO-8601 日期表示儲存在日期欄位中的值。更多...
 
(nullable NSDate *) - dateForKey:
 從受限制的 ISO-8601 日期表示法中讀取日期欄位值。更多...
 
(nullable NSString *) - dateAsStringForKey:
 以字串形式讀取日期欄位的值。更多...
 

公開屬性

NSString *const kGCKMetadataKeyCreationDate
 字串鍵:建立日期。更多...
 
NSString *const kGCKMetadataKeyReleaseDate
 字串鍵:發行日期。更多...
 
NSString *const kGCKMetadataKeyBroadcastDate
 字串鍵:播送日期。更多...
 
NSString *const kGCKMetadataKeyTitle
 字串鍵:標題。更多...
 
NSString *const kGCKMetadataKeySubtitle
 字串鍵:字幕。更多...
 
NSString *const kGCKMetadataKeyArtist
 字串鍵:藝人。更多...
 
NSString *const kGCKMetadataKeyAlbumArtist
 字串鍵:專輯演出者。更多...
 
NSString *const kGCKMetadataKeyAlbumTitle
 字串鍵:專輯名稱。更多...
 
NSString *const kGCKMetadataKeyComposer
 字串鍵:Composer。更多...
 
NSString *const kGCKMetadataKeyDiscNumber
 整數鍵:光碟號碼。更多...
 
NSString *const kGCKMetadataKeyTrackNumber
 整數鍵:追蹤編號。更多...
 
NSString *const kGCKMetadataKeySeasonNumber
 整數鍵:季別編號。更多...
 
NSString *const kGCKMetadataKeyEpisodeNumber
 整數鍵:劇集編號。更多...
 
NSString *const kGCKMetadataKeySeriesTitle
 字串鍵:系列叢書書名。更多...
 
NSString *const kGCKMetadataKeyStudio
 字串鍵:Studio。更多...
 
NSString *const kGCKMetadataKeyWidth
 整數鍵:寬度。更多...
 
NSString *const kGCKMetadataKeyHeight
 整數鍵:高度。更多...
 
NSString *const kGCKMetadataKeyLocationName
 字串鍵:位置名稱。更多...
 
NSString *const kGCKMetadataKeyLocationLatitude
 雙鍵:位置緯度。更多...
 
NSString *const kGCKMetadataKeyLocationLongitude
 雙鍵:位置經度。更多...
 
NSString *const kGCKMetadataKeyBookTitle
 字串鍵:書名。更多...
 
NSString *const kGCKMetadataKeyChapterNumber
 整數鍵:章節編號。更多...
 
NSString *const kGCKMetadataKeyChapterTitle
 字串鍵:章節標題。更多...
 
NSString *const kGCKMetadataKeySectionDuration
 雙鍵:區段時間長度。更多...
 
NSString *const kGCKMetadataKeySectionStartTimeInMedia
 雙鍵:媒體中的區段開始時間。更多...
 
NSString *const kGCKMetadataKeySectionStartAbsoluteTime
 雙鍵:區段絕對開始時間。更多...
 
NSString *const kGCKMetadataKeySectionStartTimeInContainer
 雙鍵:容器中的區段開始時間。更多...
 
NSString *const kGCKMetadataKeyQueueItemID
 雙鍵:佇列項目 ID。更多...
 

資源摘要

GCKMediaMetadataType metadataType
 中繼資料類型。更多...
 

方法詳細資料

- (instancetype) initWithMetadataType: (GCKMediaMetadataType metadataType

以指定媒體類型初始化新的空白 MediaMetadata。

指定初始化器。

Parameters
metadataTypeThe media type; one of the GCKMediaMetadataType constants, or a value greater than or equal to GCKMediaMetadataTypeUser for custom media types.
- (instancetype) init

使用一般中繼資料類型初始化。

- (GCKMediaMetadataType) metadataType

中繼資料類型。

- (NSArray *) images

取得映像檔清單。

- (void) removeAllMediaImages

移除目前所有圖片。

- (void) addImage: (GCKImage *)  image

將圖片新增至圖片清單。

Parameters
imageThe image to add.
- (BOOL) containsKey: (NSString *)  key

測試物件是否包含具有指定鍵的欄位。

Parameters
keyThe key.
傳回
如果該欄位存在
YES,則為 NO
- (NSArray<NSString *> *) allKeys

針對物件中的所有欄位傳回一組鍵。

- (nullable id) objectForKey: (NSString *)  key

讀取欄位值。

Parameters
keyThe key for the field.
傳回
欄位值;如果尚未設定欄位,則傳回 nil
- (void) setString: (NSString *)  value
forKey: (NSString *)  key 

將值儲存在字串欄位中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是字串欄位。
- (nullable NSString *) stringForKey: (NSString *)  key

讀取字串欄位的值。

Parameters
keyThe key for the field.
傳回
欄位值;如果尚未設定欄位,則傳回 nil
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是字串欄位。
- (void) setInteger: (NSInteger)  value
forKey: (NSString *)  key 

將值儲存在整數欄位中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外狀況
NSInvalidArgumentException表示鍵參照的預先定義欄位不是整數欄位。
- (NSInteger) integerForKey: (NSString *)  key

讀取整數欄位的值。

Parameters
keyThe key for the field.
傳回
欄位值;如未設定欄位,則為 0。
例外狀況
NSInvalidArgumentException表示鍵參照的預先定義欄位不是整數欄位。
- (NSInteger) integerForKey: (NSString *)  key
defaultValue: (NSInteger)  defaultValue 

讀取整數欄位的值。

Parameters
keyThe key for the field.
defaultValueThe value to return if the field has not been set.
傳回
欄位值,或是尚未設定指定的預設值。
例外狀況
NSInvalidArgumentException表示鍵參照的預先定義欄位不是整數欄位。
- (void) setDouble: (double)  value
forKey: (NSString *)  key 

將值儲存在 double 欄位中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是 double 欄位,
- (double) doubleForKey: (NSString *)  key

讀取 double 欄位的值。

Parameters
keyThe key for the field.
傳回
欄位值;如未設定欄位,則為 0。
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是 double 欄位,
- (double) doubleForKey: (NSString *)  key
defaultValue: (double)  defaultValue 

讀取 double 欄位的值。

Parameters
defaultValueThe value to return if the field has not been set.
keyThe key for the field.
傳回
欄位值,或是尚未設定指定的預設值。
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是 double 欄位,
- (void) setDate: (NSDate *)  date
forKey: (NSString *)  key 

以受限制的 ISO-8601 日期表示儲存在日期欄位中的值。

Parameters
dateThe new value for the field.
keyThe key for the field.
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是日期欄位。
- (nullable NSDate *) dateForKey: (NSString *)  key

從受限制的 ISO-8601 日期表示法中讀取日期欄位值。

Parameters
keyThe field name.
傳回
日期;如果尚未設定這個欄位,則為 nil
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是日期欄位。
- (nullable NSString *) dateAsStringForKey: (NSString *)  key

以字串形式讀取日期欄位的值。

Parameters
keyThe field name.
傳回
以字串的形式表示日期,該字串包含受限制的 ISO-8601 日期表示法;如未設定這個欄位,則為 nil
例外狀況
NSInvalidArgumentException如果鍵參照的預先定義欄位不是日期欄位。

成員資料說明文件

- (NSString* const) kGCKMetadataKeyCreationDate

字串鍵:建立日期。

這個值是媒體建立的日期和/或時間,採用 ISO-8601 格式。舉例來說,這可以是相片的拍攝日期和時間,或是錄製音樂內容。

- (NSString* const) kGCKMetadataKeyReleaseDate

字串鍵:發行日期。

這個值是媒體發行的日期和/或時間,採用 ISO-8601 格式。例如電影或音樂專輯的發行日期。

- (NSString* const) kGCKMetadataKeyBroadcastDate

字串鍵:播送日期。

這個值是媒體首次播送的日期和/或時間,採用 ISO-8601 格式。舉例來說,這可以是電視節目劇集的初次播出日期。

- (NSString* const) kGCKMetadataKeyTitle

字串鍵:標題。

媒體的標題。例如歌曲、電影或電視節目劇集的標題。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeySubtitle

字串鍵:字幕。

媒體的子標題。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyArtist

字串鍵:藝人。

製作媒體的藝人姓名。例如音樂人、表演者或攝影師的名稱。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyAlbumArtist

字串鍵:專輯演出者。

製作專輯的藝人姓名。舉例來說,在 DJ 混音的合輯中,專輯的演出者不一定就是專輯中個別歌曲的演出者。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyAlbumTitle

字串鍵:專輯名稱。

音樂曲目所屬的專輯名稱。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyComposer

字串鍵:Composer。

音樂曲目的作曲家名稱。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyDiscNumber

整數鍵:光碟號碼。

音樂曲目屬於多張專輯的光碟號碼 (從 1 開始計算)。

- (NSString* const) kGCKMetadataKeyTrackNumber

整數鍵:追蹤編號。

專輯光碟上的音樂曲目編號。一般而言,曲目的數字是從 1 開始計算,但是如果是專輯開頭的「隱藏的曲目」,這個值可能會是 0。

- (NSString* const) kGCKMetadataKeySeasonNumber

整數鍵:季別編號。

電視節目劇集所屬的季別編號。一般來說,季別數字是從 1 開始計算,但如果這是「前測」劇集,且在電視影集的官方開始之前,這個值就可能會是 0。

- (NSString* const) kGCKMetadataKeyEpisodeNumber

整數鍵:劇集編號。

電視節目在指定季別的集數。一般來說,集數會從 1 開始計算,但如果這是「前測」集數,且不屬於第一季的官方劇集,則這個值會是 0。

- (NSString* const) kGCKMetadataKeySeriesTitle

字串鍵:系列叢書書名。

系列叢書的名稱。舉例來說,這可能是電視節目名稱或系列相關音樂專輯的名稱。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyStudio

字串鍵:Studio。

製作媒體內容的錄音室名稱。例如電影工作室或唱片公司的名稱。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyWidth

整數鍵:寬度。

媒體項目的寬度 (以像素為單位)。這通常用於提供相片的尺寸。

- (NSString* const) kGCKMetadataKeyHeight

整數鍵:高度。

媒體項目的高度,以像素為單位。這通常用於提供相片的尺寸。

- (NSString* const) kGCKMetadataKeyLocationName

字串鍵:位置名稱。

建立媒體內容的位置名稱。例如相片拍攝地點或電影的拍攝地點。此值適合用於顯示。

- (NSString* const) kGCKMetadataKeyLocationLatitude

雙鍵:位置緯度。

建立媒體的地理位置緯度元件。例如相片拍攝地點或電影的拍攝地點。

- (NSString* const) kGCKMetadataKeyLocationLongitude

雙鍵:位置經度。

建立媒體的地理位置經度元件。例如相片拍攝地點或電影的拍攝地點。

- (NSString* const) kGCKMetadataKeyBookTitle

字串鍵:書名。

有聲書的名稱。

開始時間
4.3.5
- (NSString* const) kGCKMetadataKeyChapterNumber

整數鍵:章節編號。

有聲書的章節數量。

開始時間
4.3.5
- (NSString* const) kGCKMetadataKeyChapterTitle

字串鍵:章節標題。

有聲書的章節名稱。

開始時間
4.3.5
- (NSString* const) kGCKMetadataKeySectionDuration

雙鍵:區段時間長度。

區段時間長度 (以秒為單位)。用於佇列中繼資料。舉例來說,內容可以是待播清單中某個電視節目的時間長度,也可以是有聲書的章節長度,或是長時間直播的節目。

開始時間
4.4.1
- (NSString* const) kGCKMetadataKeySectionStartTimeInMedia

雙鍵:媒體中的區段開始時間。

區段開始時間與媒體項目開始時的偏移值,以秒為單位。用於佇列中繼資料。

開始時間
4.4.1
- (NSString* const) kGCKMetadataKeySectionStartAbsoluteTime

雙鍵:區段絕對開始時間。

區段的絕對開始時間,以 Epoch 紀元時間計算,以秒為單位。用於佇列中繼資料。

開始時間
4.4.1
- (NSString* const) kGCKMetadataKeySectionStartTimeInContainer

雙鍵:容器中的區段開始時間。

完整容器中的區段開始時間偏移。用於佇列中繼資料。

開始時間
4.4.1
- (NSString* const) kGCKMetadataKeyQueueItemID

雙鍵:佇列項目 ID。

包含區段開始時間的佇列項目 ID。用於佇列中繼資料。

開始時間
4.4.1

資源詳情

- (GCKMediaMetadataType) metadataType
readnonatomicassign

中繼資料類型。