Player-side signals tell you what viewers experienced; edge-side signals tell you why. CMCD (CTA-5004) is the standard bridge between them: the player attaches context — session, object type, measured throughput, buffer level — to the media requests it makes, so the edge and your telemetry can attribute delivery behaviour to actual playback conditions.
What CMCD carries
CMCD defines a compact set of keys the player sends with segment and manifest requests. The useful ones for operators:
- Session and content identity (
sid,cid) so requests can be grouped into a playback session and a title. - Object type (
ot) distinguishing manifest, audio, video, and initialization segments. - Measured throughput (
mtp) and buffer length (bl) describing the network and buffer state at request time. - Requested maximum throughput (
rtp) and next object (nor) hinting at what the player will ask for next. - Encoded bitrate (
br) and top bitrate (tb) for rendition context.
Because the player knows the buffer level and the edge knows the cache result, the two together explain a rebuffer that neither sees alone.
Query parameter versus header
CMCD can travel as a query string or as an HTTP header, and the choice has direct caching consequences.
| Transport | Cache behaviour | When to use |
|---|---|---|
| Query parameter | Enters the cache key unless the edge strips or ignores it | When intermediaries or logs must see it, and the edge is configured to exclude it from the key |
| Header | Does not enter a URL-based cache key by default | Preferred for caching; requires header forwarding to be preserved |
The trap is treating a CMCD query parameter like a normal object-defining parameter. If it stays in the cache key, sid, mtp, and bl change constantly and fragment the cache into a pass-through. Configure the edge to ignore CMCD keys in the cache key while still logging and forwarding them. Header transport avoids the problem at the URL level but depends on the request path preserving headers through every hop.
Cache-key implications
CMCD is metadata about a request, not identity of the object. Two viewers fetching the same segment at the same rendition must share one cached object regardless of their sessions, throughput, or buffer state. Rules:
- Exclude CMCD keys from the cache key under either transport.
- Keep token or session material out of the key as well — see Origin protection for video.
- Verify with real traffic that hit ratio does not drop when CMCD is enabled; if it does, a key rule is wrong.
The QoE metrics that matter
Track a small, stable set and segment them by region, ASN, device, and rendition:
- Startup time — time from playback intent to first frame. The dominant abandonment driver.
- Rebuffer ratio — buffering time divided by playback time. A small ratio still matters at scale.
- Seek latency — time to resume after a non-adjacent seek; on adult platforms, seeking is the common case, not the exception.
- Bitrate and switching — average delivered bitrate and how often the player downshifts.
- Exit before start — sessions that never reached first frame, which startup averages can hide.
Averages across all viewers conceal regional and device failures. Report distributions and per-segment values.
Joining player and edge signals
CMCD is only useful if both ends are captured and correlated. Aim for:
- Session keys in edge logs. Log
sidandcidso an edge log line can be joined to a player session. - Cache outcome per request. Record hit, miss, and whether a
206came from cache, so rebuffers can be attributed to origin latency versus client network. - Time alignment. Use consistent clocks and retention so player events and edge events land in the same analysis window.
- Privacy discipline. Session identifiers are personal data; hash or rotate them, restrict access, and retain only as long as needed. Discretion is a product requirement for adult platforms, not an afterthought.
Where AdultInfra fits
AdultInfra configures CMCD so it is visible to telemetry but invisible to the cache key, and correlates player QoE with edge cache outcomes on the same session. Start from Adult video CDN, or bring the metric you want to move — startup, rebuffer, or seek — to contact us.