]> git.ipfire.org Git - thirdparty/tvheadend.git/log
thirdparty/tvheadend.git
7 years agochannel: Allow merging on bouquet. (#4714).
E.Smith [Wed, 15 Nov 2017 14:03:28 +0000 (14:03 +0000)] 
channel: Allow merging on bouquet. (#4714).

Previously the merging of channels with the same name
on a bouquet did not work since we explicitly excluded
these channels from the merge logic.

So we now allow finding channels on a specific bouquet
and merging and fuzzy merging them.

Issue: #4714.

7 years agochannel: Allow fuzzy name matching for bouquets. (#4714).
E.Smith [Fri, 10 Nov 2017 21:30:20 +0000 (21:30 +0000)] 
channel: Allow fuzzy name matching for bouquets. (#4714).

Issue: #4714.

7 years agodescrambler: fix the code logic for s_dvb_forcecaid == 0xffff
Jaroslav Kysela [Thu, 16 Nov 2017 13:18:40 +0000 (14:18 +0100)] 
descrambler: fix the code logic for s_dvb_forcecaid == 0xffff

7 years agoddci: try to fix open_pid locking
Jaroslav Kysela [Thu, 16 Nov 2017 13:13:16 +0000 (14:13 +0100)] 
ddci: try to fix open_pid locking

7 years agoprofile: set 'Switch to another service' to on as default
Jaroslav Kysela [Thu, 16 Nov 2017 13:09:01 +0000 (14:09 +0100)] 
profile: set 'Switch to another service' to on as default

7 years agodescrambler: tiny optimization
Jaroslav Kysela [Thu, 16 Nov 2017 12:58:22 +0000 (13:58 +0100)] 
descrambler: tiny optimization

7 years agodescrambler: remove dr_external and use dr_descramble instead
Jaroslav Kysela [Thu, 16 Nov 2017 12:57:35 +0000 (13:57 +0100)] 
descrambler: remove dr_external and use dr_descramble instead

7 years agoddci: open only required ECM PIDs
Jaroslav Kysela [Thu, 16 Nov 2017 12:31:38 +0000 (13:31 +0100)] 
ddci: open only required ECM PIDs

7 years agotsdemux: remove ddci code, pass ECM PIDs to descrambler_descramble() unconditionally
Jaroslav Kysela [Thu, 16 Nov 2017 10:06:12 +0000 (11:06 +0100)] 
tsdemux: remove ddci code, pass ECM PIDs to descrambler_descramble() unconditionally

7 years agoMake DD CI functional
Jasmin Jessich [Sun, 12 Nov 2017 17:07:13 +0000 (18:07 +0100)] 
Make DD CI functional

- Extend dvbcam_ca_lookup to support DD CI.
- Allow currently only one DD CI per service.
- Attach a new descrambler function to dr_descramble.
- New function dvbcam_is_ddci to be used by mpegts.
- Fixed a memory leak in dvbcam_service_destroy.
- Select CA PIDs if a DD CI is attached to a service.
- Forward CA PIDs to the descrambler in ts_recv_packet1, if it is a DD CI.
- Do not forward CA PIDs to the transport stream (after reading them from
  DD CI) in ts_recv_packet0.
- Fixed typo in mpegts.h.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agoAdded DDCI detection and creation
Jasmin Jessich [Sun, 12 Nov 2017 16:50:33 +0000 (17:50 +0100)] 
Added DDCI detection and creation

- Check if a device ciX or secX exists.
- Create also the DD CI structure, if one of the ci pathes have been found.
- Open and close the DD CI in linuxdvb_ca_class_enabled_notify.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agoAdded DD CI support into new file
Jasmin Jessich [Sun, 12 Nov 2017 16:04:02 +0000 (17:04 +0100)] 
Added DD CI support into new file

- New file linuxdvb_ddci.c
- DD CI related data are stored in a separate structure (struct
  linuxdvb_ddci).
- struct linuxdvb_ca stores a pointer to the new DD CI data structure
  which gets allocated, if a DD CI exists (see next commit).
- Added logging subsystem LS_DDCI.
- Compile linuxdvb_ddci.c if DD CI is enabled.
- Added config option ddci.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agoconfigure: Fix libsystemd dependency for Stretch and later
Sam Nazarko [Thu, 16 Nov 2017 05:03:29 +0000 (05:03 +0000)] 
configure: Fix libsystemd dependency for Stretch and later

Signed-off-by: Sam Nazarko <email@samnazarko.co.uk>
7 years agohtsp server: don't use static char array for channelIcon
Jaroslav Kysela [Wed, 15 Nov 2017 18:38:53 +0000 (19:38 +0100)] 
htsp server: don't use static char array for channelIcon

7 years agotranscode: the recent change for conditional transcoding caused a regression, fixes...
Jaroslav Kysela [Wed, 15 Nov 2017 18:14:24 +0000 (19:14 +0100)] 
transcode: the recent change for conditional transcoding caused a regression, fixes #4726

7 years agoservice: handle better preferred video types for the service selection
Jaroslav Kysela [Wed, 15 Nov 2017 11:17:33 +0000 (12:17 +0100)] 
service: handle better preferred video types for the service selection

- use free inputs when preferred inputs are busy
- add UHD->HD fallback and SD->HD fallback

7 years agoconfigure: print iconv selection explanation
Jaroslav Kysela [Mon, 13 Nov 2017 12:57:24 +0000 (13:57 +0100)] 
configure: print iconv selection explanation

7 years agocapmt_ca: missing typedef
Jaroslav Kysela [Mon, 13 Nov 2017 09:03:37 +0000 (10:03 +0100)] 
capmt_ca: missing typedef

7 years agocapmt_ca: fix compilation (does anyone use this?)
Jaroslav Kysela [Mon, 13 Nov 2017 07:33:12 +0000 (08:33 +0100)] 
capmt_ca: fix compilation (does anyone use this?)

7 years agoprofile: fix typo (and remember to recompile things after each changes -perexg),...
Jaroslav Kysela [Mon, 13 Nov 2017 07:15:37 +0000 (08:15 +0100)] 
profile: fix typo (and remember to recompile things after each changes -perexg), issue #4721

7 years agoprofile: print an error when the profile is problematic, issue #4721
Jaroslav Kysela [Sun, 12 Nov 2017 17:40:40 +0000 (18:40 +0100)] 
profile: print an error when the profile is problematic, issue #4721

7 years agompegts: add full DTMB network/mux support, issue #4717
Jaroslav Kysela [Fri, 10 Nov 2017 09:05:03 +0000 (10:05 +0100)] 
mpegts: add full DTMB network/mux support, issue #4717

7 years agompegts: add few missing DVB_SYS_DTMB defines, issue #4717
Jaroslav Kysela [Fri, 10 Nov 2017 08:25:00 +0000 (09:25 +0100)] 
mpegts: add few missing DVB_SYS_DTMB defines, issue #4717

7 years agoDVR: use value 300 for DVR_PRIO_NOTSET in prio2weight table
Jaroslav Kysela [Fri, 10 Nov 2017 07:57:23 +0000 (08:57 +0100)] 
DVR: use value 300 for DVR_PRIO_NOTSET in prio2weight table

7 years agodvrvfs: change the fsid logic (use st_dev for NFS), fixes #4713
Jaroslav Kysela [Thu, 9 Nov 2017 14:41:52 +0000 (15:41 +0100)] 
dvrvfs: change the fsid logic (use st_dev for NFS), fixes #4713

7 years agomuxer libav: fix compilation for ffmpeg < 3.4, fixes #4712
Jaroslav Kysela [Thu, 9 Nov 2017 07:32:20 +0000 (08:32 +0100)] 
muxer libav: fix compilation for ffmpeg < 3.4, fixes #4712

7 years agolibva: don't use only log handlers for newer libva, fixes #4679
Jaroslav Kysela [Wed, 8 Nov 2017 17:12:54 +0000 (18:12 +0100)] 
libva: don't use only log handlers for newer libva, fixes #4679

7 years agodvr inotify: fix my last change, fixes #4702
Jaroslav Kysela [Wed, 8 Nov 2017 16:59:28 +0000 (17:59 +0100)] 
dvr inotify: fix my last change, fixes #4702

7 years agodvr: Prefer image from current broadcast to persisted image, fixes #4685
E.Smith [Mon, 6 Nov 2017 12:03:02 +0000 (12:03 +0000)] 
dvr: Prefer image from current broadcast to persisted image, fixes #4685

A programme in the far future may have generic details and a generic
image. For example, "Oprah is interviewing people." As the programme
nears broadcast date, the programme may then get more specific details
and a more specific image ("Oprah is interviewing Bob").

So we prefer the image from the broadcast to the one currently persisted.

7 years agoui: Prefer to use accessor for de_image. (#4685).
E.Smith [Wed, 1 Nov 2017 15:43:13 +0000 (15:43 +0000)] 
ui: Prefer to use accessor for de_image. (#4685).

This allows it to also try and get an image from the current EPG
if the entry does not have an associated image.

Issue: #4685

7 years agoui: Persist image to dvr/log and send to ui. (#4685).
E.Smith [Tue, 31 Oct 2017 10:40:25 +0000 (10:40 +0000)] 
ui: Persist image to dvr/log and send to ui. (#4685).

Previously it was only available for upcoming recordings
but now we persist it to the dvr/log so it can be sent
to clients and displayed on recorded programmes.

Issue: #4685

7 years agodvr inotify: reuse variables, fixes #4702
Jaroslav Kysela [Wed, 8 Nov 2017 16:54:16 +0000 (17:54 +0100)] 
dvr inotify: reuse variables, fixes #4702

7 years agodvr: Move declarations to top of function. (#4702)
E.Smith [Fri, 3 Nov 2017 19:32:21 +0000 (19:32 +0000)] 
dvr: Move declarations to top of function. (#4702)

Issue: #4702.

7 years agodvr: Handle symlinks for inotify. (#4702)
E.Smith [Fri, 13 Oct 2017 00:02:52 +0000 (01:02 +0100)] 
dvr: Handle symlinks for inotify. (#4702)

The filenames stored in the dvr/log are not realpath but can
be based on symlinks.

So, we might record in to /media/Videos/user1/show1 but
user1 could be a symlink to /media/Videos-drive2 (rather than
a bind mount).

Since inotify returns realpaths, if means that when we attempt
to update the dvr/log the filenames do not match.

So we now monitor the realpath for the directories and convert
filenames to realpath when doing the compare.

We do not store realpath in the dvr/log since users do not
want symlinks replaced with real paths.

Issue: #4702.

7 years agodvr: Handle inotify moving file to different directory. (#4702)
E.Smith [Thu, 12 Oct 2017 13:35:54 +0000 (14:35 +0100)] 
dvr: Handle inotify moving file to different directory. (#4702)

Previously if we moved a file from one directory we are
monitoring to another directory we are monitoring then the
path would not be updated correctly since we did not lookup
the 'to_fd'.

Issue: #4702.

7 years agochannel: Allow optional fuzzy matching when merging services, fixes #4709
E.Smith [Sun, 1 Oct 2017 01:46:53 +0000 (02:46 +0100)] 
channel: Allow optional fuzzy matching when merging services, fixes #4709

For historical reasons, our DVB-T and DVB-S have different names
for the same channels. They often differ in case and spacing.
So we have 'One' and 'ONE', '5+1HD' and '5 +1HD'.

So allow an optional fuzzy matching checkbox to ignore whitespace
and HD markers. This allows the channels to be merged. The
exact name chosen depends on the order of mapping, so if the
HD channel is mapped first then they would all merge in to this
name, but if a non-HD channel is the first one created then that
name is chosen. However the name could be subsequently modified
by the user if they desire.

7 years agoDVR: update dvb eid also when the entry is not editable, PR#1026
Jaroslav Kysela [Wed, 8 Nov 2017 16:47:33 +0000 (17:47 +0100)] 
DVR: update dvb eid also when the entry is not editable, PR#1026

7 years agolibav.h: compilation fix
Jaroslav Kysela [Wed, 8 Nov 2017 09:12:15 +0000 (10:12 +0100)] 
libav.h: compilation fix

7 years agolibav muxer: fix the close sequence for live file descriptors, issue #4704, fixes...
Jaroslav Kysela [Wed, 8 Nov 2017 08:22:18 +0000 (09:22 +0100)] 
libav muxer: fix the close sequence for live file descriptors, issue #4704, fixes #4712

7 years agovaapi: add support for library version 2.0, fixes #4679
Jaroslav Kysela [Wed, 8 Nov 2017 08:05:38 +0000 (09:05 +0100)] 
vaapi: add support for library version 2.0, fixes #4679

7 years agomkv muxer: tiny optimization
Jaroslav Kysela [Mon, 6 Nov 2017 07:43:06 +0000 (08:43 +0100)] 
mkv muxer: tiny optimization

7 years agolibav: try to fix log crash, fixes #4707
Jaroslav Kysela [Mon, 6 Nov 2017 07:30:11 +0000 (08:30 +0100)] 
libav: try to fix log crash, fixes #4707

7 years agotsfix: take in account negative pcr for the video stream, issue #4701
Jaroslav Kysela [Sat, 4 Nov 2017 16:53:26 +0000 (17:53 +0100)] 
tsfix: take in account negative pcr for the video stream, issue #4701

7 years agolibav muxer: fix the missing file descriptor close, fixes #4704
Jaroslav Kysela [Sat, 4 Nov 2017 16:29:16 +0000 (17:29 +0100)] 
libav muxer: fix the missing file descriptor close, fixes #4704

7 years agofix htsbuf_append_and_escape_url() - don't escape more allowed characters, fixes...
Jaroslav Kysela [Fri, 3 Nov 2017 19:13:39 +0000 (20:13 +0100)] 
fix htsbuf_append_and_escape_url() - don't escape more allowed characters, fixes #3721

7 years agoservice: use s_pending_restart more properly, issue #4701
Jaroslav Kysela [Fri, 3 Nov 2017 16:37:10 +0000 (17:37 +0100)] 
service: use s_pending_restart more properly, issue #4701

7 years agoservice: introduce streaming_service_deliver()
Jaroslav Kysela [Fri, 3 Nov 2017 14:27:14 +0000 (15:27 +0100)] 
service: introduce streaming_service_deliver()

7 years agoepg: fix epg_broadcast_set_running() - call _epg_object_set_updated()
Jaroslav Kysela [Fri, 3 Nov 2017 14:11:04 +0000 (15:11 +0100)] 
epg: fix epg_broadcast_set_running() - call _epg_object_set_updated()

7 years agoepg: update the running state in sync with dvr update
Jaroslav Kysela [Thu, 2 Nov 2017 13:25:21 +0000 (14:25 +0100)] 
epg: update the running state in sync with dvr update

7 years agotvheadend.h: cosmetic fix in streaming_target_t
Jaroslav Kysela [Fri, 3 Nov 2017 14:10:42 +0000 (15:10 +0100)] 
tvheadend.h: cosmetic fix in streaming_target_t

7 years agotsfix: show also the reason in the trace log
Jaroslav Kysela [Fri, 3 Nov 2017 14:11:04 +0000 (15:11 +0100)] 
tsfix: show also the reason in the trace log

7 years agoEPG: add dvr_entries list to epg_broadcast structure
Jaroslav Kysela [Wed, 1 Nov 2017 19:07:05 +0000 (20:07 +0100)] 
EPG: add dvr_entries list to epg_broadcast structure

7 years agopid-count.py: add scrambled count print
Jaroslav Kysela [Wed, 1 Nov 2017 18:42:55 +0000 (19:42 +0100)] 
pid-count.py: add scrambled count print

7 years agoFixed crash on CAM remove
Jasmin Jessich [Wed, 1 Nov 2017 14:09:27 +0000 (15:09 +0100)] 
Fixed crash on CAM remove

When TVH is terminated with <cntrl-c> and there is a CAM opened,
dvbcam_unregister_cam is executed prior to dvbcam_service_destroy.
dvbcam_unregister_cam will remove "as->ac" so linuxdvb_ca_enqueue_capmt,
executed in dvbcam_service_destroy will crash.
This should also fix a possible crash (not tested), when removing the
CAM with an active stream.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agoepggrab: channel mapper - handle better empty IDs, fixes #4699
Jaroslav Kysela [Wed, 1 Nov 2017 15:31:57 +0000 (16:31 +0100)] 
epggrab: channel mapper - handle better empty IDs, fixes #4699

7 years agohttpc: fix the wrong receive buffer overflow check, fixes #4353
Jaroslav Kysela [Mon, 30 Oct 2017 11:12:23 +0000 (12:12 +0100)] 
httpc: fix the wrong receive buffer overflow check, fixes #4353

7 years agohttpc: introduce http_client_rbuf_cut(), try to fix wrong rbuf update for RTP data...
Jaroslav Kysela [Mon, 30 Oct 2017 11:45:47 +0000 (12:45 +0100)] 
httpc: introduce http_client_rbuf_cut(), try to fix wrong rbuf update for RTP data, issue #4353

7 years agodvbcam: fix the zero service limit handling (allow any)
Jaroslav Kysela [Sun, 29 Oct 2017 14:52:47 +0000 (15:52 +0100)] 
dvbcam: fix the zero service limit handling (allow any)

7 years agodvbcam: Fixed CAM searching
Jasmin Jessich [Thu, 26 Oct 2017 23:34:54 +0000 (01:34 +0200)] 
dvbcam: Fixed CAM searching

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agodvbcam: Fixed crash when a DVB CAM has been found
Jasmin Jessich [Thu, 26 Oct 2017 18:51:39 +0000 (20:51 +0200)] 
dvbcam: Fixed crash when a DVB CAM has been found

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
7 years agoepg api: fix the eventId check in api_epg_alternative/api_epg_related functions,...
Jaroslav Kysela [Wed, 25 Oct 2017 12:28:12 +0000 (14:28 +0200)] 
epg api: fix the eventId check in api_epg_alternative/api_epg_related functions, fixes #4688

7 years agowebui: reshuffle the dvr config class, rename a few options and change some view...
Mark Clarkstone [Mon, 23 Oct 2017 19:19:36 +0000 (20:19 +0100)] 
webui: reshuffle the dvr config class, rename a few options and change some view-levels - hopefully this tidies it up a little

7 years agoui: Send episode image URL to UI for upcoming recordings. (#4681).
E.Smith [Wed, 11 Oct 2017 18:52:21 +0000 (19:52 +0100)] 
ui: Send episode image URL to UI for upcoming recordings. (#4681).

Previously the image was only visible in the EPG tab.

Issue: #4681

7 years agoFix Nagra's Provids detection
TheTroll [Tue, 24 Oct 2017 22:29:43 +0000 (00:29 +0200)] 
Fix Nagra's Provids detection

7 years agoMakefile: fix build if iptv disabled and ffmpeg enabled
Alan Swanson [Mon, 23 Oct 2017 17:49:11 +0000 (18:49 +0100)] 
Makefile: fix build if iptv disabled and ffmpeg enabled

7 years agoSAT>IP client: fix for the previous patch (wrong offset for UDP packets), issue ...
Jaroslav Kysela [Sun, 22 Oct 2017 17:16:36 +0000 (19:16 +0200)] 
SAT>IP client: fix for the previous patch (wrong offset for UDP packets), issue #4621

7 years agoSAT>IP client: make code more robust for out-of-order RTP packets, issue #4621
Jaroslav Kysela [Sun, 22 Oct 2017 13:59:47 +0000 (15:59 +0200)] 
SAT>IP client: make code more robust for out-of-order RTP packets, issue #4621

7 years agotsfix: code cleanups, set time references from backlog, too, issue #4662
Jaroslav Kysela [Fri, 20 Oct 2017 14:23:55 +0000 (16:23 +0200)] 
tsfix: code cleanups, set time references from backlog, too, issue #4662

7 years agoDVR: config - format tvmovies/tvshows - assign the default string more early, fixes...
Jaroslav Kysela [Wed, 18 Oct 2017 17:18:55 +0000 (19:18 +0200)] 
DVR: config - format tvmovies/tvshows - assign the default string more early, fixes #4667

7 years agodvr: Make tvshows/tvmovies subdirectory configurable. (#4667).
E.Smith [Wed, 18 Oct 2017 02:09:32 +0000 (03:09 +0100)] 
dvr: Make tvshows/tvmovies subdirectory configurable. (#4667).

Issue: #4667.

7 years agodvr: No need to reset description when it matches subtitle. (#4667)
E.Smith [Wed, 18 Oct 2017 01:49:23 +0000 (02:49 +0100)] 
dvr: No need to reset description when it matches subtitle. (#4667)

Issue: #4667.

7 years agodvr: Buffers for scraper specifier should not use PATH_MAX. (#4667)
E.Smith [Fri, 13 Oct 2017 23:14:24 +0000 (00:14 +0100)] 
dvr: Buffers for scraper specifier should not use PATH_MAX. (#4667)

The buffers were incorrectly using PATH_MAX to size their buffers.

Also add missing newline in property for pathname.md.

Issue: #4667

7 years agodvr: Add scraper-friendly format string. (#4667)
E.Smith [Thu, 7 Sep 2017 14:26:06 +0000 (15:26 +0100)] 
dvr: Add scraper-friendly format string. (#4667)

We add a few new format strings. This helps split
movies and tvshows in to separate folders to make
it easier for external programs to scrape.

$q and $Q determine if the programme is a movie or a
show from the guide data, with variants to force
detection as a movie or a show.

We then create "queryable" or scrapable names such as:
tvmovies/Gladiator (2000)
tvshows/Bonanza/Bonanza - S09E18 - The Burning Sky

This simplifies the recording format string for people
with good guide data since it easily splits the programmes
without need of post-processing scripts.

We don't split sports, news, etc. in to separate directories
purely because it is difficult to identify programmes that
are purely those categories. For example a popular nightly
politics series is classified as "News", whereas most people
think of news as being purely news headlines programmes.

We also add variants of $1q and $2q to force the programme
to be considered a movie or show ignoring the guide data.
The names are chosen to make it easier to add other variants
in the future if necessary ($3q, $4q, etc).

Issue: #4667

7 years agompegts network: create mux - handle correctly ATSC C/T changes, fixes #4673
Jaroslav Kysela [Wed, 18 Oct 2017 13:11:52 +0000 (15:11 +0200)] 
mpegts network: create mux - handle correctly ATSC C/T changes, fixes #4673

7 years agoDVR: correct logic in dvr_thread_rec_start()
Jaroslav Kysela [Wed, 18 Oct 2017 09:18:29 +0000 (11:18 +0200)] 
DVR: correct logic in dvr_thread_rec_start()

7 years agoDVR: fix 'reconfigure muxer when streams changes', issue #4538, fixes #4672
Jaroslav Kysela [Wed, 18 Oct 2017 09:08:53 +0000 (11:08 +0200)] 
DVR: fix 'reconfigure muxer when streams changes', issue #4538, fixes #4672

7 years agoMakefile: fix typo
Jaroslav Kysela [Mon, 16 Oct 2017 18:44:42 +0000 (20:44 +0200)] 
Makefile: fix typo

7 years agoWebUI: Split EPG details (broadcast details, DVR status) and actions (play) into...
ProfYaffle [Sun, 15 Oct 2017 17:06:16 +0000 (18:06 +0100)] 
WebUI: Split EPG details (broadcast details, DVR status) and actions (play) into separate columns

7 years agodvr: Bump htsp_protocol_version. (#4652)
E.Smith [Fri, 13 Oct 2017 14:31:17 +0000 (15:31 +0100)] 
dvr: Bump htsp_protocol_version. (#4652)

The new protocol supports DVR_AUTOREC_RECORD_UNIQUE and also
using categories in autorec (#4665).

We don't do any mappings of entries that have the enum since
clients I tested already map the unknown entry to "record all"
which I think is better than not sending the entry at all.

Issue: #4652

7 years agodvr: Handle newer tv_grab that puts season x/y (#4652).
E.Smith [Thu, 12 Oct 2017 11:23:59 +0000 (12:23 +0100)] 
dvr: Handle newer tv_grab that puts season x/y (#4652).

Newer tv_grab is giving "Season 1/2" instead of "Season 1"
so we need to extract the season and episode parts to allow
a comparison.

Issue: #4652

7 years agodvr: Add new dup method of unique id. (#4652)
E.Smith [Thu, 5 Oct 2017 15:19:45 +0000 (16:19 +0100)] 
dvr: Add new dup method of unique id. (#4652)

Programmes on many OTA channels and with many xmltv providers have unique ids.
This is the crid or the dd_progid.

So a particular movie will always have the same MV code, a particular episode
has the same EP code. Technically crid can be reused, but they don't appear to
be reused where I am.

If I have a rule for "Simpsons" it will record episodes but I have to decide
what dedup to use. If I use episode, then what happens when the Simpsons movie
is on? Is it recorded once, every repeat showing, never recorded?

So introduce a new method to differentiate programmes based on program id or
several other fields.

This is useful since many daytime programmes don't have unique descriptions or
any episode data in OTA, but can be distinguished by the crid.

The algorithm is:

-   both have id and id is equal: dup;
-   both have title+season+episode that are equal: dup;
-   only one has title+season+episode: not dup;
-   both have title+season or title+episode: undetermined so continue checks
-   either has id or id is not equal: not dup;
-   title+subtitle+description equal: dup;
-   else not dup.

Issue: #4652

7 years agodvr: Start keeping programme unique IDs in the dvr log (#4652).
E.Smith [Mon, 25 Sep 2017 13:47:52 +0000 (14:47 +0100)] 
dvr: Start keeping programme unique IDs in the dvr log (#4652).

Many OTA and xmltv grabbers provide a unique id for programmes.
This is useful since many films have numerous remakes but keep
the same title, but have different unique id.

By starting to keep these IDs in the dvr log we may be able to
offer an easier de-dup method.

Issue: #4652

7 years agodvr: Allow autorec by star rating. (#4665)
E.Smith [Fri, 22 Sep 2017 13:31:18 +0000 (14:31 +0100)] 
dvr: Allow autorec by star rating. (#4665)

This allows limited an autorec to "movies rated better than 80%".

Issue: #4655

7 years agodvr: Allow selecting (xmltv) category in autorec. (#4665)
azlm8t [Fri, 22 Sep 2017 00:09:20 +0000 (01:09 +0100)] 
dvr: Allow selecting (xmltv) category in autorec. (#4665)

The xmltv import supports categories such as "movie",
"animated", "biography", so allow autorec to record via these
categories.

We do this by providing three drop-down selectors in the
advanced settings of the autorec. This allows the user
to easily discover the categories available whilst
providing enough capability for reasonably advanced
recordings when coupled with the existing fulltext search.

Issue: #4665

7 years agoMakefile.hdhomerun: Update to 20170930
Michael Marley [Fri, 13 Oct 2017 21:25:03 +0000 (17:25 -0400)] 
Makefile.hdhomerun: Update to 20170930

This adds support for the newly-released HDHR5 models.

7 years agotranscode: add vp9_vaapi codec support
Jaroslav Kysela [Mon, 16 Oct 2017 16:08:43 +0000 (18:08 +0200)] 
transcode: add vp9_vaapi codec support

7 years agoMakefile.ffmpeg: libopus: Updated link to new project website
Alexander Lochmann [Sun, 15 Oct 2017 18:03:33 +0000 (20:03 +0200)] 
Makefile.ffmpeg: libopus: Updated link to new project website

7 years agoMakefile.ffmpeg: update ffmpeg to 3.4
Jaroslav Kysela [Mon, 16 Oct 2017 15:39:16 +0000 (17:39 +0200)] 
Makefile.ffmpeg: update ffmpeg to 3.4

7 years agodvbcam: use stardard caclient interface
Jaroslav Kysela [Mon, 16 Oct 2017 15:21:09 +0000 (17:21 +0200)] 
dvbcam: use stardard caclient interface

7 years agodescrambler: add dr_descramble() callback
Jaroslav Kysela [Mon, 16 Oct 2017 07:35:23 +0000 (09:35 +0200)] 
descrambler: add dr_descramble() callback

7 years agotcp: increase timeout for multiple connections (limiting) to 5 seconds, check for...
Jaroslav Kysela [Mon, 16 Oct 2017 06:56:36 +0000 (08:56 +0200)] 
tcp: increase timeout for multiple connections (limiting) to 5 seconds, check for the dead socket

7 years agoparsers: implement PTS clock recovery for ugly encoder, issue #4662
Jaroslav Kysela [Mon, 16 Oct 2017 06:53:47 +0000 (08:53 +0200)] 
parsers: implement PTS clock recovery for ugly encoder, issue #4662

7 years agompegts service: fix 'Ignore EPG (EIT)' description
Jaroslav Kysela [Thu, 12 Oct 2017 10:39:51 +0000 (12:39 +0200)] 
mpegts service: fix 'Ignore EPG (EIT)' description

7 years agoMakefile.ffmpeg: update to ffmpeg 3.3.4
Jaroslav Kysela [Wed, 11 Oct 2017 05:59:42 +0000 (07:59 +0200)] 
Makefile.ffmpeg: update to ffmpeg 3.3.4

7 years agotranscode: fix nvenc_hevc (set 'bf' to zero), fixes #4661
Jaroslav Kysela [Tue, 10 Oct 2017 11:28:26 +0000 (13:28 +0200)] 
transcode: fix nvenc_hevc (set 'bf' to zero), fixes #4661

7 years agohtsp server: try to play correctly with older htsp clients (DVR prio), protocol numbe...
Jaroslav Kysela [Mon, 9 Oct 2017 14:45:30 +0000 (16:45 +0200)] 
htsp server: try to play correctly with older htsp clients (DVR prio), protocol number 30, fixes #4657

7 years agosatip server: add webroot to XML/M3U URLs, fixes #4656
Jaroslav Kysela [Mon, 9 Oct 2017 14:37:15 +0000 (16:37 +0200)] 
satip server: add webroot to XML/M3U URLs, fixes #4656

7 years agomain: fix the empty webroot handling
Jaroslav Kysela [Mon, 9 Oct 2017 14:24:07 +0000 (16:24 +0200)] 
main: fix the empty webroot handling

7 years agodvr: Persist programme copyright year to dvr log. (#4441).
E.Smith [Wed, 20 Sep 2017 11:19:42 +0000 (12:19 +0100)] 
dvr: Persist programme copyright year to dvr log. (#4441).

Also send to htsp.

7 years agoxmltv: Parse copyright year from xmltv and display in GUI. (#4441).
E.Smith [Wed, 20 Sep 2017 10:44:10 +0000 (11:44 +0100)] 
xmltv: Parse copyright year from xmltv and display in GUI. (#4441).