Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#5882 closed enhancement (fixed)

S2API support

Reported by: wagabunda Owned by: Janne Grunau
Priority: major Milestone: 0.22
Component: dvb Version: head
Severity: medium Keywords:
Cc: Ticket locked: yes

Description

support for S2API, 8PSK modulation, roll-off setting, modulation system, scanning DVB-S2 transponders

patch will be appearing in a few hours, I now go to adapt to the trunk rev. 18962

note - a version for developers, not for use, is only a proposal

Attachments (23)

dtv_multiplex.sql (187 bytes) - added by wagabunda 15 years ago.
s2api.01.patch (86.7 KB) - added by wagabunda 15 years ago.
not fully tested after cleaning my private changes
howto.01.txt (386 bytes) - added by wagabunda 15 years ago.
t5882_S2Api_2.diff (94.5 KB) - added by Janne Grunau 15 years ago.
all in one cleaned diff refreshed against trunk
howto.t5882_S2Api_2.txt (395 bytes) - added by wagabunda 15 years ago.
t5882_S2Api_3.diff (87.8 KB) - added by wagabunda 15 years ago.
work with latest r18989, corrected DVB-S/DVB-S2 behavior, note: 8PSK is not the same as modulation system DVB-S2, modulation system it is information about additional parameters (eg roll-off)
howto.t5882_S2Api_3.txt (521 bytes) - added by wagabunda 15 years ago.
t5882_S2Api_4.diff (87.8 KB) - added by wagabunda 15 years ago.
better set of modulation after a scan
t5882_S2Api_5.diff (88.7 KB) - added by wagabunda 15 years ago.
works import from the channels.conf (DVB-S only, tested with output from scan)
bad_tuning_fix.diff (1.0 KB) - added by mnix <mythtv-acct@…> 15 years ago.
Fix for long scanning wait when bad tuning parameters are provided
channel_mux_patch.diff (424 bytes) - added by mnix <mythtv-acct@…> 15 years ago.
fix for missing sistandard in tuning parameters causing invalid multiplex entries
inappropriate_mux.diff (4.7 KB) - added by mnix <mythtv-acct@…> 15 years ago.
Prevent inappropriate mux creation (eg DVB-T mux created when scanning Optus D1 with DVB-S tuner)
vdr_conf.diff (1.6 KB) - added by mnix <mythtv-acct@…> 15 years ago.
Handle VDR format channels.conf produced by scan-s2 (not the best fix, but it works)
channel_mux_patch2.diff (1.3 KB) - added by mnix <mythtv-acct@…> 15 years ago.
fix for missing sistandard in tuning parameters causing invalid multiplex entries - updated as previous fix was incomplete
s2api.alan.r1.patch (79.6 KB) - added by alannisota@… 15 years ago.
Rev1 of pathc by Alan
s2api.alan.r2.patch (96.0 KB) - added by stegmaie 15 years ago.
Rev2 of Alan's patch
s2api.riky.r0.patch (96.0 KB) - added by ferrarir_AT_libero.it 15 years ago.
refactored Alan's patch (r2) to match current scanwizardhelper.cpp
t5882_s2api_support_21135.diff (61.8 KB) - added by Janne Grunau 15 years ago.
t5882_s2api_support_21234.diff (64.7 KB) - added by Janne Grunau 15 years ago.
t5882_s2api_support_21249.diff (64.7 KB) - added by Janne Grunau 15 years ago.
update patch after conflict in [21249]
t5882_s2api_support_21269.diff (64.9 KB) - added by Janne Grunau 15 years ago.
updated patch to 21269 and adds debugging
t5882_s2api_support_21272.diff (68.9 KB) - added by Janne Grunau 15 years ago.
t5882_s2api_support_21279.diff (69.2 KB) - added by Janne Grunau 15 years ago.
do not use FEC_AUTO for DVB-S2 transports

Download all attachments as: .zip

Change History (117)

Changed 15 years ago by wagabunda

Attachment: dtv_multiplex.sql added

Changed 15 years ago by wagabunda

Attachment: s2api.01.patch added

not fully tested after cleaning my private changes

comment:1 Changed 15 years ago by wagabunda

requirements:

  • new API headers in /usr/include/linux

-- from http://linuxtv.org/hg/v4l-dvb/
-- or http://mercurial.intuxication.org/hg/s2-liplianin/
--- (folder /linux/include/linux/)

  • I'm not sure, but unless symbolic link to compiler.h in /usr/include/linux

(link to /usr/src/linux-headers-`uname -r`/include/linux/compiler.h)

comment:2 Changed 15 years ago by anonymous

Please make the patch support the --dvb-path configure directive to keep it in line with existing code and not create an additional requirement to move headers from test/experimental code into the default path.

comment:3 in reply to:  2 Changed 15 years ago by anonymous

Replying to anonymous:

Please make the patch support the --dvb-path configure directive

new headers are from official repository (http://linuxtv.org/hg/v4l-dvb/)
compiler.h is required by headers from this repository

comment:4 in reply to:  2 Changed 15 years ago by wagabunda

Replying to anonymous:

Please make the patch support the --dvb-path configure directive

You're right, tests in progress.

comment:5 in reply to:  2 Changed 15 years ago by wagabunda

Replying to anonymous:

Please make the patch support the --dvb-path configure directive

compiled - works with the s2-liplianin
(in my case ./configure --dvb-path=/usr/local/src/s2/linux/include)

Changed 15 years ago by wagabunda

Attachment: howto.01.txt added

comment:6 Changed 15 years ago by Janne Grunau

Component: mythtvdvb
Milestone: unknown0.22
Owner: changed from Isaac Richards to Janne Grunau
Status: newaccepted

please don't use tabs. no need to upload a new patch, I have already fixed it locally and will attach it including a proper DB update later today.

the patch breaks DVB support with DVB API 3, that needs to be fixed before it can be committed.

comment:7 Changed 15 years ago by skerit@…

A new patch will be needed because of the typo fix in revision [18979] This patch also tries to fix it, causing breakage.

If I had experience creating patches, I would spare anyone else the trouble, but that's new ground for me.

Changed 15 years ago by Janne Grunau

Attachment: t5882_S2Api_2.diff added

all in one cleaned diff refreshed against trunk

Changed 15 years ago by wagabunda

Attachment: howto.t5882_S2Api_2.txt added

comment:8 Changed 15 years ago by wagabunda

Some DVB-S2 streams do not contain information about the modulation system. After a scan of such a transponder can be saved as DVB-S instead of DVB-S2. You have to change it back manually. Beyond this is a mistake in patch - roll-off may be incorrect. For several hours I improved it all.

comment:9 Changed 15 years ago by wagabunda

t5882_S2Api_2.diff is corrupted - do no use !

@janne - order of options in DTVTunerType::ParseTable? is important !

Changed 15 years ago by wagabunda

Attachment: t5882_S2Api_3.diff added

work with latest r18989, corrected DVB-S/DVB-S2 behavior, note: 8PSK is not the same as modulation system DVB-S2, modulation system it is information about additional parameters (eg roll-off)

Changed 15 years ago by wagabunda

Attachment: howto.t5882_S2Api_3.txt added

Changed 15 years ago by wagabunda

Attachment: t5882_S2Api_4.diff added

better set of modulation after a scan

comment:10 Changed 15 years ago by skerit@…

Even though I used the SQL converion script (and so added the needed tables), I can't tune or scan anything. I'm getting these errors:

2008-11-11 13:56:38.517 DTVMux, Error: Invalid S2 modulation system parameter '27500000', aborting. 2008-11-11 13:56:38.517 DTVMux, Error: Invalid S2 modulation system parameter '22000000', aborting. 2008-11-11 13:56:38.518 DTVMux, Error: Invalid S2 modulation system parameter '22000000', aborting.

comment:11 Changed 15 years ago by wagabunda

@skerit@… - "SQL converion script" is not needed, janne added SQL commands to the dbcheck.cpp file - now sql is a part of the diff's. Unless you had some errors during patching - DTVMux gets uncorrected parameters, from the scanner, in my opinion.

comment:12 in reply to:  10 Changed 15 years ago by wagabunda

Replying to skerit@kipdola.com:

Try t5882_S2Api_4.diff with revision 18989.

example:
svn revert -R .
svn up -r 18989
patch -p0 < t5882_S2Api_4.diff

comment:13 Changed 15 years ago by stinne

same problem on the modulation.

tried it on revision 18989 without any success

comment:14 Changed 15 years ago by anonymous

Just tried t5882_S2Api_4.diff on trunk (rev 19075).

At first i got the same modulation parameter error as mentioned above when trying to tune to existing channels (DVB-S).

Then I thought I'd try to scan some S2 transponders before switching back and ran mythtv-setup. It was able to lock and scan S2 transponders.

Having completed set-up the back-end was now able to get lock on some channels (both S and S2) but got somehow confused about program IDs. (2008-11-13 02:56:43.593 DTVSM(/dev/dvb/adapter1/frontend0) Error: Wrong PMT; pmt->pn(1521) desired(1520))

It also failed to handle encryption, both for some (most?) previously working S channels and all S2 channels which are supposed to be included in my subscription. (2008-11-13 03:09:00.238 PID 0x2a2 status: Encrypted)

After switching back to the previous build all S channels worked as before, decryption included. Whatever cleanup mythtv-setup did to eliminate the modulation-parameter errors doesn't affect the un-patched binaries.


Some more checks in the database reveal that the S2 scan hasn't got mplexid right. I first configured the multiplexes (transports) manually, then scanned them, Examining all channels on one particular mplexid (57), I find that these instead should be pointing to mplexid 81 in dtv_multiplex. The transponder in my database with mplexid 57 doesn't even have valid parameters set which cause errors like this when tuning: 2008-11-13 03:10:19.598 DVBChan(3:/dev/dvb/adapter1/frontend0) Warning: Your frequency setting (12128000) is out of range. (min/max:950000/2150000)

comment:15 Changed 15 years ago by anonymous

I wouldn't worry about 03:10:19.598 DVBChan(3:/dev/dvb/adapter1/frontend0) Warning: Your frequency setting (12128000) is out of range. (min/max:950000/2150000) . I have always assumed it is a cosmetic bug. A similar warning pops up for my (working) DVB-S cards.

comment:16 in reply to:  14 ; Changed 15 years ago by wagabunda

Some more checks in the database reveal that the S2 scan hasn't got mplexid right [...]

Very important information - thank you. I have to repair.

comment:17 Changed 15 years ago by n.wagenaar@…

A complete new installation with the latest patch, breaks channel-scanning in mythtv-setup through channels.conf import (so a new setup is not possible).

comment:18 in reply to:  17 Changed 15 years ago by mnix

Replying to n.wagenaar@xs4all.nl:

A complete new installation with the latest patch, breaks channel-scanning in mythtv-setup through channels.conf import (so a new setup is not possible).

It's good to know I'm not the only one seeing this :-)

