MythTV master
Public Types | Static Public Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
CardUtil Class Reference

Collection of helper utilities for input DB use. More...

#include <libmythtv/cardutil.h>

Inheritance diagram for CardUtil:
[legend]
Collaboration diagram for CardUtil:
[legend]

Public Types

enum class  INPUT_TYPES : std::uint8_t {
  ERROR_OPEN = 0 , ERROR_UNKNOWN = 1 , ERROR_PROBE = 2 , QPSK = 3 ,
  DVBS = 3 , QAM = 4 , DVBC = 4 , OFDM = 5 ,
  DVBT = 5 , ATSC = 6 , V4L = 7 , MPEG = 8 ,
  FIREWIRE = 9 , HDHOMERUN = 10 , FREEBOX = 11 , HDPVR = 12 ,
  DVBS2 = 13 , IMPORT = 14 , DEMO = 15 , ASI = 16 ,
  CETON = 17 , EXTERNAL = 18 , VBOX = 19 , DVBT2 = 20 ,
  V4L2ENC = 21 , SATIP = 22
}
 all the different inputs More...
 
using InputTypes = QMap< QString, QString >
 

Static Public Member Functions

static INPUT_TYPES toInputType (const QString &name)
 
static bool IsEncoder (const QString &rawtype)
 
static bool IsV4L (const QString &rawtype)
 
static bool IsChannelChangeDiscontinuous (const QString &rawtype)
 
static bool IsUnscanable (const QString &rawtype)
 
static QString GetScanableInputTypes (void)
 
static bool IsCableCardPresent (uint inputid, const QString &inputType)
 
static bool IsEITCapable (const QString &rawtype)
 
static bool IsTunerSharingCapable (const QString &rawtype)
 
static bool HasTuner (const QString &rawtype, const QString &device)
 
static bool IsTunerShared (uint inputidA, uint inputidB)
 
static bool IsTuningDigital (const QString &rawtype)
 
static bool IsTuningAnalog (const QString &rawtype)
 
static bool IsTuningVirtual (const QString &rawtype)
 
static bool IsSingleInputType (const QString &rawtype)
 
static bool IsChannelReusable (const QString &rawtype)
 
static int CreateCaptureCard (const QString &videodevice, const QString &audiodevice, const QString &vbidevice, const QString &inputtype, uint audioratelimit, const QString &hostname, uint dvb_swfilter, uint dvb_sat_type, bool dvb_wait_for_seqstart, bool skipbtaudio, bool dvb_on_demand, uint dvb_diseqc_type, uint firewire_speed, const QString &firewire_model, uint firewire_connection, std::chrono::milliseconds signal_timeout, std::chrono::milliseconds channel_timeout, uint dvb_tuning_delay, uint contrast, uint brightness, uint colour, uint hue, uint diseqcid, bool dvb_eitscan)
 
static bool DeleteInput (uint inputid)
 
static bool DeleteAllInputs (void)
 
static std::vector< uintGetInputList (void)
 
static std::vector< uintGetSchedInputList (void)
 
static std::vector< uintGetLiveTVInputList (void)
 
static uint GetFirstInputID (const QString &videodevice)
 Convenience function for GetInputIDs() More...
 
static std::vector< uintGetInputIDs (const QString &videodevice=QString(), const QString &rawtype=QString(), const QString &inputname=QString(), QString hostname=QString())
 Returns all inputids of inputs that uses the specified videodevice if specified, and optionally rawtype and a non-local hostname. More...
 
static uint GetChildInputCount (uint inputid)
 
static std::vector< uintGetChildInputIDs (uint inputid)
 
static bool IsInputTypePresent (const QString &rawtype, QString hostname=QString())
 Returns true if the input type is present and connected to an input. More...
 
static InputTypes GetInputTypes (void)
 
static QStringList GetInputTypeNames (uint sourceid)
 Get a list of card input types for a source id. More...
 
static QStringList GetVideoDevices (const QString &rawtype, QString hostname=QString())
 Returns the videodevices of the matching inputs, duplicates removed. More...
 
static QString GetRawInputType (uint inputid)
 
static QString GetVideoDevice (uint inputid)
 
static QString GetAudioDevice (uint inputid)
 
static QString GetVBIDevice (uint inputid)
 
static QString GetDeliverySystemFromDB (uint inputid)
 
static QString GetDiSEqCPosition (uint inputid)
 
static QString GetHostname (uint inputid)
 
static int GetValueInt (const QString &col, uint inputid)
 
static bool SetValue (const QString &col, uint inputid, int val)
 
static bool SetValue (const QString &col, uint inputid, const QString &val)
 
static bool SetStartChannel (uint inputid, const QString &channum)
 
static int CreateCardInput (uint inputid, uint sourceid, const QString &inputname, const QString &externalcommand, const QString &changer_device, const QString &changer_model, const QString &hostname, const QString &tunechan, const QString &startchan, const QString &displayname, bool dishnet_eit, uint recpriority, uint quicktune, uint schedorder, uint livetvorder)
 
static std::vector< uintGetInputIDs (uint sourceid)
 
static bool GetInputInfo (InputInfo &input, std::vector< uint > *groupids=nullptr)
 
static QList< InputInfoGetAllInputInfo (bool virtTuners)
 
static QString GetInputName (uint inputid)
 
static QString GetStartChannel (uint inputid)
 
static QString GetDisplayName (uint inputid)
 
static bool IsUniqueDisplayName (const QString &name, uint exclude_inputid)
 
static uint GetSourceID (uint inputid)
 
static uint CreateInputGroup (const QString &name)
 
static uint CreateDeviceInputGroup (uint inputid, const QString &type, const QString &host, const QString &device)
 
static uint GetDeviceInputGroup (uint inputid)
 
static bool LinkInputGroup (uint inputid, uint inputgroupid)
 
static bool UnlinkInputGroup (uint inputid, uint inputgroupid)
 
static std::vector< uintGetInputGroups (uint inputid)
 
static std::vector< uintGetGroupInputIDs (uint inputgroupid)
 
static std::vector< uintGetConflictingInputs (uint inputid)
 
static QString GetDeviceLabel (const QString &inputtype, const QString &videodevice)
 
static QString GetDeviceLabel (uint inputid)
 
static QString ProbeSubTypeName (uint inputid)
 
static QStringList ProbeVideoInputs (const QString &device, const QString &inputtype=QString())
 
static QStringList ProbeAudioInputs (const QString &device, const QString &inputtype=QString())
 
static void GetDeviceInputNames (const QString &device, const QString &inputtype, QStringList &inputs)
 
static QStringList ProbeVideoDevices (const QString &rawtype)
 
static void ClearVideoDeviceCache ()
 
static uint CloneCard (uint src_inputid, uint dst_inputid)
 
static bool InputSetMaxRecordings (uint parentid, uint max_recordings)
 
static uint AddChildInput (uint parentid)
 
static QString GetFirewireChangerNode (uint inputid)
 
static QString GetFirewireChangerModel (uint inputid)
 
static bool GetTimeouts (uint inputid, std::chrono::milliseconds &signal_timeout, std::chrono::milliseconds &channel_timeout)
 
static bool IgnoreEncrypted (uint inputid, const QString &inputname)
 
static bool TVOnly (uint inputid, const QString &inputname)
 
static bool IsInNeedOfExternalInputConf (uint inputid)
 
static uint GetQuickTuning (uint inputid, const QString &input_name)
 
static bool IsDVB (uint inputid)
 Returns true if the input is a DVB input. More...
 
static bool IsDVBInputType (const QString &inputType)
 Returns true iff the input_type is one of the DVB types. More...
 
static QStringList ProbeDeliverySystems (const QString &device)
 
static QStringList ProbeDeliverySystems (int fd_frontend)
 
static QString ProbeDefaultDeliverySystem (const QString &device)
 
static QString ProbeDVBType (const QString &device)
 
static QString ProbeDVBFrontendName (const QString &device)
 Returns the input type from the video device. More...
 
static bool HasDVBCRCBug (const QString &device)
 Returns true if and only if the device munges PAT/PMT tables, and then doesn't fix the CRC. More...
 
static std::chrono::milliseconds GetMinSignalMonitoringDelay (const QString &device)
 
static DTVTunerType ConvertToTunerType (DTVModulationSystem delsys)
 
static DTVTunerType GetTunerType (uint inputid)
 
static DTVTunerType ProbeTunerType (int fd_frontend)
 
static DTVTunerType ProbeTunerType (const QString &device)
 
static DTVTunerType GetTunerTypeFromMultiplex (uint mplexid)
 
static DTVModulationSystem GetDeliverySystem (uint inputid)
 
static DTVModulationSystem ProbeCurrentDeliverySystem (const QString &device)
 
static DTVModulationSystem ProbeCurrentDeliverySystem (int fd_frontend)
 
static DTVModulationSystem ProbeBestDeliverySystem (int fd)
 
static DTVModulationSystem GetOrProbeDeliverySystem (uint inputid, int fd)
 
static int SetDefaultDeliverySystem (uint inputid, int fd)
 
static int SetDeliverySystem (uint inputid)
 
static int SetDeliverySystem (uint inputid, DTVModulationSystem delsys)
 
static int SetDeliverySystem (uint inputid, int fd)
 
static int SetDeliverySystem (uint inputid, DTVModulationSystem delsys, int fd)
 
static int OpenVideoDevice (int inputid)
 
static int OpenVideoDevice (const QString &device)
 
static QString GetDeviceName (dvb_dev_type_t type, const QString &device)
 
static InputNames GetConfiguredDVBInputs (const QString &device)
 
static QStringList CapabilitiesToString (uint64_t capabilities)
 
static bool hasV4L2 (int videofd)
 
static bool GetV4LInfo (int videofd, QString &input, QString &driver, uint32_t &version, uint32_t &capabilities)
 
static bool GetV4LInfo (int videofd, QString &input, QString &driver)
 
static InputNames ProbeV4LVideoInputs (int videofd, bool &ok)
 
static InputNames ProbeV4LAudioInputs (int videofd, bool &ok)
 
static bool HDHRdoesDVB (const QString &device)
 If the device is valid, check if the model does DVB. More...
 
static bool HDHRdoesDVBC (const QString &device)
 If the device is valid, check if the model does DVB-C. More...
 
static QString GetHDHRdesc (const QString &device)
 Get a nicely formatted string describing the device. More...
 
static QString GetVBoxdesc (const QString &id, const QString &ip, const QString &tunerNo, const QString &tunerType)
 Get a nicely formatted string describing the device. More...
 
static int GetASIDeviceNumber (const QString &device, QString *error=nullptr)
 
static uint GetASIBufferSize (uint device_num, QString *error=nullptr)
 
static uint GetASINumBuffers (uint device_num, QString *error=nullptr)
 
static int GetASIMode (uint device_num, QString *error=nullptr)
 
static bool SetASIMode (uint device_num, uint mode, QString *error=nullptr)
 

Static Private Member Functions

static QStringList ProbeV4LVideoInputs (const QString &device)
 
static QStringList ProbeV4LAudioInputs (const QString &device)
 
static QStringList ProbeDVBInputs (const QString &device)
 

Static Private Attributes

static QMap< QString, QStringList > s_videoDeviceCache
 

Detailed Description

Collection of helper utilities for input DB use.

Definition at line 41 of file cardutil.h.

Member Typedef Documentation

◆ InputTypes

using CardUtil::InputTypes = QMap<QString, QString>

Definition at line 46 of file cardutil.h.

Member Enumeration Documentation

◆ INPUT_TYPES

enum class CardUtil::INPUT_TYPES : std::uint8_t
strong

all the different inputs

Enumerator
ERROR_OPEN 
ERROR_UNKNOWN 
ERROR_PROBE 
QPSK 
DVBS 
QAM 
DVBC 
OFDM 
DVBT 
ATSC 
V4L 
MPEG 
FIREWIRE 
HDHOMERUN 
FREEBOX 
HDPVR 
DVBS2 
IMPORT 
DEMO 
ASI 
CETON 
EXTERNAL 
VBOX 
DVBT2 
V4L2ENC 
SATIP 

Definition at line 49 of file cardutil.h.

Member Function Documentation

◆ AddChildInput()

uint CardUtil::AddChildInput ( uint  parentid)
static

Definition at line 1594 of file cardutil.cpp.

Referenced by MainServer::HandleAddChildInput().

◆ CapabilitiesToString()

QStringList CardUtil::CapabilitiesToString ( uint64_t  capabilities)
static

Definition at line 2475 of file cardutil.cpp.

Referenced by DVBChannel::Open().

◆ ClearVideoDeviceCache()

void CardUtil::ClearVideoDeviceCache ( )
static

Definition at line 443 of file cardutil.cpp.

Referenced by CaptureCard::fillSelections().

◆ CloneCard()

uint CardUtil::CloneCard ( uint  src_inputid,
uint  dst_inputid 
)
static

Definition at line 1550 of file cardutil.cpp.

Referenced by AddChildInput(), InputSetMaxRecordings(), and CaptureCard::Save().

◆ ConvertToTunerType()

DTVTunerType CardUtil::ConvertToTunerType ( DTVModulationSystem  delsys)
static

◆ CreateCaptureCard()

int CardUtil::CreateCaptureCard ( const QString &  videodevice,
const QString &  audiodevice,
const QString &  vbidevice,
const QString &  inputtype,
uint  audioratelimit,
const QString &  hostname,
uint  dvb_swfilter,
uint  dvb_sat_type,
bool  dvb_wait_for_seqstart,
bool  skipbtaudio,
bool  dvb_on_demand,
uint  dvb_diseqc_type,
uint  firewire_speed,
const QString &  firewire_model,
uint  firewire_connection,
std::chrono::milliseconds  signal_timeout,
std::chrono::milliseconds  channel_timeout,
uint  dvb_tuning_delay,
uint  contrast,
uint  brightness,
uint  colour,
uint  hue,
uint  diseqcid,
bool  dvb_eitscan 
)
static

Definition at line 2674 of file cardutil.cpp.

Referenced by V2Capture::AddCaptureCard().

◆ CreateCardInput()

int CardUtil::CreateCardInput ( uint  inputid,
uint  sourceid,
const QString &  inputname,
const QString &  externalcommand,
const QString &  changer_device,
const QString &  changer_model,
const QString &  hostname,
const QString &  tunechan,
const QString &  startchan,
const QString &  displayname,
bool  dishnet_eit,
uint  recpriority,
uint  quicktune,
uint  schedorder,
uint  livetvorder 
)
static

Definition at line 1967 of file cardutil.cpp.

Referenced by V2Capture::AddCardInput().

◆ CreateDeviceInputGroup()

uint CardUtil::CreateDeviceInputGroup ( uint  inputid,
const QString &  type,
const QString &  host,
const QString &  device 
)
static

