scan-s2: fixes and diseqc rotor support
PATCH 1/1 scan-s2: fixes and diseqc rotor support
I have attached two patches for scan-s2 at http://mercurial.intuxication.org/hg/scan-s2.
Patch1: Some fixes for problems I found. QAM_AUTO is not supported by all drivers, in particular the HVR-4000, so one needs to use QPSK as the default and ensure that settings are parsed properly from the network information -- the new S2 FECs and modulations were not handled.
Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish to the correct position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2E
A file (rotor.conf) listing the rotor positions is used (NB: rotors vary -- do check your rotor manual).
Regards,
Hans
Signature · 4 lines
Release early, release often. Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten Browser-Versionen downloaden: http://www.gmx.net/de/go/browser
scan.c +28 -14
@@ -393,25 +397,32 @@ static void parse_s2_satellite_delivery_static void parse_satellite_delivery_system_descriptor (const unsigned char *buf,struct transponder *t) { -static const fe_code_rate_t fec_tab [8 ] = { -FEC_AUTO ,FEC_1_2 ,FEC_2_3 ,FEC_3_4 , -FEC_5_6 ,FEC_7_8 ,FEC_NONE ,FEC_NONE - }; -if (!t) {warning ("satellite_delivery_system_descriptor outside transport stream definition (ignored)\n" );return ; } -if (((buf[8 ] >>1 ) &0x01 ) ==0 ) { - t->delivery_system =SYS_DVBS ; - } -else { - t->delivery_system =SYS_DVBS2 ; +switch (getBits (buf,69 ,1 ) ) { +case 0 : t->delivery_system =SYS_DVBS ;break ; +case 1 : t->delivery_system =SYS_DVBS2 ;break ; } t->frequency =10 *bcd32_to_cpu (buf[2 ], buf[3 ], buf[4 ], buf[5 ]); - t->fec = fec_tab[buf[12 ] &0x07 ]; + +switch (getBits (buf,100 ,4 ) ) { +case 0 : t->fec =FEC_AUTO ;break ; +case 1 : t->fec =FEC_1_2 ;break ; +case 2 : t->fec =FEC_2_3 ;break ; +case 3 : t->fec =FEC_3_4 ;break ; +case 4 : t->fec =FEC_5_6 ;break ; +case 5 : t->fec =FEC_7_8 ;break ; +case 6 : t->fec =FEC_8_9 ;break ; +case 7 : t->fec =FEC_3_5 ;break ; +case 8 : t->fec =FEC_4_5 ;break ; +case 9 : t->fec =FEC_9_10 ;break ; +case 15 : t->fec =FEC_NONE ;break ; + } + t->symbol_rate =10 *bcd32_to_cpu (buf[9 ], buf[10 ], buf[11 ], buf[12 ] &0xf0 ); t->inversion = spectral_inversion;
@@ -419,6 +430,13 @@ static void parse_satellite_delivery_sys t->polarisation = (buf[8 ] >>5 ) &0x03 ; t->orbital_pos =bcd32_to_cpu (0x00 ,0x00 , buf[6 ], buf[7 ]); t->we_flag = buf[8 ] >>7 ; + +switch (getBits (buf,70 ,2 ) ) { +case 0 : t->modulation =QAM_AUTO ;break ; +case 1 : t->modulation =QPSK ;break ; +case 2 : t->modulation =PSK_8 ;break ; +case 3 : t->modulation =QAM_16 ;break ; + }if (verbosity >=5 ) {debug ("%#04x/%#04x " , t->network_id, t->transport_stream_id);
@@ -1858,7 +1892,7 @@ struct strtab qamtab[] = {static enum fe_modulation str2qam (const char *qam) { -return str2enum (qam, qamtab,QAM_AUTO ); +return str2enum (qam, qamtab,QPSK ); }static const char *qam2str (enum fe_modulation qam)
@@ -1968,8 +2074,8 @@ static int tune_initial (int frontend_fdelse if (sscanf (buf,"S %u %1[HVLR] %u %4s %4s %6s\n" , &f, pol, &sr, fec, rolloff, qam) >=3 ) { t =alloc_transponder (f); t->delivery_system =SYS_DVBS ; - t->modulation =QAM_AUTO ; - t->rolloff =ROLLOFF_AUTO ; + t->modulation =QPSK ; + t->rolloff =ROLLOFF_35 ; t->fec =FEC_AUTO ;switch (pol[0 ]) {
diseqc.c +71 -0
77 lines not on this page · raw message
diseqc.h +1 -0
@@ -17,6 +17,7 @@ extern int diseqc_send_msg (int fd, fe_s* set up the switch to position/voltage/tone */ extern int setup_switch (int frontend_fd,int switch_pos,int voltage_18,int freq,int uncommitted_switch_pos); +extern int rotate_rotor (int frontend_fd,int from_rotor_pos,int to_rotor_pos,int voltage_18);#endif
scan.c +113 -1
160 lines not on this page · raw message
scan.h +6 -0
@@ -103,6 +103,12 @@ typedef struct transponder { uint32_t *other_f; /* DVB-T freqeuency-list descriptor */ } transponder_t; +typedef struct rotorslot { +unsigned int nn; +int orbital_pos;// 192 degrees*10 +unsigned int we_flag;// 0=W, 1=E +char angle_we[8 ];// '19.2E' +}rotorslot_t ;#endif
# rotor.conf # diseqc_position_number orbital_position 1 13.0E 2 19.2E 3 16.0E 4 10.0E 5 7.0E 6 5.0E 7 3.0E 10 8.0W 11 18.0W 13 27.5W 16 23.5E 17 26.0E 19 28.2E 26 1.0W 27 7.0W 28 12.5W
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 7 lines
I have attached two patches for scan-s2 at http://mercurial.intuxication.org/hg/scan-s2.
Patch1: Some fixes for problems I found.
QAM_AUTOis not supported by all drivers, in particular the HVR-4000, so one needs to use QPSK as the default and ensure that settings are parsed properly from the network information -- the new S2 FECs and modulations were not handled.
Quoted 8 lines
Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish to the correct position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2EA file (rotor.conf) listing the rotor positions is used (NB: rotors vary -- do check your rotor manual).
thanks for your patch.
btw - could you scan dvb-s2 (qpsk & 8psk) channels with scan-s2 and hvr4000 ? with which drivers ?
Goga
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 5 lines · On Wed, 2008-11-12 at 09:46 +0300, Goga777 wrote:
thanks for your patch.
btw - could you scan dvb-s2 (qpsk & 8psk) channels with scan-s2 and hvr4000 ? with which drivers ?
I seem to be able to scan some transponders, but not all, using current code from the repos at http://linuxtv.org/hg/v4l-dvb/ and
http://mercurial.intuxication.org/hg/scan-s2
I run scan-s2 on the following list of HD-transponders on 0.8w :
S 11938000 H 25000000 3/4 35 8PSK
S 12015000 H 30000000 3/4 35 8PSK
S 12130000 H 30000000 3/4 35 8PSK
S 12188000 V 25000000 3/4 35 8PSK
(a selection of transponders from
http://lyngsat.com/packages/canaldigital.html)
With rolloff set to AUTO scan-s2 will not lock to any transponder. Instead it will appear to repeatedly re-scan sources on any transponder the tuner previously was tuned to.
With rolloff set to 35 as above scan-s2 will lock and find channels on both transponders with SR=25000000, but for the 2 in the middle with SR=30000000 it simply repeats the channel-list of the previous transponder. I've been playing with alternatives for rolloff and modulation with no result.
Signature · 7 lines
Per Heldal - http://heldal.eml.cc/ _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 25 lines · Per Heldal
Quoted 5 lines · On Wed, 2008-11-12 at 09:46 +0300, Goga777 wrote:
thanks for your patch.
btw - could you scan dvb-s2 (qpsk & 8psk) channels with scan-s2 and hvr4000 ? with which drivers ?
I seem to be able to scan some transponders, but not all, using current code from the repos at http://linuxtv.org/hg/v4l-dvb/ and
http://mercurial.intuxication.org/hg/scan-s2I run scan-s2 on the following list of HD-transponders on 0.8w :
S 11938000 H 25000000 3/4 35 8PSK
S 12015000 H 30000000 3/4 35 8PSK
S 12130000 H 30000000 3/4 35 8PSK
S 12188000 V 25000000 3/4 35 8PSK(a selection of transponders from
http://lyngsat.com/packages/canaldigital.html)With rolloff set to AUTO scan-s2 will not lock to any transponder. Instead it will appear to repeatedly re-scan sources on any transponder the tuner previously was tuned to.
Quoted 6 lines
With rolloff set to 35 as above scan-s2 will lock and find channels on both transponders with SR=25000000, but for the 2 in the middle with SR=30000000 it simply repeats the channel-list of the previous transponder. I've been playing with alternatives for rolloff and modulation with no result.
The problem will probably be solved with new scan-s2, hopefully I'll have time to update it today.
I'll send an update to the list when I'll update the repository.
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 23 lines
Quoted 1 line
I have attached two patches for scan-s2 at
http://mercurial.intuxication.org/hg/scan-s2.
Quoted 2 lines
Patch1: Some fixes for problems I found.
QAM_AUTOis not supported byall drivers,
Quoted 1 line
in particular the HVR-4000, so one needs to use QPSK as the default and
ensure that
Quoted 1 line
settings are parsed properly from the network information -- the new S2
FECs and
Quoted 3 lines
modulations were not handled.
Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish
to the correct
Quoted 6 lines
position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2EA file (rotor.conf) listing the rotor positions is used (NB: rotors vary
-- do check your
Quoted 1 line
rotor manual).
Quoted 6 lines
thanks for your patch.
btw - could you scan dvb-s2 (qpsk & 8psk) channels with scan-s2 and hvr4000 ? with which drivers ?
Goga
Yes I could scan DVB-S and DVB-S2 (both QPSK and 8PSK) in one command with the HVR4000. The satellite delivery system descriptor parsing is used to set DVB-S/-S2 and QPSK/8PSK and FEC. I used the s2-liplianin drivers (only because I am also testing a stb0899 vp1041 card at the moment). It should also work with the v4l-dvb drivers but I didn't try yet.
Also there is some network information on 19.2E which points to 23.5E so the rotor is moved during the scan to 23.5E and then back to 19.2E depending on the transponder. :).
Hans
Signature · 8 lines
Release early, release often. Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 18 lines · Hans Werner
I have attached two patches for scan-s2 at
http://mercurial.intuxication.org/hg/scan-s2.Patch1: Some fixes for problems I found.
QAM_AUTOis not supported by all drivers,
in particular the HVR-4000, so one needs to use QPSK as the default and ensure that
settings are parsed properly from the network information -- the new S2 FECs and
modulations were not handled.Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish to the correct
position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2E
Quoted 4 lines
A file (rotor.conf) listing the rotor positions is used (NB: rotors vary -- do check your
rotor manual).
I didn't check the diff files yet, will do it when I get home. But I don't think QPSK should be used by default. I have a version already where you can specify which scan mode you want to be performed DVB-S or DVB-S2 by specifying S1 or S2 in freq file, also if you implicitly specify QPSK in frequency file the utility will not scan DVB-S2, same logic also for 8PSK that will scan only DVB-S2 and will not try to scan DVB-S. I'll push that version soon to the repository.
The default should stay the AUTO mode since there are cards that can handle that and their owners might have simplified frequency file version.
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Howdy, this is probably a stupid question, as I neither have DVB-S2 hardware nor have attempted to use anything but a rather hacked scan from dvb-apps, but...
Quoted 3 lines · Alex Betis
DVB-S2 by specifying S1 or S2 in freq file, also if you implicitly specify QPSK in frequency file the utility will not scan DVB-S2, same logic also for 8PSK that will scan only DVB-S2 and will not try to scan DVB-S.
(implicitly -> explicitly?)
I can see the logic for 8PSK=>DVB-S2, but as far as I can see, QPSK does not imply purely DVB-S...
NIT result: 12324000 V 29500000 pos 28.2E FEC 3/4 DVB-S2 QPSK
one of eight such transponders, based on parsing the NIT tables. Also, a note from my inital 19E2 scan file to remind me why it failed:
S 11914500 h 27500 ## DVB-S2 QPSK (0x05)
May be no longer up-to-date.
Of course, if I'm misunderstanding, or failing to grasp something obvious if I actually laid my hands on the code, please feel free to slap me hard and tell me to shove off.
thanks
barry bouwsma
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 4 lines · BOUWSMA Barry
Howdy, this is probably a stupid question, as I neither have DVB-S2 hardware nor have attempted to use anything but a rather hacked scan from dvb-apps, but...
Quoted 8 lines
Quoted 1 line · Alex Betis
DVB-S2 by specifying S1 or S2 in freq file, also if you implicitly
specify
Quoted 1 line
QPSK in frequency file the utility will not scan DVB-S2, same logic also
for
Quoted 1 line
8PSK that will scan only DVB-S2 and will not try to scan DVB-S.
(implicitly -> explicitly?)
Oh man, I'll probably never remember the difference :) I meant explicitly in that case.
Quoted 10 lines
I can see the logic for 8PSK=>DVB-S2, but as far as I can see, QPSK does not imply purely DVB-S...
NIT result: 12324000 V 29500000 pos 28.2E FEC 3/4 DVB-S2 QPSK
one of eight such transponders, based on parsing the NIT tables. Also, a note from my inital 19E2 scan file to remind me why it failed:
S 11914500 h 27500 ## DVB-S2 QPSK (0x05)
May be no longer up-to-date.
Google search shows that you're right about it, thanks for pointing on that. I'll leave only 8PSK => DVB-S2 binding. People who want to insist on DVB-S only scanning will have to specify S1 in their frequency file. I'll probably add also a switch to block S2 scanning at all for those who don't have S2 compatable card.
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for newly added transponder from NITmessage.
Quoted 10 lines
Of course, if I'm misunderstanding, or failing to grasp something obvious if I actually laid my hands on the code, please feel free to slap me hard and tell me to shove off.
thanks
barry bouwsma
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 3 lines · Alex Betis
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for
I've spent yesterday hacking UTF-8 output into my old copy of dvb-apps and then finding that the Greek 13E Hotbirds channel `Βουλή:12168:h:2:27500:517:700:384' [UTF-8 encoded, hope my MIME headers and ESMTP are correct] is not sent as latin-greek charset, and thus doesn't appear properly for me, but anyway, here is a code snippet of my `scan' that sends the NIT dump of the scanned transponder to stderr, that I use when needed. Cut'n'paste; also part of a much larger set of hacks, so it's meant as an example, and not to be used as ``useful'' code:
+
+char *fec[10] = {"NONE", "1/2", "2/3", "3/4", "4/5", "5/6", "6/7", "7/8", "8/9", "AUTO" } ; +if (tn.type == 0) {
+ if (dump_nits == 1) {
+ printf("NIT result: %d %s %d pos %.1f%s ", tn.param.frequency, tn.polarisation ? "V" : "H", tn.param.u.qpsk.symbol_rate, (float)tn.orbital_pos/10, tn.we_flag ? "E" : "W");
+ printf(" FEC %s", fec[tn.param.u.qpsk.fec_inner] );
+if (tn.modulation & 0x04) {
+ printf(" DVB-S2");
+ if ((tn.modulation & 0x03) == 0x01) printf (" QPSK");
+ if ((tn.modulation & 0x03) == 0x02) printf (" 8PSK");
+
+}
+if (tn.param.inversion != 2)
+ printf(" inv %s", tn.param.inversion ? "OFF" : "ON" /*XXX FIXME */);
+printf("\n");
+ }
+}
+
Also, I believe that the recent dvbsnoop' invoked with -s ts -tssubdecode' on the NIT PID will verbosely parse the components and display everything -- I believe I used that source code as the basis for the above hack.
I wonder if any of my other dvb-apps/scan hacks would be of interest for someone to clean up (for me, function before form, especially when I don't have a clue as to what I am doing)...
barry bouwsma
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
2008/11/12 BOUWSMA Barry <[email protected]>
Quoted 36 lines · Alex Betis
Quoted 4 lines
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans
for
I've spent yesterday hacking UTF-8 output into my old copy of dvb-apps and then finding that the Greek 13E Hotbirds channel `Βουλή:12168:h:2:27500:517:700:384' [UTF-8 encoded, hope my MIME headers and ESMTP are correct] is not sent as latin-greek charset, and thus doesn't appear properly for me, but anyway, here is a code snippet of my `scan' that sends the NIT dump of the scanned transponder to stderr, that I use when needed. Cut'n'paste; also part of a much larger set of hacks, so it's meant as an example, and not to be used as ``useful'' code:
(quoted diff) +2
-0+ +char *fec[10] = {"NONE", "1/2", "2/3", "3/4", "4/5", "5/6", "6/7", "7/8","8/9", "AUTO" } ;
(quoted diff) +3
-0+if (tn.type == 0) { + if (dump_nits == 1) { + printf("NIT result: %d %s %d pos %.1f%s ", tn.param.frequency,tn.polarisation ? "V" : "H", tn.param.u.qpsk.symbol_rate, (float)tn.orbital_pos/10, tn.we_flag ? "E" : "W");
(quoted diff) +9
-0+ printf(" FEC %s", fec[tn.param.u.qpsk.fec_inner] ); +if (tn.modulation & 0x04) { + printf(" DVB-S2"); + if ((tn.modulation & 0x03) == 0x01) printf (" QPSK"); + if ((tn.modulation & 0x03) == 0x02) printf (" 8PSK"); + +} +if (tn.param.inversion != 2) + printf(" inv %s", tn.param.inversion ? "OFF" : "ON" /*XXX FIXME*/);
diseqc.c struct diseqc_cmd uncommitted_switch_cmd · line 78
Quoted 4 lines
diseqc.c +4
-0+printf ("\n" ); + } +} +
I must be missing something... How this code is aligned to the following modulation enumeration?
QPSK enumeration has value 0, 8PSK value 9.
typedef enum fe_modulation {
QPSK,
QAM_16,
QAM_32,
QAM_64,
QAM_128,
QAM_256,
QAM_AUTO,
VSB_8,
VSB_16,
PSK_8,
APSK_16,
APSK_32,
DQPSK,
} fe_modulation_t;
Quoted 8 lines
Also, I believe that the recent
dvbsnoop' invoked with-s ts -tssubdecode' on the NIT PID will verbosely parse the components and display everything -- I believe I used that source code as the basis for the above hack.
Quoted 8 lines
I wonder if any of my other dvb-apps/scan hacks would be of interest for someone to clean up (for me, function before form, especially when I don't have a clue as to what I am doing)...
barry bouwsma
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 8 lines · Alex Betis
Review
Quoted 4 lines
(quoted diff) +4
-0+if (tn.modulation & 0x04) { + printf(" DVB-S2"); + if ((tn.modulation & 0x03) == 0x01) printf (" QPSK"); + if ((tn.modulation & 0x03) == 0x02) printf (" 8PSK");I must be missing something... How this code is aligned to the following modulation enumeration?
QPSK enumeration has value 0, 8PSK value 9.
I don't think it is; it's based on parsing the NIT tables.
Now that I look more at my code, this part of which was hacked many months ago and which has since passed from my conscious memory (damn you, beer, solution to and cause of all my problems), the following code snippets appear to be needed for context. Sorry, I honestly can't remember what I needed to hack into dvb-apps/scan to get this, and what was already present but unused...
@@ -143,6 +150,7 @@
unsigned int wrong_frequency : 1; /* DVB-T with other_frequency_flag */
int n_other_f;
uint32_t *other_f; /* DVB-T freqeuency-list descriptor */
+ int modulation; /* XXX HACK */
};
@@ -433,6 +449,7 @@
buf[10],
buf[11],
buf[12] & 0xf0);
+ t->modulation = buf[8] & 0x07;
t->polarisation = (buf[8] >> 5) & 0x03;
t->param.inversion = spectral_inversion;Sorry for the omission. Even though I did sleep twelve hours last night, it hasn't made up for only sleeping two to three hours nightly for the past weeks...
Unfortunately, a hex dump of the NIT data isn't so easy to follow, but here's a short example of how `dvbsnoop' spews out data for one select transponder from the tables:
Frequency: 19234969 (= 12.58099 GHz)
Orbital_position: 402 (= 19.2)
West_East_flag: 1 (0x01) [= EAST]
Polarisation: 1 (0x01) [= linear - vertical]
Kind: 1 (0x01) [= DVB-S2]
Roll Off Faktor: 0 (0x00) [= Alpha 0.35]
Modulation_type: 2 (0x02) [= 8PSK]
Symbol_rate: 2228224 (= 22.0000)
FEC_inner: 2 (0x02) [= 2/3 conv. code rate]baryr bouwsma
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Le mercredi 12 novembre 2008 13:08:44 Alex Betis, vous avez écrit :
Quoted 15 lines
Quoted 8 lines
I can see the logic for 8PSK=>DVB-S2, but as far as I can see, QPSK does not imply purely DVB-S...
NIT result: 12324000 V 29500000 pos 28.2E FEC 3/4 DVB-S2 QPSK
one of eight such transponders, based on parsing the NIT tables. Also, a note from my inital 19E2 scan file to remind me why it failed:
S 11914500 h 27500 ## DVB-S2 QPSK (0x05)
May be no longer up-to-date.Google search shows that you're right about it, thanks for pointing on that. I'll leave only 8PSK => DVB-S2 binding. People who want to insist on DVB-S only scanning will have to specify S1 in their frequency file. I'll probably add also a switch to block S2 scanning at all for those who don't have S2 compatable card.
Quoted 4 lines
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for newly added transponder from NITmessage.
It's specified in Satellite Descriptor:
modulation_system==1, =>S2
modulation_system==0, =>S
Signature · 1 line
Christophe Thommeret
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 9 lines · BOUWSMA Barry
I can see the logic for 8PSK=>DVB-S2, but as far as I can see, QPSK does not imply purely DVB-S...
NIT result: 12324000 V 29500000 pos 28.2E FEC 3/4 DVB-S2 QPSK
one of eight such transponders, based on parsing the NIT tables. Also, a note from my inital 19E2 scan file to remind me why it failed:
S 11914500 h 27500 ## DVB-S2 QPSK (0x05)
May be no longer up-to-date.
Quoted 5 lines
Of course, if I'm misunderstanding, or failing to grasp something obvious if I actually laid my hands on the code, please feel free to slap me hard and tell me to shove off.
You are right, it is working for me with this two lines from channels.conf (with vdr), both DVB-S2, QPSK:
ASTRA HD+;BetaDigital:11914:hC910M2O35S1:S19.2E:27500:1279:0;1283=deu:0:0:131:133:6:0 HD Retail Info;BSkyB:12324:vC34M2O35S1:S28.2E:29500:512:640=NAR;660=eng:2305:960,961,963:3801:2:2032:0
BR,
Ales
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 37 lines · Hans Werner
Quoted 5 lines
I have attached two patches for scan-s2 at
http://mercurial.intuxication.org/hg/scan-s2.Patch1: Some fixes for problems I found.
QAM_AUTOis not supported byall
Quoted 8 lines
drivers,
in particular the HVR-4000, so one needs to use QPSK as the default and ensure that
settings are parsed properly from the network information -- the new S2 FECs and
modulations were not handled.Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish
to
Quoted 7 lines
the correct
position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2EA file (rotor.conf) listing the rotor positions is used (NB: rotors vary
--
Quoted 3 lines
do check your
rotor manual).I didn't check the diff files yet, will do it when I get home. But I don't think QPSK should be used by default. I have a version already where you can specify which scan mode you want to be performed DVB-S or DVB-S2 by specifying S1 or S2 in freq file, also if you implicitly specify QPSK in frequency file the utility will not scan DVB-S2, same logic also for
8PSK that will scan only DVB-S2 and will not try to scan DVB-S. I'll push that version soon to the repository.
Quoted 3 lines
The default should stay the AUTO mode since there are cards that can handle
that and their owners might have simplified frequency file version.
Perhaps I wasn't clear: I don't force scanning to be QPSK only. With just the following one line in dvb-s/Astra-19.2E I was able to scan DVB-S and DVB-S2 (both QPSK and 8PSK) channels in one command with the HVR-4000:
S 12551500 V 22000000 5/6
The point is that some drivers and hardware (e.g. HVR-4000) cannot handle QAM_AUTO or FEC_AUTO and will generate errors, but the necessary transponder information *is* available to be parsed and used, so scan-s2 should do that.
We need scan-s2 do the best possible scan in one command with the standard initial transponder files for all cards. You can't assume the hardware has AUTO capabilities. Perhaps the capabilities could be checked before the scan though and used if available.
Hans
Signature · 9 lines
Release early, release often. GMX Download-Spiele: Preizsturz! Alle Puzzle-Spiele Deluxe über 60% billiger. http://games.entertainment.gmx.net/de/entertainment/games/download/puzzle/index.html _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 9 lines · Christophe Thommeret
Quoted 4 lines
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for newly added transponder from NITmessage.
It's specified in Satellite Descriptor:
modulation_system==1, =>S2
modulation_system==0, =>S
Thanks, but it doesn't help in my case.
NIT can specify new transponders, when adding them to the scan list I have to know whenever they are DVB-S or DVB-S2.
Satellte descriptor is received after locking to the transponder.
Quoted 4 lines
--
Christophe Thommeret
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Le mercredi 12 novembre 2008 14:01:11 Alex Betis, vous avez écrit :
Quoted 6 lines · Christophe Thommeret
Quoted 5 lines
Quoted 4 lines
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for newly added transponder from NITmessage.
Quoted 8 lines
Quoted 3 lines
It's specified in Satellite Descriptor:
modulation_system==1, =>S2
modulation_system==0, =>SThanks, but it doesn't help in my case.
NIT can specify new transponders, when adding them to the scan list I have to know whenever they are DVB-S or DVB-S2.
Satellte descriptor is received after locking to the transponder.
The satellite descriptor is part of NIT.
See EN-300468
Signature · 7 lines
Christophe Thommeret _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 12 lines
Le mercredi 12 novembre 2008 14:01:11 Alex Betis, vous avez écrit :
Quoted 1 line
On Wed, Nov 12, 2008 at 2:53 PM, Christophe Thommeret <[email protected]>
Quoted 9 lines · wrote:
Quoted 8 lines
Quoted 4 lines
BTW, you give here example of NIT parsing, do you know the format of the message and what field specifies that the delivery system is DVB-S2? scan utility code doesn't parse it, so I just add both DVB-S and DVB-S2 scans for newly added transponder from NITmessage.
It's specified in Satellite Descriptor:
modulation_system==1, =>S2
modulation_system==0, =>S
Quoted 8 lines
Quoted 2 lines
Thanks, but it doesn't help in my case.
NIT can specify new transponders, when adding them to the scan list Ihave
Quoted 2 lines
to know whenever they are DVB-S or DVB-S2.
Satellte descriptor is received after locking to the transponder.The satellite descriptor is part of NIT.
See EN-300468
Also look at the Kaffeine code + S2 patch as I did when writing my patches. Many thanks Christophe.
Signature · 9 lines
Release early, release often. "Feel free" - 5 GB Mailbox, 50 FreeSMS/Monat ... Jetzt GMX ProMail testen: http://www.gmx.net/de/go/promail _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 18 lines · Hans Werner
I have attached two patches for scan-s2 at
http://mercurial.intuxication.org/hg/scan-s2.Patch1: Some fixes for problems I found.
QAM_AUTOis not supported by all drivers,
in particular the HVR-4000, so one needs to use QPSK as the default and ensure that
settings are parsed properly from the network information -- the new S2 FECs and
modulations were not handled.Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish to the correct
position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2E
Quoted 4 lines
A file (rotor.conf) listing the rotor positions is used (NB: rotors vary -- do check your
rotor manual).
Hans,
I'm looking on your QPSK diff and I disagree with the changes.
I think the concept of having all missing parameters as AUTO values should have modulation, rolloff and FEC set to AUTO enumeration.
If your card can't handle the AUTO setting, so you have to specify it in the frequency file.
Applying your changes will break scaning S2 channels for a freq file with the following line:
S 11258000 H 27500000
or even
S2 11258000 H 27500000
Since it will order the driver to use QPSK modulation, while there should be 8PSK or AUTO.
I don't really know how rolloff=35 will affect since its the default in some drivers, but again, AUTO setting was intended for that purpose, to let the card/driver decide what parameters should be used.
Quoted 9 lines
Regards,
Hans--
Release early, release often.Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten Browser-Versionen downloaden: http://www.gmx.net/de/go/browser
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 27 lines · Hans Werner
Quoted 5 lines
I have attached two patches for scan-s2 at
http://mercurial.intuxication.org/hg/scan-s2.Patch1: Some fixes for problems I found.
QAM_AUTOis not supported byall
Quoted 8 lines
drivers,
in particular the HVR-4000, so one needs to use QPSK as the default and ensure that
settings are parsed properly from the network information -- the new S2 FECs and
modulations were not handled.Patch2: Add DiSEqC 1.2 rotor support. Use it like this to move the dish
to
Quoted 7 lines
the correct
position for the scan:
scan-s2 -r 19.2E -n dvb-s/Astra-19.2E
or
scan-s2 -R 2 -n dvb-s/Astra-19.2EA file (rotor.conf) listing the rotor positions is used (NB: rotors vary
--
Quoted 3 lines
do check your
rotor manual).
Quoted 7 lines
Hans,
I'm looking on your QPSK diff and I disagree with the changes. I think the concept of having all missing parameters as AUTO values should have modulation, rolloff and FEC set to AUTO enumeration.
If your card can't handle the AUTO setting, so you have to specify it in the
frequency file.
I want the computer to do the work, see below ;).
Quoted 6 lines
Applying your changes will break scaning S2 channels for a freq file with the following line:
S 11258000 H 27500000
or even
S2 11258000 H 27500000
Quoted 7 lines
Since it will order the driver to use QPSK modulation, while there should be
8PSK or AUTO.
I don't really know how rolloff=35 will affect since its the default in some
drivers, but again, AUTO setting was intended for that purpose, to let the card/driver decide what parameters should be used.
Ok, I have looked at this again and written a new patch. I also looked at what you checked in yesterday for S1/S2 and -D options.
In order to keep the AUTO behaviour you want and also allow for cards which cannot handle autos I have added a new option -X which sets a noauto flag. When this option is chosen, instead of putting an initial transponder with an AUTO in the transponder list, several transponders are created for each allowed value of each free parameter (which may be delivery system, modulation, fec or rolloff).
so with -X
S 12551500 V 22000000 5/6
results in
initial transponder DVB-S 12551500 V 22000000 5/6 35 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 35 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 35 8PSK initial transponder DVB-S2 12551500 V 22000000 5/6 25 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 25 8PSK initial transponder DVB-S2 12551500 V 22000000 5/6 20 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 20 8PSK
(fec was fixed in the transponder file in this example, but delivery system, rolloff and modulation were not)
The new S1/S2 and -D options are respected. So with -D S1, the S2 lines would not be added for example.
Using -X -D and S2/S1/S thus gives lots of flexibility for scanning.
The patch also makes improvements in parse_satellite_delivery_system_descriptor, adding rolloff and the new S2 FECs and changes to delivery system and modulation parsing.
Hans
Signature · 4 lines
Release early, release often. Sensationsangebot nur bis 30.11: GMX FreeDSL - Telefonanschluss + DSL für nur 16,37 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K11308T4569a
scan.c +117 -85
@@ -73,6 +73,7 @@ static int long_timeout;static int long_timeout;static int current_tp_only;static int get_other_nits; +static int noauto=0 ;static int vdr_dump_provider;static int vdr_dump_channum;static int no_ATSC_PSIP;
@@ -400,25 +401,42 @@ static void parse_s2_satellite_delivery_static void parse_satellite_delivery_system_descriptor (const unsigned char *buf,struct transponder *t) { -static const fe_code_rate_t fec_tab [8 ] = { -FEC_AUTO ,FEC_1_2 ,FEC_2_3 ,FEC_3_4 , -FEC_5_6 ,FEC_7_8 ,FEC_NONE ,FEC_NONE - }; -if (!t) {warning ("satellite_delivery_system_descriptor outside transport stream definition (ignored)\n" );return ; } -if (((buf[8 ] >>1 ) &0x01 ) ==0 ) { - t->delivery_system =SYS_DVBS ; - } -else { - t->delivery_system =SYS_DVBS2 ; +switch (getBits (buf,69 ,1 ) ) { +case 0 : t->delivery_system =SYS_DVBS ;break ; +case 1 : t->delivery_system =SYS_DVBS2 ;break ; + } + +if (t->delivery_system ==SYS_DVBS2 ) { +switch (getBits (buf,67 ,2 ) ) { +case 0 : t->rolloff =ROLLOFF_35 ;break ; +case 1 : t->rolloff =ROLLOFF_25 ;break ; +case 2 : t->rolloff =ROLLOFF_20 ;break ; + } + }else { +if (noauto) t->rolloff =ROLLOFF_35 ; } t->frequency =10 *bcd32_to_cpu (buf[2 ], buf[3 ], buf[4 ], buf[5 ]); - t->fec = fec_tab[buf[12 ] &0x07 ]; + +switch (getBits (buf,100 ,4 ) ) { +case 0 : t->fec =FEC_AUTO ;break ; +case 1 : t->fec =FEC_1_2 ;break ; +case 2 : t->fec =FEC_2_3 ;break ; +case 3 : t->fec =FEC_3_4 ;break ; +case 4 : t->fec =FEC_5_6 ;break ; +case 5 : t->fec =FEC_7_8 ;break ; +case 6 : t->fec =FEC_8_9 ;break ; +case 7 : t->fec =FEC_3_5 ;break ; +case 8 : t->fec =FEC_4_5 ;break ; +case 9 : t->fec =FEC_9_10 ;break ; +case 15 : t->fec =FEC_NONE ;break ; + } + t->symbol_rate =10 *bcd32_to_cpu (buf[9 ], buf[10 ], buf[11 ], buf[12 ] &0xf0 ); t->inversion = spectral_inversion;
@@ -427,9 +445,17 @@ static void parse_satellite_delivery_sys t->orbital_pos =bcd32_to_cpu (0x00 ,0x00 , buf[6 ], buf[7 ]); t->we_flag = buf[8 ] >>7 ; +switch (getBits (buf,70 ,2 ) ) { +case 0 : t->modulation =QAM_AUTO ;break ; +case 1 : t->modulation =QPSK ;break ; +case 2 : t->modulation =PSK_8 ;break ; +case 3 : t->modulation =QAM_16 ;break ; + } +if (verbosity >=5 ) {debug ("%#04x/%#04x " , t->network_id, t->transport_stream_id);dump_dvb_parameters (stderr, t); +printf ("\n" );if (t->scan_done)dprintf (5 ," (done)" );if (t->last_tuning_failed)
@@ -2064,107 +2090,106 @@ static int tune_initial (int frontend_fdif (buf[0 ] =='#' || buf[0 ] =='\n' ) ;else if (sscanf (buf,"S%c %u %1[HVLR] %u %4s %4s %6s\n" , &scan_mode, &f, pol, &sr, fec, rolloff, qam) >=3 ) { - t =alloc_transponder (f); - t->delivery_system =SYS_DVBS ; - t->modulation =QAM_AUTO ; - t->rolloff =ROLLOFF_AUTO ; - t->fec =FEC_AUTO ; - + scan_mode1 = FALSE; + scan_mode2 = FALSE;switch (scan_mode) {case '1' :/* Enable only DVB-S mode */ - scan_mode1 = TRUE; +if (!disable_s1) scan_mode1 = TRUE;break ; - +case '2' :/* Enable only DVB-S2 mode */ - scan_mode2 = TRUE; +if (!disable_s1) scan_mode2 = TRUE;break ;default :/* Enable both DVB-S and DVB-S2 scan modes */ - scan_mode1 = TRUE; - scan_mode2 = TRUE; +if (!disable_s1) scan_mode1 = TRUE; +if (!disable_s2) scan_mode2 = TRUE;break ; } -switch (pol[0 ]) - { -case 'H' : -case 'L' : - t->polarisation =POLARISATION_HORIZONTAL ; -break ; -default : - t->polarisation =POLARISATION_VERTICAL ;; -break ; - } - t->inversion = spectral_inversion; - t->symbol_rate = sr; +/*Generate a list of transponders, explicitly enumerating the AUTOs if they +are disabled with the -X parameter.*/ -// parse optional parameters -if (strlen (fec) >0 ) { - t->fec =str2fec (fec); +int nmod,nfec,ndel,nrol; +int imod,ifec,idel,irol; + +/* set up list of delivery systems*/ +fe_delivery_system_t delset[]={SYS_DVBS ,SYS_DVBS2 }; + ndel=2 ; +if (scan_mode1 && !scan_mode2) {delset[0 ]=SYS_DVBS ; ndel=1 ;} +if (!scan_mode1 && scan_mode2) {delset[0 ]=SYS_DVBS2 ; ndel=1 ;} + +/* set up list of modulations*/ +fe_modulation_t modset[2 ]={QPSK ,PSK_8 }; + nmod=2 ; +if (strlen (qam)>0 ) { + modset[0 ]=str2qam (qam); nmod=1 ; + }else if (noauto) { +if (scan_mode1 && !scan_mode2 ) nmod=1 ; + }else { + modset[0 ]=QAM_AUTO ; nmod=1 ; } -if (strlen (rolloff) >0 ) { - t->rolloff =str2rolloff (rolloff); +/* set up list of rollofs*/ +fe_rolloff_t rolset[3 ]={ROLLOFF_35 ,ROLLOFF_25 ,ROLLOFF_20 }; + nrol=3 ; +if (strlen (rolloff)>0 ) { + rolset[0 ]=str2rolloff (rolloff); nrol=1 ; + }else if (noauto) { +if (scan_mode1 && ! scan_mode2) nrol=1 ; + }else { + rolset[0 ]=ROLLOFF_AUTO ; nrol=1 ; } -if (strlen (qam) >0 ) { - t->modulation =str2qam (qam); +/* set up list of FECs*/ +fe_code_rate_t fecset[9 ]={FEC_1_2 ,FEC_2_3 ,FEC_3_4 ,FEC_5_6 ,FEC_7_8 ,FEC_8_9 ,FEC_3_5 ,FEC_4_5 ,FEC_9_10 }; +if (strlen (fec)>0 ) { + fecset[0 ]=str2fec (fec); nfec=1 ; + }else if (noauto) { +if (scan_mode1) nfec=6 ; +if (scan_mode2) nfec=9 ; + }else { + fecset[0 ]=FEC_AUTO ; nfec=1 ; } -switch (t->modulation) - { -case PSK_8 : -/* DVB-S2 modulation is explicitly specified, scan only in DVB-S2 mode */ - scan_mode1 = FALSE; - scan_mode2 = TRUE; -break ; - } +for (idel=0 ;idel<ndel;idel++){ +for (ifec=0 ;ifec<nfec;ifec++){ +for (irol=0 ;irol<nrol;irol++){ +for (imod=0 ;imod<nmod;imod++){ +/*skip impossible settings*/ +if ((rolset[irol]==ROLLOFF_25 ||rolset[irol]==ROLLOFF_20 ) && delset[idel]!=SYS_DVBS2 )continue ; +if (ifec >5 && delset[idel]!=SYS_DVBS2 )continue ; +if (modset[imod] ==PSK_8 && delset[idel] !=SYS_DVBS2 )continue ; -/* Apply disable flags */ -if (disable_s1) { - scan_mode1 = FALSE; - } -if (disable_s2) { - scan_mode2 = FALSE; - } + t =alloc_transponder (f); -/* Both modes should be scanned */ -if (scan_mode1 && scan_mode2) { -/* Set current transponder to DVB-S delivery */ - t->delivery_system =SYS_DVBS ; + t->delivery_system = delset[idel]; + t->modulation = modset[imod]; + t->rolloff = rolset[irol]; + t->fec = fecset[ifec]; -/* create new transponder for the second mode */ - t2 =alloc_transponder (f); -/* copy all parameters from original transponder */ -copy_transponder (t2, t); -/* set second transponder to DVB-S2 */ - t2->delivery_system =SYS_DVBS2 ; +switch (pol[0 ]) + { +case 'H' : +case 'L' : + t->polarisation =POLARISATION_HORIZONTAL ; +break ; +default : + t->polarisation =POLARISATION_VERTICAL ;; +break ; + } + t->inversion = spectral_inversion; + t->symbol_rate = sr;info ("initial transponder DVB-S%s %u %c %d %s %s %s\n" , t->delivery_system==SYS_DVBS ?" " :"2" , t->frequency, pol[0 ], t->symbol_rate,fec2str (t->fec),rolloff2str (t->rolloff),qam2str (t->modulation)); - -/* change the main pointer so the second added transponder will be printed */ - t = t2; - } -else {/* only one system should be used */ -if (scan_mode1) { - t->delivery_system =SYS_DVBS ; - } -else if (scan_mode2) { - t->delivery_system =SYS_DVBS2 ; - } - } - -info ("initial transponder DVB-S%s %u %c %d %s %s %s\n" , - t->delivery_system==SYS_DVBS ?" " :"2" , - t->frequency, - pol[0 ], t->symbol_rate,fec2str (t->fec),rolloff2str (t->rolloff),qam2str (t->modulation)); + }}}} }else if (sscanf (buf,"C %u %u %4s %6s\n" , &f, &sr, fec, qam) >=2 ) { t =alloc_transponder (f);
@@ -2553,7 +2578,10 @@ static const char *usage = "\n"" -D s Disable specified scan mode (by default all modes are enabled)\n" " s=S1 Disable DVB-S scan\n" " s=S2 Disable DVB-S2 scan (good for owners of cards that do not\n" -" support DVB-S2 systems)\n" ; +" support DVB-S2 systems)\n" +" -X Disable AUTOs for initial transponders (esp. for hardware which\n" +" not support it). Instead try each value of any free parameters.\n" ; +void bad_usage (char *pname,int problem) {
@@ -2606,7 +2634,7 @@ int main (int argc, char **argv)/* start with default lnb type */ lnb_type = *lnb_enum (0 ); -while ((opt =getopt (argc, argv,"5cnpa:f:d:O:k:I:S:s:r:R:o:D:x:t:i:l:vquPA:U" )) !=-1 ) { +while ((opt =getopt (argc, argv,"5cnXpa:f:d:O:k:I:S:s:r:R:o:D:x:t:i:l:vquPA:U" )) !=-1 ) {switch (opt) {case 'a' :
@@ -2621,6 +2649,10 @@ int main (int argc, char **argv)case 'n' : get_other_nits =1 ; +break ; + +case 'X' : + noauto =1 ;break ;case 'd' :
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 10 lines · Hans Werner
Quoted 3 lines
Hans,
I'm looking on your QPSK diff and I disagree with the changes. I think the concept of having all missing parameters as AUTO valuesshould
Quoted 4 lines
have modulation, rolloff and FEC set to AUTO enumeration.
If your card can't handle the AUTO setting, so you have to specify it in the
frequency file.I want the computer to do the work, see below ;).
Ok, I can't disagree with that :)
Quoted 40 lines
Quoted 8 lines
Applying your changes will break scaning S2 channels for a freq file with the following line:
S 11258000 H 27500000
or even
S2 11258000 H 27500000Quoted 7 lines
Since it will order the driver to use QPSK modulation, while there should be
8PSK or AUTO.
I don't really know how rolloff=35 will affect since its the default in some
drivers, but again, AUTO setting was intended for that purpose, to let the card/driver decide what parameters should be used.Ok, I have looked at this again and written a new patch. I also looked at what
you checked in yesterday for S1/S2 and -D options.In order to keep the AUTO behaviour you want and also allow for cards which cannot handle autos I have added a new option -X which sets a noauto flag. When this option is chosen, instead of putting an initial transponder with an AUTO
in the transponder list, several transponders are created for each allowed value of
each free parameter (which may be delivery system, modulation, fec or rolloff).so with -X
S 12551500 V 22000000 5/6
results in
initial transponder DVB-S 12551500 V 22000000 5/6 35 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 35 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 35 8PSK initial transponder DVB-S2 12551500 V 22000000 5/6 25 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 25 8PSK initial transponder DVB-S2 12551500 V 22000000 5/6 20 QPSK initial transponder DVB-S2 12551500 V 22000000 5/6 20 8PSK
Quoted 7 lines
(fec was fixed in the transponder file in this example, but delivery system, rolloff and modulation were not)
The new S1/S2 and -D options are respected. So with -D S1, the S2 lines would not be added for example.
Using -X -D and S2/S1/S thus gives lots of flexibility for scanning.
I hope we won't run out of free letters for next command line flags we'll add :)
Sounds good to me. My recent changes to delete duplicate frequencies when lock was successful on one of them will be especially helpful in that case to speed up the scan process.
Quoted 5 lines
The patch also makes improvements in
parse_satellite_delivery_system_descriptor, adding rolloff and the new S2 FECs and changes to delivery system and modulation parsing.
Thanks. You did part of the work I've intended to do :)
Quoted 10 lines
Hans
--
Release early, release often.Sensationsangebot nur bis 30.11: GMX FreeDSL - Telefonanschluss + DSL für nur 16,37 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K11308T4569a
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb