Ticket #8580: mythtv-add_demo_tuner.2.patch

File mythtv-add_demo_tuner.2.patch, 6.6 KB (added by johnnyjboss@…, 9 years ago)

updated patch for #ifdef USING_IVTV

  • mythtv/libs/libmythtv/cardutil.h

     
    5252        OFDM      = 5,        DVBT      = 5,
    5353        ATSC      = 6,
    5454        V4L       = 7,
    55         MPEG      = 8,
     55        MPEG      = 8,        DEMO     = 8,
    5656        FIREWIRE  = 9,
    5757        HDHOMERUN = 10,
    5858        FREEBOX   = 11,
     
    9393            return DVBS2;
    9494        if ("IMPORT" == name)
    9595            return IMPORT;
     96        if ("DEMO" == name)
     97            return DEMO;
    9698        return ERROR_UNKNOWN;
    9799    }
    98100
     
    113115    {
    114116        return
    115117            (rawtype == "FIREWIRE")  || (rawtype == "IMPORT") ||
    116             (rawtype == "HDPVR");
     118            (rawtype == "HDPVR")     || (rawtype == "DEMO");
    117119    }
    118120
    119121    static bool         IsEITCapable(const QString &rawtype)
     
    139141    {
    140142        return
    141143            (rawtype == "V4L")    || (rawtype == "MPEG") ||
    142             (rawtype == "HDPVR");
     144            (rawtype == "HDPVR")  || (rawtype == "DEMO");
    143145    }
    144146
    145147    static bool         IsSingleInputCard(const QString &rawtype)
    146148    {
    147149        return
    148150            (rawtype == "FIREWIRE")  || (rawtype == "FREEBOX") ||
    149             (rawtype == "HDHOMERUN") || (rawtype == "IMPORT");
     151            (rawtype == "HDHOMERUN") || (rawtype == "IMPORT") ||
     152            (rawtype == "DEMO");
    150153    }
    151154
    152155    /// Convenience function for GetCardIDs()
  • mythtv/libs/libmythtv/videosource.h

     
    519519    TunerCardInput    *input;
    520520};
    521521
     522class DemoConfigurationGroup: public VerticalConfigurationGroup
     523{
     524   Q_OBJECT
     525
     526  public:
     527    DemoConfigurationGroup(CaptureCard &parent);
     528
     529  public slots:
     530    void probeCard(const QString &device);
     531
     532  private:
     533    CaptureCard       &parent;
     534    TransLabelSetting *cardinfo;
     535    TunerCardInput    *input;
     536};
     537
    522538class HDPVRConfigurationGroup: public VerticalConfigurationGroup
    523539{
    524540   Q_OBJECT
  • mythtv/libs/libmythtv/cardutil.cpp

     
    16441644{
    16451645    bool ok;
    16461646    QStringList ret;
     1647    if (device.endsWith(".mpg"))
     1648    {
     1649        ret += "MPEG2TS";
     1650        return ret;
     1651    }
     1652
    16471653    QByteArray dev = device.toAscii();
    16481654    int videofd = open(dev.constData(), O_RDWR);
    16491655    if (videofd < 0)
  • mythtv/libs/libmythtv/videosource.cpp

     
    2020#include <QDir>
    2121#include <QProcess>
    2222#include <QDateTime>
     23#include <QFile>
    2324
    2425// MythTV headers
    2526#include "mythconfig.h"
     
    19381939    input->fillSelections(device);
    19391940}
    19401941
     1942DemoConfigurationGroup::DemoConfigurationGroup(CaptureCard &a_parent) :
     1943    VerticalConfigurationGroup(false, true, false, false),
     1944    parent(a_parent), cardinfo(new TransLabelSetting()),
     1945    input(new TunerCardInput(parent))
     1946{
     1947    VideoDevice *device =
     1948        new VideoDevice(parent, 0, 15, QString::null, "ivtv");
     1949
     1950    cardinfo->setLabel(tr("Probed info"));
     1951
     1952    addChild(device);
     1953    addChild(cardinfo);
     1954    //addChild(input);
     1955
     1956    connect(device, SIGNAL(valueChanged(const QString&)),
     1957            this,   SLOT(  probeCard(   const QString&)));
     1958
     1959    probeCard(device->getValue());
     1960}
     1961
     1962void DemoConfigurationGroup::probeCard(const QString &device)
     1963{
     1964    QString cn = tr("Failed to open"), ci = cn, dn = QString::null;
     1965    QFileInfo fileInfo(device);
     1966    if (fileInfo.exists())
     1967    {
     1968        if (fileInfo.isReadable() && (fileInfo.isFile()))
     1969            ci = cn = tr("File Access Success");
     1970    }
     1971    else
     1972    {
     1973        ci = cn = tr("File Access Failure");
     1974    }
     1975    cardinfo->setValue(ci);
     1976    input->fillSelections(device);
     1977}
     1978
    19411979HDPVRConfigurationGroup::HDPVRConfigurationGroup(CaptureCard &a_parent) :
    19421980    VerticalConfigurationGroup(false, true, false, false),
    19431981    parent(a_parent), cardinfo(new TransLabelSetting()),
     
    19942032    addTarget("V4L",       new V4LConfigurationGroup(parent));
    19952033# ifdef USING_IVTV
    19962034    addTarget("MPEG",      new MPEGConfigurationGroup(parent));
     2035    //for development or testing purposes
     2036    addTarget("DEMO",    new DemoConfigurationGroup(parent));
    19972037# endif // USING_IVTV
    19982038# ifdef USING_HDPVR
    19992039    addTarget("HDPVR",     new HDPVRConfigurationGroup(parent));
     
    22212261    setting->addSelection(QObject::tr("Network recorder"), "FREEBOX");
    22222262#endif // USING_IPTV
    22232263
     2264    setting->addSelection(QObject::tr("Demo recorder"), "DEMO");
    22242265    setting->addSelection(QObject::tr("Import recorder"), "IMPORT");
    22252266}
    22262267
  • mythtv/libs/libmythtv/mpegrecorder.cpp

     
    307307    (void)audiodev;
    308308    (void)vbidev;
    309309
    310     if (videodev.toLower().left(5) == "file:")
     310    if (videodev.toLower().right(4) == ".mpg")
    311311    {
    312312        deviceIsMpegFile = true;
    313313        bufferSize = 64000;
    314         QString newVideoDev = videodev;
    315         if (newVideoDev.startsWith("file:", Qt::CaseInsensitive))
    316             newVideoDev = newVideoDev.remove(0,5);
    317         SetOption("videodevice", newVideoDev);
    318314    }
    319     else
    320     {
    321         SetOption("videodevice", videodev);
    322     }
    323315
     316    SetOption("videodevice", videodev);
    324317    SetOption("audiodevice", audiodev);
    325318
    326319    SetOption("tvformat", gCoreContext->GetSetting("TVFormat"));
  • mythtv/libs/libmythtv/tv_rec.cpp

     
    181181        init_run = true;
    182182#endif
    183183    }
    184     else if ((genOpt.cardtype == "IMPORT") ||
    185              (genOpt.cardtype == "MPEG" &&
    186               genOpt.videodev.toLower().left(5) == "file:"))
     184    else if ((genOpt.cardtype == "IMPORT") || (genOpt.cardtype == "DEMO"))
    187185    {
    188186        channel = new DummyChannel(this);
    189187        if (!channel->Open())
     
    976974bool TVRec::SetupRecorder(RecordingProfile &profile)
    977975{
    978976    recorder = NULL;
    979     if (genOpt.cardtype == "MPEG")
     977    if ((genOpt.cardtype == "MPEG") || (genOpt.cardtype == "DEMO"))
    980978    {
    981979#ifdef USING_IVTV
    982980        recorder = new MpegRecorder(this);