Definition at line 2069 of file cardutil.cpp.

Referenced by CreateCaptureCard(), and CaptureCard::Save().

◆ CreateInputGroup()

uint CardUtil::CreateInputGroup ( const QString &  name)
static

◆ DeleteAllInputs()

bool CardUtil::DeleteAllInputs ( void  )
static

◆ DeleteInput()

bool CardUtil::DeleteInput ( uint  inputid)
static

◆ GetAllInputInfo()

QList< InputInfo > CardUtil::GetAllInputInfo ( bool  virtTuners)
static

Definition at line 1735 of file cardutil.cpp.

Referenced by FillEncoderList(), and V2Dvr::GetInputList().

◆ GetASIBufferSize()

uint CardUtil::GetASIBufferSize ( uint  device_num,
QString *  error = nullptr 
)
static

Definition at line 3309 of file cardutil.cpp.

Referenced by ASIStreamHandler::Open().

◆ GetASIDeviceNumber()

int CardUtil::GetASIDeviceNumber ( const QString &  device,
QString *  error = nullptr 
)
static

◆ GetASIMode()

int CardUtil::GetASIMode ( uint  device_num,
QString *  error = nullptr 
)
static

Definition at line 3357 of file cardutil.cpp.

◆ GetASINumBuffers()

uint CardUtil::GetASINumBuffers ( uint  device_num,
QString *  error = nullptr 
)
static

Definition at line 3333 of file cardutil.cpp.

Referenced by ASIStreamHandler::Open().

◆ GetAudioDevice()

static QString CardUtil::GetAudioDevice ( uint  inputid)
inlinestatic

Definition at line 296 of file cardutil.h.

Referenced by TunerCardAudioInput::TunerCardAudioInput().

◆ GetChildInputCount()

uint CardUtil::GetChildInputCount ( uint  inputid)
static

Definition at line 1349 of file cardutil.cpp.

◆ GetChildInputIDs()

std::vector< uint > CardUtil::GetChildInputIDs ( uint  inputid)
static

◆ GetConfiguredDVBInputs()

InputNames CardUtil::GetConfiguredDVBInputs ( const QString &  device)
static

Definition at line 2447 of file cardutil.cpp.

Referenced by ProbeDVBInputs().

◆ GetConflictingInputs()

std::vector< uint > CardUtil::GetConflictingInputs ( uint  inputid)
static

◆ GetDeliverySystem()

DTVModulationSystem CardUtil::GetDeliverySystem ( uint  inputid)
static

◆ GetDeliverySystemFromDB()

static QString CardUtil::GetDeliverySystemFromDB ( uint  inputid)
inlinestatic

Definition at line 300 of file cardutil.h.

Referenced by CardInput::CardInput(), and GetDeliverySystem().

◆ GetDeviceInputGroup()

uint CardUtil::GetDeviceInputGroup ( uint  inputid)
static

Definition at line 2082 of file cardutil.cpp.

Referenced by CaptureCard::Save().

◆ GetDeviceInputNames()

void CardUtil::GetDeviceInputNames ( const QString &  device,
const QString &  inputtype,
QStringList &  inputs 
)
static

Definition at line 2660 of file cardutil.cpp.

Referenced by InputName::fillSelections(), and fillSelectionsFromDir().

◆ GetDeviceLabel() [1/2]

QString CardUtil::GetDeviceLabel ( const QString &  inputtype,
const QString &  videodevice 
)
static

◆ GetDeviceLabel() [2/2]

QString CardUtil::GetDeviceLabel ( uint  inputid)
static

Definition at line 2644 of file cardutil.cpp.

◆ GetDeviceName()

QString CardUtil::GetDeviceName ( dvb_dev_type_t  type,
const QString &  device 
)
static

◆ GetDiSEqCPosition()

static QString CardUtil::GetDiSEqCPosition ( uint  inputid)
inlinestatic

Definition at line 302 of file cardutil.h.

Referenced by SatIPChannel::Tune().

◆ GetDisplayName()

QString CardUtil::GetDisplayName ( uint  inputid)
static

◆ GetFirewireChangerModel()

QString CardUtil::GetFirewireChangerModel ( uint  inputid)
static

Definition at line 1639 of file cardutil.cpp.

Referenced by ChannelBase::ChangeInternalChannel().

◆ GetFirewireChangerNode()

QString CardUtil::GetFirewireChangerNode ( uint  inputid)
static

Definition at line 1622 of file cardutil.cpp.

Referenced by ChannelBase::ChangeInternalChannel().

◆ GetFirstInputID()

static uint CardUtil::GetFirstInputID ( const QString &  videodevice)
inlinestatic

Convenience function for GetInputIDs()

Definition at line 268 of file cardutil.h.

Referenced by ChannelBase::InitializeInput().

◆ GetGroupInputIDs()

std::vector< uint > CardUtil::GetGroupInputIDs ( uint  inputgroupid)
static

Definition at line 2214 of file cardutil.cpp.

