SAT>IP: Improve DVB-S2 tuning for Triax TSS400 (plts=on)
This commit is contained in:
parent
3f6326fc3f
commit
0ebca1b3db
5 changed files with 26 additions and 4 deletions
|
@ -57,6 +57,10 @@
|
|||
<dt>PIDs in setup</dt>
|
||||
<dd>Enable, if the SAT>IP box requires pids=0 parameter in the SETUP RTSP command.</dd>
|
||||
|
||||
<dt>Force pilot for DVB-S2</dt>
|
||||
<dd>Enable, if the SAT>IP box requiest plts=on parameter in the SETUP RTSP
|
||||
command for DVB-S2 muxes.</dd>
|
||||
|
||||
<dt>UDP RTP Port Number (2 ports)</dt>
|
||||
<dd>Force the local UDP Port number here. The number should be even (RTP port).
|
||||
The next odd number (+1) will be used as the RTCP port.</dd>
|
||||
|
|
|
@ -112,6 +112,13 @@ const idclass_t satip_device_class =
|
|||
.opts = PO_ADVANCED,
|
||||
.off = offsetof(satip_device_t, sd_pids0),
|
||||
},
|
||||
{
|
||||
.type = PT_BOOL,
|
||||
.id = "piloton",
|
||||
.name = "Force pilot for DVB-S2",
|
||||
.opts = PO_ADVANCED,
|
||||
.off = offsetof(satip_device_t, sd_pilot_on),
|
||||
},
|
||||
{
|
||||
.type = PT_STR,
|
||||
.id = "bindaddr",
|
||||
|
@ -280,6 +287,9 @@ satip_device_hack( satip_device_t *sd )
|
|||
} else if (strstr(sd->sd_info.location, ":8888/octonet.xml")) {
|
||||
/* OctopusNet requires pids in the SETUP RTSP command */
|
||||
sd->sd_pids0 = 1;
|
||||
} else if (strstr(sd->sd_info.manufacturer, "Triax") &&
|
||||
strstr(sd->sd_info.modelname, "TSS400")) {
|
||||
sd->sd_pilot_on = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -989,6 +989,8 @@ satip_frontend_input_thread ( void *aux )
|
|||
position = lfe_master->sf_position;
|
||||
if (lfe->sf_device->sd_pids0)
|
||||
rtsp_flags |= SATIP_SETUP_PIDS0;
|
||||
if (lfe->sf_device->sd_pilot_on)
|
||||
rtsp_flags |= SATIP_SETUP_PILOT_ON;
|
||||
r = satip_rtsp_setup(rtsp,
|
||||
position, lfe->sf_number,
|
||||
lfe->sf_rtp_port, &lm->lm_tuning,
|
||||
|
|
|
@ -80,6 +80,7 @@ struct satip_device
|
|||
int sd_pids_deladd;
|
||||
int sd_sig_scale;
|
||||
int sd_pids0;
|
||||
int sd_pilot_on;
|
||||
pthread_mutex_t sd_tune_mutex;
|
||||
};
|
||||
|
||||
|
@ -208,14 +209,15 @@ int satip_satconf_get_position
|
|||
* RTSP part
|
||||
*/
|
||||
|
||||
#define SATIP_SETUP_PLAY (1<<0)
|
||||
#define SATIP_SETUP_PIDS0 (1<<1)
|
||||
#define SATIP_SETUP_PLAY (1<<0)
|
||||
#define SATIP_SETUP_PIDS0 (1<<1)
|
||||
#define SATIP_SETUP_PILOT_ON (1<<2)
|
||||
|
||||
int
|
||||
satip_rtsp_setup( http_client_t *hc,
|
||||
int src, int fe, int udp_port,
|
||||
const dvb_mux_conf_t *dmc,
|
||||
int pids0 );
|
||||
int flags );
|
||||
|
||||
int
|
||||
satip_rtsp_play( http_client_t *hc, const char *pids,
|
||||
|
|
|
@ -172,8 +172,12 @@ satip_rtsp_setup( http_client_t *hc, int src, int fe,
|
|||
dmc->dmc_fe_rolloff != DVB_ROLLOFF_AUTO)
|
||||
ADD(dmc_fe_rolloff, ro, "0.35");
|
||||
if (dmc->dmc_fe_pilot != DVB_PILOT_NONE &&
|
||||
dmc->dmc_fe_pilot != DVB_PILOT_AUTO)
|
||||
dmc->dmc_fe_pilot != DVB_PILOT_AUTO) {
|
||||
ADD(dmc_fe_pilot, plts, "auto");
|
||||
} else if ((flags & SATIP_SETUP_PILOT_ON) != 0 &&
|
||||
dmc->dmc_fe_delsys == DVB_SYS_DVBS2) {
|
||||
strcat(buf, "&plts=on");
|
||||
}
|
||||
} else if (dmc->dmc_fe_delsys == DVB_SYS_DVBC_ANNEX_A ||
|
||||
dmc->dmc_fe_delsys == DVB_SYS_DVBC_ANNEX_B ||
|
||||
dmc->dmc_fe_delsys == DVB_SYS_DVBC_ANNEX_C) {
|
||||
|
|
Loading…
Add table
Reference in a new issue