MythTV master
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Attributes | List of all members
V4L2util Class Reference

#include <libmythtv/v4l2util.h>

Collaboration diagram for V4L2util:
[legend]

Public Member Functions

 V4L2util (void)=default
 
 V4L2util (const QString &dev_name)
 
 V4L2util (const QString &dev_name, const QString &vbi_dev_name)
 
 ~V4L2util (void)
 
bool Open (const QString &dev_name, const QString &vbi_dev_name="")
 
void Close (void)
 
int FD (void) const
 
bool operator! (void) const
 
bool IsOpen (void) const
 
bool GetOptions (DriverOption::Options &options)
 
int GetOptionValue (DriverOption::category_t cat, const QString &desc)
 
bool GetFormats (QStringList &formats)
 
bool GetVideoStandard (QString &name) const
 
int GetSignalStrength (void) const
 
bool GetResolution (int &width, int &height) const
 
uint32_t GetCapabilities (void) const
 
QString GetDeviceName (void) const
 
QString GetDriverName (void) const
 
bool HasTuner (void) const
 
bool HasAudioSupport (void) const
 
bool HasStreaming (void) const
 
bool HasSlicedVBI (void) const
 
bool IsEncoder (void) const
 
bool UserAdjustableResolution (void) const
 
QString DriverName (void) const
 
QString CardName (void) const
 
QString ProfileName (void) const
 
int GetStreamType (void) const
 
bool SetStreamType (int value)
 
bool SetVideoAspect (int value)
 
bool SetVideoBitrateMode (int value)
 
bool SetVideoBitrate (int value)
 
bool SetVideoBitratePeak (int value)
 
bool SetResolution (uint32_t width, uint32_t height)
 
bool SetAudioInput (int value)
 
bool SetAudioCodec (int value)
 
bool SetVolume (int volume)
 
bool SetLanguageMode (int mode)
 
bool SetAudioSamplingRate (int value)
 
bool SetAudioBitrateL2 (int value)
 
bool StartEncoding (void)
 
bool StopEncoding (void)
 
bool PauseEncoding (void)
 
bool ResumeEncoding (void)
 

Static Public Member Functions

static QString StreamTypeDesc (int value)
 

Protected Member Functions

bool SetSlicedVBI (VBIMode::vbimode_t vbimode)
 
int GetExtControl (int request, const QString &ctrl_desc="") const
 
bool SetExtControl (int request, int value, const QString &ctrl_desc, const QString &value_desc)
 
bool SetEncoderState (int mode, const QString &desc)
 
void SetDefaultOptions (DriverOption::Options &options)
 
void log_qctrl (struct v4l2_queryctrl &queryctrl, DriverOption &drv_opt, QString &msg)
 
bool log_control (struct v4l2_queryctrl &qctrl, DriverOption &drv_opt, QString &msg)
 
void log_controls (bool show_menus)
 

Static Protected Member Functions

static bool OpenVBI (const QString &vbi_dev_name)
 
static void bitmask_toString (QString &result, uint32_t flags, uint32_t mask, const QString &desc)
 
static QString ctrlflags_toString (uint32_t flags)
 
static QString queryctrl_toString (int type)
 

Private Attributes

int m_fd {-1}
 
int m_vbiFd {-1}
 
DriverOption::Options m_options
 
QString m_deviceName
 
QString m_driverName
 
QString m_cardName
 
int m_version {0}
 
uint32_t m_capabilities {0}
 
bool m_haveQueryExtCtrl {false}
 

Detailed Description

Definition at line 18 of file v4l2util.h.

Constructor & Destructor Documentation

◆ V4L2util() [1/3]

V4L2util::V4L2util ( void  )
default

◆ V4L2util() [2/3]

V4L2util::V4L2util ( const QString &  dev_name)
explicit

Definition at line 18 of file v4l2util.cpp.

◆ V4L2util() [3/3]

V4L2util::V4L2util ( const QString &  dev_name,
const QString &  vbi_dev_name 
)

Definition at line 23 of file v4l2util.cpp.

◆ ~V4L2util()

V4L2util::~V4L2util ( void  )

Definition at line 29 of file v4l2util.cpp.

Member Function Documentation

◆ bitmask_toString()

void V4L2util::bitmask_toString ( QString &  result,
uint32_t  flags,
uint32_t  mask,
const QString &  desc 
)
staticprotected

Definition at line 123 of file v4l2util.cpp.

Referenced by ctrlflags_toString().

◆ CardName()

QString V4L2util::CardName ( void  ) const
inline

