]> git.ipfire.org Git - thirdparty/tvheadend.git/log
thirdparty/tvheadend.git
6 years agopython: Port to Python3.
E.Smith [Tue, 25 Sep 2018 11:53:46 +0000 (12:53 +0100)] 
python: Port to Python3.

Python 3 requires "Exception as e" instead of "Exception, e". This new
syntax is compatible with Python2.6+ and was introduced in PEP-3110
(Jan 2006).

6 years agopython: Handle incorrect utf-8 decodes.
E.Smith [Tue, 25 Sep 2018 11:50:57 +0000 (12:50 +0100)] 
python: Handle incorrect utf-8 decodes.

Some broadcasts can have different charsets (such as iso-8859-1) but
we assume utf-8 unless user has set it correctly. So when decode fails
we get an exception.  So we now attempt to decode with error
replacement so user sees incorrect character.

This gives "u'Denise Th\ufffd\ufffd':" as the string returned instead
when the received name contains an é that is in iso-8859-1 instead of
utf-8.

6 years agopython: Make files python2/python3 compatible.
E.Smith [Tue, 25 Sep 2018 00:08:34 +0000 (01:08 +0100)] 
python: Make files python2/python3 compatible.

Ensure files are compatible with python2 and python3.
Main differences:
- print requires brackets
- string is bytes in python2 and unicode in python3
- need to use struct to pack/unpack binary data
- need to convert socket data to bytearray to allow data extraction

6 years agopython: Need to utf-8 decode our strings.
E.Smith [Sun, 23 Sep 2018 13:59:39 +0000 (14:59 +0100)] 
python: Need to utf-8 decode our strings.

6 years agoui: Add Next/Prev buttons to filter epg channels.
E.Smith [Sat, 22 Sep 2018 17:19:15 +0000 (18:19 +0100)] 
ui: Add Next/Prev buttons to filter epg channels.

This provides a simple way to provide a "now & next" view in the
EPG.

