Timed metadata class
When TVSDK detects a subscribed tag in the playlist/manifest, the player automatically tries to process the tag and expose it in the form of a PTTimedMetadata object.
The class provides the following elements:
|metadataId||NSString||Unique identifier of the timed metadata. This value is usually extracted from the cue/tag ID attribute. Otherwise, a unique random value is provided.|
|name||NSString||The name of the timed metadata. If the type is TAG , the value represents the cue/tag name. If the type is ID3 , it is null.|
|time||CMTime||The time position, in milliseconds, relative to the start of the main content where this timed metadata is present in the stream.|
|type||PTTimedMetadataType||The type of the timed metadata.
Remember the following:
- TVSDK automatically extracts the attributes list into key-value pairs and stores the attributes in the metadata property.Complex data in custom tags in the manifest, such as strings with special characters, must be in quotes. For example: >
#EXT-CUSTOM-TAG:type=SpliceOut,ID=1,time=71819.7222,duration=30.0,url= "www.example.com:8090?parameter1=xyz¶meter2=abc" ``` >
- If the extraction fails because of a custom tag format, the content property always contains the tag's raw data, which is the string after the colon. No error is thrown in this case.
Possible types for the timed metadata.
@property (nonatomic, assign) CMTime time
The time position, relative to the start of the main content, where this metadata was inserted in the stream.
@property (nonatomic, assign) PTTimedMetadataType type
Returns the type of the timed metadata.
@property (nonatomic, retain) NSString *metadataId
Returns the ID extracted from the cue/tag attributes. Otherwise, a unique random value is provided.
@property (nonatomic, retain) NSString *name
Returns the name of the cue, which is usually the HLS tag name.