Definition at line 51 of file v4l2util.h.

Referenced by CardUtil::GetInputTypes(), and V4L2encGroup::probeCard().

◆ Close()

void V4L2util::Close ( void  )

◆ ctrlflags_toString()

QString V4L2util::ctrlflags_toString ( uint32_t  flags)
staticprotected

Definition at line 134 of file v4l2util.cpp.

Referenced by log_qctrl().

◆ DriverName()

QString V4L2util::DriverName ( void  ) const
inline

◆ FD()

int V4L2util::FD ( void  ) const
inline

Definition at line 28 of file v4l2util.h.

Referenced by MythV4L2M2MContext::GetProfiles().

◆ GetCapabilities()

uint32_t V4L2util::GetCapabilities ( void  ) const

Definition at line 674 of file v4l2util.cpp.

Referenced by MythV4L2M2MContext::GetProfiles().

◆ GetDeviceName()

QString V4L2util::GetDeviceName ( void  ) const

Definition at line 679 of file v4l2util.cpp.

Referenced by MythV4L2M2MContext::GetProfiles().

◆ GetDriverName()

QString V4L2util::GetDriverName ( void  ) const

Definition at line 684 of file v4l2util.cpp.

Referenced by MythV4L2M2MContext::GetProfiles().

◆ GetExtControl()

int V4L2util::GetExtControl ( int  request,
const QString &  ctrl_desc = "" 
) const
protected

Definition at line 716 of file v4l2util.cpp.

Referenced by GetStreamType(), and SetExtControl().

◆ GetFormats()

bool V4L2util::GetFormats ( QStringList &  formats)

Definition at line 510 of file v4l2util.cpp.

◆ GetOptions()

bool V4L2util::GetOptions ( DriverOption::Options options)

Definition at line 537 of file v4l2util.cpp.

Referenced by GetOptionValue().

◆ GetOptionValue()

int V4L2util::GetOptionValue ( DriverOption::category_t  cat,
const QString &  desc 
)

Definition at line 565 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::SetOption().

◆ GetResolution()

bool V4L2util::GetResolution ( int &  width,
int &  height 
) const

◆ GetSignalStrength()

int V4L2util::GetSignalStrength ( void  ) const

◆ GetStreamType()

int V4L2util::GetStreamType ( void  ) const

◆ GetVideoStandard()

bool V4L2util::GetVideoStandard ( QString &  name) const

Definition at line 594 of file v4l2util.cpp.

◆ HasAudioSupport()

bool V4L2util::HasAudioSupport ( void  ) const

◆ HasSlicedVBI()

bool V4L2util::HasSlicedVBI ( void  ) const

Definition at line 118 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::HasSlicedVBI(), and V4L2encGroup::probeCard().

◆ HasStreaming()

bool V4L2util::HasStreaming ( void  ) const

Definition at line 94 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::StartEncoding().

◆ HasTuner()

bool V4L2util::HasTuner ( void  ) const

◆ IsEncoder()

bool V4L2util::IsEncoder ( void  ) const

Definition at line 699 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Open().

◆ IsOpen()

bool V4L2util::IsOpen ( void  ) const
inline

◆ log_control()

bool V4L2util::log_control ( struct v4l2_queryctrl &  qctrl,
DriverOption drv_opt,
QString &  msg 
)
protected

Definition at line 354 of file v4l2util.cpp.

Referenced by GetOptions().

◆ log_controls()

void V4L2util::log_controls ( bool  show_menus)
protected

◆ log_qctrl()

void V4L2util::log_qctrl ( struct v4l2_queryctrl &  queryctrl,
DriverOption drv_opt,
QString &  msg 
)
protected

Definition at line 193 of file v4l2util.cpp.

Referenced by log_control().

◆ Open()

bool V4L2util::Open ( const QString &  dev_name,
const QString &  vbi_dev_name = "" 
)

◆ OpenVBI()

bool V4L2util::OpenVBI ( const QString &  vbi_dev_name)
staticprotected

Definition at line 1215 of file v4l2util.cpp.

Referenced by Open().

◆ operator!()

bool V4L2util::operator! ( void  ) const
inline

Definition at line 30 of file v4l2util.h.

◆ PauseEncoding()

bool V4L2util::PauseEncoding ( void  )

Definition at line 1205 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::StopEncoding().

◆ ProfileName()

QString V4L2util::ProfileName ( void  ) const
inline

Definition at line 52 of file v4l2util.h.

Referenced by RecordingProfile::loadByType().

◆ queryctrl_toString()

QString V4L2util::queryctrl_toString ( int  type)
staticprotected

