Forgive me, I usually don't open a PR of this length but it's covers a big effort and a lot of exploration. In general, this covers the requested example app for live video streaming from iOS.
The sample app itself takes a stream key and connects or an rtmp URL incase you'd like to point at a staging service instead.
There's a couple optional tasks that could be done which would be helpful for developers and that I can't help with myself:
:books: GitHub pages hosted docs
Under this repo's settings, point GitHub pages to the /docs directory.
:nut_and_bolt: Offer the library through a dependency manager
If you'd like to submit this as a library to CocoaPods, follow these steps:
tag the repo
git tag -a 0.0.1
register as a pod contributor
pod trunk register {email} 'Mux, Inc.'
submit the pod
pod trunk push MuxLive.podspec --allow-warnings
I've linted the podspec, so it should work.
MuxLive passed validation.
:sunrise: Future Ideas
From this point, it would be awesome to create a more modern Swift fork/version of the underlying LFLiveKit dependency:
enabling the ability to take advantage of Metal (high performance shaders for filtering, encoding, and rendering)
integrate with more advanced features from AVFoundation decoupling from the core networking components (features such as continuous autofocus, YUV pixel buffer formats, ability to start/stop streams dynamically, etc.)
use more clearly documented and managed versions of librtmp
Ultimately, a project that is just more actively maintained with a community behind it would be the dream.
From a services perspective and integrating with Mux, the library is setup such that you can extend it to add API support within the library itself. Another idea could be to provide template examples for integration with GraphQL servers. I know you folks have great ideas on the services front but just wanted to my personal asks:
Hey Mux,
Forgive me, I usually don't open a PR of this length but it's covers a big effort and a lot of exploration. In general, this covers the requested example app for live video streaming from iOS.
The sample app itself takes a stream key and connects or an rtmp URL incase you'd like to point at a staging service instead.
There's a couple optional tasks that could be done which would be helpful for developers and that I can't help with myself:
:books: GitHub pages hosted docs
Under this repo's settings, point GitHub pages to the /docs directory.
:nut_and_bolt: Offer the library through a dependency manager
If you'd like to submit this as a library to CocoaPods, follow these steps:
tag the repo
register as a pod contributor
submit the pod
I've linted the podspec, so it should work.
:sunrise: Future Ideas
From this point, it would be awesome to create a more modern Swift fork/version of the underlying
LFLiveKit
dependency:Ultimately, a project that is just more actively maintained with a community behind it would be the dream.
From a services perspective and integrating with Mux, the library is setup such that you can extend it to add API support within the library itself. Another idea could be to provide template examples for integration with GraphQL servers. I know you folks have great ideas on the services front but just wanted to my personal asks:
That's it! Thanks so much. 🙌