6 years agoxmltv: Output genres to exported xmltv. (#4266)
E.Smith [Sat, 22 Sep 2018 12:04:14 +0000 (13:04 +0100)] 
xmltv: Output genres to exported xmltv. (#4266)

Based on patch by Iván M. A. posted in issue #4266.

Issue: #4266

6 years agoxmltv: Add episode number information to exported xmltv guide. (#4266)
E.Smith [Sat, 22 Sep 2018 11:51:35 +0000 (12:51 +0100)] 
xmltv: Add episode number information to exported xmltv guide. (#4266)

This assumes that the imported tv guide has correct populated
the fields, rather than using an arbitrary scheme.

Issue: #4266

6 years agodvr: Change time(NULL) to gclk for consistency.
E.Smith [Fri, 21 Sep 2018 23:29:05 +0000 (00:29 +0100)] 
dvr: Change time(NULL) to gclk for consistency.

6 years agodvr: Fake create timestamp for old dvr entries.
E.Smith [Fri, 21 Sep 2018 17:23:31 +0000 (18:23 +0100)] 
dvr: Fake create timestamp for old dvr entries.

Old dvr_entry records (tvh4.2) do not have a create timestamp, so we
fake one based on the start time of the recording. This will allow
us to send the timestamp to the UI in the future knowing that it
will give consistent results for user sorting since it may be
useful for user to sort upcoming recordings by when they were
created (i.e., scheduled).

6 years agodvr: Add create time to dvr_entry and use it.
E.Smith [Fri, 21 Sep 2018 17:19:28 +0000 (18:19 +0100)] 
dvr: Add create time to dvr_entry and use it.

We have to ensure we don't async reschedule if we have only just been
created then destroyed, otherwise we can enter a loop where every few
minutes the autorec is checked, realizes it can schedule against a
current broadcast, create the dvr_entry, then find it's a duplicate
of an existing recording/dvr_entry, so destroy the new entry, which
then causes the loop to start again later.

So, if a dvr_entry is created and destroy quickly then we avoid
the async reschedule. This breaks the loop since we no longer
trigger a second async reschedule.

6 years agodvr: Fix logging of duplicates (needs different buffer for second uuid).
E.Smith [Fri, 21 Sep 2018 23:13:10 +0000 (00:13 +0100)] 
dvr: Fix logging of duplicates (needs different buffer for second uuid).

6 years agodvr: Mark dvr entries as duplicates early to avoid logging.
E.Smith [Fri, 21 Sep 2018 10:01:09 +0000 (11:01 +0100)] 
dvr: Mark dvr entries as duplicates early to avoid logging.

When autorecs are modified, we can do an async reschedule to ensure
recordings are correctly updated in case the autorecs interact.
However this can cause excessve logging in some circumstances.

Effectively, if there is a recording on disk and the autorec matches
the same recording in the future then the dvr_entry_create_by_autorec
can exit the "bcast" loop with no match at all (since entry on disk
frequently, but not always, has a null de_bcast).

This then means we create the dvr_entry, and, if the programme is
broadcasting now, then we immediately schedule a timer to start the
recording and log an info to say scheduled. We then immediately cancel
the recording, delete the dvr_entry, which then causes us do an async
schedule. But this async schedule realizes the autorec matches the
broadcast, so we go through the process again.

So, first stage is to delete the duplicate before we do any logging.
Unfortunately, due to the way dup matching works (only dvr entry vs
dvr entry, not vs bcast), we have to create a dvr_entry to do the
matching.

We also need to check duplicate event after it is inserted in to
de_global_link (to avoid assertion fault).

6 years agodvr: Ensure non-scheduled dvr_entry is always "best".
E.Smith [Thu, 20 Sep 2018 22:08:06 +0000 (23:08 +0100)] 
dvr:  Ensure non-scheduled dvr_entry is always "best".

Previously in dvr_is_better_recording_timeslot we would sanity check
that the old channel and broadcast exists before further checks.

However, it probably makes sense to ensure that a non-scheduled
dvr_entry (such as already recorded) is always the better match even
though it might not be linked to any broadcasts.

6 years agowebui: Deleted name text from previous / next buttons, hide "Record program" button...
pablozg [Sat, 22 Sep 2018 18:37:39 +0000 (20:37 +0200)] 
webui: Deleted name text from previous / next buttons, hide "Record program" button when the event is scheduled or recording

6 years agowebui: Add Previous button to epg and dvr, fix minor issues (If you select the first...
pablozg [Fri, 21 Sep 2018 19:34:28 +0000 (21:34 +0200)] 
webui: Add Previous button to epg and dvr, fix minor issues (If you select the first/last row the previous/next are active when the popup window is opened first time)

6 years agodvr: Add minseason and maxseason to autorec (#5176)
E.Smith [Thu, 20 Sep 2018 19:00:37 +0000 (20:00 +0100)] 
dvr: Add minseason and maxseason to autorec (#5176)

This allows users to specify specific seasons to record,
it has to be >= min and <= max.

For example min=5,max=5 will record only season 5.

Setting min=5,max=0 will record everything on season 5 or
later, which is useful if you've already seen seasons 1--4.

This can then be combined with the normal fulltext regex
such as "Simpsons"+minseason=12.

Fixes: #5176
6 years agoeit config: fix Bulsatcom 39E, issue #5219
Jaroslav Kysela [Tue, 25 Sep 2018 06:16:50 +0000 (08:16 +0200)] 
eit config: fix Bulsatcom 39E, issue #5219

6 years agobintray.py: handle 409 error as warning for upload (fix jessie builds)
Jaroslav Kysela [Thu, 20 Sep 2018 15:20:20 +0000 (17:20 +0200)] 
bintray.py: handle 409 error as warning for upload (fix jessie builds)

6 years agoepg.js: fix indent
Jaroslav Kysela [Thu, 20 Sep 2018 15:02:12 +0000 (17:02 +0200)] 
epg.js: fix indent

6 years agohttp: add http_username() and use it in webui, fixes #5214, fixes #5215
Jaroslav Kysela [Thu, 20 Sep 2018 14:49:05 +0000 (16:49 +0200)] 
http: add http_username() and use it in webui, fixes #5214, fixes #5215

6 years agoparser hevc: fix return value from hevc_decode_sps(), fixes #5204
Jaroslav Kysela [Thu, 20 Sep 2018 13:51:47 +0000 (15:51 +0200)] 
parser hevc: fix return value from hevc_decode_sps(), fixes #5204

6 years agoui: Add channel name to dvr dialog.
E.Smith [Thu, 20 Sep 2018 13:10:35 +0000 (14:10 +0100)] 
ui: Add channel name to dvr dialog.

6 years agoui: Include channel name on epg broadcast details dialog.
E.Smith [Thu, 20 Sep 2018 09:33:33 +0000 (10:33 +0100)] 
ui: Include channel name on epg broadcast details dialog.

6 years agoui: Make epg dialog slightly wider.
E.Smith [Thu, 20 Sep 2018 01:17:25 +0000 (02:17 +0100)] 
ui: Make epg dialog slightly wider.

This is to accomodate the "next" button which was slightly truncated.

6 years agoui: Add 'next' button to DVR broadcast details.
E.Smith [Thu, 20 Sep 2018 00:57:34 +0000 (01:57 +0100)] 
ui: Add 'next' button to DVR broadcast details.

6 years agoui: Add 'next' button to EPG broadcast details.
E.Smith [Thu, 20 Sep 2018 00:05:44 +0000 (01:05 +0100)] 
ui: Add 'next' button to EPG broadcast details.

6 years agotranscode: fix hwaccels_decode_setup_context() for ffmpeg 4.0.2, fixes #5202
Jaroslav Kysela [Thu, 20 Sep 2018 13:39:37 +0000 (15:39 +0200)] 
transcode: fix hwaccels_decode_setup_context() for ffmpeg 4.0.2, fixes #5202

6 years agomain: set default user/group only when specified for non-root users, fixes #5213
Jaroslav Kysela [Thu, 20 Sep 2018 12:46:42 +0000 (14:46 +0200)] 
main: set default user/group only when specified for non-root users, fixes #5213

6 years agoFreeBSD: Check for fdatasync system call since it is supported on FreeBSD 11.1 and...
E.Smith [Mon, 17 Sep 2018 12:10:27 +0000 (13:10 +0100)] 
FreeBSD: Check for fdatasync system call since it is supported on FreeBSD 11.1 and later.

6 years agoFreeBSD: Requires libinotify for inotify support.
E.Smith [Wed, 19 Sep 2018 16:16:22 +0000 (17:16 +0100)] 
FreeBSD: Requires libinotify for inotify support.

6 years agoFreeBSD: Support different stat format in Makefile.webui.
E.Smith [Wed, 19 Sep 2018 15:57:24 +0000 (16:57 +0100)] 
FreeBSD: Support different stat format in Makefile.webui.

The stat program on FreeBSD requires different arguments to GNU
stat. In the past, this is done by the ports patching the Makefile
post-extract.

Instead, we'll configure the program's arguments based on platform.
We'll also use %z (filesize) instead of the port's %b (file blocks) so
we generate equivalent output to the Linux version..

6 years agoui: Add grouping format specifier for dates.
E.Smith [Wed, 19 Sep 2018 18:43:05 +0000 (19:43 +0100)] 
ui: Add grouping format specifier for dates.

When grouping recordings by datetime, each group tends to only
have one recording since time field is unique.

So, when grouping, we only use the date-portion and not the time
portion in order to create the group.

6 years agodvr: Async reschedule autorecs whenever a log entry is destroyed.
E.Smith [Wed, 19 Sep 2018 13:14:37 +0000 (14:14 +0100)] 
dvr: Async reschedule autorecs whenever a log entry is destroyed.

Destroying a log entry can cause another autorec rule to be valid and
need scheduling.

For example, if you have two autorec rules that match the same
programme then only one autorec rule will schedule the programme
and the other autorec will see the programme is scheduled and do
nothing.

However, if you then disable the first autorec rule, then we need the
second autorec rule to re-arm the timer for that programme since it
still matches it.

This resheduling is done async after a delay. This avoids large
changes causing constant rescheduling. So, if user deletes a thousand
log files, we do not want a thousand reschedules to occur. Instead,
we dispatch a single timer after the last update has occurred.

6 years agodvr: Add minyear/maxyear to autorec.
E.Smith [Tue, 18 Sep 2018 22:34:04 +0000 (23:34 +0100)] 
dvr: Add minyear/maxyear to autorec.

My listings provider thinks every old film is worth 5/5, so we add
minyear to allow an autorec of "good films" to filter out old
films. Also add corresponding maxyear for people who think the
opposite and only want old programmes recorded.

6 years agoui: Fix createToolbar2 issues on some recent browsers.
E.Smith [Tue, 18 Sep 2018 17:25:15 +0000 (18:25 +0100)] 
ui: Fix createToolbar2 issues on some recent browsers.

Recent versions of Firefox had an exception saying the createToolbar2
function does not exist when it was called to create the secondary
toolbar that is used for category searching in the EPG.

I believe this was due to scoping issues, so rescoped the variables.
This worked, but although the toolbar was added it was not displayed
on Firefox.  So changed the way the toolbar is added and it now works
on Firefox and Safari.

6 years agoFix a few "old-style-declaration" warnings in gcc.
E.Smith [Mon, 17 Sep 2018 16:17:24 +0000 (17:17 +0100)] 
Fix a few "old-style-declaration" warnings in gcc.

Mainly needing to put "static" first and "__thread" earlier.

6 years agoRemove clang no-incompatible-pointer-types flag.
E.Smith [Mon, 17 Sep 2018 15:26:11 +0000 (16:26 +0100)] 
Remove clang no-incompatible-pointer-types flag.

The official build runs with gcc which checks for some incompatible
pointers for assignment of const to non-const, whereas clang
build disabled such warnings.

So, update to re-enable the check on clang and fixup couple of
locations that failed.

6 years agoUpgrade to libhdhomerun_20180817
Alex Mekkering [Mon, 17 Sep 2018 12:26:02 +0000 (14:26 +0200)] 
Upgrade to libhdhomerun_20180817

6 years agodvr: Avoid recording partial programme if autorec created mid-programme.
E.Smith [Wed, 19 Sep 2018 14:22:31 +0000 (15:22 +0100)] 
dvr: Avoid recording partial programme if autorec created mid-programme.

When creating an autorec, it can match a programme that has already
started. If so, it's better to prefer the later recording so you get a
full recording.

So, if it's 09:10 and there is an hour long programme that started at
09:00 but is repeated at 10:00, then let's record at 10:00 instead and
get the full hour, instead of at 09:10 and only get 50 minutes.

6 years agodvr: Only do time slot scheduling in the scheduled state.
E.Smith [Mon, 17 Sep 2018 19:41:52 +0000 (20:41 +0100)] 
dvr: Only do time slot scheduling in the scheduled state.

We do not want a currently recording programme to be cancelled
due to a better channel being found. For example recording a SD
channel and then the OTA updates and finds an HD version of the
show at the same time and so tries to schedule that HD version
instead.

6 years agodvr: Make timeslot scheduling configurable.
E.Smith [Mon, 17 Sep 2018 19:10:01 +0000 (20:10 +0100)] 
dvr: Make timeslot scheduling configurable.

The configuration to enable finding a 'best' time slot for
recording is now configurable as an advanced option in
Configuration->Recording->DVR Profiles, with the default being
disabled.

When toggled, the autorec rules themselves need to be manually
toggled to cause them to reschedule.

6 years agodvr: Prefer earlier/better schedule events for autorecs.
E.Smith [Fri, 14 Sep 2018 20:48:27 +0000 (21:48 +0100)] 
dvr: Prefer earlier/better schedule events for autorecs.

We now try to avoid scheduling on a timeshift channel X+1 if we have
the same programme on channel X. If a programme is on at the same time
on multiple channels then we will try and schedule on a better
channel, such as one with more services (such as mixed DVB-T/DVB-S) to
allow service switching fallback on tuner conflict.

An example of the new log entry:

dvr: Autorecord "movie misc" Replacing existing dvr recording entry of
"The Departed" on ITV4+1 @ start 2018-09-20;00:35:00(+0100) with
recording on ITV4 @ start 2018-09-19;23:35:00(+0100)

Context for the change is below:

In some areas, a broadcast programme might be shown at the same time
on multiple channels, or at different times on various timeshift,
repeat, or regional channels.

An example of this is the Astra 28.2E satellite where BBC1 has
multiple (26) regional channels that (mostly) show the same
programmes, but sometimes a region might have a +30m or +1h timeshift
for a single programme.

Similarly the commercial channel "Channel 4" has "Channel 4+1", and a
repeat channel of "4Seven" and various associated HD channels. Homes
receive all these regional channels via one dish and are required for
BBC to manually switch between HD/SD versions for local interest
programmes such as regional news.

Previously, when setting an autorec, the item chosen to record was
based on the first broadcast that matched the criteria (such as film
title). However, this broadcast is not necessarily the earliest or the
best.

So this meant that with timeshift channels, a programme could be
scheduled on X+1 instead of X, so record at 21:00 instead of 20:00.

On other setups, the event might correctly record at 20:00, since
scheduling depended on internal structures and which broadcasts are
found first (such as via OTA updates).

Similarly, in countries where the same programme can be received but
on different channels in different qualities, it was possible to
schedule on a non-HD channel, even though the user wanted HD purely
because the non-HD broadcast was found first and the channels were not
merged.

So we now check our recording list to determine if the event is better
than the already scheduled event. If so, the existing recording event
is replaced.

For our criteria, "better" is defined in the function
dvr_is_better_recording_timeslot, and has a variety of criteria such
as "matches service filter", "earlier start", and "has more services"
(so more likely to be able to failover if there is a problem).  If
other criteria are equal, then we use the channel with the lowest
channel number since Europe EPG has lower channel numbers for
'better' channels.

When determining if an autorec can be scheduled in a better timeslot,
we must only check against other autorecs and not a manually scheduled
entry since the user might schedule a recording at a later date
specifically to avoid conflicts.

This is achieved by replacing the old scheduled recording with a new
scheduled recording. A new log message indicates when this occurs.

Performance: Initial testing suggests that this rescheduling can occur
between zero and two times per programme (when there is an initial
schedule on +1, then a reschedule on non-timeshift SD, then final
schedule on HD). However, it should not add significant runtime
overhead for most people.

6 years agoChange search icons to a combobox and fix search string in Thedbtv site
pablozg [Thu, 13 Sep 2018 21:45:58 +0000 (23:45 +0200)] 
Change search icons to a combobox and fix search string in Thedbtv site

6 years agodescrambler: fix wrongly added lock in descrambler_notify_nokey(), fixes #5092
Jaroslav Kysela [Fri, 14 Sep 2018 08:37:32 +0000 (10:37 +0200)] 
descrambler: fix wrongly added lock in descrambler_notify_nokey(), fixes #5092

6 years agodescrambler: optimize descrambler_notify_deliver()
Jaroslav Kysela [Fri, 14 Sep 2018 08:29:47 +0000 (10:29 +0200)] 
descrambler: optimize descrambler_notify_deliver()

6 years agotprofile: fix tprofile_start1 when id==NULL
Jaroslav Kysela [Fri, 14 Sep 2018 08:27:12 +0000 (10:27 +0200)] 
tprofile: fix tprofile_start1 when id==NULL

6 years agoepggrab: eit - massive fixes for the previous commit 1134/head
Jaroslav Kysela [Thu, 13 Sep 2018 15:40:34 +0000 (17:40 +0200)] 
epggrab: eit - massive fixes for the previous commit

6 years agoepggrab: eit - reimplement the EIT grabber selection
Jaroslav Kysela [Thu, 13 Sep 2018 15:04:57 +0000 (17:04 +0200)] 
epggrab: eit - reimplement the EIT grabber selection

6 years agotvhcsa: optimize offset check for incomplete packet in CSA descramble
Jaroslav Kysela [Thu, 13 Sep 2018 13:10:11 +0000 (15:10 +0200)] 
tvhcsa: optimize offset check for incomplete packet in CSA descramble

6 years agoupdate valgrind.supp
Jaroslav Kysela [Thu, 13 Sep 2018 07:01:35 +0000 (09:01 +0200)] 
update valgrind.supp

6 years agodescrambler: fix leak in descrambler_notify_deliver()
Jaroslav Kysela [Thu, 13 Sep 2018 06:41:32 +0000 (08:41 +0200)] 
descrambler: fix leak in descrambler_notify_deliver()

6 years agotvhcsa: add invalid offset check for CSA descramble
Jaroslav Kysela [Thu, 13 Sep 2018 06:41:17 +0000 (08:41 +0200)] 
tvhcsa: add invalid offset check for CSA descramble

6 years agoxmltv: fix the desc import, fixes #5206
Jaroslav Kysela [Wed, 12 Sep 2018 19:45:36 +0000 (21:45 +0200)] 
xmltv: fix the desc import, fixes #5206

6 years agomkv: set keyframe flag for all audio tracks, fixes #5151
Jaroslav Kysela [Wed, 12 Sep 2018 10:45:29 +0000 (12:45 +0200)] 
mkv: set keyframe flag for all audio tracks, fixes #5151

6 years agoprofile: improve timeout description
Jaroslav Kysela [Wed, 12 Sep 2018 08:36:26 +0000 (10:36 +0200)] 
profile: improve timeout description

6 years agodescrambler: try to fix crash in descrambler_service_stop(), issue #5092
Jaroslav Kysela [Wed, 12 Sep 2018 08:02:49 +0000 (10:02 +0200)] 
descrambler: try to fix crash in descrambler_service_stop(), issue #5092

6 years agoparsers: hevc - wait for metadata completion
Jaroslav Kysela [Wed, 12 Sep 2018 07:59:01 +0000 (09:59 +0200)] 
parsers: hevc - wait for metadata completion

6 years agoparser: h264 - accept PPS metadata only when SPS is correct, fixes #5192
Jaroslav Kysela [Wed, 12 Sep 2018 07:49:01 +0000 (09:49 +0200)] 
parser: h264 - accept PPS metadata only when SPS is correct, fixes #5192

6 years agoMakefile.ffmpeg: add FFNVCODEC files to library
Jaroslav Kysela [Wed, 12 Sep 2018 07:26:19 +0000 (09:26 +0200)] 
Makefile.ffmpeg: add FFNVCODEC files to library

6 years agolinuxdvb: add 'Higher LNB voltage' option to the satconf, fixes #5199
Jaroslav Kysela [Wed, 12 Sep 2018 06:59:29 +0000 (08:59 +0200)] 
linuxdvb: add 'Higher LNB voltage' option to the satconf, fixes #5199

6 years agoxmltv: another fix for xmltv_appendit(), fixes #5194
Jaroslav Kysela [Wed, 12 Sep 2018 06:44:22 +0000 (08:44 +0200)] 
xmltv: another fix for xmltv_appendit(), fixes #5194

6 years agoxmltv: really fix the xmltv_appendit(), fixes #5194
Jaroslav Kysela [Tue, 11 Sep 2018 17:43:03 +0000 (19:43 +0200)] 
xmltv: really fix the xmltv_appendit(), fixes #5194

6 years agofix for the previous commit
Jaroslav Kysela [Tue, 11 Sep 2018 17:07:26 +0000 (19:07 +0200)] 
fix for the previous commit

6 years agoMakefile.ffmpeg: fix the build without nvenc
Jaroslav Kysela [Tue, 11 Sep 2018 16:52:14 +0000 (18:52 +0200)] 
Makefile.ffmpeg: fix the build without nvenc

6 years agoMakefile.ffmpeg: upgrade to ffmpeg 4.0.2
Jaroslav Kysela [Tue, 11 Sep 2018 11:30:22 +0000 (13:30 +0200)] 
Makefile.ffmpeg: upgrade to ffmpeg 4.0.2

6 years agodescrambler: fix the double free
Jaroslav Kysela [Fri, 7 Sep 2018 17:57:16 +0000 (19:57 +0200)] 
descrambler: fix the double free

6 years agoxmltv: fix the previous commit, fixes #5167
Jaroslav Kysela [Fri, 7 Sep 2018 13:15:51 +0000 (15:15 +0200)] 
xmltv: fix the previous commit, fixes #5167

6 years agoxmltv: fix xmltv_appendit() - NULL desc, fixes #5167
Jaroslav Kysela [Fri, 7 Sep 2018 13:11:33 +0000 (15:11 +0200)] 
xmltv: fix xmltv_appendit() - NULL desc, fixes #5167

6 years agoBugFix: SATIP_SETUP_SPECINV0 and SATIP_SETUP_SPECINV1 has the same definition
mw@hesotech.de [Fri, 7 Sep 2018 07:17:36 +0000 (09:17 +0200)] 
BugFix: SATIP_SETUP_SPECINV0 and SATIP_SETUP_SPECINV1 has the same definition

6 years agoxmltv: rewrite APPENDIT() macro to xmltv_appedit() fcn
Jaroslav Kysela [Fri, 7 Sep 2018 08:06:00 +0000 (10:06 +0200)] 
xmltv: rewrite APPENDIT() macro to xmltv_appedit() fcn

6 years agodvb support: add more comments to charsets in dvb_get_string()
Jaroslav Kysela [Fri, 7 Sep 2018 07:48:35 +0000 (09:48 +0200)] 
dvb support: add more comments to charsets in dvb_get_string()

6 years agolinuxdvb ca: another fix for the PIN enquiry, fixes #5187, fixes #5191
Jaroslav Kysela [Thu, 6 Sep 2018 14:26:59 +0000 (16:26 +0200)] 
linuxdvb ca: another fix for the PIN enquiry, fixes #5187, fixes #5191

6 years agofreesat huffman: reduce the number of includes
Jaroslav Kysela [Wed, 5 Sep 2018 09:11:58 +0000 (11:11 +0200)] 
freesat huffman: reduce the number of includes

6 years agofix regex_match_substring (one characeter strip), fixes #5172
Jaroslav Kysela [Tue, 4 Sep 2018 11:15:58 +0000 (13:15 +0200)] 
fix regex_match_substring (one characeter strip), fixes #5172

6 years agolinuxdvb ca: fix the ca_ops_enquiry checks, fixes #5187
Jaroslav Kysela [Tue, 4 Sep 2018 11:10:19 +0000 (13:10 +0200)] 
linuxdvb ca: fix the ca_ops_enquiry checks, fixes #5187

6 years agosatip client: fix type for specinv, fixes #5190
Jaroslav Kysela [Tue, 4 Sep 2018 11:06:59 +0000 (13:06 +0200)] 
satip client: fix type for specinv, fixes #5190

6 years agowebui: Added vertical scroll bar to dvr program info popup
pablozg [Sat, 9 Jun 2018 09:48:02 +0000 (11:48 +0200)] 
webui: Added vertical scroll bar to dvr program info popup

6 years agowebui: dvr/epg popup window autoresize to actual resolution
pablozg [Fri, 8 Jun 2018 10:36:06 +0000 (12:36 +0200)] 
webui: dvr/epg popup window autoresize to actual resolution

6 years agosatip client: make specinv parameter tri-state (allows specinv=1)
Jaroslav Kysela [Mon, 3 Sep 2018 14:02:33 +0000 (16:02 +0200)] 
satip client: make specinv parameter tri-state (allows specinv=1)

6 years agosf_pass_weight can't be used with netstream 4c
MartiMcFly [Fri, 3 Aug 2018 02:12:08 +0000 (04:12 +0200)] 
sf_pass_weight can't be used with netstream 4c

6 years agoimplement netsream 4c
Martina Pietruschka [Mon, 30 Jul 2018 13:02:50 +0000 (15:02 +0200)] 
implement netsream 4c

Conflicts:
src/input/mpegts/satip/satip_private.h

6 years agoTvshows/tvmovies should have separate config variables.
E.Smith [Wed, 22 Aug 2018 22:38:48 +0000 (23:38 +0100)] 
Tvshows/tvmovies should have separate config variables.

During tidyup, the tvmovies incorrectly used tvshows as
its directory name when using the "$q" tag for recordings.

6 years agoFreeBSD: Fix recv problem if no data received.
E.Smith [Fri, 17 Aug 2018 22:05:40 +0000 (23:05 +0100)] 
FreeBSD: Fix recv problem if no data received.

If using satip then we would frequently fail to read the data and
then disconnect with errno 0.

So, we now make the FreeBSD socket read consistent with the Linux
version and return EIO on non-error.

6 years agoWebUI: fix channel tag lookup for autorec (local, not global)
ProfYaffle [Sat, 1 Sep 2018 11:37:16 +0000 (12:37 +0100)] 
WebUI: fix channel tag lookup for autorec (local, not global)

6 years agodvr inotify: fixes for the previous IN_MOVED_TO change
Jaroslav Kysela [Mon, 3 Sep 2018 13:32:39 +0000 (15:32 +0200)] 
dvr inotify: fixes for the previous IN_MOVED_TO change

6 years agodvr inotify: fix case where IN_MOVED_TO comes in subsequent read after read contaning...
joeuser [Sun, 2 Sep 2018 20:26:00 +0000 (22:26 +0200)] 
dvr inotify: fix case where IN_MOVED_TO comes in subsequent read after read contaning IN_MOVED_FROM

7 years agodebian: always use gzip compression for deb files (bintray issue) - fixes #5091
mpmc [Wed, 25 Jul 2018 21:59:56 +0000 (22:59 +0100)] 
debian: always use gzip compression for deb files (bintray issue) - fixes #5091

7 years agoconfigure: check for strlcat & strlcpy
Bernd Kuhls [Sat, 23 Jun 2018 18:47:26 +0000 (20:47 +0200)] 
configure: check for strlcat & strlcpy

Building tvheadend with uclibc and musl fails:

src/tvh_string.h:50:22: error: static declaration of 'strlcpy' follows non-static declaration
 static inline size_t strlcpy(char *dst, const char *src, size_t size)

src/tvh_string.h:61:22: error: static declaration of 'strlcat' follows non-static declaration
 static inline size_t strlcat(char *dst, const char *src, size_t count)

because they provide strlcat & strlcpy:
https://sourceware.org/glibc/wiki/strlcpy

This patch adds configure checks and makes the implementation in
tvh_string.h optional, the configure log looks like this:

glibc
  checking for cc strlcat ...                       fail
  checking for cc strlcpy ...                       fail

musl
  checking for cc strlcat ...                       ok
  checking for cc strlcpy ...                       ok

uclibc
  checking for cc strlcat ...                       ok
  checking for cc strlcpy ...                       ok

7 years agohtsp: expose duplicate state for dvr entries.
Kai Sommerfeld [Wed, 27 Jun 2018 21:08:34 +0000 (23:08 +0200)] 
htsp: expose duplicate state for dvr entries.

7 years agoxmltv: fix the switched tvh_gettext_lang arguments, fixes #5143
Jaroslav Kysela [Sun, 1 Jul 2018 09:42:51 +0000 (11:42 +0200)] 
xmltv: fix the switched tvh_gettext_lang arguments, fixes #5143

7 years agohtsmsg xml parser: fix NULL oops, fixes #5135
Jaroslav Kysela [Fri, 22 Jun 2018 08:26:22 +0000 (10:26 +0200)] 
htsmsg xml parser: fix NULL oops, fixes #5135

7 years agohttp: remove wrong debug line
Jaroslav Kysela [Fri, 22 Jun 2018 08:12:03 +0000 (10:12 +0200)] 
http: remove wrong debug line

7 years agoeit: compilation fix (copy-n-paste error)
Jaroslav Kysela [Fri, 22 Jun 2018 08:11:23 +0000 (10:11 +0200)] 
eit: compilation fix (copy-n-paste error)

7 years agoxmltv: intl fix for APPENDIT()
Jaroslav Kysela [Fri, 22 Jun 2018 08:07:35 +0000 (10:07 +0200)] 
xmltv: intl fix for APPENDIT()

7 years agoXMLTV EPG grabber: Append extra data to the languages which a description exists...
irgendsontyp [Thu, 21 Jun 2018 19:37:12 +0000 (21:37 +0200)] 
XMLTV EPG grabber: Append extra data to the languages which a description exists for rather than appending to the 'preferred language'

7 years agoeit: add SDT callback, issue #5083
Jaroslav Kysela [Fri, 22 Jun 2018 07:38:50 +0000 (09:38 +0200)] 
eit: add SDT callback, issue #5083

7 years agoadd missing tvh_string.h header file
Jaroslav Kysela [Wed, 20 Jun 2018 13:11:23 +0000 (15:11 +0200)] 
add missing tvh_string.h header file

7 years agompegts input: do not join non-existent threads
Jaroslav Kysela [Wed, 20 Jun 2018 13:08:03 +0000 (15:08 +0200)] 
mpegts input: do not join non-existent threads

7 years agofix two issues in transcoding code from PR#1121
Jaroslav Kysela [Wed, 20 Jun 2018 12:25:26 +0000 (14:25 +0200)] 
fix two issues in transcoding code from PR#1121

7 years agointroduce strlcpy() and strlcat() functions and use them
Jaroslav Kysela [Wed, 20 Jun 2018 12:23:43 +0000 (14:23 +0200)] 
introduce strlcpy() and strlcat() functions and use them