Setting Persistent Metadata in HLS streams for R/2, R/20, X/2, and X/20

Prev Next

Scope

This document applies to

  • Z/IP Stream R/2 version 1.08.16 and higher

  • Z/IP Stream R/20 all versions

  • Z/IP Stream X/2 version 1.24.11 and higher

  • Z/IP Stream X/20 all versions

Description

By default, new metadata is inserted into the HLS fragment that is current when the metadata changes, but it does not persist in subsequent packets.  In some cases, it may be beneficial to have the current data in ALL packets.  This document describes how to enable this functionality in the versions listed above.

Editing Lua Metadata Filters

Lua is a lightweight scripting language, and metadata filters written in Lua can be edited using any standard text editor. While basic editors will work, using an editor that supports syntax highlighting for Lua can make development and troubleshooting easier.

Enabling Persistent Mode

To enable persistent mode in a metadata Lua filter, add the following line:

SetOptions(OPTION_PERSISTENT)

This should be placed outside of metadata processing functions—typically alongside initialization calls such as UseLineParser.

Disabling Persistent Mode

To disable a previously enabled persistent option, use:

SetOptions(0)

Example

Screen shot of the configured option in the Lua filter

Configured option in the Lua filter to ENABLE persistent data