In my case all channel scanning seems to get stuck intermittently (sometimes a channels.conf import will work, in some cases scanning an existing transport will work. I've never had a Full Scan (tuned) work for me though. Actually it's more like it gets stuck but sometimes works :)

scan-s2 works fine, and xine works fine with the resulting channels.conf so the hardware/drivers seem to be ok.

Technotrend S2-3650CI, MythTV CVS, S2API (s2-liplianin), Slackware 12.1, Kernel 2.6.27

comment:19 Changed 15 years ago by mnix

Having now read through some code, I believe my problem above is caused by the following set of circumstances (no idea why it sometimes works, the code looks like it should always fail for my setup):

  • the S2-3650 drivers are S2API only

I should get some time next week, so will have a go at a patch then unless one appears in the meantime (or someone says they are already on it).

comment:20 Changed 15 years ago by mnix

More code reading - this time in scan-s2 to see what that did - which appears to be exactly the same as mythtv is doing to get the status, but for some reason ioctl(..., FE_READ_STATUS, ...) returns an error for mythtv and not for scan-s2.

my build was from a clean checkout from svn too :-( Similar things apply to the other functions I mentioned above ?:(

comment:21 in reply to:  17 Changed 15 years ago by wagabunda

Replying to n.wagenaar@xs4all.nl:

A complete new installation with the latest patch, breaks channel-scanning in mythtv-setup through channels.conf import (so a new setup is not possible).

is possible, with full scan

comment:22 in reply to:  19 Changed 15 years ago by anonymous

Replying to mnix:

S2API is backward compatible. I improved only what is necessary to support 8PSK.

Changed 15 years ago by wagabunda

Attachment: t5882_S2Api_5.diff added

works import from the channels.conf (DVB-S only, tested with output from scan)

comment:23 Changed 15 years ago by ferrarir_AT_libero.it

Hello, can't compile myth when t5882_S2Api_5.diff is applied. Got 2 errors: FIRST: @@ -60,6 +60,7 @@

Fetch tuning data from the database. QString tvformat, modulation, freqtable, freqid, dtv_si_std;

+ QString msystem, rolloff;

int finetune; uint64_t frequency; int mpeg_prog_num;

@@ -70,6 +71,7 @@

tvformat, modulation, freqtable, freqid, finetune, frequency, dtv_si_std, mpeg_prog_num, atsc_major, atsc_minor, tsid, netid,

+ msyste, rolloff,

mplexid, commfree))

i needed to change msyste to msystem to get it compile. Correct??

SECOND: compiling dvbchannel.cpp

