AudioOutputSettings Class Reference

#include <audiooutputsettings.h>

List of all members.

Public Member Functions

 AudioOutputSettings (bool invalid=false)
 ~AudioOutputSettings ()
AudioOutputSettingsoperator= (const AudioOutputSettings &)
AudioOutputSettingsGetCleaned (bool newcopy=false)
 Returns capabilities supported by the audio device amended to take into account the digital audio options (AC3 and DTS) Warning: do not call it twice in a row, will lead to invalid settings.
AudioOutputSettingsGetUsers (bool newcopy=false)
 Returns capabilities supported by the audio device amended to take into account the digital audio options (AC3 and DTS) as well as the user settings If newcopy = false, assume GetCleaned was called before hand.
int GetNextRate ()
void AddSupportedRate (int rate)
bool IsSupportedRate (int rate)
int NearestSupportedRate (int rate)
int BestSupportedRate ()
AudioFormat GetNextFormat ()
void AddSupportedFormat (AudioFormat format)
bool IsSupportedFormat (AudioFormat format)
AudioFormat BestSupportedFormat ()
void AddSupportedChannels (int channels)
bool IsSupportedChannels (int channels)
int BestSupportedChannels ()
void setPassthrough (int val)
int canPassthrough ()
bool canFeature (DigitalFeature arg)
 return DigitalFeature mask.
bool canFeature (unsigned int arg)
bool canAC3 ()
 return true if device can or may support AC3 (deprecated, see canFeature())
bool canDTS ()
 return true if device can or may support DTS (deprecated, see canFeature())
bool canLPCM ()
 return true if device supports multichannels PCM (deprecated, see canFeature())
bool IsInvalid ()
 return true if class instance is marked invalid.
void setFeature (DigitalFeature arg)
 set the provided digital feature possible values are:

  • FEATURE_AC3
  • FEATURE_DTS
  • FEATURE_LPCM
  • FEATURE_EAC3
  • FEATURE_TRUEHD
  • FEATURE_DTSHD

void setFeature (unsigned int arg)
void setFeature (bool val, DigitalFeature arg)
 clear or set digital feature internal mask
void SetBestSupportedChannels (int channels)
 Force set the greatest number of channels supported by the audio device.
int GetMaxHDRate ()
 return the highest iec958 rate supported.
QString FeaturesToString (DigitalFeature arg)
 Display in human readable form the digital features supported by the output device.
QString FeaturesToString (void)

Static Public Member Functions

static int FormatToBits (AudioFormat format)
static const char * FormatToString (AudioFormat format)
static int SampleSize (AudioFormat format)
static QString GetPassthroughParams (int codec, int codec_profile, int &samplerate, int &channels, bool canDTSHDMA)
 Setup samplerate and number of channels for passthrough.

Private Member Functions

void SortSupportedChannels ()

Private Attributes

int m_passthrough
 passthrough status -1 : no 0: unknown 1: yes
unsigned int m_features
bool m_invalid
bool m_has_eld
 will be set to true if we were able to retrieve the device ELD (EDID like Data).
vector< int > m_sr
vector< int > m_rates
vector< int > m_channels
vector< AudioFormatm_sf
vector< AudioFormatm_formats
vector< int >::iterator m_sr_it
vector< AudioFormat >::iterator m_sf_it

Detailed Description

Definition at line 50 of file audiooutputsettings.h.


Constructor & Destructor Documentation

AudioOutputSettings::AudioOutputSettings ( bool  invalid = false  ) 

Definition at line 23 of file audiooutputsettings.cpp.

AudioOutputSettings::~AudioOutputSettings (  ) 

Definition at line 35 of file audiooutputsettings.cpp.


Member Function Documentation

AudioOutputSettings & AudioOutputSettings::operator= ( const AudioOutputSettings rhs  ) 

Definition at line 44 of file audiooutputsettings.cpp.

AudioOutputSettings * AudioOutputSettings::GetCleaned ( bool  newcopy = false  ) 

