Skip to content

Commit

Permalink
channelscan_web: Fix problem with DVB_T2 and modulation problem with …
Browse files Browse the repository at this point in the history
…tuned scan

- DVB_T2 and DVB_S2 were not handled correctly. Fixed to use the
  CardUtil enum to set correct values.
- Channelscan(Tuned) was not passing modulation value but was setting it
  to unknown. Removed the incorret code.
  • Loading branch information
bennettpeter committed Jun 16, 2023
1 parent ba1d683 commit c645330
Showing 1 changed file with 47 additions and 35 deletions.
82 changes: 47 additions & 35 deletions mythtv/libs/libmythtv/channelscan/channelscanner_web.cpp
Expand Up @@ -86,49 +86,63 @@ bool ChannelScannerWeb::StartScan (uint cardid,
m_cardid = cardid;
m_scanId = ScanId;

QString inputType = CardUtil::ProbeSubTypeName(cardid);
QString subType = CardUtil::ProbeSubTypeName(cardid);
CardUtil::INPUT_TYPES inputType = CardUtil::toInputType(subType);

int nScanType = -99;
if (ScanType == "FULL")
{
if (inputType == "ATSC")
nScanType = ScanTypeSetting::FullScan_ATSC;
else if (inputType == "DVBT")
nScanType = ScanTypeSetting::FullScan_DVBT;
else if (inputType == "V4L" || inputType == "MPEG")
nScanType = ScanTypeSetting::FullScan_Analog;
else if (inputType == "DVBT2")
nScanType = ScanTypeSetting::FullScan_DVBT2;
else if (inputType == "DVBC")
nScanType = ScanTypeSetting::FullScan_DVBC;
else if (inputType == "HDHOMERUN")
{
if (CardUtil::HDHRdoesDVBC(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::FullScan_DVBC;
else if (CardUtil::HDHRdoesDVB(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::FullScan_DVBT;
else
switch(inputType) {
case CardUtil::ATSC:
nScanType = ScanTypeSetting::FullScan_ATSC;
break;
case CardUtil::DVBT:
nScanType = ScanTypeSetting::FullScan_DVBT;
break;
case CardUtil::V4L:
case CardUtil::MPEG:
nScanType = ScanTypeSetting::FullScan_Analog;
break;
case CardUtil::DVBT2:
nScanType = ScanTypeSetting::FullScan_DVBT2;
break;
case CardUtil::DVBC:
nScanType = ScanTypeSetting::FullScan_DVBC;
break;
case CardUtil::HDHOMERUN:
if (CardUtil::HDHRdoesDVBC(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::FullScan_DVBC;
else if (CardUtil::HDHRdoesDVB(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::FullScan_DVBT;
else
nScanType = ScanTypeSetting::FullScan_ATSC;
break;
}
}
else if (ScanType == "FULLTUNED")
{
if (inputType == "DVBT")
nScanType = ScanTypeSetting::NITAddScan_DVBT;
else if (inputType == "DVBT2")
nScanType = ScanTypeSetting::NITAddScan_DVBT2;
else if (inputType == "DVBS")
nScanType = ScanTypeSetting::NITAddScan_DVBS;
else if (inputType == "DVBS2")
nScanType = ScanTypeSetting::NITAddScan_DVBS2;
else if (inputType == "DVBC")
nScanType = ScanTypeSetting::NITAddScan_DVBC;
else if (inputType == "HDHOMERUN")
{
if (CardUtil::HDHRdoesDVBC(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::NITAddScan_DVBC;
else if (CardUtil::HDHRdoesDVB(CardUtil::GetVideoDevice(cardid)))
switch(inputType) {
case CardUtil::DVBT:
nScanType = ScanTypeSetting::NITAddScan_DVBT;
break;
case CardUtil::DVBT2:
nScanType = ScanTypeSetting::NITAddScan_DVBT2;
break;
case CardUtil::DVBS:
nScanType = ScanTypeSetting::NITAddScan_DVBS;
break;
case CardUtil::DVBS2:
nScanType = ScanTypeSetting::NITAddScan_DVBS2;
break;
case CardUtil::DVBC:
nScanType = ScanTypeSetting::NITAddScan_DVBC;
break;
case CardUtil::HDHOMERUN:
if (CardUtil::HDHRdoesDVBC(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::NITAddScan_DVBC;
else if (CardUtil::HDHRdoesDVB(CardUtil::GetVideoDevice(cardid)))
nScanType = ScanTypeSetting::NITAddScan_DVBT;
break;
}
}
else if (ScanType == "VBOXIMPORT")
Expand Down Expand Up @@ -197,8 +211,6 @@ bool ChannelScannerWeb::StartScan (uint cardid,
case ScanTypeSetting::FullScan_Analog:
modulation = "analog";
break;
default:
modulation = "unknown";
}

m_scantype = nScanType;
Expand Down

0 comments on commit c645330

Please sign in to comment.