Definition at line 162 of file v4l2util.cpp.

Referenced by log_qctrl().

◆ ResumeEncoding()

bool V4L2util::ResumeEncoding ( void  )

Definition at line 1210 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::StartEncoding().

◆ SetAudioBitrateL2()

bool V4L2util::SetAudioBitrateL2 ( int  value)

Definition at line 1120 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetAudioCodec()

bool V4L2util::SetAudioCodec ( int  value)

Definition at line 951 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetAudioInput()

bool V4L2util::SetAudioInput ( int  value)

Definition at line 926 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetAudioSamplingRate()

bool V4L2util::SetAudioSamplingRate ( int  value)

Definition at line 1083 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetDefaultOptions()

void V4L2util::SetDefaultOptions ( DriverOption::Options options)
protected

Definition at line 428 of file v4l2util.cpp.

Referenced by GetOptions().

◆ SetEncoderState()

bool V4L2util::SetEncoderState ( int  mode,
const QString &  desc 
)
protected

Definition at line 1176 of file v4l2util.cpp.

Referenced by PauseEncoding(), ResumeEncoding(), StartEncoding(), and StopEncoding().

◆ SetExtControl()

bool V4L2util::SetExtControl ( int  request,
int  value,
const QString &  ctrl_desc,
const QString &  value_desc 
)
protected

◆ SetLanguageMode()

bool V4L2util::SetLanguageMode ( int  mode)

Definition at line 1030 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::SetLanguageMode().

◆ SetResolution()

bool V4L2util::SetResolution ( uint32_t  width,
uint32_t  height 
)

Definition at line 890 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetSlicedVBI()

bool V4L2util::SetSlicedVBI ( VBIMode::vbimode_t  vbimode)
protected

Definition at line 1220 of file v4l2util.cpp.

◆ SetStreamType()

bool V4L2util::SetStreamType ( int  value)

Definition at line 820 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetVideoAspect()

bool V4L2util::SetVideoAspect ( int  value)

Definition at line 834 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ SetVideoBitrate()

bool V4L2util::SetVideoBitrate ( int  value)

◆ SetVideoBitrateMode()

bool V4L2util::SetVideoBitrateMode ( int  value)

◆ SetVideoBitratePeak()

bool V4L2util::SetVideoBitratePeak ( int  value)

◆ SetVolume()

bool V4L2util::SetVolume ( int  volume)

Definition at line 995 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure().

◆ StartEncoding()

bool V4L2util::StartEncoding ( void  )

Definition at line 1195 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::StartEncoding().

◆ StopEncoding()

bool V4L2util::StopEncoding ( void  )

Definition at line 1200 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::StopEncoding().

◆ StreamTypeDesc()

QString V4L2util::StreamTypeDesc ( int  value)
static

Definition at line 779 of file v4l2util.cpp.

Referenced by V4L2encStreamHandler::Configure(), GetStreamType(), and SetStreamType().

◆ UserAdjustableResolution()

bool V4L2util::UserAdjustableResolution ( void  ) const

Member Data Documentation

◆ m_capabilities

uint32_t V4L2util::m_capabilities {0}
private

Definition at line 108 of file v4l2util.h.

Referenced by GetCapabilities(), HasAudioSupport(), HasSlicedVBI(), HasStreaming(), HasTuner(), and Open().

◆ m_cardName

QString V4L2util::m_cardName
private

Definition at line 106 of file v4l2util.h.

Referenced by Open().

◆ m_deviceName

QString V4L2util::m_deviceName
private

Definition at line 104 of file v4l2util.h.

Referenced by GetDeviceName(), and Open().

◆ m_driverName

QString V4L2util::m_driverName
private

Definition at line 105 of file v4l2util.h.

Referenced by GetDriverName(), Open(), and UserAdjustableResolution().

◆ m_fd

int V4L2util::m_fd {-1}
private

◆ m_haveQueryExtCtrl

bool V4L2util::m_haveQueryExtCtrl {false}
private

Definition at line 109 of file v4l2util.h.

Referenced by Open().

◆ m_options

DriverOption::Options V4L2util::m_options
private

Definition at line 103 of file v4l2util.h.

Referenced by Close(), GetOptions(), and GetOptionValue().

◆ m_vbiFd

int V4L2util::m_vbiFd {-1}
private

Definition at line 102 of file v4l2util.h.

Referenced by SetSlicedVBI().

◆ m_version

int V4L2util::m_version {0}
private

Definition at line 107 of file v4l2util.h.

Referenced by Open().


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