◆ GetHDHRdesc()

QString CardUtil::GetHDHRdesc ( const QString &  device)
static

Get a nicely formatted string describing the device.

Definition at line 3132 of file cardutil.cpp.

◆ GetHostname()

static QString CardUtil::GetHostname ( uint  inputid)
inlinestatic

Definition at line 305 of file cardutil.h.

Referenced by MainServer::HandleAddChildInput().

◆ GetInputGroups()

std::vector< uint > CardUtil::GetInputGroups ( uint  inputid)
static

Definition at line 2188 of file cardutil.cpp.

Referenced by clone_capturecard(), GetInputInfo(), and TV::ShowOSDAskAllow().

◆ GetInputIDs() [1/2]

std::vector< uint > CardUtil::GetInputIDs ( const QString &  videodevice = QString(),
const QString &  rawtype = QString(),
const QString &  inputname = QString(),
QString  hostname = QString() 
)
static

Returns all inputids of inputs that uses the specified videodevice if specified, and optionally rawtype and a non-local hostname.

The result is ordered from smallest to largest.

Parameters
videodeviceVideo device we want input ids for
rawtypeInput type as used in DB or empty string for any type
inputnameThe name of the input card.
hostnameHost on which device resides, only required if said host is not the localhost

Definition at line 1305 of file cardutil.cpp.

Referenced by SourceUtil::IsCableCardPresent(), and main().

◆ GetInputIDs() [2/2]

std::vector< uint > CardUtil::GetInputIDs ( uint  sourceid)
static

Definition at line 1656 of file cardutil.cpp.

◆ GetInputInfo()

bool CardUtil::GetInputInfo ( InputInfo input,
std::vector< uint > *  groupids = nullptr 
)
static

Definition at line 1698 of file cardutil.cpp.

Referenced by GetInputName(), MainServer::HandleGetFreeInputInfo(), and TVRec::IsBusy().

◆ GetInputList()

std::vector< uint > CardUtil::GetInputList ( void  )
static

Definition at line 2902 of file cardutil.cpp.

Referenced by RemoteGetRecordingStatus().

◆ GetInputName()

QString CardUtil::GetInputName ( uint  inputid)
static

Definition at line 1773 of file cardutil.cpp.

Referenced by main(), and TVRec::TuningGetChanNum().

◆ GetInputTypeNames()

QStringList CardUtil::GetInputTypeNames ( uint  sourceid)
static

Get a list of card input types for a source id.

Parameters
sourceid[in] source id.
Returns
QStringList of card types for that source

Definition at line 370 of file cardutil.cpp.

Referenced by ChannelWizard::ChannelWizard().

◆ GetInputTypes()

CardUtil::InputTypes CardUtil::GetInputTypes ( void  )
static

◆ GetLiveTVInputList()

std::vector< uint > CardUtil::GetLiveTVInputList ( void  )
static

Definition at line 2945 of file cardutil.cpp.

◆ GetMinSignalMonitoringDelay()

std::chrono::milliseconds CardUtil::GetMinSignalMonitoringDelay ( const QString &  device)
static

Definition at line 797 of file cardutil.cpp.

Referenced by DVBChannel::DVBChannel().

◆ GetOrProbeDeliverySystem()

DTVModulationSystem CardUtil::GetOrProbeDeliverySystem ( uint  inputid,
int  fd 
)
static

Definition at line 1091 of file cardutil.cpp.

Referenced by SetDefaultDeliverySystem().

◆ GetQuickTuning()

uint CardUtil::GetQuickTuning ( uint  inputid,
const QString &  input_name 
)
static

Definition at line 2322 of file cardutil.cpp.

Referenced by DTVChannel::GetSuggestedTuningMode().

◆ GetRawInputType()

static QString CardUtil::GetRawInputType ( uint  inputid)
inlinestatic

◆ GetScanableInputTypes()

QString CardUtil::GetScanableInputTypes ( void  )
static

Definition at line 62 of file cardutil.cpp.

Referenced by ScanWizard::SetupConfig().

◆ GetSchedInputList()

std::vector< uint > CardUtil::GetSchedInputList ( void  )
static

Definition at line 2923 of file cardutil.cpp.

Referenced by SchedOptMixin::Load().

◆ GetSourceID()

uint CardUtil::GetSourceID ( uint  inputid)
static

◆ GetStartChannel()

QString CardUtil::GetStartChannel ( uint  inputid)
static

◆ GetTimeouts()

bool CardUtil::GetTimeouts ( uint  inputid,
std::chrono::milliseconds &  signal_timeout,
std::chrono::milliseconds &  channel_timeout 
)
static

◆ GetTunerType()

DTVTunerType CardUtil::GetTunerType ( uint  inputid)
static

Definition at line 850 of file cardutil.cpp.

◆ GetTunerTypeFromMultiplex()

DTVTunerType CardUtil::GetTunerTypeFromMultiplex ( uint  mplexid)
static

Definition at line 874 of file cardutil.cpp.

Referenced by ScanWizard::SetPaneDefaults().

