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

Send/update metadata. More...

Functions

void impact_SetMetadata (struct impact_CInstance *instance, const char *key, const char *value)
 
void impact_SetMetadataMulti (struct impact_CInstance *instance, const char **keyvalue)
 
const char ** impact_GetMetadataInfos (struct impact_CInstance *instance)
 
void impact_FreeMetadataInfos (struct impact_CInstance *instance, const char **infos)
 

Detailed Description

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

Function Documentation

◆ impact_FreeMetadataInfos()

void impact_FreeMetadataInfos ( struct impact_CInstance instance,
const char **  infos 
)

Frees the information returned by impact_GetMetadataInfos.

Parameters
instancethe instance
infosthe infos

◆ impact_GetMetadataInfos()

const char ** impact_GetMetadataInfos ( struct impact_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 impact_FreeMetadataInfos

◆ impact_SetMetadata()

void impact_SetMetadata ( struct impact_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
impact_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.

◆ impact_SetMetadataMulti()

void impact_SetMetadataMulti ( struct impact_CInstance instance,
const char **  keyvalue 
)

Adds multiple metadata to the process.

This works like impact_SetMetadata but with multiple metadata at once.

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