TV timeshifting (not buffering, actual timeshifting to past shows) (1 Viewer)

velis

MP Donator
  • Premium Supporter
  • July 16, 2009
    237
    50
    Radovljica
    Home Country
    Slovenia Slovenia
    DVB-C has this as does IPTV. In my case, it's IPTV.
    Providers in Slovenia manage IPTV through UDP and timeshifting through RTSP (URL with show ID). Show ID is extracted from EPG.

    This way one can watch shows that were broadcasted in the past. Most of providers offer this for past 3 days, some offer it for past 7 days.

    There could be a setting for URL composition (sprintf of some sort with values from EPG available for use) + a setting for how long EPG entries stay in the database.
     

    velis

    MP Donator
  • Premium Supporter
  • July 16, 2009
    237
    50
    Radovljica
    Home Country
    Slovenia Slovenia
    Actually, no. It's just a field in the WebEPG feed that I get from my provider. Just like start, title, genre, description.
     

    velis

    MP Donator
  • Premium Supporter
  • July 16, 2009
    237
    50
    Radovljica
    Home Country
    Slovenia Slovenia
    I haven't been debugging the provider's network traffic, but this is usually how it goes:

    You get webepg. Each channel has its own ID. Each show has its own ID. Both are part of EPG definition, so the data is there. Aside from actually posting one such record, I don't really see what more I can do here.

    Code:
    <programme id="3438628" start="20140601111000 +0000" stop="20140601120000 +0000" channel="Viasat Nature">
      <title>The Wild</title>
      <description>The magnificent dancing dragons</description>
      <genre>documentary</genre>
    </programme>

    Then you have to issue a RTSP request (MPIPTVFilter)
    Code:
    rtsp://239.10.1.9/timeshift/3438628

    The IP address is IP of the server that handles "Viasat Nature"
    The number at the end is the show ID as received in the EPG.
    The format of the URL most probably differs significantly from provider to provider. I can definitely see variants where channel id would be part of the parametres for one single RTSP server. The URL would have to be configurable.

    Edit: This is actually an "alternate mode" for each of the TV channels. Live TV is handled one way, while timeshifting is handled another. The UI would have to be modified such that it would offer the user to "tune in to live video feed" (as it does now when you select an entry in the EPG) or "watch show from beginning" (for all past shows). Also selection between the two when an ongoing show would be selected.

    Edit2: This could already be implemented for recorded TV shows: The EPG could mark such shows and if user selected them, the recording would begin to play. So the above mentioned menu now has 3 possible items: tune in to live, watch from beginning, watch recorded show.
     
    Last edited:

    velis

    MP Donator
  • Premium Supporter
  • July 16, 2009
    237
    50
    Radovljica
    Home Country
    Slovenia Slovenia
    Oh, sorry, didn't receive notification.
    Anyway, the IP is set by the provider. Just like I have to set up a playlist for live TV feed, I also have to set up a playlist for timeshifted feeds.

    As I said, this is the same as MPIPTVFilter already does, except that it right now doesn't take a dynamic parameter for RTSP protocol - and that dynamic parameter is obtainable in the EPG data. Hence, combining timeshifted URL with the parameter from EPG would lead to appropriate URL that would produce the timeshifted feed at the provider.
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    Okay, I think I understand. Thanks for answering my questions. :)

    Conceptually this feature sounds quite similar to the HbbTV "catch-up" feature which is implemented by various providers. I like the idea. Unfortunately with the HbbTV implementation the content is usually DRM protected, so it can't be viewed in MediaPortal. :(

    This alternative open RTSP/RTP implementation that you've described is very different to HbbTV. It seems like it would be possible to support the feature this way. However, I'm concerned. Before you mentioned it, I had not heard of any provider with such an implementation... and I'm not aware of any standards etc. In other words: I worry that it is a little tricky to implement, will only work for a few people, and could be changed/broken by the provider(s) at any time.

    Based on my concerns, personally I would currently choose not to implement the feature in "core" code... but maybe somebody with access to one of these providers could implement a plugin or modification that would enable the feature to work?
     

    velis

    MP Donator
  • Premium Supporter
  • July 16, 2009
    237
    50
    Radovljica
    Home Country
    Slovenia Slovenia
    Hm, interesting. ALL the providers here in Slovenia have this and it basically didn't change in the years since it became available. When I started using MP, I was the "cool guy" because I had MP's timeshifting feature. Well, that didn't last long. The feature is now available for something like 3 - 4 years by all the providers (they didn't implement it simultaneously, of course).

    I just made an inquiry to Slovenian DVB-C provider: you can watch TV over DVB-C, but for timeshifting you need an STB. So I guess the DVB-C standard itself prescribes nothing towards this feature. Bummer :( Here I thought it was standard :p

    I think this is pretty much supported by all providers that allow you to watch TV on your tablet / PC.

    Anyway, about the plugin: this requires a very versatile programmer because the client has to be fixed to offer the 3 choices mentioned above. Then it needs to tell TV server to tune into something that is not registered right now. Then the TV server would have to decide what to do based on registered channels and data it received.
    However, this is just not how TV server works. It requires scanned channels with static URLs. Well, I guess there could be a special channel "scanned" and one would modify the URL for it just before tuning into it. Might be an issue with PID and SID values though, except if we "recycle" the original TV channel - and even then there's a possibility for something gone wrong. IPTV works a bit differently than antenna, some checks could be discarded for more optimal operation.
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    I think this is pretty much supported by all providers that allow you to watch TV on your tablet / PC.
    Personally I think maybe it would help for you to try to learn more about what "this" is.

    For example, here in New Zealand people have been able to watch "on demand" shows on phones and tablets for some time. Each broadcaster has had their own website. You search for the program you want by name. Some programs are not available. For the programs that are available, usually only a few most recent episodes are available (ie. really old ones not available). No movies.

    Recently the free-to-air broadcasters launched "Freeview+", which is an HbbTV implementation of the concept you described. Old programs are visible in the guide. There is a "connection" from the guide program to the related on demand program. However, all the content on the on demand platforms is BrightCove etc. protected. So, there's probably no hope/point in MP implementing support for that.

    My point is: not all implementations of this feature are the same. The detail is important in order to know whether it is feasible to implement support in MP.

    However, this is just not how TV server works. It requires scanned channels with static URLs.
    I don't fully agree. Scanning itself is one example of where you can ask TV Server to tune a completely custom defined channel. I think this should be possible from the client side too. If not, it shouldn't be too hard to add such an API function. Of course the URL will always have to be static. In practise this means you can only watch one program at a time, but I thought that was what you wanted.

    Might be an issue with PID and SID values though
    There's no solution for the changing SID in TVE 3, but there is in TVE 3.5. You can just pass value 0. Both TVE 3 and 3.5 support changing PMT PID. Just pass value 0.
     

    Users who are viewing this thread

    Top Bottom