Skip to content
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

Overhaul HLS streaming #3274

Merged
merged 7 commits into from
Feb 24, 2023

Conversation

DingDongSoLong4
Copy link
Collaborator

@DingDongSoLong4 DingDongSoLong4 commented Dec 13, 2022

This is split off of #3058, without DASH and keeping the legacy live transcoding in. I've refactored it a lot to be more modular so adding DASH to this is very straightforward (#3275).

What I've changed with regards to the actual streaming logic is that now ffmpeg writes only to temp files and stash is responsible for renaming them to the actual segment files before they are streamed. This means that the incomplete last segment that ffmpeg leaves behind after exiting can be easily discarded.

From my simple testing this seems to have finally fixed all of the the skipping/stuttering issues, for both HLS and DASH, but more thorough testing is welcome.

Fixes #2901
Should close #2831

Should fix #2688
Should fix #2609

Could fix #2934

@DingDongSoLong4 DingDongSoLong4 force-pushed the hls-streaming-overhaul branch 2 times, most recently from d6c2361 to 0c4eced Compare February 14, 2023 20:30
@WithoutPants WithoutPants added this to the Version 0.20.0 milestone Feb 16, 2023
@WithoutPants WithoutPants added the improvement Something needed tweaking. label Feb 16, 2023
@WithoutPants WithoutPants merged commit 05669f5 into stashapp:develop Feb 24, 2023
DogmaDragon added a commit to stashapp/Stash-Docs that referenced this pull request Feb 24, 2023
@DingDongSoLong4 DingDongSoLong4 deleted the hls-streaming-overhaul branch March 3, 2023 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment