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 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.

    TIP

    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. No error is thrown in this case.

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.

On this page