Project

General

Profile

Bug #5014

Feature #4242: Set offset in HTS m3u8 MUX playlist for IPTV

Current time isn't used when opening an *.m3u8 stream

Added by Stephan Schorn over 6 years ago. Updated over 6 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
IPTV
Target version:
-
Start date:
2018-03-21
Due date:
% Done:

0%

Estimated time:
Found in version:
4.2.3-20
Affected Versions:

Description

The German TV station "Das Erste" offers to jump back half an hour within its live stream.
For this to happen, the web player doesn't open another m3u8 file. It just jumps back within the current stream as if you had already been playing the stream for half an hour.
So I assume, the web player uses the current time of the computer to determine where to start within the given m3u8 file.
If I give the m3u8 file to VLC, it starts the stream where it's supposed to start it - "now". So far so good.
VLC also seems to use the computer's current time - and not any information on the website itself.

But TVHeadend will instead always start "half an hour ago" within the stream.
I 've added the station "the regular way" entering the plain url of the stream as a new mux without any pipe commands.
I assume that TVHeadend starts "in the beginning of the stream" without paying any attention to the current time.

The expected behavior is to start at the "current" point of the stream using the computer's time.

There is the url of the m3u8 and the url of the website of the stream:
https://daserstelive-lh.akamaihd.net/i/daserste_de@38086/index_2692_av-p.m3u8
https://live.daserste.de/

The stream is geoblocked, but this tv station also offers non-geoblocked version of the stream with slightly different content.
I don't know the streaming url of the non-geoblocked version.

I don't expect anyone to make TVheadend able to use the "jump back" feature on purpose, I'd just be really happy if you made TVHeadend NOT using it ;-)

I'll gladly give further information on my exact setup if this becomes neccessary.

History

#1

Updated by Hanspeter Müller over 6 years ago

Thank you so much for reporting this, i thought i was going crazy because one of my channels is having an exact 30min delay (US channel, but also on akamai) since i've "tinkered" with the settings (namely, moved from a pipe handler to direct-m3u8-url like you) ;)

As a quick workaround you can set "Use A/V library" to use, the ffmpeg-hls-parser seems to work-as-intended...

But, this "bug" is actually very interesting, it means that at least the big video-cdn like akamai have a HUUUUUGE (/trump) Buffer for any stream, is it feasible to use this as a timeshift-buffer to jump back?

#2

Updated by Stephan Schorn over 6 years ago

Technically, it would be absolutely possible to use this as a timeshift-buffer. But you would have to tinker with not only the code of the m3u8 encoder but also with the code of the timeshift stuff. That's some work...
Whenever someone is opening an akamai-stream, TVheadend had to start the playback "now" an instantly make the timeshift-buffer believe, it had already played the stream for half an hour. That would mean to layers of timeshift-buffers...
The longer I think about it, the more terrible it gets... :-(

The workaround with "use A/V library" sadly doesn't work for me because I'm on libreelec and this option is not there in the webinterface. It isn't just hidden via css, it really isn't there in any way.

But you could help to fix the bug:
Please add your problematic stream to this bug report, too. Most streams are geoblocked and the devs live all over the world.
It would make their work easier if we had a huge range of streams to chose from.

#3

Updated by Jaroslav Kysela over 6 years ago

I'm aware of this (and it was already reported). TVH currently plays all chunks in m3u.

#4

Updated by Stephan Schorn over 6 years ago

I'm really sorry if I've produced a duplicate.
But sometimes it's difficult to keep track of all the keywords that could"ve been used by another bug reporter ;-)

#5

Updated by Jaroslav Kysela over 6 years ago

  • Status changed from New to Rejected
  • Parent task set to #4242

Dup of #4242.

Also available in: Atom PDF