I've had many discussions on the Pion Slack group regarding who should generate the offer
at the subscriber side of the SFU: SFU vs subscriber.
It was always or often said the SFU should generate the offer.
I never could get a straight answer as to why this was better, and could not see a large advantage
regarding media negotiation.
Also, for us, with simple HTTP signaling, it is nice for the sub to generate it, as offer goes in body, and ans goes in resp.
I finally see a strong case for why the SFU should generate the offer, and we should then have double-HTTP requests in order to do so.
If the SFU (the upstream) generates the offer, the downstream can use the number of audio+video tracks
to generate the answer. So, if the upstream offers 20 tracks of video, the downstream-SFU can craft an
answer to accept 20 all 20 tracks.
This is important as part of an SFU hierarchy.
With the current model (downstream-offers), the downstream must choose how many tracks to receive without
regards to how many the upstream has available.
The current code allows three tracks.
We really want to the downstream-SFU to forward all tracks, whether 3 or 100.