| Previous | Next |
| RTC_E_SIP_UNHOLD_OPERATION_PENDING | RTC_E_MEDIA_SESSION_IN_HOLD |
RTC_E_MEDIA_SESSION_NOT_EXIST
What RTC_E_MEDIA_SESSION_NOT_EXIST means in RTC
This result is useful only when preserved with its producing phase; in binding negotiated audio or video streams to media terminals and moving the media controller through legal states, it denotes the requested media-session object no longer exists for the RTC signaling session.
The machine-readable identity of this result is 0x80EE0075 in the RTC interface facility 0xEE; the result identity matters because RTC uses separate facilities for API conditions, SIP final responses, and PINT service statuses.
The first useful check is to record media-session ID, creation/destruction events, signaling session state, and stale owner. The result must be separated from nearby conditions because the parent call can still exist even when a particular media session was never created or has ended.
Protocol and object state
| RTC area | RTC media controller and terminal |
|---|---|
| Objects to correlate | RTC session, media type, terminal/device, stream direction, controller state, acoustic echo cancellation |
| Condition to prove | the requested media-session object no longer exists for the RTC signaling session |
| Safe corrective direction | discard the stale media reference and recreate media only through a legal signaling transition |
Signaling success does not guarantee that a capture or render device exists or that a media stream can start. AddStream, RemoveStream, hold, and terminal selection change the media state machine and can race with callbacks from the previous operation.
How to prove the condition
- Record this result and
0x80EE0075at the first RTC method or event that returns it. - Prove the condition by ensuring the trace can record media-session ID, creation/destruction events, signaling session state, and stale owner.
- Apply one controlled change: discard the stale media reference and recreate media only through a legal signaling transition; then verify the result return value and resulting RTC state.
Minimum incident record
- Code-specific proof: record media-session ID, creation/destruction events, signaling session state, and stale owner.
- Owning object: controller state before and after call.
- Wire evidence: stream direction and negotiated codec.
- Lifecycle state: device removal or format-change event.
Actions that do not address this condition
- Do not recreate the entire SIP session before determining whether only a local terminal failed.
- Do not assume the default Windows device is the terminal selected by the RTC object.
Correct application response
The appropriate response to it is not a blanket reconnect. Instead, discard the stale media reference and recreate media only through a legal signaling transition, while preserving ownership of cleanup and any bounded retry.
Example: A device callback targets an audio media session removed during renegotiation.
Nearby failure modes
RTC_E_MEDIA_VIDEO_DEVICE_NOT_AVAILABLE | the selected video capture or render device is unavailable to RTC |
|---|---|
RTC_E_NO_DEVICE | no preferred or compatible media device is available for the requested RTC media type |
RTC_E_ANOTHER_MEDIA_SESSION_ACTIVE | RTC permits only one active media session for the relevant resource and another session currently owns it |
Technical references
Looking for a different code? Search another status or error code.