Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
IAE Class Referenceabstract

#include <AE.h>

Inheritance diagram for IAE:
ActiveAE::CActiveAE IThreadedAE

Public Member Functions

virtual void Shutdown ()
 
virtual bool Suspend ()=0
 
virtual bool Resume ()=0
 
virtual bool IsSuspended ()
 
virtual float GetVolume ()=0
 
virtual void SetVolume (const float volume)=0
 
virtual void SetMute (const bool enabled)=0
 
virtual bool IsMuted ()=0
 
virtual IAEStreamMakeStream (AEAudioFormat &audioFormat, unsigned int options=0, IAEClockCallback *clock=NULL)=0
 
virtual bool FreeStream (IAEStream *stream, bool finish)=0
 
virtual IAESoundMakeSound (const std::string &file)=0
 
virtual void FreeSound (IAESound *sound)=0
 
virtual void EnumerateOutputDevices (AEDeviceList &devices, bool passthrough)=0
 
virtual bool SupportsRaw (AEAudioFormat &format)
 
virtual bool SupportsSilenceTimeout ()
 
virtual bool HasStereoAudioChannelCount ()
 
virtual bool HasHDAudioChannelCount ()
 
virtual void RegisterAudioCallback (IAudioCallback *pCallback)
 
virtual void UnregisterAudioCallback (IAudioCallback *pCallback)
 
virtual bool SupportsQualityLevel (enum AEQuality level)
 
virtual bool IsSettingVisible (const std::string &settingId)
 
virtual void KeepConfiguration (unsigned int millis)
 
virtual void DeviceChange ()
 
virtual bool GetCurrentSinkFormat (AEAudioFormat &SinkFormat)
 

Protected Member Functions

 IAE ()=default
 
virtual ~IAE ()=default
 
virtual void Start ()=0
 

Detailed Description

IAE Interface

Constructor & Destructor Documentation

◆ IAE()

IAE::IAE ( )
protecteddefault

◆ ~IAE()

virtual IAE::~IAE ( )
protectedvirtualdefault

Member Function Documentation

◆ DeviceChange()

virtual void IAE::DeviceChange ( )
inlinevirtual

Instruct AE to re-initialize, e.g. after ELD change event

Reimplemented in ActiveAE::CActiveAE.

◆ EnumerateOutputDevices()

virtual void IAE::EnumerateOutputDevices ( AEDeviceList devices,
bool  passthrough 
)
pure virtual

Enumerate the supported audio output devices

Parameters
devicesThe device list to append supported devices to
passthroughTrue if only passthrough devices are wanted

Implemented in ActiveAE::CActiveAE.

◆ FreeSound()

virtual void IAE::FreeSound ( IAESound sound)
pure virtual

Free the supplied IAESound object

Parameters
soundThe IAESound object to free

Implemented in ActiveAE::CActiveAE.

◆ FreeStream()

virtual bool IAE::FreeStream ( IAEStream stream,
bool  finish 
)
pure virtual

This method will remove the specifyed stream from the engine. For OSX/IOS this is essential to reconfigure the audio output.

Parameters
streamThe stream to be altered
finishif true AE will switch back to gui sound mode (if this is last stream)
Returns
NULL

Implemented in ActiveAE::CActiveAE.

◆ GetCurrentSinkFormat()

virtual bool IAE::GetCurrentSinkFormat ( AEAudioFormat SinkFormat)
inlinevirtual

Get the current sink data format

Parameters
Currentsink data format. For more details see AEAudioFormat.
Returns
Returns true on success, else false.

Reimplemented in ActiveAE::CActiveAE.

◆ GetVolume()

virtual float IAE::GetVolume ( )
pure virtual

Returns the current master volume level of the AudioEngine

Returns
The volume level between 0.0 and 1.0

Implemented in ActiveAE::CActiveAE.

◆ HasHDAudioChannelCount()

virtual bool IAE::HasHDAudioChannelCount ( )
inlinevirtual

Returns true if the AudioEngine is currently configured for HD audio (more than 5.1)

Returns
true if the AudioEngine is currently configured for HD audio (more than 5.1)

Reimplemented in ActiveAE::CActiveAE.

◆ HasStereoAudioChannelCount()

virtual bool IAE::HasStereoAudioChannelCount ( )
inlinevirtual

Returns true if the AudioEngine is currently configured for stereo audio

Returns
true if the AudioEngine is currently configured for stereo audio

Reimplemented in ActiveAE::CActiveAE.

◆ IsMuted()

virtual bool IAE::IsMuted ( )
pure virtual

