mirror of
https://github.com/rofafor/vdr-plugin-satip.git
synced 2023-10-10 13:37:42 +02:00
Add a new ForcePilot quirk.
This commit is contained in:
parent
7aef2a3dff
commit
e6c9776ec9
2
device.c
2
device.c
@ -140,7 +140,7 @@ cString cSatipDevice::GetGeneralInformation(void)
|
||||
#if defined(APIVERSNUM) && APIVERSNUM >= 20301
|
||||
LOCK_CHANNELS_READ;
|
||||
#endif
|
||||
return cString::sprintf("SAT>IP device: %d\nCardIndex: %d\nStream: %s\nSignal: %s\nStream bitrate: %s\n%sChannel: %s",
|
||||
return cString::sprintf("SAT>IP device: %d\nCardIndex: %d\nStream: %s\nSignal: %s\nStream bitrate: %s\n%sChannel: %s\n",
|
||||
deviceIndexM, CardIndex(),
|
||||
pTunerM ? *pTunerM->GetInformation() : "",
|
||||
pTunerM ? *pTunerM->GetSignalStatus() : "",
|
||||
|
9
server.c
9
server.c
@ -147,6 +147,13 @@ cSatipServer::cSatipServer(const char *addressP, const int portP, const char *mo
|
||||
if (strstr(*descriptionM, "DVBViewer") // DVBViewer Media Server
|
||||
)
|
||||
quirkM |= eSatipQuirkCiTnr;
|
||||
// These devices don't support auto-detection of pilot tones
|
||||
if (strstr(*descriptionM, "GSSBOX") || // Grundig Sat Systems GSS.box DSI 400
|
||||
strstr(*descriptionM, "DIGIBIT") || // Telestar Digibit R1
|
||||
strstr(*descriptionM, "Triax SatIP Converter") // Triax TSS 400
|
||||
// Kathrein ExIP 414/E
|
||||
)
|
||||
quirkM |= eSatipQuirkForcePilot;
|
||||
}
|
||||
if ((quirkM & eSatipQuirkMask) & eSatipQuirkSessionId)
|
||||
quirksM = cString::sprintf("%s%sSessionId", *quirksM, isempty(*quirksM) ? "" : ",");
|
||||
@ -160,6 +167,8 @@ cSatipServer::cSatipServer(const char *addressP, const int portP, const char *mo
|
||||
quirksM = cString::sprintf("%s%sCiXpmt", *quirksM, isempty(*quirksM) ? "" : ",");
|
||||
if ((quirkM & eSatipQuirkMask) & eSatipQuirkCiTnr)
|
||||
quirksM = cString::sprintf("%s%sCiTnr", *quirksM, isempty(*quirksM) ? "" : ",");
|
||||
if ((quirkM & eSatipQuirkMask) & eSatipQuirkForcePilot)
|
||||
quirksM = cString::sprintf("%s%sForcePilot", *quirksM, isempty(*quirksM) ? "" : ",");
|
||||
debug3("%s description=%s quirks=%s", __PRETTY_FUNCTION__, *descriptionM, *quirksM);
|
||||
// These devices support external CI
|
||||
if (strstr(*descriptionM, "OctopusNet") || // Digital Devices OctopusNet
|
||||
|
1
server.h
1
server.h
@ -81,6 +81,7 @@ public:
|
||||
eSatipQuirkRtpOverTcp = 0x08,
|
||||
eSatipQuirkCiXpmt = 0x10,
|
||||
eSatipQuirkCiTnr = 0x20,
|
||||
eSatipQuirkForcePilot = 0x40,
|
||||
eSatipQuirkMask = 0xFF
|
||||
};
|
||||
cSatipServer(const char *addressP, const int portP, const char *modelP, const char *filtersP, const char *descriptionP, const int quirkP);
|
||||
|
3
tuner.c
3
tuner.c
@ -393,6 +393,9 @@ bool cSatipTuner::SetSource(cSatipServer *serverP, const int transponderP, const
|
||||
streamAddrM = rtspM.RtspUnescapeString(*nextServerM.GetAddress());
|
||||
streamParamM = rtspM.RtspUnescapeString(parameterP);
|
||||
streamPortM = nextServerM.GetPort();
|
||||
// Modify parameter if required
|
||||
if (nextServerM.IsQuirk(cSatipServer::eSatipQuirkForcePilot) && strstr(parameterP, "msys=dvbs2") && !strstr(parameterP, "plts="))
|
||||
streamParamM = rtspM.RtspUnescapeString(*cString::sprintf("%s&plts=on", parameterP));
|
||||
// Reconnect
|
||||
RequestState(tsSet, smExternal);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user