◆ GetV4LInfo() [1/2]

static bool CardUtil::GetV4LInfo ( int  videofd,
QString &  input,
QString &  driver 
)
inlinestatic

Definition at line 436 of file cardutil.h.

◆ GetV4LInfo() [2/2]

bool CardUtil::GetV4LInfo ( int  videofd,
QString &  input,
QString &  driver,
uint32_t &  version,
uint32_t &  capabilities 
)
static

◆ GetValueInt()

static int CardUtil::GetValueInt ( const QString &  col,
uint  inputid 
)
inlinestatic

◆ GetVBIDevice()

static QString CardUtil::GetVBIDevice ( uint  inputid)
inlinestatic

Definition at line 298 of file cardutil.h.

Referenced by SendMythSystemRecEvent().

◆ GetVBoxdesc()

QString CardUtil::GetVBoxdesc ( const QString &  id,
const QString &  ip,
const QString &  tunerNo,
const QString &  tunerType 
)
static

Get a nicely formatted string describing the device.

Definition at line 3185 of file cardutil.cpp.

Referenced by VBoxConfigurationGroup::FillDeviceList(), and V2Capture::GetCaptureDeviceList().

◆ GetVideoDevice()

static QString CardUtil::GetVideoDevice ( uint  inputid)
inlinestatic

◆ GetVideoDevices()

QStringList CardUtil::GetVideoDevices ( const QString &  rawtype,
QString  hostname = QString() 
)
static

Returns the videodevices of the matching inputs, duplicates removed.

Parameters
rawtypeInput type as used in DB or empty string for all inputids
hostnameHost to check, or empty string for current host

Definition at line 398 of file cardutil.cpp.

Referenced by RecordingProfile::CompleteLoad(), VBoxConfigurationGroup::FillDeviceList(), DVBCardNum::fillSelections(), and ASIDevice::fillSelections().

◆ HasDVBCRCBug()

bool CardUtil::HasDVBCRCBug ( const QString &  device)
static

Returns true if and only if the device munges PAT/PMT tables, and then doesn't fix the CRC.

Currently the list of broken DVB hardware and drivers includes: "VLSI VES1x93 DVB-S", and "ST STV0299 DVB-S"

Note: "DST DVB-S" was on this list but has been verified to not mess up the PAT using Linux 2.6.18.1.

