| Previous | Next |
| NS_E_INPUT_WAVFORMAT_MISMATCH | NS_E_NO_PAL_INVERSE_TELECINE |
NS_E_RECORDQ_DISK_FULL
How to interpret the code in a real encoding session
0xC00D1BA3 is named NS_E_RECORDQ_DISK_FULL. Its practical scope is temporary record queue reaches its configured minimum-free-space threshold, which belongs to archive and local-output configuration rather than to every part of Windows Media playback or Windows itself.
Mechanism and point of failure
Archive output is configured separately from source capture and broadcast delivery in a session that returns this result. The encoder validates archive type, operation, destination path, collision with input files, available disk space and whether an archive session is actually active.
A live broadcast may continue while local archival fails, because the broadcast sink and archive sink have different paths and state in a session that returns this result. A typical reproduction is: two-pass capture fills the temporary volume even though the final archive volume has space. This makes the first result from the Encoder more valuable than a later generic message.
Reproduction matrix
| Field | What to preserve |
|---|---|
| Decisive values | queue path, free space, reserved threshold, queue growth rate and pending pass/record work |
| Producing object | IWMEncFile.LocalFileName, auto-archive type and operation, canonical input/output paths, free and reserved disk space, temporary record queue, archive state and file-system HRESULT |
| Session correlation | the same source-group generation, audience index, object identity and callback sequence that produced this result |
| Lower-level evidence | the first COM, driver, file-system or codec HRESULT observed before the Encoder mapped the condition to this result |
| Controlled comparison | a known-good session that changes only the setting named in the recordq disk full boundary |
Evidence matrix
| Observation | How to interpret it |
|---|---|
| Observation that supports it | The decisive evidence is queue path, free space, reserved threshold, queue growth rate and pending pass/record work. It confirms temporary record queue reaches its configured minimum-free-space threshold in the same object generation. |
| Observation that points to an earlier failure | The recorded values satisfy the recordq disk full rule, but a source, driver, COM activation or file operation returns a different HRESULT first. |
| Observation that points to a later failure | The Encoder passes this boundary (temporary record queue reaches its configured minimum-free-space threshold), but a codec, archive or broadcast sink then fails in a subsequent stage. |
| Verification after correction | Apply this isolated change: free or move storage and size the queue for the intended session before restarting. The original recordq disk full call should then advance past the same checkpoint. |
The operational impact of it is limited to the archive and local-output configuration transition that owns temporary record queue reaches its configured minimum-free-space threshold. In the representative case where two-pass capture fills the temporary volume even though the final archive volume has space, keep the first failing call and its object identity so a later wrapper cannot replace the recordq disk full evidence.
Minimal experiment
- Record
0xC00D1BA3, it, the Encoder version and the exact API call or property access that returned it. - Export the current
.wmeor.prxconfiguration, then capture queue path, free space, reserved threshold, queue growth rate and pending pass/record work. - verify the archive and local-output configuration precondition without changing the source, profile and output sink at the same time.
- Run one controlled comparison in which only this condition changes: free or move storage and size the queue for the intended session before restarting.
- After the change, recreate the affected Encoder object rather than assuming the existing graph discarded its earlier recordq disk full state.
Do not collapse these results together
| Result | Why it is a different boundary |
|---|---|
NS_E_ARCHIVE_SAME_AS_INPUT | canonical path comparison detects that archive output would overwrite an input |
NS_E_NOTARCHIVING | an archive-only operation issued when no archive sink is active |
NS_E_ARCHIVE_FILENAME_NOTSET | starting local archival without a destination file name |
What to change—and what to leave alone
Change the smallest responsible precondition: free or move storage and size the queue for the intended session before restarting. While retesting it, keep all unrelated source, audience and output values fixed until the same call is repeated.
Do not overwrite or delete the partial archive before recording its path, size and timestamps; those details distinguish naming, disk-space and writer failures in a session that returns it.
Authoritative documentation
- WMEncoder.File and archive output.
- IWMEncStatistics.IndexerStats.
- WMEncoder.Broadcast.
- WMEncoder.Flush.
Looking for a different code? Search another status or error code.