Skip to content

macOS: make VideoToolbox hardware decode per-resource and observable #78

Description

@tcconnally

Problem

videotoolbox-copy reduced some symptoms in a 10-minute trial but reproduced resource-specific failures such as output image buffer is null: -12909, hardware accelerator errors, recovery exhaustion, and fallback activity. A global hardware-decoder default is unsafe for the current library.

Scope

  • Keep decoder choice per resource/codec/container class until a known-good corpus is established.
  • Count hardware attempts, successes, software fallbacks, recovery exhaustion, and quarantine separately.
  • Ensure one bad resource cannot change the wall-wide decoder policy.
  • Preserve bounded software fallback and resource quarantine.

Acceptance criteria

  • The known-good pilot corpus has zero hardware faults and audio underruns.
  • Malformed resources fall back once and then quarantine without a retry loop.
  • Final stats identify requested decoder, active decoder, and fallback reason per cell.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions