Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#12168 closed Patch - Feature (fixed)

Extend IPTV recorder to support TS streams over HTTP 0.27

Reported by: lincoln@… Owned by: paulh
Priority: minor Milestone: 0.28
Component: MythTV - Recording Version: 0.27-fixes
Severity: medium Keywords: IPTV, HTTP, DREAMBOX
Cc: Ticket locked: no

Description

Hi

I have made a feature patch against fixes/0.27 that adds IPTV support to http transport streams. This enables direct support with a DM500 Dreambox (Enigma 1) but should work with many stb's.

The patch changes the following:

  1. New HTTPTSStreamHandler class (subclass of IPTVStreamHandler) to enable stream support for Http TS streams.
  1. Extend iptvtuningdata to include a protocol type for udp, rtp, rtsp, http_hls, http_ts. This is used to determine the type of stream handler to use and differentiates between http-hls and http-ts.
  1. Extend ChannelUtil::GetIPTVTuningData to include setting the protocol type (above) in iptvtuningdata. UDP, RTP, RTSP and HTTP are determined by the URL name, and HLS and TS are differentiated by downloading a limited sample of the URL to check if it is an HLS playlist or a HTTP_TS video stream.
  1. Extend MythSingleDownload? to support a maximum file size limit. Without this, if the URL from (3) is a video stream and not a playlist then the download would not terminate until the 30 second timeout. Limiting file size solves this problem and still allows accurate testing for a playlist.
  1. Extend tv_rec to include a new system event for Tuning Timeout. This allows user to run a script to reboot the STB in the event that the channel lock fails due to the stb freezing.

This patch is succeeds #11487.

Attachments (2)

iptv_extension_01.patch (30.3 KB) - added by lincoln@… 5 years ago.
Patch for fixes/0.27
iptv_extension_master_01.patch (30.2 KB) - added by lincoln@… 5 years ago.
Patch against current master

Download all attachments as: .zip

Change History (9)

Changed 5 years ago by lincoln@…

Attachment: iptv_extension_01.patch added

Patch for fixes/0.27

comment:1 Changed 5 years ago by Karl Egly

see also #11487

Changed 5 years ago by lincoln@…

Patch against current master

comment:2 Changed 5 years ago by Karl Egly

With more MPEG-2 TS via HTTP streams on the Internet some appear to be unrestricted (no GEOIP, so good for testing) e.g. http://x4012c4000.edge.core-cdn.net/40000mb/live/4672family/familytv.ts

comment:3 Changed 4 years ago by paulh

Milestone: unknown0.28
Owner: changed from JYA to paulh
Status: newassigned

comment:4 Changed 4 years ago by Lincoln Rogers <lincoln@…>

Resolution: fixed
Status: assignedclosed

In dcf71a2223653632ff3cda79c94c6d9b6bbe29be/mythtv:

Extend IPTV recorder to support TS streams over HTTP

  1. Subclass IPTVStreamHandler to HTTPStreamHandler to add IPTV stream support for Http TS streams.
  2. Extend iptvtuningdata to include a protocol type for udp, rtp, rtsp, http_hls, http_ts.
  3. Add to ChannelUtil::GetIPTVTuningData to set the type based on URL and by testing if the URL is a HLS playlist
  4. Extend MythSingleDownload? to support a maximum file size limit. Without this, if the URL from (3) is actually a video stream then the download would not terminate until the 30 second timeout.
  5. Extend tv_rec to include a new system event for Tuning Timeout. Allows user to run a script to reboot a STB.

Closes #12168

Signed-off-by: Paul Harrison <pharrison@…>

comment:5 Changed 4 years ago by charles.bovy@…

I've been applying the patch against fixes0.27 plus commit e740947. Have been running this for 2 months now and happily recording IPTV using HTTPTS. Can you apply to fixes0.27 as well?

comment:6 Changed 4 years ago by charles.bovy@…

comment:7 Changed 4 years ago by charles.bovy@…

For the record: pull request executed and fixes/0.27 works as well.

Note: See TracTickets for help on using tickets.