What does HRESULT 0xC00D1BD7 (NS_E_NO_AUDIO_TIMECOMPRESSION) mean?

 
Previous Next
NS_E_INVALID_TIMECODE NS_E_NO_TWOPASS_TIMECOMPRESSION

NS_E_NO_AUDIO_TIMECOMPRESSION

The failing boundary in the Encoder object model

The useful reading of NS_E_NO_AUDIO_TIMECOMPRESSION (0xC00D1BD7) is not merely the standard message shown above. It locates time compression is enabled for a session without an audio stream inside preprocessing, analysis and multipass constraints.

Inverse telecine, time compression, image preprocessing, content analysis and two-pass encoding require access to particular source types and often require rereading or temporarily storing the source in a session that returns NS_E_NO_AUDIO_TIMECOMPRESSION. Live, looping and device inputs impose additional restrictions at the no audio timecompression checkpoint.

Evidence that separates this code from a wrapper error

The underlying audio or video source may be healthy while the requested preprocessing workflow is impossible for that source lifecycle in a session that returns NS_E_NO_AUDIO_TIMECOMPRESSION. For example, a video-only conversion inherits a preset that compresses presentation time. Preserve the NS_E_NO_AUDIO_TIMECOMPRESSION distinction before a UI layer converts the result into a broad start, capture or profile failure.

FieldWhat to preserve
Decisive valuesprofile ContentType, audio source count and time-compression setting
Producing objectsource type, live/file flag, Repeat flag, pass count, temporary-storage setting, preprocessing filters, analyzer frame count, input frame rate, content EDL path and selected codec mode
Session correlationthe same source-group generation, audience index, object identity and callback sequence that produced NS_E_NO_AUDIO_TIMECOMPRESSION
Lower-level evidencethe first COM, driver, file-system or codec HRESULT observed before the Encoder mapped the condition to NS_E_NO_AUDIO_TIMECOMPRESSION
Controlled comparisona known-good session that changes only the setting named in the no audio timecompression boundary

Interpret the next measurement

ObservationHow to interpret it
Observation that supports this resultThe decisive evidence is profile ContentType, audio source count and time-compression setting. It confirms time compression is enabled for a session without an audio stream in the same object generation.
Observation that points to an earlier failureThe recorded values satisfy the no audio timecompression rule, but a source, driver, COM activation or file operation returns a different HRESULT first.
Observation that points to a later failureThe Encoder passes this boundary (time compression is enabled for a session without an audio stream), but a codec, archive or broadcast sink then fails in a subsequent stage.
Verification after correctionApply this isolated change: add the required audio stream or disable time compression. The original no audio timecompression call should then advance past the same checkpoint.

The operational impact of NS_E_NO_AUDIO_TIMECOMPRESSION is limited to the preprocessing, analysis and multipass constraints transition that owns time compression is enabled for a session without an audio stream. For NS_E_NO_AUDIO_TIMECOMPRESSION, it does not, by itself, prove that every input is corrupt, every codec is missing or the complete Windows Media installation is unusable. In the representative case where a video-only conversion inherits a preset that compresses presentation time, keep the first failing call and its object identity so a later wrapper cannot replace the no audio timecompression evidence.

Test the condition without rewriting the session

  1. Record 0xC00D1BD7, NS_E_NO_AUDIO_TIMECOMPRESSION, the Encoder version and the exact API call or property access that returned it.
  2. Export the current .wme or .prx configuration, then capture profile ContentType, audio source count and time-compression setting.
  3. For NS_E_NO_AUDIO_TIMECOMPRESSION, verify the preprocessing, analysis and multipass constraints precondition without changing the source, profile and output sink at the same time.
  4. Run one controlled comparison in which only this condition changes: add the required audio stream or disable time compression.
  5. After the change, recreate the affected Encoder object rather than assuming the existing graph discarded its earlier no audio timecompression state.

Interpret neighboring results carefully

ResultWhy it is a different boundary
NS_E_BAD_CONTENTEDLloading or parsing the voice-codec content optimization EDL
NS_E_NO_TWOPASS_TIMECOMPRESSIONtime compression is combined with a two-pass encoding workflow
NS_E_NO_FRAMES_SUBMITTED_TO_ANALYZERcontent analyzer completes or is queried without receiving any video frames

Resolution and verification

The direct repair for this occurrence is to add the required audio stream or disable time compression. Recreate the affected source group, profile or output object, repeat the same operation, and confirm that the first failing HRESULT no longer comes from the no audio timecompression checkpoint.

Do not enable several preprocessing features at once during diagnosis; validate the plain one-pass source first, then add one transformation with its required storage or analysis stage in a session that returns NS_E_NO_AUDIO_TIMECOMPRESSION.

Why the audio-stream check is decisive

For this Encoder feature, a video-only profile is not equivalent to an audio/video profile with muted or silent audio. Inspect both the profile ContentType and the source-group stream counts: an audio object that was created but never assigned an input does not satisfy the usable-audio requirement. Likewise, adding an audio stream only to one audience can leave the overall session topology inconsistent.

A controlled test should first disable time compression and prove that the video-only source encodes normally. Then repeat with a real, format-negotiated audio source and the same video, codec and output settings. This separates the feature precondition from damaged video, invalid marks or a two-pass restriction. Do not create a dummy audio source whose format negotiation fails earlier, because that replaces the original result with an unrelated capture or profile error.

References for the NS_E_NO_AUDIO_TIMECOMPRESSION boundary


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