Show Menu
TOPICS×

Timed metadata class

When TVSDK detects a subscribed tag in the playlist/manifest, the player automatically tries to process and expose the tag in the form of a TimedMetadata object.
The class provides the following elements:
Property Type Description
id long
Unique identifier of the timed metadata.
This value is usually extracted from the cue/tag ID attribute. Otherwise, a unique random value is provided. Use getId .
metadata Metadata
The processed/extracted information from the playlist/manifest custom tag. Use getMetadata .
name String
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. Use getName .
time long
The time position, in milliseconds, relative to the start of the main content where this timed metadata is present in the stream. Use getTime .
type Type
The type of the timed metadata. Use getType .
  • TAG - indicates that the timed metadata was created from a tag in the playlist/manifest.
  • ID3 - indicates that the timed metadata was created from an ID3 tag in the media stream.
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&parameter2=abc"
    ```  >
    
    
    
  • If the extraction fails because of a custom tag format, the metadata property will be empty and your application must extract the actual information. In this case, no error is thrown.
Element Description
public enum Type {TAG, ID3}
Possible types for the timed metadata.
public TimedMetadata(Type type, long time, long id, String name, Metadata metadata);
Default constructor (time is the local stream time).
public long getTime();
The time position, relative to the start of the main content, where this metadata was inserted in the stream.
public Metadata getMetadata();
The metadata inserted in the stream.
public Type getType();
Returns the type of the timed metadata.
public long getId();
Returns the ID extracted from the cue/tag attributes. Otherwise, a unique random value is provided.
public String getName();
Returns the name of the cue, which is usually the HLS tag name.