Returns capabilities supported by the audio device amended to take into account the digital audio options (AC3 and DTS) Warning: do not call it twice in a row, will lead to invalid settings.

Definition at line 270 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::GetOutputSettingsCleaned(), and GetUsers().

AudioOutputSettings * AudioOutputSettings::GetUsers ( bool  newcopy = false  ) 

Returns capabilities supported by the audio device amended to take into account the digital audio options (AC3 and DTS) as well as the user settings If newcopy = false, assume GetCleaned was called before hand.

Definition at line 322 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::GetOutputSettingsUsers().

int AudioOutputSettings::GetNextRate (  ) 
void AudioOutputSettings::AddSupportedRate ( int  rate  ) 
bool AudioOutputSettings::IsSupportedRate ( int  rate  ) 

Definition at line 81 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::CanPassthrough(), and GetCleaned().

int AudioOutputSettings::NearestSupportedRate ( int  rate  ) 

Definition at line 102 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::Reconfigure().

int AudioOutputSettings::BestSupportedRate (  ) 

Definition at line 95 of file audiooutputsettings.cpp.

Referenced by AudioTestThread::AudioTestThread().

AudioFormat AudioOutputSettings::GetNextFormat (  ) 
void AudioOutputSettings::AddSupportedFormat ( AudioFormat  format  ) 
bool AudioOutputSettings::IsSupportedFormat ( AudioFormat  format  ) 

Definition at line 137 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::CanPassthrough(), and GetCleaned().

AudioFormat AudioOutputSettings::BestSupportedFormat (  ) 
int AudioOutputSettings::FormatToBits ( AudioFormat  format  )  [static]
const char * AudioOutputSettings::FormatToString ( AudioFormat  format  )  [static]

Definition at line 173 of file audiooutputsettings.cpp.

Referenced by AddSupportedFormat(), and AudioOutputBase::Reconfigure().

int AudioOutputSettings::SampleSize ( AudioFormat  format  )  [static]
void AudioOutputSettings::AddSupportedChannels ( int  channels  ) 
bool AudioOutputSettings::IsSupportedChannels ( int  channels  ) 
int AudioOutputSettings::BestSupportedChannels (  ) 
void AudioOutputSettings::setPassthrough ( int  val  )  [inline]
int AudioOutputSettings::canPassthrough (  )  [inline]
bool AudioOutputSettings::canFeature ( DigitalFeature  arg  )  [inline]

return DigitalFeature mask.

possible values are:

  • FEATURE_AC3
  • FEATURE_DTS
  • FEATURE_LPCM
  • FEATURE_EAC3
  • FEATURE_TRUEHD
  • FEATURE_DTSHD

Definition at line 87 of file audiooutputsettings.h.

Referenced by AudioOutputBase::CanPassthrough(), GetMaxHDRate(), GetUsers(), AudioOutputBase::Reconfigure(), AudioOutputBase::SetupPassthrough(), TestDigitalFeature(), and AudioConfigSettings::UpdateCapabilities().

bool AudioOutputSettings::canFeature ( unsigned int  arg  )  [inline]

Definition at line 89 of file audiooutputsettings.h.

bool AudioOutputSettings::canAC3 (  )  [inline]

return true if device can or may support AC3 (deprecated, see canFeature())

Definition at line 96 of file audiooutputsettings.h.

Referenced by AudioOutput::GetAudioDeviceConfig().

bool AudioOutputSettings::canDTS (  )  [inline]

return true if device can or may support DTS (deprecated, see canFeature())

Definition at line 101 of file audiooutputsettings.h.

Referenced by AudioOutput::GetAudioDeviceConfig().

bool AudioOutputSettings::canLPCM (  )  [inline]

return true if device supports multichannels PCM (deprecated, see canFeature())

Definition at line 106 of file audiooutputsettings.h.

Referenced by AudioConfigSettings::AudioAdvanced(), and AudioOutput::GetAudioDeviceConfig().

bool AudioOutputSettings::IsInvalid (  )  [inline]

return true if class instance is marked invalid.

