Add opus remux for jellyfin 10.10 and customizable bluetooth device icons #86
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.
Jellyfin 10.10 introduces remux support for UniversalAudioController, allowing direct copy of the codec without transcoding. This feature is particularly useful for us as the iOS native player can play Opus audio, just not within the Ogg container. This PR adds an opus in mp4 profile when the server version is 10.10 or higher enables the server to directly copy opus during HLS streaming. For downloads, the server will provide an MP4 file with Opus directly copied in the container. I have tested and verified that both streaming and downloads works with all the iOS versions we support (iOS 17 and above).
This also adds a new option that enables users to customize the default Bluetooth device icon rather than to always use the hifi speaker icon. I hope Apple provides an easier way to at least identify their own headphones. The AirPods allow users to rename them, making it impossible to simply add overrides with the route name, as we currently do for some Bluetooth headphones.