# 3GPP Technical Document Summary: FS_AMD_Ph2 WT#1 - Common Client Metadata Phase 2

## Document Information
- **Document Number**: 26.804 CR 0030 rev 2
- **Release**: Rel-20
- **Category**: C (functional modification of feature)
- **Work Item**: FS_AMD_Ph2 (5G Media Streaming Architecture - Phase 2)

## Main Technical Contributions

### 1. Introduction and Scope Extension

This CR extends the study of Common Media Client Data (CMCD) in 5G Media Streaming (5GMS) to include **CMCDv2** (version 2), which was published in December 2025 by CTA WAVE (CTA-5004-A specification). The document analyzes the integration of CMCDv2 into 5GMS workflows, focusing on:
- New metrics and reporting methods introduced in v2
- Multiple reporting modes (request mode and event mode)
- Enhanced operational optimizations for 5GMSd AS and AF

### 2. CMCDv2 Key Enhancements

#### 2.1 New Key-Value Pairs
CMCDv2 introduces numerous new keys including:
- **Live latency** (`ltc`): Time delta between origin availability and player rendering
- **Target buffer length** (`tbl`): Target buffer at request time
- **Media start delay** (`msd`): Initial delay from play instruction to playback start
- **Aggregate bitrate** (`ab`): Bitrate across playable track combinations
- **CDN ID** (`cdn`): CDN identifier
- **Response code** (`rc`): HTTP response code received
- **Time to first/last byte** (`ttfb`, `ttlb`): Network timing metrics
- **Player state** (`sta`): Enhanced state reporting (starting, playing, seeking, rebuffering, paused, ended, fatal error, quit, preloading)
- **Playhead time** (`pt`): Current playhead position (VOD offset or live epoch time)
- **Buffer starvation metrics** (`bsa`, `bsd`, `bsda`): Absolute counts and durations
- **Dropped frames** (`dfa`): Absolute count since session start

#### 2.2 Enhanced Reporting Modes

**Event Mode** (new in v2):
- Allows reports at arbitrary times, not just with content requests
- Event types include:
  - Play state changes (`ps`)
  - Errors (`e`)
  - Time intervals (`t`)
  - Content changes (`c`)
  - Backgrounding (`b`)
  - Muting/unmuting (`m`, `um`)
  - Interstitial content (ad) tracking (`abs`, `abe`, `as`, `ae`)
  - User actions like seeking (`sk`)
  - Response received (`rr`)

**Multiple Destinations**:
- Event reports can be sent to different endpoints (CDN, player monitoring, ad reporting, content steering)
- Enables concurrent reporting to different 5GMS functions without constraining third-party reporting

### 3. Use Cases for 5GMS

The document identifies seven key use cases:

1. **Operational optimization of 5GMSd AS**: Using CMCD for pre-fetching content based on `nor` (next object request) key
2. **Operational optimization of 5GMSd AF and 5G Media Streaming**: Using CMCD to configure 5G System (e.g., delivery boost on buffer starvation)
3. **UE data collection and event exposure**: Providing CMCD information to 5G System or external Application Providers
4. **Event-based reporting** (v2): Tracking events and user behaviors, including ad information
5. **Advanced AS optimization** (v2): Multiple object prefetching (v1 only allowed single object)
6. **Multiple destinations for event reports** (v2): Separate concurrent reporting to different 5GMS functions
7. **Session handling reporting** (v2): Media Session Handler sending event reports out-of-band to 5GMSd AF via M5

### 4. Architecture Mappings

Three architectural options are defined:

#### 4.1 Option 1: In-band via M4d and M3d (Preferred)
- Media Player reports CMCD in-band with media requests at M4d (as HTTP headers or query parameters)
- 5GMSd AS collects and reformats CMCD, reports to 5GMSd AF via M3d
- Enables AS operational optimizations (pre-fetching)
- Enables AF operational optimizations (network assistance, policy updates)

#### 4.2 Option 2: In-band via M4d and R4
- Similar to Option 1 but 5GMSd AS reports to Data Collection AF via R4
- Uses data reporting session mechanism from TS 26.531/26.532
- CMCD information not directly visible to 5GMSd AF (only to Data Collection AF)

