-
-
Notifications
You must be signed in to change notification settings - Fork 130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make encoder header more robust by using a callback. #3276
Conversation
Maybe I'm too late because you're working on a fix already, but here's an observation of the original issue that I'd like to share with you: |
@DigiBC yeah that tracks. We had a mechanism to keep the last ogg header on hand to send to the client on initial connection and it got broken somehow. This PR fixes it. Couple of things worth noting:
Overall, and quite regretfully, looking at back over time really shows that the ogg spec for chaining tracks is pretty bad. It was never well understood or implemented correctly and we might have had it wrong for some formats for years too (see this explanation). At this point, I would recommend avoiding the ogg container unless you are willing to strip all track marks and metadata. The number of decoder/clients who get it wrong is just too big. |
Many thanks for the explanation! |
Ha yes, if you have control over the listener or for a limited exposure it's a different story of course. |
After testing the artefact liquidsoap-fix-3265_2.3.0-ubuntu-jammy-1_amd64.deb I can confirm that it works again! |
Great! Just pushed the patch to the next rolling release! |
Fixes: #3265