vonH / plugin.video.iplayerwww

BBC iPlayer for Kodi
GNU General Public License v2.0
44 stars 24 forks source link

feature request: Allow playback of live shows from the start #49

Open CaptainTK opened 8 years ago

CaptainTK commented 8 years ago

On the iPlayer website, if you join a live TV stream during a programme you get the option to go back to the beginning of the programme and stream it from there.

primaeval commented 8 years ago

My cache branch was recording from the start of the m3u8 file which is about 4 hours or so behind, until I realised what was going on. If Kodi can't do this you would have to implement a memory/disk buffer and play that. It should keep you busy for a bit.

primaeval commented 8 years ago

The m3u is quite predictable. The chunks follow a numerical sequence and about 8 seconds each I seem to remember. You could extrapolate the chunks into a new m3u file and play that. It would only fail if you don't add enough chunks before a user stops playback. Maybe a service could keep the m3u full.

zawsx commented 7 years ago

Impressive plugin, thanks! I want to watch Match of the Day and skip past the commentary. What I do at the moment is wait till it's been 'live' for 30 minutes and then 'restart programme' - the football coverage is a large enough part of the show for me to skip over all the commentary as I wade through one match at a time. I'm hoping the Beeb have a mechanism like youtube where you specify the stream start URL and it's time offset. If so, might this be nice and quick to implement? :)

CaptainTK commented 7 years ago

The Beeb have a mechanism like that, but I haven't been able to figure out how it works. Specifically, I could not find out how they calculate the offset between current time and the start of the programme.

primaeval commented 7 years ago

I'm pretty sure the chunks are of a fixed length. I think it was 8 seconds as I said above. The thing I don't think is possible in Kodi, but might be now, is to start somewhere else in the hls m3u file apart from the end with calls to ffmpeg. @peak3d might be able to do it in his addon as he seems to have more access to the lower level stream processing.

zawsx commented 7 years ago

You may have already been down this route, but would it help if I got in touch with them in case I can find someone of the developer team who might know? Do they have an SDK for example? If they're supporting other broadcasters they very well might. Pleased to do some legwork (nothing compared to your hundreds of hours of effort) if it helps.

primaeval commented 7 years ago

Be careful. We aren't officially sanctioned iplayer developers.

peak3d commented 7 years ago

Without having any further information, I would say that it is already possible if you tell kodi to continue the stream at 0.0. If inputstream.adaptive detects an live stream, it starts at the end -12 sec.

But kodi can send a seek to inputstream.adaptive wich let you seek to the beginning. Unfortunately I'm not an addon dev so I don't know how to implement this in python addon, but "continue at" is something already supported be kodi API.

primaeval commented 7 years ago

That sounds like what we need. Thanks.

zedrdave commented 3 years ago

Is this enhancement still in the plans? I'm not a Kodi add-on dev, but know my way around Python dev and would be happy to take a stab at a PR, if there's a consensus on how this feature should be implemented (maybe the ideal way would be to have a 'Play from start…' option in the contextual menu, if that's a possibility).

CaptainTK commented 3 years ago

Yes, this would still be on the whislist, but I did not put any efforts in. The main job in this case is to understand how the Beeb's website manages the 'Play from start' functionality rather than implementing it in the add-on.