> For the complete documentation index, see [llms.txt](https://docs.mediamelon.com/mediamelon/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mediamelon.com/mediamelon/smartsight-player-sdk-integration/metadata-configuration-guide-for-sdk-integration.md).

# Metadata Configuration Guide for SDK Integration

### Config Metadata

<table><thead><tr><th width="299.578125">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Customer ID</td><td>Unique identifier assigned by MediaMelon to your organization. If unknown, contact MediaMelon Support.</td></tr><tr><td>Subscriber ID</td><td>Unique identifier of the subscriber or user consuming the video content.</td></tr><tr><td>Subscriber Type</td><td>Type of the subscriber. Common values include "Free", "Trial", or "Paid".</td></tr><tr><td>Subscriber Tag</td><td>Additional string metadata about the subscriber. Do not include sensitive data. Used for segmentation or custom tagging.</td></tr><tr><td>Hash Subscriber ID</td><td>Boolean value that determines whether the subscriber ID should be hashed before sending. Set to <code>true</code> to hash the value.</td></tr><tr><td>Domain Name</td><td>Logical partition to group your users, streams, or assets (e.g., regional or brand-specific domain name). This field is used for channel ID by many customers.</td></tr></tbody></table>

### Player Metadata

<table data-search="false"><thead><tr><th width="300.31640625">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Player Name</td><td>Name of the <strong>custom player</strong> or <strong>application-level player wrapper</strong> used in your app (e.g., <code>"MyCustomPlayer"</code>). If you don’t use a custom wrapper, use the native/base player name (e.g., <code>"ExoPlayer"</code>, <code>"AVPlayer"</code>).</td></tr><tr><td>Player ID</td><td>A unique identifier for the player instance or integration. This can be used to distinguish between different player implementations or configurations within the same application.</td></tr><tr><td>Player Brand</td><td>Brand or organization maintaining the custom player. This could be your company name or the name of a third-party SDK vendor. Use the native player brand if no custom wrapper exists.</td></tr><tr><td>Player Model</td><td>Model or variant name of your custom player (e.g., <code>"MyCustomPlayerV2"</code>, <code>"PlayerAlpha"</code>). If not applicable, use a relevant descriptive value or copy the native player model (e.g., <code>"AVPlayer-iOS"</code>).</td></tr><tr><td>Player Version</td><td>Version of your custom player or wrapper. Helps distinguish between changes/releases. If no custom wrapper exists, specify the base player version (e.g., <code>"2.18.3"</code> for ExoPlayer).</td></tr><tr><td>Base Player Name</td><td>Native/base player used for actual playback (e.g., <code>"ExoPlayer"</code>, <code>"AVPlayer"</code>). This should always reflect the core media engine even if you have a custom player wrapper.</td></tr><tr><td>Base Player Version</td><td>Version of the underlying base player (e.g., <code>"2.18.3"</code> for ExoPlayer, or iOS system version for AVPlayer). If you don’t have a custom wrapper, this value will be the same as <strong>Player Version</strong>.</td></tr></tbody></table>

### Content Metadata

<table data-search="false"><thead><tr><th width="299.828125">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Asset ID</td><td>Unique identifier for the video asset.</td></tr><tr><td>Asset Name</td><td>Human-readable name or title of the video asset.</td></tr><tr><td>Video ID</td><td>Unique identifier for the video content. It can be the same as <strong>Asset ID</strong> or a different logical ID used in your system.</td></tr><tr><td>Content Type</td><td>The category or type of content, e.g., "Movie", "Episode", "Clip", "LiveStream".</td></tr><tr><td>Genre</td><td>Genre of the content, such as "Drama", "Comedy", "Documentary", etc.</td></tr><tr><td>is Live</td><td>A boolean value that determines whether the content is live or on-demand. Set to true for live content (e.g., live events or broadcasts), and false for VOD content (e.g., movies, episodes).</td></tr><tr><td>Episode Number</td><td>Episode number within a season. Useful for TV series or episodic content.</td></tr><tr><td>Season</td><td>Name or number of the season (e.g., "Season 1", "S2").</td></tr><tr><td>Series Title</td><td>Title of the series to which the episode belongs.</td></tr></tbody></table>

### Playback Metadata

<table data-search="false"><thead><tr><th width="299.71484375">Variable</th><th>Text</th></tr></thead><tbody><tr><td>Stream URL</td><td>The URL of the current playing video stream (HLS or DASH). This is used for playback tracking and analytics.</td></tr><tr><td>DRM Type/Protection</td><td>DRM technology used (e.g., “Widevine”, “FairPlay”, “PlayReady”). Use “Unknown” if the content is protected, but the DRM type is unknown. Leave blank for clear (non-DRM) content.</td></tr><tr><td>DRM Level</td><td>Specifies the security level of DRM playback supported or enforced on the device (e.g., L1, L2, L3 for Widevine). This helps assess content protection strength and playback capabilities.</td></tr><tr><td>Experiment Name</td><td>Label used to segment views under different test experiments for analytics or A/B testing.</td></tr><tr><td>Sub Property ID</td><td>An identifier for sub-grouping under a single customer account. Useful for multi-brand or multi-service setups under the same customer.</td></tr><tr><td>View Session ID</td><td>Unique session identifier to correlate video playback with logs from other systems (e.g., CDN logs, backend services). Some customers put the application session ID to have a consolidated view.</td></tr><tr><td>Preload</td><td>Indicates whether the video content was preloaded before playback started. Typically a boolean value (<code>true</code>/<code>false</code>) used to analyze startup performance and buffering behavior.</td></tr><tr><td>Media Type</td><td>The type of video stream (e.g., <code>live</code> or <code>on-demand</code>)</td></tr><tr><td>Source Type</td><td>Indicates the streaming protocol used for playback. Common values include <code>HLS</code> or <code>DASH</code>, based on the stream URL type.</td></tr><tr><td>Stream Format</td><td>Describes the encoding variant or encoder configuration. Useful for comparing performance between different encoding settings. Examples: <code>x264</code>, <code>hevc</code>, <code>av1-0</code>, <code>av1-4</code>, <code>av1-8</code></td></tr><tr><td>Encoding Service</td><td>Specifies the service or platform used to encode the video content (e.g., AWS Elemental, Bitmovin, MediaConvert). Useful for analyzing performance variations across encoding providers.</td></tr><tr><td>CDN</td><td>Name or identifier of the Content Delivery Network (CDN) used to deliver the content (e.g., Akamai, CloudFront, Fastly)</td></tr><tr><td>Player Width</td><td>Integer value representing the width (in pixels) of the video player on the screen.</td></tr><tr><td>Player Height</td><td>Integer value representing the height (in pixels) of the video player on the screen.</td></tr></tbody></table>

### Ad Metadata

<table data-search="false"><thead><tr><th width="299.8046875">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Ad Title</td><td>Title or name of the ad, usually provided in the VAST metadata or by the ad server.</td></tr><tr><td>Ad ID</td><td>Unique identifier for the ad creative, often defined by the ad server or DSP.</td></tr><tr><td>Ad Creative ID</td><td>Creative ID associated with the specific ad asset (video, image, etc.). Helps in tracking and reporting creative-level performance.</td></tr><tr><td>Ad Creative Type</td><td>Format or type of the ad creative. For example, video/mp4, image/jpeg, etc., or linear, non-linear.</td></tr><tr><td>Ad Client</td><td>SDK or client library responsible for requesting and playing the ad. Example: Google IMA, Freewheel, SpotX.</td></tr><tr><td>Ad Position</td><td>Timing of the ad in relation to the main content: "pre" (before), "mid" (during), or "post" (after).</td></tr><tr><td>Ad Server</td><td>Ad server or source that delivered the ad. Example: Google Ad Manager, Freewheel, etc.</td></tr><tr><td>Ad Resolution</td><td>Resolution of the ad video (e.g., 1920x1080), useful for reporting and quality monitoring.</td></tr><tr><td>Ad URL</td><td>URL from which the ad video is fetched. Typically a media file or stream URL.</td></tr><tr><td>Ad Duration</td><td>Total duration of the ad, in milliseconds. Example: 30000 = 30 seconds.</td></tr><tr><td>Ad Pod Index</td><td>Index of the ad pod within the stream. Ad pods are groups of ads played together (like a commercial break).</td></tr><tr><td>Ad Position in Pod</td><td>Position of the ad within its pod (e.g., 1st ad, 2nd ad in the group).</td></tr><tr><td>Ad Pod Length</td><td>Total number of ads in the current pod. Useful for showing “Ad 2 of 5” type of UI.</td></tr><tr><td>Is Ad Bumper</td><td>Boolean (true/false) indicating whether the ad is a bumper ad (short ad, usually &#x3C;6s, played at the start or end of ad breaks).</td></tr></tbody></table>

### Device Metadata

<table data-search="false"><thead><tr><th width="299.8828125">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Device Name</td><td>Name of the playback device (e.g., "iPhone 14", "Living Room TV").</td></tr><tr><td>Device Brand</td><td>Manufacturer of the playback device (e.g., "Apple", "Samsung", "Roku").</td></tr><tr><td>Device Model</td><td>Specific model of the playback device (e.g., "SM-G991U", "Fire TV Stick 4K").</td></tr><tr><td>Device ID</td><td>Unique identifier representing the user's playback device. This may be an anonymized or hashed string, depending on your privacy policy.</td></tr><tr><td>Device Type</td><td>Category or form factor of the device (e.g., "Mobile", "Tablet", "TV", "Desktop").</td></tr><tr><td>Device OS</td><td>Operating system running on the device (e.g., "iOS", "Android", "tvOS", "Roku OS").</td></tr><tr><td>Device OS Version</td><td>Version of the device's operating system (e.g., "17.4", "13").</td></tr><tr><td>Screen Width</td><td>Width of the device's screen, in pixels.</td></tr><tr><td>Screen Height</td><td>Height of the device's screen, in pixels.</td></tr><tr><td>Device Capabilities</td><td>Playback features supported by the device (e.g., HDR, HLG, supported codecs, max resolution).</td></tr></tbody></table>

### Application Metadata

<table><thead><tr><th width="300.37109375">Variable</th><th>Description</th></tr></thead><tbody><tr><td>Application Name</td><td>Name of the application or service through which the user is consuming the video content. This helps distinguish traffic and analytics across multiple apps or platforms under the same customer account (e.g., "MyOTTApp", "MyStreamingTV").</td></tr><tr><td>Application Version</td><td>Version of the application that the end user is using. This is useful for tracking analytics across different app releases, troubleshooting regressions, and correlating performance or playback issues to specific app builds (e.g., "1.2.3", "2025.07.15").</td></tr><tr><td>App Session ID</td><td>A unique identifier representing a single application lifecycle session (from app launch to termination). This helps correlate multiple playback sessions within the same app usage window.</td></tr></tbody></table>
