obs-outputs: Add eRTMP/eFLV multitrack support
Description
Add eRTMP multitrack video support for the rtmp output and "full" eFLV support for the FLV output (both additional video codecs and multitrack video)
Motivation and Context
This allows transmitting multiple video streams within the same RTMP connection; it's used for Twitch Enhanced Broadcasting to allow multiple renditions to be sent through a single RTMP connection, helping ensure that renditions remain aligned
How Has This Been Tested?
It's being used in the Twitch Enhanced Broadcasting Beta
Types of changes
- New feature (non-breaking change which adds functionality)
Checklist:
- [x] My code has been run through clang-format.
- [x] I have read the contributing document.
- [x] My code is not on the master branch.
- [x] The code has been tested.
- [x] All commit messages are properly formatted and commits squashed where appropriate.
- [x] I have included updates to all appropriate documentation.
With https://github.com/obsproject/obs-studio/pull/10494 merged, this can be rebased and undrafted.
With #10494 merged, this can be rebased and undrafted.
@RytoEX: done
@RytoEX: nits should be addressed and squashed (and rebased)
Off-thread discussion indicates that this looks good. Squash the commits appropriately and we'll give it a (hopefully) final pass.
Off-thread discussion indicates that this looks good. Squash the commits appropriately and we'll give it a (hopefully) final pass.
@RytoEX: squashed and rebased