feat: VOD-audio unlocker script + per-destination audio routing (0.1.13) - #50
Merged
Conversation
Audio routing (#44): a per-destination "Audio track" selector (Auto / Both / Track 1 / Track 2). New h264::AudioEgress + flatten_multitrack_audio; each non-Twitch destination keeps a single flattened track, falling back to the live track when the chosen one isn't being sent so a destination never goes silent. Only Twitch passes every track through (VOD audio). Sends the clean track to YouTube to dodge copyright while Twitch keeps both. Twitch VOD audio on the InstantClone service: OBS hardcodes its VOD Track to the service named "Twitch", so it's unlocked with a bundled OBS Lua script (optional-vod-unlocker.lua), one-click download from the dashboard into OBS's scripts folder. The dashboard steers by detected OBS version: the script is REQUIRED on OBS 32.2+ (that release locked the built-in VOD Track to Custom services) and the legacy VOD-Track-checkbox / EB+VOD launcher is hidden there; older OBS keeps the built-in method. Wizard reworked to the script flow and no longer sets the legacy IVS flag. Bump to 0.1.13. Also fixes the permanent "update available" nag on 0.1.12, whose package version was never bumped so it self-reported as 0.1.11 forever. CHANGELOG restructured (0.1.12 Kick RTMPS + 0.1.13), README EN/ES updated, release CI stages the Lua script.
Owner
Author
AddedThis added #44 so we closing it :D |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two features for the VOD-audio story plus the 0.1.13 version fix.
🎙️ Twitch VOD audio on the InstantClone service (experimental)
OBS hardcodes its built-in VOD Track to the service literally named "Twitch" (
ServiceSupportsVodTrack == {"Twitch"}), so it's unavailable on the InstantClone service. A bundled OBS Lua script (optional-vod-unlocker.lua) unlocks it on any service by attaching the same second audio encoder OBS's own VOD Track would..luastraight into OBS's scripts folder./obs/register-statusnow returnsobs_version+vod_script_installed; release CI stages the script as a release asset.vod_audioflag.🎚️ Per-destination audio track routing (#44)
A per-destination Audio track selector (Auto / Both / Track 1 / Track 2). New
h264::AudioEgress+flatten_multitrack_audiomirror the existing video path. Each non-Twitch destination keeps a single flattened track (AAC rewritten to legacy0xAF), falling back to the live track when the chosen one isn't being sent so a destination never goes silent. Only Twitch passes every track through. Send the clean Track 2 to YouTube to dodge copyright while Twitch keeps both.🩹 0.1.13 + version-nag fix
Bumped to 0.1.13. Fixes the permanent "update available" nag on 0.1.12, whose package version was never bumped (it self-reported as 0.1.11 forever). CHANGELOG restructured (0.1.12 Kick RTMPS + 0.1.13), README EN/ES updated.
Tests
cargo fmt+clippyclean, 282 tests green, release build OK. New coverage forflatten_multitrack_audio(OneTrack / ManyTracks / MTMC),select_audio_bytes(passthrough / per-track / live-track fallback), andaudio_trackconfig round-trip.Notes
releases/latest/download).