futzu / SCTE-35_HLS_x9k3

HLS and SCTE-35 x9k3 is a HLS Segmenter with SCTE 35, and Live Streaming from Non-Live Soures and Looping.
67 stars 17 forks source link

When can we expect abr ? #17

Closed gauravv5 closed 7 months ago

gauravv5 commented 1 year ago

Hi Mate,

Looking for your latest development release.

Regard Gaurav

futzu commented 1 year ago

Here's the deal. I can do adaptive bitrate if the video is on the same server, has to be local. When I do it over the network, I can keep three variants in sync, if I have a fast network and three cores available. umzz(ultra mega zoom zoom) can do both of those two scenarios. umzz takes a master.m3u8 as input and rewrites all the m3u8 files with SCTE-35, and re-segments. The bottle neck is re-segmenting to accommodate splicing for the SCTE-35.

My current thinking is to stop re-segmenting and just rewrite the m3u8 files with the SCTE-35, however, that means that accuracy is determined by segment size. if you have 6 or 10 second segments, your splice points can be up to 3 or 5 seconds off respectively. The splice point needs to be at the start of a segment. If the SCTE-35 occurs in the first half of the segment I round it down to the segment start, more than halfway, I round it up to the next segment. Since I'm not re-segmenting, I don't parse any of the segments, I just rewrite the m3u8 files. A company called tunein.com has been financing my R&D for the last few months, and that's what we're working on, but we're doing it in Go. We are currently testing.

futzu commented 10 months ago

Now. It's called umzz