Ticket #1330: 8psk.diff

File 8psk.diff, 6.4 KB (added by anonymous, 20 years ago)
  • libs/libmythtv/dvbtypes.cpp

    old new  
    156156   {"QAM_128",QAM_128},
    157157   {"QAM_256",QAM_256},
    158158   {"QPSK",QPSK},
     159   {"QPSK_8",QPSK_8},
    159160   {NULL,QAM_AUTO},
    160161};
    161162
     
    180181   {"qam_128",QAM_128},
    181182   {"qam_256",QAM_256},
    182183   {"qpsk",QPSK},
     184   {"qpsk_8",QPSK_8},
    183185   {"8vsb",VSB_8},
    184186   {"16vsb",VSB_16},
    185187   {NULL,QAM_AUTO},
     
    195197    "qam_256", //QAM_256,
    196198    "auto",    //QAM_AUTO,
    197199    "8vsb",    //VSB_8,
    198     "16vsb"    //VSB_16
     200    "16vsb",   //VSB_16
     201    "qpsk_8",  //QPSK_8
    199202};
    200203
    201204DVBParamHelper<fe_transmit_mode_t>::Table DVBTransmitMode::confTable[] =
     
    315318        p.frequency          <= op.frequency + range   &&
    316319        p.inversion          == op.inversion           &&
    317320        p.u.qpsk.symbol_rate == op.u.qpsk.symbol_rate  &&
     321        p.u.qpsk.modulation  == op.u.qpsk.modulation   &&
    318322        p.u.qpsk.fec_inner   == op.u.qpsk.fec_inner;
    319323}
    320324
     
    662666                          const QString& _diseqc_pos,
    663667                          const QString& _lnb_lof_switch,
    664668                          const QString& _lnb_lof_hi,
    665                           const QString& _lnb_lof_lo)
     669                          const QString& _lnb_lof_lo, const QString &modulation)
    666670{
    667671    bool ok = true;
    668672
     
    692696    }
    693697
    694698    p.fec_inner = parseCodeRate(fec_inner, ok);
     699    p.modulation = parseModulation(modulation, ok);
    695700
    696701    diseqc_type = _diseqc_type.toInt();
    697702    diseqc_port = _diseqc_port.toInt();
     
    872877    QString modulation = mod.lower();
    873878    ok = true;
    874879    if (   modulation ==    "qpsk") return QPSK;
     880    else if (modulation =="qpsk_8") return QPSK_8;
    875881    else if (modulation ==    "auto") return QAM_AUTO;
    876882    else if (modulation ==       "a") return QAM_AUTO;
    877883    else if (modulation =="qam_auto") return QAM_AUTO;
     
    915921        ok = tuning.parseQPSK(
    916922            frequency,       inversion,     symbolrate,   fec,   polarity,
    917923            dvb_diseqc_type, diseqc_port,   diseqc_pos,
    918             lnb_lof_switch,  lnb_lof_hi,    lnb_lof_lo);
     924            lnb_lof_switch,  lnb_lof_hi,    lnb_lof_lo, modulation);
    919925    else if (FE_QAM == type)
    920926        ok = tuning.parseQAM(
    921927            frequency,       inversion,     symbolrate,   fec,   modulation);
     
    939945    switch (mod)
    940946    {
    941947        case QPSK:     return    "QPSK";
     948        case QPSK_8:   return  "QPSK_8";
    942949        case QAM_AUTO: return    "Auto";
    943950        case QAM_256:  return "QAM-256";
    944951        case QAM_128:  return "QAM-128";
     
    957964    switch (mod)
    958965    {
    959966        case QPSK:     return "qpsk";
     967        case QPSK_8:   return "qpsk_8";
    960968        case QAM_AUTO: return "auto";
    961969        case QAM_16:   return "qam_16";
    962970        case QAM_32:   return "qam_32";
  • libs/libmythtv/scanwizardhelpers.h

    old new  
    410410    {
    411411        addSelection(QObject::tr("Auto"),"auto",true);
    412412        addSelection("QPSK","qpsk");
     413        addSelection("QPSK_8","qpsk");
    413414        addSelection("QAM 16","qam_16");
    414415        addSelection("QAM 32","qam_32");
    415416        addSelection("QAM 64","qam_64");
     
    606607    QString inversion()  { return pinversion->getValue(); }
    607608    QString fec()        { return pfec->getValue(); }
    608609    QString polarity()   { return ppolarity->getValue(); }
     610    QString modulation() { return pmodulation->getValue(); }
    609611
    610612  protected:
    611613    ScanFrequency  *pfrequency;
     
    613615    ScanInversion  *pinversion;
    614616    ScanFec        *pfec;
    615617    ScanPolarity   *ppolarity;
     618    ScanModulation *pmodulation;
    616619};
    617620
    618621class QAMPane : public HorizontalConfigurationGroup
  • libs/libmythtv/dvbchannel.cpp

    old new  
    488488        case FE_QPSK:
    489489            symbol_rate = t.QPSKSymbolRate();
    490490
     491            if (!CheckModulation(t.params.u.qpsk.modulation))
     492                WARNING("Unsupported modulation parameter.");
     493
    491494            if (!CheckCodeRate(t.params.u.qpsk.fec_inner))
    492495                WARNING("Unsupported fec_inner parameter.");
    493496            break;
     
    572575    switch (modulation)
    573576    {
    574577        case QPSK:     if (info.caps & FE_CAN_QPSK)     return true;
     578        case QPSK_8:   if (info.caps & FE_CAN_QPSK_8)     return true;
    575579        case QAM_16:   if (info.caps & FE_CAN_QAM_16)   return true;
    576580        case QAM_32:   if (info.caps & FE_CAN_QAM_32)   return true;
    577581        case QAM_64:   if (info.caps & FE_CAN_QAM_64)   return true;
  • libs/libmythtv/scanwizard.cpp

    old new  
    536536                        query.value(2).toString(), // diseqc_pos
    537537                        query.value(3).toString(), // lnb_lof_switch
    538538                        query.value(4).toString(), // lnb_lof_hi
    539                         query.value(5).toString()  // lnb_lof_lo
     539                        query.value(5).toString(), // lnb_lof_lo
     540                        pane->modulation ()
    540541                        ))
    541542                    fParseError = true;
    542543            }
  • libs/libmythtv/dvbtypes.h

    old new  
    379379                   const QString& pol,            const QString& diseqc_type,
    380380                   const QString& diseqc_port,    const QString& diseqc_pos,
    381381                   const QString& lnb_lof_switch, const QString& lnb_lof_hi,
    382                    const QString& lnb_lof_lo);
     382                   const QString& lnb_lof_lo,     const QString& modulation);
    383383
    384384    bool parseQAM(const TransportObject&);
    385385