Note: "Philips TDA10046H DVB-T" was on this list but has been verified to not mess up the PMT with a recent kernel and firmware (See https://code.mythtv.org/trac/ticket/3541).

Parameters
deviceOpen DVB frontend device file descriptor to be checked
Returns
true iff the device munges tables, so that they fail a CRC check.

Definition at line 790 of file cardutil.cpp.

Referenced by DVBChannel::DVBChannel().

◆ HasTuner()

bool CardUtil::HasTuner ( const QString &  rawtype,
const QString &  device 
)
static

Definition at line 217 of file cardutil.cpp.

Referenced by CardInput::CardInput().

◆ hasV4L2()

bool CardUtil::hasV4L2 ( int  videofd)
static

Definition at line 2343 of file cardutil.cpp.

Referenced by ProbeV4LAudioInputs(), and ProbeV4LVideoInputs().

◆ HDHRdoesDVB()

bool CardUtil::HDHRdoesDVB ( const QString &  device)
static

If the device is valid, check if the model does DVB.

Todo:
Replace with a more general purpose routine - something that gets /sys/features and searches that for particular modulation types. e.g. bool CardUtil::DoesHDHRsupport(const QString &device, const QStringList &modTypes);

Definition at line 3080 of file cardutil.cpp.

Referenced by get_cardtype(), V2Capture::GetCardSubType(), ScanTypeSetting::SetInput(), and ChannelScannerWeb::StartScan().

◆ HDHRdoesDVBC()

bool CardUtil::HDHRdoesDVBC ( const QString &  device)
static

If the device is valid, check if the model does DVB-C.

Definition at line 3106 of file cardutil.cpp.

Referenced by get_cardtype(), V2Capture::GetCardSubType(), ScanTypeSetting::SetInput(), and ChannelScannerWeb::StartScan().

◆ IgnoreEncrypted()

static bool CardUtil::IgnoreEncrypted ( uint  inputid,
const QString &  inputname 
)
static

◆ InputSetMaxRecordings()

bool CardUtil::InputSetMaxRecordings ( uint  parentid,
uint  max_recordings 
)
static

Definition at line 1561 of file cardutil.cpp.

Referenced by CardInput::Save(), and V2Capture::SetInputMaxRecordings().

◆ IsCableCardPresent()

bool CardUtil::IsCableCardPresent ( uint  inputid,
const QString &  inputType 
)
static

◆ IsChannelChangeDiscontinuous()

static bool CardUtil::IsChannelChangeDiscontinuous ( const QString &  rawtype)
inlinestatic

Definition at line 152 of file cardutil.h.

Referenced by LiveTVChain::DoGetNextProgram().

◆ IsChannelReusable()

static bool CardUtil::IsChannelReusable ( const QString &  rawtype)
inlinestatic

Definition at line 222 of file cardutil.h.

Referenced by TVRec::SetupDTVSignalMonitor().

◆ IsDVB()

static bool CardUtil::IsDVB ( uint  inputid)
inlinestatic

Returns true if the input is a DVB input.

Definition at line 401 of file cardutil.h.

◆ IsDVBInputType()

bool CardUtil::IsDVBInputType ( const QString &  inputType)
static

Returns true iff the input_type is one of the DVB types.

Definition at line 1030 of file cardutil.cpp.

Referenced by SignalMonitor::Init().

◆ IsEITCapable()

static bool CardUtil::IsEITCapable ( const QString &  rawtype)
inlinestatic

◆ IsEncoder()

static bool CardUtil::IsEncoder ( const QString &  rawtype)
inlinestatic

◆ IsInNeedOfExternalInputConf()

bool CardUtil::IsInNeedOfExternalInputConf ( uint  inputid)
static

Definition at line 2311 of file cardutil.cpp.

Referenced by CardInput::CardInput().

◆ IsInputTypePresent()

bool CardUtil::IsInputTypePresent ( const QString &  rawtype,
QString  hostname = QString() 
)
static

Returns true if the input type is present and connected to an input.

Parameters
rawtypeInput type as used in DB or empty string for all inputs
hostnameHost to check, or empty string for current host

Definition at line 289 of file cardutil.cpp.

◆ IsSingleInputType()

static bool CardUtil::IsSingleInputType ( const QString &  rawtype)
inlinestatic

Definition at line 212 of file cardutil.h.

Referenced by GetDeviceInputNames(), and ProbeVideoInputs().

◆ IsTunerShared()

bool CardUtil::IsTunerShared ( uint  inputidA,
uint  inputidB 
)
static

Definition at line 242 of file cardutil.cpp.

Referenced by TV::ShowOSDAskAllow().

◆ IsTunerSharingCapable()

static bool CardUtil::IsTunerSharingCapable ( const QString &  rawtype)
inlinestatic

◆ IsTuningAnalog()

static bool CardUtil::IsTuningAnalog ( const QString &  rawtype)
inlinestatic

Definition at line 198 of file cardutil.h.

Referenced by SourceUtil::IsProperlyConnected().

◆ IsTuningDigital()

static bool CardUtil::IsTuningDigital ( const QString &  rawtype)
inlinestatic

Definition at line 190 of file cardutil.h.

Referenced by SourceUtil::IsProperlyConnected().

◆ IsTuningVirtual()

static bool CardUtil::IsTuningVirtual ( const QString &  rawtype)
inlinestatic

Definition at line 205 of file cardutil.h.

Referenced by SourceUtil::IsProperlyConnected().

◆ IsUniqueDisplayName()

bool CardUtil::IsUniqueDisplayName ( const QString &  name,
uint  exclude_inputid 
)
static

Definition at line 1898 of file cardutil.cpp.

Referenced by V2Capture::AddCardInput().

◆ IsUnscanable()

static bool CardUtil::IsUnscanable ( const QString &  rawtype)
inlinestatic

◆ IsV4L()

static bool CardUtil::IsV4L ( const QString &  rawtype)
inlinestatic

◆ LinkInputGroup()

bool CardUtil::LinkInputGroup ( uint  inputid,
uint  inputgroupid 
)
static

◆ OpenVideoDevice() [1/2]

int CardUtil::OpenVideoDevice ( const QString &  device)
static

Definition at line 1241 of file cardutil.cpp.

◆ OpenVideoDevice() [2/2]

int CardUtil::OpenVideoDevice ( int  inputid)
static

◆ ProbeAudioInputs()

QStringList CardUtil::ProbeAudioInputs ( const QString &  device,
const QString &  inputtype = QString() 
)
static

Definition at line 2542 of file cardutil.cpp.

Referenced by TunerCardAudioInput::fillSelections(), and fillSelectionsFromDir().

◆ ProbeBestDeliverySystem()

DTVModulationSystem CardUtil::ProbeBestDeliverySystem ( int  fd)
static

◆ ProbeCurrentDeliverySystem() [1/2]

DTVModulationSystem CardUtil::ProbeCurrentDeliverySystem ( const QString &  device)
static

◆ ProbeCurrentDeliverySystem() [2/2]

DTVModulationSystem CardUtil::ProbeCurrentDeliverySystem ( int  fd_frontend)
static

Definition at line 948 of file cardutil.cpp.

◆ ProbeDefaultDeliverySystem()

QString CardUtil::ProbeDefaultDeliverySystem ( const QString &  device)
static

◆ ProbeDeliverySystems() [1/2]

QStringList CardUtil::ProbeDeliverySystems ( const QString &  device)
static

◆ ProbeDeliverySystems() [2/2]

QStringList CardUtil::ProbeDeliverySystems ( int  fd_frontend)
static

Definition at line 682 of file cardutil.cpp.

◆ ProbeDVBFrontendName()

QString CardUtil::ProbeDVBFrontendName ( const QString &  device)
static

Returns the input type from the video device.

Definition at line 746 of file cardutil.cpp.

Referenced by V2Capture::GetCaptureDeviceList(), GetMinSignalMonitoringDelay(), HasDVBCRCBug(), and DVBConfigurationGroup::probeCard().

◆ ProbeDVBInputs()

QStringList CardUtil::ProbeDVBInputs ( const QString &  device)
staticprivate

Definition at line 2619 of file cardutil.cpp.

Referenced by ProbeVideoInputs().

◆ ProbeDVBType()

QString CardUtil::ProbeDVBType ( const QString &  device)
static

◆ ProbeSubTypeName()

QString CardUtil::ProbeSubTypeName ( uint  inputid)
static

◆ ProbeTunerType() [1/2]

DTVTunerType CardUtil::ProbeTunerType ( const QString &  device)
static

Definition at line 866 of file cardutil.cpp.

◆ ProbeTunerType() [2/2]

DTVTunerType CardUtil::ProbeTunerType ( int  fd_frontend)
static

Definition at line 858 of file cardutil.cpp.

Referenced by ProbeDVBType().

◆ ProbeV4LAudioInputs() [1/2]

QStringList CardUtil::ProbeV4LAudioInputs ( const QString &  device)
staticprivate

Definition at line 2586 of file cardutil.cpp.

◆ ProbeV4LAudioInputs() [2/2]

InputNames CardUtil::ProbeV4LAudioInputs ( int  videofd,
bool ok 
)
static

Definition at line 2417 of file cardutil.cpp.

Referenced by ProbeAudioInputs(), and ProbeV4LAudioInputs().

◆ ProbeV4LVideoInputs() [1/2]

QStringList CardUtil::ProbeV4LVideoInputs ( const QString &  device)
staticprivate

Definition at line 2555 of file cardutil.cpp.

◆ ProbeV4LVideoInputs() [2/2]

InputNames CardUtil::ProbeV4LVideoInputs ( int  videofd,
bool ok 
)
static

◆ ProbeVideoDevices()

QStringList CardUtil::ProbeVideoDevices ( const QString &  rawtype)
static

◆ ProbeVideoInputs()

QStringList CardUtil::ProbeVideoInputs ( const QString &  device,
const QString &  inputtype = QString() 
)
static

Definition at line 2528 of file cardutil.cpp.

◆ SetASIMode()

bool CardUtil::SetASIMode ( uint  device_num,
uint  mode,
QString *  error = nullptr 
)
static

Definition at line 3380 of file cardutil.cpp.

Referenced by ASIStreamHandler::Open().

◆ SetDefaultDeliverySystem()

int CardUtil::SetDefaultDeliverySystem ( uint  inputid,
int  fd 
)
static

Definition at line 1119 of file cardutil.cpp.

◆ SetDeliverySystem() [1/4]

int CardUtil::SetDeliverySystem ( uint  inputid)
static

◆ SetDeliverySystem() [2/4]

int CardUtil::SetDeliverySystem ( uint  inputid,
DTVModulationSystem  delsys 
)
static

Definition at line 1152 of file cardutil.cpp.

◆ SetDeliverySystem() [3/4]

int CardUtil::SetDeliverySystem ( uint  inputid,
DTVModulationSystem  delsys,
int  fd 
)
static

Definition at line 1203 of file cardutil.cpp.

◆ SetDeliverySystem() [4/4]

int CardUtil::SetDeliverySystem ( uint  inputid,
int  fd 
)
static

Definition at line 1186 of file cardutil.cpp.

◆ SetStartChannel()

bool CardUtil::SetStartChannel ( uint  inputid,
const QString &  channum 
)
static

Definition at line 1680 of file cardutil.cpp.

Referenced by checkChannelPresets(), MythPlayer::OpenFile(), and TV::SwitchInputs().

◆ SetValue() [1/2]

static bool CardUtil::SetValue ( const QString &  col,
uint  inputid,
const QString &  val 
)
inlinestatic

Definition at line 313 of file cardutil.h.

◆ SetValue() [2/2]

static bool CardUtil::SetValue ( const QString &  col,
uint  inputid,
int  val 
)
inlinestatic

Definition at line 310 of file cardutil.h.

Referenced by V4LChannel::ChangePictureAttribute().

◆ toInputType()

static INPUT_TYPES CardUtil::toInputType ( const QString &  name)
inlinestatic

◆ TVOnly()

static bool CardUtil::TVOnly ( uint  inputid,
const QString &  inputname 
)
static

◆ UnlinkInputGroup()

bool CardUtil::UnlinkInputGroup ( uint  inputid,
uint  inputgroupid 
)
static

Member Data Documentation

◆ s_videoDeviceCache

QMap< QString, QStringList > CardUtil::s_videoDeviceCache
staticprivate

Definition at line 471 of file cardutil.h.

Referenced by ClearVideoDeviceCache(), and ProbeVideoDevices().


The documentation for this class was generated from the following files: