Reynaldo H. Verdejo Pinochet
219d4c132c
dvb/parsechannels: implement channels.conf format autodetection
...
Simple autodetection avoids having to call the parsers
one after the other.
2016-06-24 18:23:17 -07:00
Reynaldo H. Verdejo Pinochet
d9e0e43ca7
dvb/parsechannels: rename v5/zap parsers for congruency
...
Add function prototypes while at it.
2016-06-24 18:20:56 -07:00
Reynaldo H. Verdejo Pinochet
cf86ec5874
dvb/parsechannels: fix modulation names
...
Some names were incorrect. Authoritative source for
the dvbv5 format taken from v4l-utils' lib/libdvbv5/dvb-v5.c
Aditionally, add the missing setter mapping for the
modulation param.
This change makes ATSC work.
https://bugzilla.gnome.org/show_bug.cgi?id=764957
2016-06-24 18:20:56 -07:00
Thiago Santos
dc93c448ca
dvbbasebin: also accept DVBv5 channels.conf format
...
Confirmed working with ISDB-T & ATSC conf files.
https://bugzilla.gnome.org/show_bug.cgi?id=764957
2016-06-24 18:20:56 -07:00
Reynaldo H. Verdejo Pinochet
f6eeb314d3
dvbsrc: fix ISDB-T property descriptions
...
Drop some stale trailing whitespace while at it.
2016-06-24 18:20:56 -07:00
Reynaldo H. Verdejo Pinochet
fe193feb42
dvbsrc: fix misplaced space on doc block
2016-06-24 18:20:56 -07:00
Reynaldo H. Verdejo Pinochet
eb0a785841
dvbsrc: do not rely on temp var for fail detection
...
Use errno instead as local var might be overwritten
before the check.
2016-06-17 15:58:09 -07:00
Reynaldo H. Verdejo Pinochet
1824703c81
dvbsrc: rework set_pids()
...
- Reflow to avoid unneeded nesting
- Free aux pids array earlier
- Adjust debug output to deliver more meaningful information
2016-06-17 15:58:09 -07:00
Reynaldo H. Verdejo Pinochet
13efbf35d9
dvbsrc: drop pointless debug msg
2016-06-17 15:58:09 -07:00
Reynaldo H. Verdejo Pinochet
ea7c0981ec
dvbsrc: unify exit paths on _start()
2016-06-09 14:45:59 -07:00
Reynaldo H. Verdejo Pinochet
33893c5242
dvbsrc: use proper acronym for PID (Packet Identifier)
...
Drop formatting tab from message while at it.
2016-06-09 14:45:59 -07:00
Reynaldo H. Verdejo Pinochet
c66f5080aa
dvbsrc: set common PES filter params once and reuse
...
Avoid setting the same harcoded values over and over again.
2016-06-09 14:45:59 -07:00
Reynaldo H. Verdejo Pinochet
bac5c4c5d2
dvbsrc: improve description of PIDs property
2016-06-03 16:28:47 -07:00
Reynaldo H. Verdejo Pinochet
9e442d5cc0
dvbsrc: remove comment on self-explanatory code
2016-06-01 13:52:48 -07:00
Reynaldo H. Verdejo Pinochet
46de31d0f8
dvbsrc: avoid out-bound write on PID filter array
...
There's no need for an end-of-list marker in the filter
PIDs array if full, as the absolute maximum number of
elements (MAX_FILTERS) is known.
CID #1362441
2016-06-01 13:23:53 -07:00
Reynaldo H. Verdejo Pinochet
1d8673af62
dvbsrc: add sample ATSC launch line
2016-05-29 23:31:05 -07:00
Reynaldo H. Verdejo Pinochet
e35bc2c2b4
dvbsrc: use single marker at end of filtering PID list
...
Avoids at least ~100 unneeded assignment operations at runtime
2016-05-26 16:18:56 -07:00
Reynaldo H. Verdejo Pinochet
faadd0f12a
dvbsrc: simplify reporting of set polarity
2016-05-26 16:18:56 -07:00
Reynaldo H. Verdejo Pinochet
6a4fa2de75
dvbsrc: fix bandwidth-hz property description
...
Bandwidth Hz is no longer a DVBT-only property
2016-05-26 16:18:56 -07:00
Reynaldo H. Verdejo Pinochet
31a52b6c7c
dvbsrc: fix usage of PES & DVR acronyms everywhere
...
Additionally, improve message on gst_poll_new() failure
2016-05-26 16:18:14 -07:00
Reynaldo H. Verdejo Pinochet
5a47f4a8bc
dvbsrc: group DVB-T2 substream-id check with its corresponding set_prop()
2016-05-20 14:08:03 -07:00
Reynaldo H. Verdejo Pinochet
25543d70a7
dvbsrc: add DVB-S2 sub-stream ID check
...
Disable if invalid (> 255) instead of blindy setting this
property regardless of its actual value.
2016-05-20 13:57:45 -07:00
Reynaldo H. Verdejo Pinochet
e41b1c510a
dvbsrc: clarify consequence of passing a wrong ID to the substream filter
2016-05-20 13:47:06 -07:00
Reynaldo H. Verdejo Pinochet
1d9adb14dc
dvbsrc: move ISDB-T bandwidth check to _is_valid_bandwidth()
...
Allows test to be used for delivery system auto-detection.
Additionally, add 0 (auto) as valid value.
2016-05-17 15:06:49 -07:00
Reynaldo H. Verdejo Pinochet
ae060943a8
dvbsrc: add '0' as a valid value for bandwidth
...
Underlying API considers this the BANDWIDTH_HZ equivalent
to the old BANDWIDTH_AUTO for BANDWIDTH.
2016-05-17 14:40:11 -07:00
Reynaldo H. Verdejo Pinochet
dde02e2d63
dvbsrc: factor out and reuse DVB-T/T2 bandwidth checks
...
Use new utility function as an additional check for delivery
system auto-detection.
2016-05-17 14:40:01 -07:00
Reynaldo H. Verdejo Pinochet
8e9e3f58c9
dvb/parsechannels: recognize additional bandwidths at zap parsing
...
Previously ignored 1.712, 5 and 10 MHz values are also valid
2016-05-17 13:08:19 -07:00
Reynaldo H. Verdejo Pinochet
10b020095b
dvbsrc: special case detection when DVB-T and T2 seem valid
...
There is no way to tell one over the other when parameters
seem valid for DVB-T and DVB-T2 and the adapter supports
both. Reason to go with the former here is that, from
experience, most DVB-T2 channels out there seem to use
parameters that are not valid for DVB-T, like QAM_256
https://bugzilla.gnome.org/show_bug.cgi?id=765731
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
378fdad176
dvbsrc: add transmission mode check for DTMB
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
b84b682275
dvb/parsechannels: use proper fe_spectral_inversion enum identifiers
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
39c50e7b85
dvbsrc: explicitly disable stream filter for invalid ids
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
e32a058fcf
dvb/parsechannels: do not assume DVB-T from zap file alone
...
DVB-T/T2 have the same number of fields so we were
wrongly assuming DVB-T for DVB-T2 broadcasts. Not
setting the delivery system here allows for dvbsrc
to make an informed guess based on the channel
parameters.
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
8fcdf14846
dvbsrc: consider transmission mode for delsys autodetection
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
f0d7a8cb89
dvbsrc: factor out transmission mode check against delsys
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
15e21fee71
dvbsrc: improve delivery system autodetection
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
793c1a2423
dvbsrc: add modulation checks for DVB-T and T2
2016-05-15 17:12:28 -07:00
Reynaldo H. Verdejo Pinochet
4f0e42b8e4
dvbsrc: improve debug output from _open_frontend()
...
* Clarify message on delsys info gathering
* Combine redundant INFO/DEBUG pair
2016-05-11 16:10:27 -07:00
Reynaldo H. Verdejo Pinochet
16643e2db7
dvbsrc: fix invalid dereference of delsys data
...
Use GPOINTER_TO_INT to read GINT_TO_POINTER stored
data.
2016-05-11 16:10:16 -07:00
Reynaldo H. Verdejo Pinochet
d0e553a6d3
dvbsrc: abort at open frontend failure
2016-05-09 15:23:32 -07:00
Reynaldo H. Verdejo Pinochet
5b1191cb4c
dvbsrc: smarten-up delsys autodetection logic
...
When there's no explicit delivery system information
for a channel in the channel configuration file and
the user hasn't selected one via setting the delsys
property, we *guessed* it by selecting the last
supported delsys reported by the driver. This change
provides the basis for smarter delsys auto detection
and implements a rule for DVB-T2. Rules for other
delivery systems can be added in _guess_delsys() in
a similar way.
Additionally: Store list of adapter-supported
delivery systems instead of querying the driver each
time this information is needed.
Related to:
https://bugzilla.gnome.org/show_bug.cgi?id=765731
2016-05-06 16:15:36 -07:00
Reynaldo H. Verdejo Pinochet
571568a09c
dvbsrc: remove remaining polling logic from _tune_fe()
...
No need to do any polling here.
2016-05-06 16:15:36 -07:00
Reynaldo H. Verdejo Pinochet
8c03f448c3
dvbsrc: avoid possible race on _output_frontend_stats()
...
Make sure we send out our info message before we give up ownership
of the structure.
2016-04-29 23:39:06 -07:00
Reynaldo H. Verdejo Pinochet
05ebd33887
dvbsrc: var rename in _output_frontend_params()
...
Now it matches the rest of its status peers. Underscore
was a leftover from previous times.
2016-04-29 16:01:23 -07:00
Reynaldo H. Verdejo Pinochet
530d56fac3
dvbsrc: always output known frontend status params
...
The only mandatory frontend information for our use case
is its status. Make sure we output what we know instead
of choking at the first error getting SNR, BER or any of
the other informational parameters.
2016-04-29 16:01:23 -07:00
Reynaldo H. Verdejo Pinochet
098934d3ae
dvbsrc: refactor signal locking loop
...
Get rid of preliminar frontend status check.
2016-04-29 16:01:23 -07:00
Reynaldo H. Verdejo Pinochet
b5663e4f53
dvbsrc: drop unneeded polling step on _tune_fe()
...
Additional waiting was not needed. Specially considering
it came after a successful READ_STATUS ioctl and was
followed by an EINTR-resilent retry.
2016-04-29 16:01:23 -07:00
Reynaldo H. Verdejo Pinochet
40b2f41ca6
dvbsrc: add test for invalid DVB-T2 bandwidth
2016-04-20 15:42:25 -07:00
Reynaldo H. Verdejo Pinochet
549785a432
dvbsrc: warn on wrong DVB-T2 stream ID value
...
Stream ID, used for DVB-T2/S2 and ISDB-S can
not exceed 255 for the former. Change makes this
explicit.
2016-04-20 15:42:17 -07:00
Reynaldo H. Verdejo Pinochet
7597f4dd7a
dvbsrc: show invalid delsys/mod combination if found
2016-04-15 13:38:36 -07:00
Reynaldo H. Verdejo Pinochet
31041c3ae9
dvbsrc: add modulation check for ATSC
2016-04-15 11:29:48 -07:00