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.
Problem
videotoolbox-copyreduced some symptoms in a 10-minute trial but reproduced resource-specific failures such asoutput 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
Acceptance criteria