Site icon EfmSoft

What does HRESULT 0x80EE006F (RTC_E_MEDIA_ENABLED) mean?

 
Previous Next
RTC_E_MEDIA_DISABLED RTC_E_REFER_NOT_ACCEPTED

RTC_E_MEDIA_ENABLED

Operational meaning: RTC_E_MEDIA_ENABLED

The useful interpretation of this result is narrower than “SIP error”; within binding negotiated audio or video streams to media terminals and moving the media controller through legal states, it means code attempted an enable transition for media that is already enabled.

The stored Value is 0x80EE006F in the RTC interface facility 0xEE; keep both forms in telemetry so COM error wrapping does not erase whether RTC produced an interface result, mapped a SIP response, or surfaced a PINT outcome.

Start the result investigation by having the trace record media type, enable owner, active streams, and pending controller operations; do not skip the distinction that already enabled does not prove a stream exists or is started.

Signals worth preserving

Capture the first result before retry, reconnect, profile re-enable, or teardown changes the evidence; associate this result with one RTC object generation and one transaction or media transition.

When recording this result, redact credentials, full telephone numbers, private contact lists, and message bodies; retain permitted URI domains, header names, byte counts, hashes, transaction identifiers, timestamps, and state transitions.

Recovery and control flow

Resolve this result at its producing layer: treat enabling as idempotent and inspect stream/session state for the actual requested outcome; after it, a separate UI or watchdog retry must wait until that layer reports a final state.

Do not turn it into an immediate unconditional retry; first determine whether the peer could have accepted the prior request and whether RTC still owns a live transaction.

Example: Two startup components both enable video, then one incorrectly assumes a camera stream is active.

Protocol and object boundary

RTC areaRTC media controller and terminal boundary
Condition to provecode attempted an enable transition for media that is already enabled
Objects to correlateRTC session, media type, terminal/device, stream direction, controller state, acoustic echo cancellation
Safe corrective directiontreat enabling as idempotent and inspect stream/session state for the actual requested outcome

At the boundary, Signaling success does not guarantee that a capture or render device exists or that a media stream can start; separately, it must be read with the rule that AddStream, RemoveStream, hold, and terminal selection change the media state machine and can race with callbacks from the previous operation.

Verification workflow

  1. Locate the earliest producer of this result and verify that no wrapper replaced a more specific lower-layer value.
  2. Collect enough evidence to record media type, enable owner, active streams, and pending controller operations.
  3. Map that producer to the active RTC object and to one SIP, SDP, PINT, presence, media, or profile transition.
  4. Test the competing explanation explicitly, because already enabled does not prove a stream exists or is started.
  5. Perform the narrow correction — treat enabling as idempotent and inspect stream/session state for the actual requested outcome — and validate both protocol completion and object cleanup.

Diagnosis is strongest when object state and protocol trace share timestamps and transaction identifiers; avoid treating packet capture and HRESULT logging as substitutes for one another.

Actions that do not address this condition

Do not confuse it with

It is tied to the condition “code attempted an enable transition for media that is already enabled”; preserve that producing boundary before choosing recovery; the neighboring results below require different control-flow decisions.

RTC_E_NO_DEVICEno preferred or compatible media device is available for the requested RTC media type
RTC_E_MEDIA_NEED_TERMINALthe media stream has no terminal/device bound for the requested direction
RTC_E_MEDIA_AUDIO_DEVICE_NOT_AVAILABLEthe chosen audio capture or render device is unavailable to RTC

Facility equality is not semantic equality; route each contrasted value through its own recovery branch.

Verification after a fix

Keep two tests: one that intentionally produces “code attempted an enable transition for media that is already enabled”, and one that applies the narrow correction; check the callback sequence, 0x80EE006F, final session/profile state, and absence of leaked listeners, dialogs, streams, or registrations.

Technical references


Looking for a different code? Search another status or error code.

Exit mobile version