SOUND4 IMPACT FM.CL Library [2.0.0]
Loading...
Searching...
No Matches
Functions
Metadata Management

Send/update metadata. More...

Functions

void impactfm_SetMetadata (struct impactfm_CInstance *instance, const char *key, const char *value)
 
void impactfm_SetMetadataMulti (struct impactfm_CInstance *instance, const char **keyvalue)
 
const char ** impactfm_GetMetadataInfos (struct impactfm_CInstance *instance)
 
void impactfm_FreeMetadataInfos (struct impactfm_CInstance *instance, const char **infos)
 

Detailed Description

Metadata is used on-need, and might be used by extensions modules (Watermarking, Streaming, ...)

Function Documentation

◆ impactfm_FreeMetadataInfos()

void impactfm_FreeMetadataInfos ( struct impactfm_CInstance *  instance,
const char **  infos 
)

Frees the information returned by impactfm_GetMetadataInfos.

Parameters
instancethe instance
infosthe infos

◆ impactfm_GetMetadataInfos()

const char ** impactfm_GetMetadataInfos ( struct impactfm_CInstance *  instance)

Get information on known metadata keys.

Parameters
instancethe instance
Returns
a list of key,descriptions, null terminated, of known metadata keys used in process and extensions. May be null. Should be freed with impactfm_FreeMetadataInfos

◆ impactfm_SetMetadata()

void impactfm_SetMetadata ( struct impactfm_CInstance *  instance,
const char *  key,
const char *  value 
)

Adds the specific metadata to the process.

It can come from any thread, and will be used as soon as possible.

Setting a null value erase the metadata, which is different from setting an empty string. Initial metadata might be set as soon as instance is created (and before update thread).

See also
impactfm_SetMetadataMulti
Parameters
instancethe instance
keythe metadata key. If key contains a dot (like wm.KEY), it will be sent only to the matching plugin (ie wm here) without the prefix (ie KEY here). Use empty prefix for routing to main only.
valuethe metadata value or nullptr to erase it.

◆ impactfm_SetMetadataMulti()

void impactfm_SetMetadataMulti ( struct impactfm_CInstance *  instance,
const char **  keyvalue 
)

Adds multiple metadata to the process.

This works like impactfm_SetMetadata but with multiple metadata at once.

See also
impactfm_SetMetadata
Parameters
instancethe instance
keyvaluea list of key/value pair, ending with null key.