Get the current mute state

Returns
The current mute state

Implemented in ActiveAE::CActiveAE.

◆ IsSettingVisible()

virtual bool IAE::IsSettingVisible ( const std::string &  settingId)
inlinevirtual

AE decides whether this settings should be displayed

Returns
true if AudioEngine wants to display this setting

Reimplemented in ActiveAE::CActiveAE.

◆ IsSuspended()

virtual bool IAE::IsSuspended ( )
inlinevirtual

Get the current Suspend() state Used by players to determine if audio is being processed Default is true so players drop audio or pause if engine unloaded

Returns
True if processing suspended

Reimplemented in ActiveAE::CActiveAE.

◆ KeepConfiguration()

virtual void IAE::KeepConfiguration ( unsigned int  millis)
inlinevirtual

Instruct AE to keep configuration for a specified time

Parameters
millistime for which old configuration should be kept

Reimplemented in ActiveAE::CActiveAE.

◆ MakeSound()

virtual IAESound * IAE::MakeSound ( const std::string &  file)
pure virtual

Creates a new IAESound that is ready to play the specified file

Parameters
fileThe WAV file to load, this supports XBMC's VFS
Returns
A new IAESound if the file could be loaded, otherwise NULL

Implemented in ActiveAE::CActiveAE.

◆ MakeStream()

virtual IAEStream * IAE::MakeStream ( AEAudioFormat audioFormat,
unsigned int  options = 0,
IAEClockCallback clock = NULL 
)
pure virtual

Creates and returns a new IAEStream in the format specified, this function should never fail

Parameters
audioFormat
optionsA bit field of stream options (see: enum AEStreamOptions)
Returns
a new IAEStream that will accept data in the requested format

Implemented in ActiveAE::CActiveAE.

◆ RegisterAudioCallback()

virtual void IAE::RegisterAudioCallback ( IAudioCallback pCallback)
inlinevirtual

Reimplemented in ActiveAE::CActiveAE.

◆ Resume()

virtual bool IAE::Resume ( )
pure virtual

Resumes output and re-initializes sink Used to resume output from Suspend() state above

Returns
True if successful

Implemented in ActiveAE::CActiveAE.

◆ SetMute()

virtual void IAE::SetMute ( const bool  enabled)
pure virtual

Set the mute state (does not affect volume level value)

Parameters
enabledThe mute state

Implemented in ActiveAE::CActiveAE.

◆ SetVolume()

virtual void IAE::SetVolume ( const float  volume)
pure virtual

Sets the master volume level of the AudioEngine

Parameters
volumeThe new volume level between 0.0 and 1.0

Implemented in ActiveAE::CActiveAE.

◆ Shutdown()

virtual void IAE::Shutdown ( )
inlinevirtual

Called when the application needs to terminate the engine

Reimplemented in ActiveAE::CActiveAE.

◆ Start()

virtual void IAE::Start ( )
protectedpure virtual

Initializes the AudioEngine, called by CFactory when it is time to initialize the audio engine. Do not call this directly, CApplication will call this when it is ready

Implemented in ActiveAE::CActiveAE.

◆ SupportsQualityLevel()

virtual bool IAE::SupportsQualityLevel ( enum AEQuality  level)
inlinevirtual

Returns true if AudioEngine supports specified quality level

Returns
true if specified quality level is supported, otherwise false

Reimplemented in ActiveAE::CActiveAE.

◆ SupportsRaw()

virtual bool IAE::SupportsRaw ( AEAudioFormat format)
inlinevirtual

Returns true if the AudioEngine supports AE_FMT_RAW streams for use with formats such as IEC61937

See also
CAEPackIEC61937::CAEPackIEC61937()
Returns
true if the AudioEngine is capable of RAW output

Reimplemented in ActiveAE::CActiveAE.

◆ SupportsSilenceTimeout()

virtual bool IAE::SupportsSilenceTimeout ( )
inlinevirtual

Returns true if the AudioEngine supports drain mode which is not streaming silence when idle

Returns
true if the AudioEngine is capable of drain mode

Reimplemented in ActiveAE::CActiveAE.

◆ Suspend()

virtual bool IAE::Suspend ( )
pure virtual

Suspends output and de-initializes sink Used to avoid conflicts with external players or to reduce power consumption

Returns
True if successful

Implemented in ActiveAE::CActiveAE.

◆ UnregisterAudioCallback()

virtual void IAE::UnregisterAudioCallback ( IAudioCallback pCallback)
inlinevirtual

Reimplemented in ActiveAE::CActiveAE.


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