| Previous | Next |
| MF_E_NOT_FOUND | MF_E_NO_CLOCK |
MF_E_NOT_AVAILABLE
What the code tells you
MF_E_NOT_AVAILABLE (0xC00D36D6) is a failure result from Windows Media Foundation. The generated section above already contains the platform message; the useful extra information is that this result isolates the object recognizes the requested value or operation but cannot supply it in its present configuration or moment.
The producer is the component that owns the optional value or asynchronous state, so diagnosis should begin with that object and its state rather than with a broad reinstall or an unrelated codec change. A representative occurrence is a duration query is made before a network source has completed enough opening work to publish duration.
Read the call sequence as a timeline. First, the application reaches the component that owns the optional value or asynchronous state. Next, the component evaluates the object recognizes the requested value or operation but cannot supply it in its present configuration or moment. Only after the MF_E_NOT_AVAILABLE checkpoint can a wrapper, user interface, or fallback path emit a less specific message.
Build a useful incident record
- Exact request: method name, all identifiers, units, flags, stream number, requested action, and
MF_E_NOT_AVAILABLE. - Object state: the current lifecycle state, selected stream, pending operation, requested attribute, and the event sequence leading to the call.
- Correlation for
MF_E_NOT_AVAILABLE: callback cookie, object generation, URL or file identity, device identity, and timestamps from the same attempt. - Underlying cause: the first Win32, COM, network, driver, policy, or component error reported before
0xC00D36D6.
Reproduce without erasing context
Use one controlled experiment: wait for the documented readiness event or enable the required stream, then repeat the identical query. A useful MF_E_NOT_AVAILABLE comparison changes exactly that variable; changing content, account, proxy, device, components, and version together makes attribution impossible.
| Outcome | Interpretation |
|---|---|
| The same checkpoint now succeeds | The changed condition belongs to the producing boundary for MF_E_NOT_AVAILABLE. |
| A more specific earlier HRESULT appears | Preserve it; MF_E_NOT_AVAILABLE was probably a wrapper or terminal state. |
| The operation advances and fails later | The MF_E_NOT_AVAILABLE condition is fixed even though the complete workflow still has another defect. |
| No behavior changes | Restore the MF_E_NOT_AVAILABLE baseline and test another documented prerequisite instead of stacking workarounds. |
Comparison with adjacent conditions
| Related code | Why it is not interchangeable |
|---|---|
MF_E_NOT_FOUND | The specified object or value does not exist; compare this boundary specifically with MF_E_NOT_AVAILABLE. |
MF_E_THINNING_UNSUPPORTED | This component does not support stream-thinning; compare this boundary specifically with MF_E_NOT_AVAILABLE. |
MF_E_UNRECOVERABLE_ERROR_OCCURRED | An unrecoverable error has occurred; compare this boundary specifically with MF_E_NOT_AVAILABLE. |
The important distinction is this: MF_E_NOT_FOUND indicates absence from a namespace, while this result commonly reflects temporary or configuration-dependent availability. For MF_E_NOT_AVAILABLE, searching only for the visible English message collapses different states; the constant and 0xC00D36D6 retain the boundary.
Resolution and proof
Apply the narrow remedy: move the request to the supported state or provide the prerequisite data; repeated blind polling can hide the event-order bug. Then discard stale media objects, pending callbacks, cached provider sessions, or installer state as appropriate and rerun the exact request that originally returned MF_E_NOT_AVAILABLE.
A confirmed MF_E_NOT_AVAILABLE repair produces the requested stream, attribute, state transition, license decision, store callback, or setup result. Suppressing MF_E_NOT_AVAILABLE, broadly enabling legacy controls, or falling back to unrelated content is not proof of repair.
References
- Media Foundation architecture — reference used for the
MF_E_NOT_AVAILABLEcheckpoint. - Media Foundation error codes — reference used for the
MF_E_NOT_AVAILABLEcheckpoint. - Media sources — reference used for the
MF_E_NOT_AVAILABLEcheckpoint. - Media Foundation events — reference used for the
MF_E_NOT_AVAILABLEcheckpoint.
Looking for a different code? Search another status or error code.