dvbchannel.cpp: In member function 'bool DVBChannel::Tune(const DTVMultiplex&, uint, bool, bool)':
dvbchannel.cpp:649: error: aggregate 'dtv_properties cmds' has incomplete type and cannot be defined
dvbchannel.cpp:652: error: 'dtv_property' was not declared in this scope
dvbchannel.cpp:652: error: expected `;' before 'props'
dvbchannel.cpp:653: error: 'props' was not declared in this scope
dvbchannel.cpp:654: error: 'DTV_CLEAR' was not declared in this scope
dvbchannel.cpp:657: error: 'FE_SET_PROPERTY' was not declared in this scope
dvbchannel.cpp:724: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:751: error: 'FE_SET_PROPERTY' was not declared in this scope
dvbchannel.cpp: In member function 'bool DVBChannel::IsTuningParamsProbeSupported() const':
dvbchannel.cpp:814: error: aggregate 'dtv_properties cmds' has incomplete type and cannot be defined
dvbchannel.cpp:816: error: 'FE_GET_PROPERTY' was not declared in this scope
dvbchannel.cpp: In member function 'bool DVBChannel::ProbeTuningParams(DTVMultiplex&) const':
dvbchannel.cpp:848: error: aggregate 'dtv_properties cmds' has incomplete type and cannot be defined
dvbchannel.cpp:849: error: 'dtv_property' was not declared in this scope
dvbchannel.cpp:849: error: expected `;' before 'props'
dvbchannel.cpp:850: error: 'props' was not declared in this scope
dvbchannel.cpp:853: error: 'FE_GET_PROPERTY' was not declared in this scope
dvbchannel.cpp: In function 'DTVMultiplex dtvproperties_to_dtvmultiplex(DTVTunerType, const dtv_properties&)':
dvbchannel.cpp:1084: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1086: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1088: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1089: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1091: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1092: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1094: error: 'SYS_DVBS' was not declared in this scope
dvbchannel.cpp:1097: error: 'SYS_DVBS2' was not declared in this scope
dvbchannel.cpp:1100: error: 'SYS_DVBT' was not declared in this scope
dvbchannel.cpp:1101: error: 'SYS_DVBC_ANNEX_AC' was not declared in this scope
dvbchannel.cpp:1102: error: 'SYS_DVBC_ANNEX_B' was not declared in this scope
dvbchannel.cpp:1104: error: 'SYS_ATSC' was not declared in this scope
dvbchannel.cpp:1111: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1114: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1116: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1118: error: 'DTV_SYMBOL_RATE' was not declared in this scope
dvbchannel.cpp:1125: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1127: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1130: error: 'DTV_INNER_FEC' was not declared in this scope
dvbchannel.cpp:1135: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1138: error: 'DTV_PILOT' was not declared in this scope
dvbchannel.cpp:1140: error: 'DTV_ROLLOFF' was not declared in this scope
dvbchannel.cpp:1142: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1144: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1145: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1147: error: 'DTV_BANDWIDTH_HZ' was not declared in this scope
dvbchannel.cpp:1149: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1151: error: 'DTV_CODE_RATE_HP' was not declared in this scope
dvbchannel.cpp:1153: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1155: error: 'DTV_CODE_RATE_LP' was not declared in this scope
dvbchannel.cpp:1157: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1159: error: 'DTV_TRANSMISSION_MODE' was not declared in this scope
dvbchannel.cpp:1161: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1163: error: 'DTV_GUARD_INTERVAL' was not declared in this scope
dvbchannel.cpp:1165: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1167: error: 'DTV_HIERARCHY' was not declared in this scope
dvbchannel.cpp:1169: error: invalid use of incomplete type 'const struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'const struct dtv_properties'
dvbchannel.cpp:1171: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp: In function 'bool dtvmultiplex_to_dtvproperties(DTVTunerType, const DTVMultiplex&, dtv_properties*, bool)':
dvbchannel.cpp:1198: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1198: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1199: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1199: error: 'SYS_DVBS' was not declared in this scope
dvbchannel.cpp:1200: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1200: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1201: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1202: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1202: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1203: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1204: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1204: error: 'DTV_SYMBOL_RATE' was not declared in this scope
dvbchannel.cpp:1205: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1206: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1206: error: 'DTV_INNER_FEC' was not declared in this scope
dvbchannel.cpp:1207: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1208: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1208: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1209: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1212: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1212: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp:1213: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1217: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1223: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1223: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1224: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1224: error: 'SYS_DVBS2' was not declared in this scope
dvbchannel.cpp:1225: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1225: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1226: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1227: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1227: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1228: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1229: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1229: error: 'DTV_SYMBOL_RATE' was not declared in this scope
dvbchannel.cpp:1230: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1231: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1231: error: 'DTV_INNER_FEC' was not declared in this scope
dvbchannel.cpp:1232: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1233: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1233: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1234: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1235: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1235: error: 'DTV_PILOT' was not declared in this scope
dvbchannel.cpp:1236: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1236: error: 'PILOT_AUTO' was not declared in this scope
dvbchannel.cpp:1237: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1237: error: 'DTV_ROLLOFF' was not declared in this scope
dvbchannel.cpp:1239: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1241: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1244: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1244: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp:1245: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1248: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1252: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1252: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1253: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1253: error: 'fe_delivery_system_t' was not declared in this scope
dvbchannel.cpp:1253: error: expected primary-expression before 'int'
dvbchannel.cpp:1253: error: expected `;' before 'tuning'
dvbchannel.cpp:1254: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1254: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1255: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1256: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1256: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1257: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1258: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1258: error: 'DTV_SYMBOL_RATE' was not declared in this scope
dvbchannel.cpp:1259: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1260: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1260: error: 'DTV_INNER_FEC' was not declared in this scope
dvbchannel.cpp:1261: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1262: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1262: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1263: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1266: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1266: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp:1267: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1270: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1274: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1274: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1275: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1275: error: 'SYS_DVBC_ANNEX_AC' was not declared in this scope
dvbchannel.cpp:1276: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1276: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1277: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1278: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1278: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1279: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1280: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1280: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1281: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1282: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1282: error: 'DTV_BANDWIDTH_HZ' was not declared in this scope
dvbchannel.cpp:1283: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1284: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1284: error: 'DTV_CODE_RATE_HP' was not declared in this scope
dvbchannel.cpp:1285: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1286: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1286: error: 'DTV_CODE_RATE_LP' was not declared in this scope
dvbchannel.cpp:1287: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1288: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1288: error: 'DTV_TRANSMISSION_MODE' was not declared in this scope
dvbchannel.cpp:1289: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1290: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1290: error: 'DTV_GUARD_INTERVAL' was not declared in this scope
dvbchannel.cpp:1291: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1292: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1292: error: 'DTV_HIERARCHY' was not declared in this scope
dvbchannel.cpp:1293: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1296: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1296: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp:1297: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1300: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1305: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1305: error: 'DTV_DELIVERY_SYSTEM' was not declared in this scope
dvbchannel.cpp:1306: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1306: error: 'SYS_ATSC' was not declared in this scope
dvbchannel.cpp:1307: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1307: error: 'DTV_FREQUENCY' was not declared in this scope
dvbchannel.cpp:1308: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1309: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1309: error: 'DTV_MODULATION' was not declared in this scope
dvbchannel.cpp:1310: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1311: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1311: error: 'DTV_INVERSION' was not declared in this scope
dvbchannel.cpp:1312: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1315: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1315: error: 'DTV_TUNE' was not declared in this scope
dvbchannel.cpp:1316: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp:1319: error: invalid use of incomplete type 'struct dtv_properties'
dvbchannel.cpp:59: error: forward declaration of 'struct dtv_properties'
dvbchannel.cpp: At global scope:
dvbchannel.cpp:54: warning: 'dvb_frontend_parameters dtvmultiplex_to_dvbparams(DTVTunerType, const DTVMultiplex&)' declared 'static' but never defined
dvbchannel.cpp:56: warning: 'DTVMultiplex dvbparams_to_dtvmultiplex(DTVTunerType, const dvb_frontend_parameters&)' declared 'static' but never defined
dvbchannel.cpp:1183: warning: 'bool dtvmultiplex_to_dtvproperties(DTVTunerType, const DTVMultiplex&, dtv_properties*)' defined but not used

how can i solve this?

Thanks

comment:24 in reply to:  23 Changed 15 years ago by mnix

The first problem is a typo that was corrected in the earlier patch, then taken out to keep the source more consistent with the svn version. Leave it whichever way compiles for you.

The second is because your mythtv compile is using the wrong DVB headers. You need to add --dvb-path=(path-to-S2API)/linux/include to your configure line. You can get the S2API from the links in the first post.

comment:25 Changed 15 years ago by ferrarir_AT_libero.it

thanks for your answer. my mistake was to not use ABSOLUTE path now compiled ok! thanks

comment:26 Changed 15 years ago by ferrarir_AT_libero.it

installation went ok but now i get this message when tring to scan for channels: [code] 2008-11-23 18:30:40.544 Couldn't get handle

eno: No such file or directory (2)

2008-11-23 18:30:40.544 GetSTBListPrivate -- begin 2008-11-23 18:30:40.544 GetSTBListPrivate -- got lock 2008-11-23 18:30:40.544 GetSTBListPrivate -- end 2008-11-23 18:30:40.553 Can't open DVB frontend (). 2008-11-23 18:30:40.738 DiSEqCDevTree, Warning: No device tree for cardid 0 2008-11-23 18:31:01.906 Could not query inputs.

eno: Operation not supported (95)

2008-11-23 18:31:01.911 Could not query inputs.

eno: Operation not supported (95)

2008-11-23 18:31:01.912 Could not query inputs.

eno: Operation not supported (95)

2008-11-23 18:31:01.914 Could not query inputs.

eno: Operation not supported (95)

2008-11-23 18:31:01.914 ProbeAudioInputs?(/dev/dvb/adapter0/frontend0,HDPVR) 2008-11-23 18:31:01.914 ProbeV4LAudioInputs(/dev/dvb/adapter0/frontend0) 2008-11-23 18:31:01.914 Could not query inputs.

eno: Operation not supported (95)

2008-11-23 18:31:01.914 ProbeAudioInputs?(/dev/dvb/adapter0/frontend0,HDPVR) 2008-11-23 18:31:01.914 ProbeV4LAudioInputs(/dev/dvb/adapter0/frontend0) 2008-11-23 18:31:01.917 Can't open DVB frontend (). 2008-11-23 18:31:01.924 DiSEqCDevTree, Warning: No device tree for cardid 1 2008-11-23 18:31:44.906 XMLTVFindGrabbers: Failed to run tv_find_grabbers 2008-11-23 18:31:56.049 XMLTVFindGrabbers: Failed to run tv_find_grabbers 2008-11-23 18:32:07.492 New DB connection, total: 5 2008-11-23 18:32:07.492 Connected to database 'mythconverg' at host: localhost 2008-11-23 18:32:07.494 New DB connection, total: 6 2008-11-23 18:32:07.494 Connected to database 'mythconverg' at host: localhost 2008-11-23 18:32:50.353 SelectSetting::setValue(): invalid index: -1 size: 0 2008-11-23 18:32:50.633 SelectSetting::setValue(): invalid index: -1 size: 0 2008-11-23 18:34:08.221 DVBSM(/dev/dvb/adapter0/frontend0), Error: Can not read DVB status

eno: Invalid argument (22)

2008-11-23 18:34:08.221 DVBSM(/dev/dvb/adapter0/frontend0), Warning: Can not measure Signal Strength

eno: Invalid argument (22)

2008-11-23 18:34:08.221 DVBSM(/dev/dvb/adapter0/frontend0), Warning: Can not measure S/N

eno: Invalid argument (22)

2008-11-23 18:34:08.221 DVBSM(/dev/dvb/adapter0/frontend0), Warning: Can not measure Bit Error Rate

eno: Invalid argument (22)

2008-11-23 18:34:08.222 DVBSM(/dev/dvb/adapter0/frontend0), Warning: Can not count Uncorrected Blocks

eno: Operation not supported (95)

2008-11-23 18:34:08.235 Failed to handle tune complete.

code my card is a TT 3200-S2. It'attached to a 2 ports DiseqC (HB-13E, Astra-19.2). It's a fresh backend only install thanks

comment:27 in reply to:  26 Changed 15 years ago by wagabunda

Replying to ferrarir_AT_libero.it:

Are you tested this card with szap-s2 ?

comment:28 Changed 15 years ago by stegmaier<AT>sw-systems.de

Just to share some experience...

I patched the 19147 revision with the latest patch. I had to:

  • Fix the typo (as mentioned above)
  • In dbcheck.cpp (or similar, don't remember) there is at the beginning a "currentVersion" describing the expected DB version. I had to bump it up one revision because otherwise I alwys got a "DB newer than expected" error from mythtv-setup and others after the DB has been updated to the S2API changes.

Therewith, it works with my Technisat SkyStar? HD2 and the s2-liplianin drivers on gentoo box with kernel 2.6.28-rc6. Some comments:

  • Tuned scan from scratch didn't work. The scanning window just sits there and seems to do nothing.
  • After creating a small channels.conf (containing only channels of one transponder found by dvbscan) and importing it, the remaining channels could be scanned fine.
  • Some HD channels are not found (but I think that could be due to the driver, read about similar issues on various MLs).
  • Signal strength is always 0, S/Nr shows some value, but I don't know if it's reasonable.
  • Didn't test any HD channels yet, since no FTA channels are available for me yet.

comment:29 Changed 15 years ago by ferrarir_AT_libero.it

I want to thank you all! Now my system works flawlessly. As stegmaier i had to start from a channels.conf file but then i'm able to scan any transponders (Hotdird SD, Hotbird HD (encrypte), Astra SD,...) I really appreciate your help (and hard work) thanks.

PS: By the way, my backend is running inside an XEN DomU domain and it's driving a serial port (ttyS0) and of course a TT-3200-S2 satellite card without any issue.

comment:30 Changed 15 years ago by ferrarir_AT_libero.it

Patch 5 is broken on myth trunk rev 1957 (tried yesterday) because it can't add columns msystem,rolloff to the DB. It's because dbcheck.cpp has changed and myth counldn't be patched. Hope it helps...

comment:31 in reply to:  30 Changed 15 years ago by krabaey@…

Replying to ferrarir_AT_libero.it:

Patch 5 is broken on myth trunk rev 1957 (tried yesterday) because it can't add columns msystem,rolloff to the DB. It's because dbcheck.cpp has changed and myth counldn't be patched. Hope it helps...

You need to execute the dtv_multiplex.sql in the database prior to scanning

comment:32 Changed 15 years ago by joepadmiraal

ferrarir, are you able to tune to the astra hd promo channel on astra 19? It's on freqency 11914.50 H. I can tune to this one with szap-s2. But with mythtv and t5882_S2Api_5.diff I can't get a lock on this channel. Other channels (dvb-s on astra 19) work like a charm.

comment:33 Changed 15 years ago by ferrarir_AT_libero.it

@krabaey: I added columns manually and worked fine. i was only notifying you about the issue. thanks.

@joepadmiraal: myth is SOMETIMES able to tune astra channels (SD & HD too). Tried with many channels from transponders: 11361.75 H, 10743.75 H, ... Seems that has difficulties to drive DisecQ. After few "change channel" doesn't lock anymore Astra channels but HotBird? keeps on running.

comment:34 in reply to:  33 Changed 15 years ago by anonymous

Replying to ferrarir_AT_libero.it :

Seems that has difficulties to drive DisecQ. After few "change channel" doesn't lock anymore Astra channels but HotBird? keeps on running.

Hmmm I can't seem to get a lock on any channel, other than the dvb-s channels from astra 19. I have a Technisat Multytenne dish and astra19 is on the 1st diseqc port. So I am probably facing the same problem as you here. Is there anything I can do to to help finding the source of this problem?

comment:35 Changed 15 years ago by jo@…

Hi check the patch i added here http://svn.mythtv.org/trac/ticket/5703 I hava also a Multytenne and had the same problem. They closed the ticked, because I added no extra info. But with my i doesn't break nothing, It just fixes the diseqc problem

comment:36 Changed 15 years ago by alannisota@…

There was some concern on the mailing list that this patch removes support for the FE_GET_EXTENDED_INFO which was an initially proposed S2 implementation back in 2006. Since the DVB folks finally committed to an approach, I've posted a patch to the linux-dvb list to add support for S2API for the relevant cards, so I think it is reasonable to rip out FE_GET_EXTENDED_INFO when this eventually gets applied, however this patch needs to be updated to check DVB_API_VERSION and only switch to the new protocol if >=5 to keep backwards compatibility. On the plus side, the same protocol should work for DVBS/C/T and DVBS2 cards, so it should be as easy as: VERSION>=5 use FE_GET_PROPERTY/FE_SET_PROPERTY, VERSION<5 use FE_SET_FRONTEND/FE_GET_FRONTEND

On the downside, the S2API is still immature, and there is no way to query for DVB-S2 capabilities yet, which is annoying when trying to support a mixed environment.

If no one gets to it soon, I may take a crack at cleaning up wagabunda's patch for backwards compatibility

comment:37 in reply to:  35 Changed 15 years ago by joepadmiraal

Replying to jo@requestfocus.be:

Hi check the patch i added here

I aplied your patch and it is working like a charm!

comment:38 in reply to:  16 ; Changed 15 years ago by anonymous

Replying to wagabunda:

Some more checks in the database reveal that the S2 scan hasn't got mplexid right [...]

Very important information - thank you. I have to repair.

There was some confusion about the mplexid. When reporting this I wasn't aware that mythtv-setup adds duplicate transports for any transport that is manually added in the GUI. Further, one of the transponders I was testing with was listed on lyngsat.com to operate at 12130kHz, while after manual add and scan it was found to operate at 12128kHz instead which led me to suspect this patch. It's probably an error in lyngsat's table instead.

I can now, with trunk (rev 19188) and the latest s2api-patch, scan and tune all s2 channels. What remains it to get the back-end to accept and store the streams. It may be an issue with my CAM, although it delivers good streams when tuned with szap-s2 which can be recorded or played back. Mythbackend complains about "PID <varying PID> discontinuity detected", "Saw PMT but did not write to disk yet" and "Saw PAT but did not write to disk yet". There is unfortunately no unencrypted HD channel available for test that would allow me to eliminate possible problems with the CAM.

comment:39 in reply to:  38 Changed 15 years ago by mnix

Replying to anonymous:

Further, one of the transponders I was testing with was listed on lyngsat.com to operate at 12130kHz, while after manual add and scan it was found to operate at 12128kHz instead which led me to suspect this patch. It's probably an error in lyngsat's table instead.

I read in some code somewhere (scan-s2?) that the transponders can have variations in their listed frequencies depending on where you get the info from - there was code there to actually treat "nearby" frequencies on the same polarity as the same transponder.

comment:40 Changed 15 years ago by mnix

for those who may be interested, I am still having intermittent problems with ioctl(FE_READ_STATUS) returning Invalid Argument. I've now traced it to the drivers for my S2-3650CI not knowing if they are supposed to be tuning to DVB-S or DVB-S2:

stb0899_read_status: Unsupported delivery system

scan-s2 hasn't had any problems with this, and all the tuning parameters from mythtv seem to be correct. More work is required to determine the cause, but that's a job for tomorrow.

comment:41 in reply to:  40 ; Changed 15 years ago by mnix

Replying to mnix:

ioctl(FE_READ_STATUS) returning Invalid Argument.

Finally got a fix on this one... YAY!

The issue stems from the channels.conf data from scan-s2 (specifically I did not specify '-o zap' and so was feeding a vdr format channels.conf to mythtv).

The parameters field has no modulation (M) value, so somewhere in the translation myth defaulted to QAMAuto. When the scanner arrived at dtvmultiplex_to_dtvproperties() it was unable to match up the tuner type with the modulation, and did not fill in the tuning commands - leaving the DTV_CLEAR command in-tact in the buffer.

DVBChannel::Tune() then sent this DTV_CLEAR when it would normally send the tuning parameters, and as it did not cause an error, would wait around for a signal lock.

As the S2API had never received tuning parameters, it had no idea what it was supposed to be tuned to (DVB-S or DVB-S2) and returned an error on FE_READ_STATUS.

Proposed fix: get dtvmultiplex_to_dtvproperties() to return false as well as log an error. Also check the returned value and return false from Tune(). Possibly also return false if cmds.num<2 (redundant, but may help catch future coding deficiencies).

There were other issues with mythtv's parsing of the vdr format from scan-s2 but those a are unrelated to the S2API code.

Unfortunately I don't know if I can watch the channels it finds yet as the current revision of mythfrontend is having issues during startup. A job for tomorrow I think.

comment:42 in reply to:  41 Changed 15 years ago by mythtv@…

Patch revision 5 against Trunk/R19219: When I do an initial freqency scan on Astra 19.2E, I do get a dtv_multiplex table which has

msystem all NULL rolloff all NULL modulation "qpsk" on the DVB-S transponders modulation "auto" on the DVB-S2 transponders

Subsequently, a transponer scan on the DVB-S transponders works as expected, whereas an scan on the S2 transponders yields "No lock".

This kind-of sounds related to the import issue.

I was, as of yet, unable to find out what should be in "modulation" for the DVB-S2 channels (I tried "8psk", to no avail), nor whether msystem/rolloff is really still used.

comment:43 Changed 15 years ago by anonymous

just looking at the multiplex listing after importing the channels.conf for Optus D1 @ 160E... and worked out something rather nasty is going on....

For ABC and SBS at least, the network information tables contain information not only for alternate DVB-S feeds, but for DVB-T feeds as well... and mythtv is picking up these DVB-T settings and storing them for use with the DVB-S receiver!! (actually there doesn't seem to be ANY DVB-S info in the ABC and SBS tables)

Hence I get "messed up" dtv_multiplex entries! As the "Sky" feeds only have DVB-S information they appear to generate the right multiplex entries (but the channels get the wrong mplexid as mentioned above)

Possibly there is something wrong with the way ABC and SBS are sending their NITs - although I see the validity of having the information there, but Mythtv also needs educating - as it already recognises the data as being for DVB-T not DVB-S, but uses it anyway!

comment:44 Changed 15 years ago by mnix

I think I have a handle on the mux matchup problems:

  • SIScan::current.tuning.sistandard = "" rather than 'dvb'
  • that results in the mux being stored in the database without its tsid and netid, and thus not findable when trying to create the channel.
  • for some reason it was finding the incorrectly created muxes (but not the one for the channel) under the right conditions

I will investigate exactly why sistandard="" tonight.

comment:45 Changed 15 years ago by Jonas Kvinge

2008-12-06 14:00:32.043 TV: Attempting to change from None to WatchingLiveTV 2008-12-06 14:00:32.044 Using protocol version 42 2008-12-06 14:00:32.073 GetEntryAt?(-1) failed. 2008-12-06 14:00:32.074 EntryToProgram?(0@Thu Jan 1 01:00:00 1970) failed to get pginfo 2008-12-06 14:00:32.074 TV Error: LiveTV not successfully started 2008-12-06 14:00:32.074 TV Error: LiveTV not successfully started 2008-12-06 14:00:32.175 TV: Deleting TV Chain in destructor 2008-12-06 14:00:32.181 DPMS Deactivated 2008-12-06 14:00:32.181 DPMS Reactivated.

comment:46 Changed 15 years ago by anonymous

I keep getting the following error,

2008-12-06 14:00:32.043 TV: Attempting to change from None to WatchingLiveTV 2008-12-06 14:00:32.044 Using protocol version 42 2008-12-06 14:00:32.073 GetEntryAt?(-1) failed. 2008-12-06 14:00:32.074 EntryToProgram?(0@Thu Jan 1 01:00:00 1970) failed to get pginfo 2008-12-06 14:00:32.074 TV Error: LiveTV not successfully started 2008-12-06 14:00:32.074 TV Error: LiveTV not successfully started 2008-12-06 14:00:32.175 TV: Deleting TV Chain in destructor 2008-12-06 14:00:32.181 DPMS Deactivated 2008-12-06 14:00:32.181 DPMS Reactivated.

comment:47 Changed 15 years ago by skerit@…

Could somebody, who managed to get this to work, maybe post some kind of procedure?

It's completely failing on my system (as I've stated before) I even tried using a totally new database, with channels.conf files from scan-s2, but nothing works.

I can't manually search a frequency, it just won't do anything (the progress bars just remain in place)

2008-12-06 17:32:18.187 TriggeredConfigurationGroup::triggerChanged(0) Error:Failed to locate value in triggerMap 2008-12-06 17:32:46.558 DVBSM(/dev/dvb/adapter3/frontend0), Warning: Can not count Uncorrected Blocks

eno: Bewerking wordt niet ondersteund (95)

2008-12-06 17:32:46.565 Failed to handle tune complete.

This are the errors I get when I try to import a channels.conf file:

2008-12-06 17:33:39.797 Imported channel: Music Choice;BSkyB 0 -1 on f: 11778000 mod: qpsk inv: a fec: autohp: auto lp: auto bandw: a transmode: a guardi: auto hier: a polar: v msys: dvbs rolloff: 0.35 2008-12-06 17:33:39.797 Imported channel: Music Choice;BSkyB 0 -1 on f: 11778000 mod: qpsk inv: a fec: autohp: auto lp: auto bandw: a transmode: a guardi: auto hier: a polar: v msys: dvbs rolloff: 0.35 2008-12-06 17:33:39.797 Imported channel: EPG Background Audio.;BSkyB 0 -1 on f: 11778000 mod: qpsk inv: a fec: autohp: auto lp: auto bandw: a transmode: a guardi: auto hier: a polar: v msys: dvbs rolloff: 0.35 2008-12-06 17:33:39.797 Imported channel: IEPG data 1;BSkyB 0 -1 on f: 11778000 mod: qpsk inv: a fec: autohp: auto lp: auto bandw: a transmode: a guardi: auto hier: a polar: v msys: dvbs rolloff: 0.35

<snip>

INSERT INTO dtv_multiplex (sourceid, sistandard, frequency, modulation, symbolrate, bandwidth, polarity, inversion, transmission_mode, fec, constellation, hierarchy, hp_code_rate, lp_code_rate, guard_interval, msystem, rolloff) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?); Bindings were: :BANDWIDTH=a, :CONSTELLATION=qpsk, :FREQUENCY=11778000, :GUARD_INTERVAL=auto, :HIERARCHY=a, :HP_CODE_RATE=auto, :INNER_FEC=auto, :INVERSION=a, :LP_CODE_RATE=auto, :MODULATION=qpsk, :MSYSTEM=dvbs, :POLARITY=v, :ROLLOFF=0.35, :SISTANDARD=, :SOURCEID=2, :SYMBOLRATE=27500000, :TRANS_MODE=a No error type from QSqlError? Strange... 2008-12-06 17:34:59.506 SDT: Error determing what transport this service table is associated with so failing 2008-12-06 17:34:59.511 SDT: Error determing what transport this service table is associated with so failing 2008-12-06 17:34:59.513 SDT: Error determing what transport this service table is associated with so failing 2008-12-06 17:34:59.513 SDT: Error determing what transport this service table is associated with so failing

comment:48 in reply to:  47 Changed 15 years ago by mnix

Replying to skerit@kipdola.com:

Could somebody, who managed to get this to work, maybe post some kind of procedure?

mythtv has problems with the vdr format output by scan-s2. use "-o zap" to get a format that is better handled by mythtv (see my posts above).

You will probably also bump into other problems with creating the channels, but I have just got that sorted in my local copy and will be posting a few patches shortly.

For anyone who can't wait, open up frequencytables.cpp and at line 62 add

tuning.sistandard = _tuning.sistandard;

after tuning.Clear();

I'm off to do code clean-up and should get the patches posted here in the next 24 hours.

comment:49 in reply to:  47 Changed 15 years ago by mythtv@…

Replying to skerit@kipdola.com:

Could somebody, who managed to get this to work, maybe post some kind of procedure?

Example for Astra 19.2E:

a) first set up card, video source and connection as usual
b) go to channel scan, set it to "Full Scan (Tuned)"
c) set Modulation System to DVB-S2
d) set Modulation to QSPK (do NOT leave it at AUTO)
e) Frequency 11778000, Vertical, Symbol rate 27500000
f) Scan. This should get you a list of some channels, and more importantly, a list of all transponders. Verify the transports lists, make sure that you have both the DVB-S (with QPSK modulation) and the DVB-S2 transponders (with 8PSK modulation) in it
g) Do a "Full of scan of existing transports", which should get you all channels.
h) Enjoy trimming the list of 974 or so channels down to something managable.

Best Regards,
Olli

Changed 15 years ago by mnix <mythtv-acct@…>

Attachment: bad_tuning_fix.diff added

Fix for long scanning wait when bad tuning parameters are provided

Changed 15 years ago by mnix <mythtv-acct@…>

Attachment: channel_mux_patch.diff added

fix for missing sistandard in tuning parameters causing invalid multiplex entries

Changed 15 years ago by mnix <mythtv-acct@…>

Attachment: inappropriate_mux.diff added

Prevent inappropriate mux creation (eg DVB-T mux created when scanning Optus D1 with DVB-S tuner)

Changed 15 years ago by mnix <mythtv-acct@…>

Attachment: vdr_conf.diff added

Handle VDR format channels.conf produced by scan-s2 (not the best fix, but it works)

Changed 15 years ago by mnix <mythtv-acct@…>

Attachment: channel_mux_patch2.diff added

fix for missing sistandard in tuning parameters causing invalid multiplex entries - updated as previous fix was incomplete

comment:50 Changed 15 years ago by satfan39

I tried to patch trunk 19244 and trunk 19188 with following patches below:

(a) t5882_S2Api_5.diff (b) bad_tuning_fix.diff (c) vdr_conf.diff (d) inappropriate_mux.diff (e) channel_mux_patch2.diff

Compile and install went OK. I am able to scan correctly both dvb-s ( modulation qpsk ) and dvb-s2 channels ( modulation 8psk) using mythtv-setup. Unfortunately, I am unable to watch any dvb-s2 channels, dvbs channels are ok though. I noticed that mythtv-setup crashes at the very last step, after pressing the ESC button to leave it ( see below )

satfan39@satfan39-desktop:/usr/src/trunk/mythtv$ mythtv-setup 2008-12-20 14:26:21.698 Using runtime prefix = /usr 2008-12-20 14:26:21.698 Empty LocalHostName?. 2008-12-20 14:26:21.698 Using localhost value of satfan39-desktop 2008-12-20 14:26:21.701 New DB connection, total: 1 2008-12-20 14:26:21.835 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:21.835 Closing DB connection named 'DBManager0' 2008-12-20 14:26:21.840 XScreenSaver support enabled 2008-12-20 14:26:21.841 DPMS is active. 2008-12-20 14:26:21.842 Primary screen: 0. 2008-12-20 14:26:22.042 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:22.043 Using screen 0, 1280x1024 at 0,0 2008-12-20 14:26:22.059 MythUI Image Cache size set to 20971520 bytes 2008-12-20 14:26:22.061 Current Schema Version: 1226 2008-12-20 14:26:22.071 Primary screen: 0. 2008-12-20 14:26:22.071 Using screen 0, 1280x1024 at 0,0 2008-12-20 14:26:22.072 Switching to square mode (G.A.N.T) 2008-12-20 14:26:22.077 Using the Qt painter 2008-12-20 14:26:22.078 lirc init success using configuration file: /home/satfan39/.mythtv/lircrc 2008-12-20 14:26:22.078 JoystickMenuThread? Error: Joystick disabled - Failed to read /home/satfan39/.mythtv/joystickmenurc 2008-12-20 14:26:22.462 Loading from: /usr/share/mythtv/themes/G.A.N.T/base.xml 2008-12-20 14:26:22.763 Loading from: /usr/share/mythtv/themes/default/base.xml 2008-12-20 14:26:24.145 Loading from: /usr/share/mythtv/themes/G.A.N.T/menu-ui.xml 2008-12-20 14:26:29.921 New DB connection, total: 2 2008-12-20 14:26:30.062 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:30.062 New DB connection, total: 3 2008-12-20 14:26:30.122 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:30.122 New DB connection, total: 4 2008-12-20 14:26:30.191 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:30.192 New DB connection, total: 5 2008-12-20 14:26:30.261 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:26:30.262 New DB connection, total: 6 2008-12-20 14:26:30.321 Connected to database 'mythconverg' at host: 172.19.3.4 2008-12-20 14:27:53.970 DVBSM(/dev/dvb/adapter3/frontend0), Warning: Can not count Uncorrected Blocks

eno: Operation not supported (95)

2008-12-20 14:27:54.110 DVBChan(1:/dev/dvb/adapter3/frontend0) Error: Tune(): Setting Frontend tuning parameters failed.

eno: Invalid argument (22)

2008-12-20 14:28:20.915 DVBSM(/dev/dvb/adapter3/frontend0), Warning: Can not count Uncorrected Blocks

eno: Operation not supported (95)

2008-12-20 14:28:22.857 New DB DataDirect? connection 2008-12-20 14:28:22.909 Connected to database 'mythconverg' at host: 172.19.3.4 QPainterPath::arcTo: Adding arc where a parameter is NaN, results are undefined QPainterPath::arcTo: Adding arc where a parameter is NaN, results are undefined QPainterPath::arcTo: Adding arc where a parameter is NaN, results are undefined QPainterPath::arcTo: Adding arc where a parameter is NaN, results are undefined Error in my_thread_global_end(): 1 threads didn't exit

I Also noticed very strange error message in the mythbackend console that I never had before:

2008-12-20 14:02:35.508 DTVSM(/dev/dvb/adapter3/frontend0) Error: Wrong PMT; pmt->pn(11020) desired(11033) 2008-12-20 14:02:35.508 DTVSM(/dev/dvb/adapter3/frontend0) Error: Wrong PMT; pmt->pn(11032) desired(11033) 2008-12-20 14:02:35.613 DTVSM(/dev/dvb/adapter3/frontend0) Error: Wrong PMT; pmt->pn(11095) desired(11033) 2008-12-20 14:02:35.613 DTVSM(/dev/dvb/adapter3/frontend0) Error: Wrong PMT; pmt->pn(11030) desired(11033) 2008-12-20 14:02:35.664 DTVSM(/dev/dvb/adapter3/frontend0) Error: Wrong PMT; pmt->pn(11031) desired(11033)

Here is my environment

SW: Ubuntu Intrepid 2.6.27-7 open sasc-ng s2-liplianin

HW: nvidia 8400 gt Core duo E6850 2 GB Ram Twinhan DVB-S2 card

Thanks for your help !

comment:51 Changed 15 years ago by slamdunk

Thanks for all the work on this. Having a strange problem however. Running a TT3200. Can watch DVB-S channels live just fine. When I schedule a recording however I get digital artefacts in the video and audio about once every minute. Playing files in mplayer it seems that the file itself is okay, it's what's been recorded that is not. Logging set at normal levels doesn't appear to offer clues. Tried raising backend process priority. Anyone got any other ideas please? Thanks in advance. D.

comment:52 in reply to:  50 Changed 15 years ago by mnix <mythtv-acct@…>

Replying to satfan39:

Compile and install went OK. I am able to scan correctly both dvb-s ( modulation qpsk ) and dvb-s2 channels ( modulation 8psk) using mythtv-setup. Unfortunately, I am unable to watch any dvb-s2 channels, dvbs channels are ok though. I noticed that mythtv-setup crashes at the very last step, after pressing the ESC button to leave it ( see below )

I can't speak for DVB-S2 on my setup - I don't have any S2 channels on my current satellite (well there appears to be a couple of encrypted ones but that's no help as I can't watch them anyway)

mythtv-setup also tends to crash on my system just after scanning the channels is complete, but it creates them ok, and the crash seems independent of any S2API code - so I left it for the usual developers to work on. AFAIK nothing is done as you actually exit setup other than checking a few things over and asking if you're sure, so it shouldn't affect anything too seriously.

comment:53 Changed 15 years ago by Stuart Auchterlonie

If you are testing the patches contained in this ticket you MUST only use a plain checkout of mythtv and the patches from this ticket.

Nothing else.

Testing with other "certain" patches applied will be treated with extreme predjudice.

comment:54 in reply to:  53 Changed 15 years ago by anonymous

Thanks for this important clarification. I now have tested against "a plain checkout of mythtv and the patches from this ticket. Nothing else " and it works!

Tested against trunk Releases 19244 with the following patches applied

(a) t5882_S2Api_5.diff (b) bad_tuning_fix.diff (c) vdr_conf.diff (d) inappropriate_mux.diff (e) channel_mux_patch2.diff

The channel tested is FTA HD Astra promotion channel on Astra 19.2E ( http://www.ses-astra.com/business/en/solutions/media/hdtv/hdtv-demo-channel/index.php )

Changed 15 years ago by alannisota@…

Attachment: s2api.alan.r1.patch added

Rev1 of pathc by Alan

comment:55 Changed 15 years ago by alannisota@…

I've uploaded my take on an S2API patch. it probably needs some more work, but should be much closer to something that could actually be applied. It: Compiles on old V3 DVB API Compiles on new V5 DVB API tunes qpsk correctly on both V3 and V5 API tunes 8psk correctly with V5 API

I ripped out the extended API stuff as the only card that needs it now has S2API compliant drivers in the v4l-dvb tree

The patch is based on wagabunda's patch, and touches a lot of files and I'm not sure I got everything right in my conversion, but it seems to be at least basically functional.

I doubt it will fix any issues with the old patch. The main goal here was to move towards getting something that could be committed.

It is compiled against 19453

comment:56 in reply to:  55 Changed 15 years ago by satfan39

"I doubt it will fix any issues with the old patch. The main goal here was to move towards getting something that could be committed. It is compiled against 19453"

Please clarify if the patches (a) t5882_S2Api_5.diff (b) bad_tuning_fix.diff (c) vdr_conf.diff (d) inappropriate_mux.diff (e) channel_mux_patch2.diff should also be applied to test your own s2api.alan.r1.patch

Thanks

comment:57 Changed 15 years ago by alannisota@…

"Please clarify if the patches (a) t5882_S2Api_5.diff (b) bad_tuning_fix.diff (c) vdr_conf.diff (d) inappropriate_mux.diff (e) channel_mux_patch2.diff should also be applied to test your own s2api.alan.r1.patch" Probably all of them (except 'a') need to be applied. I haven't tried doing tuning since my channels are already setup, and almost all of those seem to be scanning related.

the patch I supplied was based upon wagabunda's t5882_S2Api_5.diff I believe, and should have similar functionality to that.

comment:58 in reply to:  57 Changed 15 years ago by satfan39

So far I had no sucess scanning and watching dvb-s2 channels using "s2api.alan.r1.patch" on trunk 19498. It compiles and installs fines, but I am unable to watch FTA dvb-s2 channels on Astra 19.2E with this patch.

I recreated a fresh database to test and scanned all Astra transponders. Mythtv-setup found nearly all dvb-s2 transponders and nearly all the dvb-s2 channels on astra 19.2E, but impossible to watch the FTA channels broadcasting in dvb-s2 on astra 19.2E ( simul HD, Arte HD, Astra Demo HD ), it will simply not tune on it ( despite the fact that the channels are stored in the database ). Also tried to scan a single dvb-s2 transponder but had no sucess. I tried scanning from a channel.conf files with dvb-s2 channels but had not any sucess either... Finaly, I repeated all the tests above with the additionals patches (a) vdr_conf.diff (b) inappropriate_mux.diff (c) channel_mux_patch2.diff and it did not work either...Please note that I could not apply the patch "bad_tuning_fix.dif" as it does not compile against trunk 19498.

To summarise Dvb-s life tv watching was tested OK in all tests, dvb-s2 live tv watching failed in all tests.

Environment: Ubuntu 8.10 kernel 2.6.27-7 s2-libliamin Nvidia GT-8400 GS Core duo E6850 @ 3.15 ghz Azurewave twin han dvb-s2 card ( STB0899 multistandard )

comment:59 in reply to:  57 ; Changed 15 years ago by satfan39

The same problems happen with the original patch from wagabunda's t5882_S2Api_5, implementing the original patch from wagabunda did not solve the issues mentioned above.

comment:60 in reply to:  59 ; Changed 15 years ago by anonymous

Replying to satfan39:

The same problems happen with the original patch from wagabunda's t5882_S2Api_5, implementing the original patch from wagabunda did not solve the issues mentioned above.

I however suceeded to scan correctly all dvb-s2 transponders using t5882_S2Api_5 and all the associated patches ( (a) vdr_conf.diff (b) inappropriate_mux.diff (c) channel_mux_patch2.diff ), but no pictures on dvb-s2 FTA signals and trunk 19498

comment:61 in reply to:  60 ; Changed 15 years ago by anonymous

Replying to anonymous:

I however suceeded to scan correctly all dvb-s2 transponders using t5882_S2Api_5 and all the associated patches ( (a) vdr_conf.diff (b) inappropriate_mux.diff (c) channel_mux_patch2.diff ), but no pictures on dvb-s2 FTA signals and trunk 19498

Does the frontend time-out (~16sec) while waiting for a stream? I've seen it take as much as 6-8 min (avg ~3min) for the back-end to recognise a h.264-stream if it is waiting for an IDR-frame. A workaround for this case is given in http://svn.mythtv.org/trac/changeset/19094 I'm currently running trunk rev 19530 with t5882_S2Api_5 and can't initiate recording of any S2-channel without the fore-mentioned patch.

comment:62 in reply to:  61 ; Changed 15 years ago by satfan39

" Does the frontend time-out (~16sec) while waiting for a stream? I've seen it take as much as 6-8 min (avg ~3min) for the back-end to recognise a h.264-stream if it is waiting for an IDR-frame. A workaround for this case is given in http://svn.mythtv.org/trac/changeset/19094 I'm currently running trunk rev 19530 with t5882_S2Api_5 and can't initiate recording of any S2-channel without the fore-mentioned patch " Yes, it times out so I will try the patch you mentionned. Please also specify exactly the exact list of patches you that have used with trunk19530 to successfully watch abd record FTA dvb-s2 channels, I would like to reproduce it here. thanks

comment:63 in reply to:  62 Changed 15 years ago by anonymous

Replying to satfan39:

Yes, it times out so I will try the patch you mentionned. Please also specify exactly the exact list of patches you that have used with trunk19530 to successfully watch abd record FTA dvb-s2 channels, I would like to reproduce it here. thanks

Trunk + t5882_S2Api_5 + http://svn.mythtv.org/trac/changeset/19094 is all I need to get it working.

In addition I find that the message "FindH264Keyframes: No ringbuffer" in libs/libmythtv/dtvrecorder.cpp is repeated so many times that it clogs the system (iowait) for a few seconds when opening a HD-channel (if mythbacend output goes to a file). I've simply commented it in the source. A better solution would be to catch and only report one in N of such duplicated messages.

I'm on 1W and have no FTA S2-channels to test, but FTA or decrypted shouldn't matter .. in theory at least.

Changed 15 years ago by stegmaie

Attachment: s2api.alan.r2.patch added

Rev2 of Alan's patch

comment:64 Changed 15 years ago by stegmaie

I have attached my changes of Alan's patch (I dared to call it Rev2...). Tested against 19589.

I compared Alan's patch to the original one and everything seems to be in there, but I added back some of the msystem/rolloff stuff (matter of taste, though...). Additionally, I did the following:

  • Included the "bad tuning" patch since it's only S2API related
  • Included the "channel_mux_patch2" since it should also be only DVB-S2 related.
  • Cleanups: Removed some obviously unneeded card-type stuff (referring to a "new API" but I think not S2API is meant), unused variables, and other small stuff.
  • Added DVB-S2 FEC checks (for 3/5 and 9/10) to prevent some warnings
  • Added DVB-S2 device detection, this needs a recent dvb-driver with K. Schmidinger's patch/proposal for detecting a S2 capable device (available in s2-liplianin and even v4l-dvb hg as far as I know).
  • Fixed a bug (copy/paste probably) in dvbdescriptor.h regarding rolloff parsing.

NOTE: I pulled out the database (dbcheck.cpp) stuff, since it's easier this way to handle keeping it in sync with trunk.
=> You have to manually make the changes if needed.

Works fine for me with normal DVB-S channels. Unfortunately, I still have no luck to get mythtv to scan a DVB-S2 channel with my mantis card, so I still can't test that... next thing on the list.

comment:65 Changed 15 years ago by jo@…

I had luck with scanning, but i changed modulation from 'auto' to '8psk' in the database. After that scanning was success. After scanning i had to change modulation again from 'auto' to '8psk'. I have a hauppauge s2-3200 card

comment:66 Changed 15 years ago by jo@…

my mistake, not hauppauge, but technotrend

comment:67 in reply to:  64 ; Changed 15 years ago by anonymous

Replying to stegmaie:

I have attached my changes of Alan's patch (I dared to call it Rev2...). Tested against 19589.

I compared Alan's patch to the original one and everything seems to be in there, but I added back some of the msystem/rolloff stuff (matter of taste, though...). Additionally, I did the following:

  • Included the "bad tuning" patch since it's only S2API related
  • Included the "channel_mux_patch2" since it should also be only DVB-S2 related.
  • Cleanups: Removed some obviously unneeded card-type stuff (referring to a "new API" but I think not S2API is meant), unused variables, and other small stuff.
  • Added DVB-S2 FEC checks (for 3/5 and 9/10) to prevent some warnings
  • Added DVB-S2 device detection, this needs a recent dvb-driver with K. Schmidinger's patch/proposal for detecting a S2 capable device (available in s2-liplianin and even v4l-dvb hg as far as I know).
  • Fixed a bug (copy/paste probably) in dvbdescriptor.h regarding rolloff parsing.

NOTE: I pulled out the database (dbcheck.cpp) stuff, since it's easier this way to handle keeping it in sync with trunk.
=> You have to manually make the changes if needed.

Works fine for me with normal DVB-S channels. Unfortunately, I still have no luck to get mythtv to scan a DVB-S2 channel with my mantis card, so I still can't test that... next thing on the list.

Does this mean that you can watch S2 channels with this patch but not scan the channels from mythtv, only import scan from szap-s2?

comment:68 in reply to:  67 Changed 15 years ago by anonymous

Replying to anonymous:

Does this mean that you can watch S2 channels with this patch but not scan the channels from mythtv, only import scan from szap-s2?

I have tested a little bit more and I think it's not a mythtv/patch problem but the driver for my card. scan-s2 finds e.g. Anixe HD or Astra HD (the only 2 FTA HD channels I know of on Astra). szap-s2 tunes to the channels but doesn't get a lock on them. The same for mythtv (I think I saw them during scanning but they just don't get added due to no lock?). Import of the channels scanned by scan-s2 seems to be OK, but as they don't lock they are not added as far as I can see.

I have some other channels named "HD" in my channel list, but they are not FTA. So, the only thing I can say about them is that I get a lock on on them but can't watch due to being encrypted.

comment:69 Changed 15 years ago by panachoi@…

Just a data point, and some reflections here. I'm currently running with v4 of wagabundas patch, and r18981, with the s2-liplianin r9573 (d8e74334ac23) dvb repository. I've had no problems scanning and recording s2 channels with my Hauppague Nova HD-S2 (aka HVR-4000 Lite) on 13E and 19E. However, if I swap cards and attempt to use a Technisat SkyStar? HD2, nothing works anymore. So, I can only suspect that whether it works for you or not depends highly on what kind of card you're using, and the state of its driver. I notice that the Hauppague cards are now listed as "supported" whereas most of the others are still marked as experimental. YMMV!

comment:70 Changed 15 years ago by anonymous

Hello everyone. I have tried to get to work on MythTv? DVB-S2 HD, but the result is a big pile of mistakes, i'm out. Start over, what svn versions will use and what the patch. My system is: Debian Lenny 2.6.28.1 kernel MB: Gigabyte GA-E7AUM-DS2H CPU: Intel Core 2 Duo E7300 DVB-S card Hauppauge HVR-4000 or Technotrend S2-3200 DVB-S2 DVB-C card Technotrend C1500

comment:71 in reply to:  70 Changed 15 years ago by anonymous

Replying to anonymous:

Hello everyone. I have tried to get to work on MythTv? DVB-S2 HD, but the result is a big pile of mistakes, i'm out. Start over, what svn versions will use and what the patch. My system is: Debian Lenny 2.6.28.1 kernel MB: Gigabyte GA-E7AUM-DS2H CPU: Intel Core 2 Duo E7300 DVB-S card Hauppauge HVR-4000 or Technotrend S2-3200 DVB-S2 DVB-C card Technotrend C1500

For your information I currently run successfully svn 19395 that I have patched with the following patches: (a) t5882_S2Api_5.diff (b) channel_mux_patch2.diff (c) inappropriate_mux.diff (d) bad_tuning_fix.diff (e) changeset_r19094.diff (f) 01-199-channelgroup.4.1.patch

Patch (e) is very important..... It turns out that it takes sometimes up to 30s for some dvb-s2 HD channels to display... This patches prevents the automatic timeout after 10s... It all works OK but for some dvb-s2 channels you need to be ready to wait up to 30s before the channel is displayed on the screen in live tv-mode..In the best cases, the dvb-s2 channel appears after 3s in live tv-mode. Patch (f) is not s2api related but I think you should know that it works ok with s2api. It allows to create "bouquet" or "channel groups" like on any basic satellite receiver, so it is quite useful ( I used it to create a channel group called HDTV ).

Last but not least, I noticed you use a kernel 2.6.28, are you sure your sat pci cards are recognised by your system ? This to my knowledge the first kernel version that includes s2api..or at least is supposed to..but for all the cards ??? .Maybe you better downgrade to 2.6.27 and patch the kernel with s2liplianin or v4ldvb drivers...This is what I have done and my twinhan dvb-s2 card is recognised ok.

comment:72 Changed 15 years ago by wagabunda

I had an update MythTV from 0.21 to 0.22 on the computer of a friend. I fixed path that has changed the database properly. It works correctly on two TechniSat? SkyStar? HD2 (AzureWave? / TwinHan? 1041) cards. I put this patch before weekend.

comment:73 Changed 15 years ago by panachoi@…

Yes, but:

Which linux-dvb repository (if any) did you use, and which of the patches in this ticket ? I'm sort of assuming your using the lipalinin repository and version 5 of your patch. Is that correct ? Did you use any other patches ? I have been unable to get my Skystar HD2 cards to work at all, but I'm considering taking the plunge and updating everything (linux-dvb and mythtv) in the hopes that it will work with the card (it works fine with the Nova-S-HD cards).

comment:74 in reply to:  73 Changed 15 years ago by anonymous

Replying to panachoi@gmail.com:

Which linux-dvb repository (if any) did you use

s2-liplianin

, and which of the patches in this ticket ?

t5882_S2Api_5.diff with modifications (for "Unsupported delivery system" and database modifications (new fileds for database ver 1223)

I'm sort of assuming your using the lipalinin repository and version 5 of your patch. Is that correct ? Did you use any other patches ?

I using only t5882_S2Api_5.diff and trunk from 02/15/09

(it works fine with the Nova-S-HD cards).

and with SkyStar? HD2 and TechnoTrend? S2-3200 (for me, on Ubuntu 8.10)

comment:75 Changed 15 years ago by yianniv

I would also like to confirm that Technisat SkyStar? HD2 works fine for me too with s2Liplianin repo, t5882_S2Api_5.diff and trunk (last changeset was 20019). System is Debian Lenny RC1 (2.6.26), nvidia 9500GT, (vdpau works! by the way).

I tried to use s2api.alan.r2.patch but I had problems.

A small question: Will one of the s2api patches be officially merged in the trunk in some changeset?

I can't thank you people enough! I think mythtv is a great project and your contribution is priceless!

comment:76 in reply to:  75 Changed 15 years ago by anonymous

Replying to yianniv:

I tried to use s2api.alan.r2.patch but I had problems.

Tested the s2api.alan.r2 patch OK with Mythtv svn 20002 and ( very important ! ) the latest version of s2-liplianin ( release c15f31375c5 ).

comment:77 Changed 15 years ago by Janne Grunau

(In [20029]) DB update for S2Api support. Refs #5882

comment:78 Changed 15 years ago by Janne Grunau

Status: acceptedstarted
Ticket locked: set

I'll commit S2API support in the next days. The DB update I commited won't work with the patches in this ticket.

I've locked the ticket since here is too much talk. If something doesn't work as expected after the support is committed please open new tickets.

Changed 15 years ago by ferrarir_AT_libero.it

Attachment: s2api.riky.r0.patch added

refactored Alan's patch (r2) to match current scanwizardhelper.cpp

comment:79 Changed 15 years ago by Janne Grunau

(In [21115]) DB updates for DVB-S2 support. Refs #5882

comment:80 Changed 15 years ago by Janne Grunau

Ticket locked: unset

t5882_s2api_support_21115.diff provides DVB-S2 support against current trunk with rewritten channelscanner.

Code requires Linux 2.6.29 or newer. DVB-S2 cards have to be recreated.

Scanning of DVB-S2 transponder works. I'm mainly interested in feedback whether DVB-S transponder are still working with plain DVB-S cards and DVB-S2 cards.

comment:81 Changed 15 years ago by yianniv

Janne, thank you very much for these two last patches. May I ask this: Is a 2.6.29 update necessary? I am running debian Lenny 2.6.26-1-amd64 with the liplianin dvb drivers (they have s2api support).

comment:82 Changed 15 years ago by Janne Grunau

a recent v4l-dvb hg repo will work too, you have to give configure the location of the headers in the v4l-dvb repo with --dvb-path=$PATH_TO_REPO/linux

Use t5882_s2api_support_21118.diff and look for "DVB-S2 support yes" in the configure output.

comment:83 Changed 15 years ago by yianniv

Again, thank you for your answer. I will try, hopefully when I go home. I know this is not a support forum, so I want to ask, is it "ok" to ask such questions here or can you point me somewhere else?

comment:84 Changed 15 years ago by Janne Grunau

Ticket locked: set

If you're subscribed to the commits mailing list simply reply to the email, otherwise write a mail with DVB-S2 in the subject to the mythtv dev ml or ask in one of our IRC channels on freenode.

Changed 15 years ago by Janne Grunau

Changed 15 years ago by Janne Grunau

comment:85 Changed 15 years ago by Janne Grunau

t5882_s2api_support_21234.diff fixes wrong delivery system for DVB-S2 tuning

Changed 15 years ago by Janne Grunau

update patch after conflict in [21249]

Changed 15 years ago by Janne Grunau

updated patch to 21269 and adds debugging

comment:86 Changed 15 years ago by Janne Grunau

multiple people screaming "DVB-S2 tuning doesn't work" is not very helpful without logs.

-v channelscan,channel log is needed to debug it.

Changed 15 years ago by Janne Grunau

comment:87 Changed 15 years ago by Janne Grunau

reworked the patch a little

if it does not work please use -v channelscan,channel,extra

and report the DVB-S2 card and used driver

Changed 15 years ago by Janne Grunau

do not use FEC_AUTO for DVB-S2 transports

comment:88 Changed 15 years ago by Janne Grunau

The cx24116 seems to have problems with FEC_AUTO on DVB-S2 transports, so we don't use it even if the frontend has FE_CAN_FEC_AUTO in its capabilities.

comment:89 Changed 15 years ago by Janne Grunau

(In [21314]) remove custom extended frontend api as preperation for S2API. Refs #5882

comment:90 Changed 15 years ago by Janne Grunau

(In [21315]) require at least DVB API 3.1, makes ATSC support unconditional. Refs #5882

comment:91 Changed 15 years ago by Janne Grunau

(In [21316]) update dtvconf types for DVB API v5. Refs #5882

declares modulations used in the extended API as invalid

comment:92 Changed 15 years ago by Janne Grunau

Resolution: fixed
Status: startedclosed

(In [21318]) enable tuning of DVB-S2 channels, Fixes #5882

Requires DVB headers from Linux 2.6.29 or later or a checkout of the v4l-dvb hg repo from 2009.

DVB-S2 cards which are now used as DVB-S card have to be deleted and recreated

comment:93 Changed 15 years ago by Janne Grunau

(In [21406]) adds DVB-S2 FECs (3/5 and 9/10) to the scan dialog. Refs #5882

comment:94 Changed 15 years ago by Janne Grunau

(In [21433]) fix channels.conf import for DVB-S2 cards. Refs #5882

Note: See TracTickets for help on using tickets.