#### 4.3 Option 3: Out-of-band via M11d and M5d
- Media Player reports CMCD to Media Session Handler via M11d
- Media Session Handler reports to 5GMSd AF via M5d
- Does NOT support AS pre-fetching optimizations
- Not preferred solution

### 5. Gap Analysis and Requirements

#### 5.1 Common Gaps (All Options)
1. Lack of provisioning information at M1d for CMCD reporting configuration
2. Lack of CMCD client reporting configuration in Service Access Information at M5d
3. Lack of Media Player configuration API at M11d for CMCD collection/reporting
4. Missing Media Player functionalities to report CMCD at M4d
5. Missing Media Session Handler functionalities to configure Media Player

#### 5.2 Option-Specific Gaps

**Option 1 (M4d/M3d)**:
- Lack of configuration signaling at M3d for 5GMSd AS
- Missing 5GMSd AS functionalities to extract/process CMCD and report to AF via M3d
- Missing 5GMSd AF functionalities to process CMCD from AS

**Option 2 (M4d/R4)**:
- Lack of configuration signaling at R4 for data reporting sessions
- Missing 5GMSd AS functionalities to report to Data Collection AF via R4
- New data domain and record data types needed in TS 26.532/26.512

**Option 3 (M11d/M5d)**:
- Missing Media Session Handler functionalities to report CMCD to AF via M5d
- Missing 5GMSd AF functionalities to process CMCD from Media Session Handler

### 6. Candidate Solutions

#### 6.1 Provisioning and Configuration
- **M1d provisioning**: Reuse metrics reporting provisioning procedures from TS 26.510 with new CMCD metrics reporting scheme in TS 26.512
- **Event exposure**: New `AfEvent` enumeration value for CMCD events, new collection/record data types in TS 26.512, new `DataDomain` value in TS 26.532
- **M3d/M5d configuration**: Extend Service Access Information with CMCD reporting configuration using new metrics reporting scheme for CMCD JSON format

#### 6.2 Data Reporting Formats
- **In-band at M4d**: CMCD query parameter or CMCD request headers per CTA-5004
- **At M3d**: CMCD JSON format per CTA-5004
- **At R4**: New record data type based on CMCD JSON format
- **At M5d**: CMCD JSON format using QoE metrics reporting mechanism

#### 6.3 Event Exposure
- Reuse event exposure mechanism from TS 26.501 clause 4.7.4 and TS 26.512 clause 18
- New collection and record data types for CMCD information
- Extension to TS 29.517 clause 5.6.2.6 for `AfEventNotification`

### 7. CMCD Key Relevancy Analysis (Annex)

The document includes a comprehensive table (Table 5.16.6A) analyzing each CMCDv2 key for relevance to 5GMS deployment. This table is marked as "work in progress" and requires further analysis.

### 8. Comparison with Existing 5GMS Mechanisms

**Minimal Overlap Identified**:
- CMCD has minimal overlap with existing QoE metrics reporting (TS 26.247 clause 10) and consumption reporting (TS 26.512 clause 11.3.3)
- Some common elements: session ID, content URI, timestamps, buffer levels, throughput
- CMCD provides complementary client-side operational data not covered by existing mechanisms

### 9. Conclusions and Recommendations

**Preferred Solution: Option 1 (In-band via M4d and M3d)**

Rationale:
- In-band reporting at M4d is broadly implemented in common media clients
- Permits operational optimizations by both 5GMSd AS (pre-fetching) and 5GMSd AF (network assistance)
- All envisaged use cases can be supported
- Passing CMCD to AF at M3d enables operational optimizations not possible with Option 2

**Key Recommendations**:
1. Implement Option 1 solution in relevant 3GPP specifications
2. Provide deployment choices for CMCD query parameter vs. request headers
3. Consider CMCD as supplementary to (not replacement for) existing QoE and consumption reporting
4. Support both CMCDv1 and CMCDv2 features, particularly event mode and multiple destinations

### 10. Specification Impacts

**Normative References**:
- Update reference to CTA-5004-A (December 2025 version)
- Add reference to IETF RFC 8941 (Structured Field Values for HTTP)

**Specification Changes Required**:
- **TS 26.510**: Provisioning procedures, configuration APIs, data reporting operations
- **TS 26.512**: New metrics reporting schemes, data types, event exposure formats
- **TS 26.532**: New data domain enumeration
- **TS 29.517**: New AfEvent enumeration value (CT3 coordination required)