if true, you can not assume any of the other method returned values are valid

Definition at line 112 of file audiooutputsettings.h.

Referenced by AudioConfigSettings::AudioConfigSettings(), AudioConfigSettings::AudioRescan(), AudioConfigSettings::CheckPassthrough(), and AudioOutput::GetAudioDeviceConfig().

void AudioOutputSettings::setFeature ( DigitalFeature  arg  )  [inline]

set the provided digital feature possible values are:

  • FEATURE_AC3
  • FEATURE_DTS
  • FEATURE_LPCM
  • FEATURE_EAC3
  • FEATURE_TRUEHD
  • FEATURE_DTSHD

Definition at line 124 of file audiooutputsettings.h.

Referenced by GetCleaned(), GetUsers(), and AudioConfigSettings::UpdateCapabilities().

void AudioOutputSettings::setFeature ( unsigned int  arg  )  [inline]

Definition at line 125 of file audiooutputsettings.h.

void AudioOutputSettings::setFeature ( bool  val,
DigitalFeature  arg 
)

clear or set digital feature internal mask

Definition at line 256 of file audiooutputsettings.cpp.

void AudioOutputSettings::SetBestSupportedChannels ( int  channels  ) 

Force set the greatest number of channels supported by the audio device.

Definition at line 237 of file audiooutputsettings.cpp.

Referenced by GetUsers(), and AudioConfigSettings::UpdateCapabilities().

int AudioOutputSettings::GetMaxHDRate (  ) 

return the highest iec958 rate supported.

return 0 if no HD rate are supported

Definition at line 379 of file audiooutputsettings.cpp.

Referenced by AudioPlayer::GetMaxHDRate(), and AudioOutputBase::SetupPassthrough().

QString AudioOutputSettings::FeaturesToString ( DigitalFeature  arg  ) 

Display in human readable form the digital features supported by the output device.

Definition at line 395 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::Reconfigure().

QString AudioOutputSettings::FeaturesToString ( void   )  [inline]

Definition at line 149 of file audiooutputsettings.h.

Referenced by FeaturesToString().

QString AudioOutputSettings::GetPassthroughParams ( int  codec,
int  codec_profile,
int &  samplerate,
int &  channels,
bool  canDTSHDMA 
) [static]

Setup samplerate and number of channels for passthrough.

Definition at line 427 of file audiooutputsettings.cpp.

Referenced by AudioOutputBase::SetupPassthrough().

void AudioOutputSettings::SortSupportedChannels (  )  [private]

Definition at line 230 of file audiooutputsettings.cpp.


Member Data Documentation

passthrough status -1 : no 0: unknown 1: yes

Definition at line 167 of file audiooutputsettings.h.

Referenced by GetCleaned(), and operator=().

unsigned int AudioOutputSettings::m_features [private]

Definition at line 169 of file audiooutputsettings.h.

Referenced by operator=(), and setFeature().

Definition at line 171 of file audiooutputsettings.h.

Referenced by GetCleaned(), GetUsers(), and operator=().

will be set to true if we were able to retrieve the device ELD (EDID like Data).

ELD contains information about the audio processing capabilities of the device connected to the audio card ELD is usually retrieve from EDID CEA-861-E extension.

Definition at line 178 of file audiooutputsettings.h.

Referenced by operator=().

vector<int> AudioOutputSettings::m_sr [private]
vector<int> AudioOutputSettings::m_rates [private]
vector<int> AudioOutputSettings::m_channels [private]
vector<int>::iterator AudioOutputSettings::m_sr_it [private]

Definition at line 182 of file audiooutputsettings.h.

Referenced by AudioOutputSettings(), GetNextRate(), and operator=().

vector<AudioFormat>::iterator AudioOutputSettings::m_sf_it [private]

Definition at line 183 of file audiooutputsettings.h.

Referenced by AudioOutputSettings(), GetNextFormat(), and operator=().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends
Generated on Sat Feb 11 06:41:49 2012 for MythTV by  doxygen 1.6.3