Yandex source-audio recovery
- Replaced the obsolete standalone Android VR download with source audio
obtained through YouTube's current player request stack and active media
transport. - Source acquisition works with Spoof video streams both disabled and
enabled by reusing a compatible cached response or requesting a fresh
direct-DASH player response. - Low-bitrate Opus is preferred; byte ranges, content lengths, part ordering,
bounded memory use, cancellation, and cleanup are validated. Unsupported
bodyful SABR responses are rejected instead of being treated as audio.
Multipart, proxy, and timing reliability
- Added exact multipart streaming with visible
N/Mprogress and separate
acquisition, upload, Yandex-status, translated-URL, and playback failures. - Restored ETA and readiness polling when switching between standard and
lively voices. - Added at most two retries of the same signed proxy upload part after
transient429,502,503, or504responses with bounded backoff. - Preserved the targeted
413large-body fallback for known limited public
workers without changing direct or custom proxy routes. - Yandex
STATUS_FAILEDis now reported as a server translation failure, not
as a translated-audio playback error.
Compatibility and diagnostics
- Uses structural Morphe request hooks rather than a standalone scraper tied
to one YouTube version. - Safe diagnostics avoid signed URLs, cookies, tokens, private headers, and
video identifiers. - The player media-transport patch is now an internal dependency and no longer
appears as a separate Universal patch in Morphe Manager.
Validation
- 77 YouTube unit tests passed with zero failures or errors.
- Local Android patch-bundle build passed.
- Device tests covered spoofing off/on, standard/lively voices, multipart
progress, and an 18-part upload through the public proxy.
Acknowledgment
The player-session audio-acquisition direction was inspired by
ilyhalight's MSE-based fix for voice-over-translation issue #1820.
Dual VoT's Android/Morphe implementation was written independently. It does not include or copy any JavaScript code from ilyhalight's project.
MPP SHA-256:
6AA9C471E16B0BB978D1672BAB5A7B929DC8A52BBDCCC97492D7475FA0801A92