Description
The Maximum number of Codecs Modes in the Active Codec Set (MACS) is a parameter defined within the 3GPP Multimedia Telephony Service for IMS (MTSI) framework and related specifications. It operates within the context of session negotiation and management, particularly for services like video telephony. The Active Codec Set (ACS) refers to the collection of codec modes (e.g., different bitrates, resolutions, or frame rates for a video codec like H.264 or H.265) that are agreed upon by the communicating endpoints during the Session Description Protocol (SDP) offer/answer exchange. MACS sets an upper limit on the size of this set.
Architecturally, MACS is a policy or capability parameter that influences the Session Initiation Protocol (SIP) and SDP signaling. When an endpoint, such as a User Equipment (UE) or an application server, generates an SDP offer for a multimedia session, it may list multiple codec configurations for a given media type. The answering endpoint responds with an SDP answer, selecting or accepting a subset of these to form the Active Codec Set. The MACS value, which can be configured by the network operator or defined by terminal capabilities, constrains how many of these modes can be included in the final, negotiated ACS. This prevents the establishment of sessions with an impractically large number of simultaneous codec options.
Its role in the network is to balance flexibility with efficiency. A larger ACS allows for more dynamic adaptation to changing network conditions (e.g., through codec mode switching), but it also increases signaling complexity, memory requirements in endpoints, and potential processing overhead. By defining a MACS, the system ensures that session descriptions remain manageable and that endpoints are not required to support an unbounded number of simultaneous codec states. It is a foundational element for predictable service behavior and interoperability between devices from different vendors, as it sets a common understanding of session complexity limits.
Purpose & Motivation
MACS was introduced to address the growing complexity of multimedia session negotiation in IP Multimedia Subsystem (IMS)-based services. As video telephony and rich communication services evolved, codecs supporting multiple modes (bitrates, profiles, levels) became common. Without a limit, an SDP offer could theoretically contain dozens of codec options, leading to several problems. Excessive options complicate the SDP answer process, increase signaling message sizes, and demand higher processing power from endpoints to parse and manage all potential states.
The primary motivation was to enforce a bound on session description complexity to ensure reliable and efficient session establishment. It solves the problem of potentially runaway session negotiation that could degrade user experience through longer call setup times or even cause failures in resource-constrained devices. By standardizing MACS, 3GPP provided a clear parameter for network operators to control session profiles according to their network capabilities and service policies, ensuring a consistent quality of experience across the service footprint. It is a key enabler for the scalable deployment of advanced multimedia services over mobile networks.
Key Features
- Defines an upper bound on the number of simultaneous codec modes in a negotiated session.
- Applicable to multimedia sessions within IMS, such as Multimedia Telephony (MMTel).
- Configurable parameter allowing operator control over session complexity.
- Reduces signaling overhead and endpoint processing requirements.
- Enhances interoperability by setting a common expectation for session capabilities.
- Supports dynamic adaptation by allowing a controlled set of codec modes for switching.
Evolution Across Releases
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.153 | 3GPP TS 23.153 |
| TS 28.062 | 3GPP TS 28.062 |