Ocean
|
This class implements an Audio class for Android. More...
Public Member Functions | |
MediumRef | clone () const override |
Clones this movie medium and returns a new independent instance of this medium. More... | |
bool | start () override |
Starts the medium. More... | |
bool | pause () override |
Pauses the medium. More... | |
bool | stop () override |
Stops the medium. More... | |
bool | isStarted () const override |
Returns whether the medium is started currently. More... | |
double | duration () const override |
Returns the duration of the finite medium. More... | |
double | normalDuration () const override |
Returns the duration without speed consideration. More... | |
double | position () const override |
Returns the recent position of the finite medium. More... | |
bool | setPosition (const double position) override |
Sets the recent position of the finite medium. More... | |
float | speed () const override |
Returns the speed of the finite medium. More... | |
bool | setSpeed (const float speed) override |
Sets the speed of the finite medium. More... | |
bool | setLoop (const bool value) override |
Sets whether the medium has to be played in a loop. More... | |
float | soundVolume () const override |
Returns the volume of the sound in db. More... | |
bool | soundMute () const override |
Returns whether the sound medium is in a mute state. More... | |
bool | setSoundVolume (const float volume) override |
Sets the volume of the sound in db. More... | |
bool | setSoundMute (const bool mute) override |
Sets or un-sets the sound medium to a mute state. More... | |
Timestamp | startTimestamp () const override |
Returns the start timestamp. More... | |
Timestamp | pauseTimestamp () const override |
Returns the pause timestamp. More... | |
Timestamp | stopTimestamp () const override |
Returns the stop timestamp. More... | |
Public Member Functions inherited from Ocean::Media::Medium | |
const std::string & | url () const |
Returns the url of the medium. More... | |
bool | isValid () const |
Returns whether the medium is valid. More... | |
const std::string & | library () const |
Returns the name of the owner library. More... | |
Type | type () const |
Returns the type of the medium. More... | |
bool | isType (const Type type) const |
Returns whether a medium has a given type. More... | |
bool | isExclusive () const |
Returns whether this medium can be use exclusively. More... | |
Public Member Functions inherited from Ocean::Media::FiniteMedium | |
bool | loop () const |
Returns whether the medium is played in a loop. More... | |
virtual bool | taskFinished () const |
Returns whether a previous task has been finished. More... | |
Public Member Functions inherited from Ocean::Media::SoundMedium | |
bool | hasSound () const |
Returns whether the object holds a sound. More... | |
unsigned int | soundChannels () const |
Returns the number of sound channels. More... | |
SoundFrequency | soundFrequency () const |
Returns the frequency of the sound in Hz. More... | |
unsigned int | soundBitsPerSample () const |
Returns the number of bits per sample. More... | |
unsigned int | preferredSoundChannels () const |
Returns the preferred number of sound channels. More... | |
SoundFrequency | preferredSoundFrequency () const |
Returns the preferred sound frequency in Hz. More... | |
unsigned int | preferredSoundBitsPerSample () const |
Returns the preferred bits per sound sample. More... | |
virtual bool | setPreferredSoundChannels (const unsigned int channels) |
Sets the preferred number of sound channels. More... | |
virtual bool | setPreferredSoundFrequency (const SoundFrequency frequency) |
Sets the preferred sound frequency in Hz. More... | |
virtual bool | setPreferredSoundBitsPerSample (const unsigned int bits) |
Sets the preferred bits per sound sample. More... | |
Protected Member Functions | |
AAudio (const SLEngineItf &slEngineInterface, const std::string &url) | |
Creates a new medium by a given url. More... | |
~AAudio () override | |
Destructs the live video object. More... | |
bool | initialize (const SLEngineItf &slEngineInterface) |
Initializes the audio and all corresponding resources. More... | |
bool | release () |
Releases the audio and all corresponding resources. More... | |
void | callbackFunction (SLPlayItf slCaller, SLuint32 slEvent) |
The callback function for position events. More... | |
Protected Member Functions inherited from Ocean::Media::Android::AMedium | |
AMedium (const std::string &url) | |
Creates a new medium by a given url. More... | |
Protected Member Functions inherited from Ocean::Media::Medium | |
Medium (const Medium &medium)=delete | |
Disabled copy constructor. More... | |
Medium (const std::string &url) | |
Creates a new medium by a given url. More... | |
virtual | ~Medium () |
Destructs a medium. More... | |
Medium & | operator= (const Medium &medium)=delete |
Disabled copy operator. More... | |
Protected Member Functions inherited from Ocean::Media::Audio | |
Audio (const std::string &url) | |
Creates a new audio by a given url. More... | |
Protected Member Functions inherited from Ocean::Media::FiniteMedium | |
FiniteMedium (const std::string &url) | |
Creates a new finite medium by a given url. More... | |
Protected Member Functions inherited from Ocean::Media::SoundMedium | |
SoundMedium (const std::string &url) | |
Creates a new sound medium by a given url. More... | |
Static Protected Member Functions | |
static void | staticCallbackFunction (SLPlayItf slCaller, void *context, SLuint32 slEvent) |
The static callback function for position events. More... | |
Protected Attributes | |
Timestamp | startTimestamp_ = Timestamp(false) |
Start timestamp. More... | |
Timestamp | pauseTimestamp_ = Timestamp(false) |
Pause timestamp. More... | |
Timestamp | stopTimestamp_ = Timestamp(false) |
Stop timestamp. More... | |
SLObjectItf | slPlayer_ = nullptr |
The SL player object. More... | |
SLPlayItf | slPlayInterface_ = nullptr |
The SL player interface. More... | |
SLObjectItf | slOutputMix_ = nullptr |
The SL output mix object. More... | |
SLSeekItf | slSeekInterface_ = nullptr |
The SL seek interface. More... | |
SLVolumeItf | slVolumeInterface_ = nullptr |
The SL volume interface. More... | |
Protected Attributes inherited from Ocean::Media::Medium | |
std::string | url_ |
Url of the medium. More... | |
std::string | libraryName_ |
Name of the owner library. More... | |
bool | isValid_ = false |
Determines whether the medium is valid. More... | |
Type | type_ = MEDIUM |
Type of the medium. More... | |
Lock | lock_ |
Medium lock. More... | |
Protected Attributes inherited from Ocean::Media::FiniteMedium | |
bool | loop_ = false |
Determines whether the medium is played in a loop. More... | |
Protected Attributes inherited from Ocean::Media::SoundMedium | |
SoundType | mediumSoundType |
Actual sound type. More... | |
SoundType | mediumPreferredSoundType |
Preferred sound type. More... | |
Timestamp | mediumSoundTimestamp |
Timestamp of the recent sound frame. More... | |
Timestamp | mediumSoundTypeTimestamp |
Timestamp of the recent sound frame type. More... | |
Friends | |
class | ALibrary |
Additional Inherited Members | |
Public Types inherited from Ocean::Media::Medium | |
enum | Type : uint32_t { MEDIUM = 0u , FRAME_MEDIUM = 1u << 0u , SOUND_MEDIUM = 1u << 1u , FINITE_MEDIUM = 1u << 2u , LIVE_MEDIUM = 1u << 3u , CONFIG_MEDIUM = 1u << 4u , AUDIO = (1u << 5u) | FINITE_MEDIUM | SOUND_MEDIUM , IMAGE = (1u << 6u) | FRAME_MEDIUM , PIXEL_IMAGE = (1u << 7u) | FRAME_MEDIUM , BUFFER_IMAGE = (1u << 8u) | FRAME_MEDIUM , IMAGE_SEQUENCE = (1u << 9u) | FRAME_MEDIUM | FINITE_MEDIUM , LIVE_AUDIO = (1u << 10u) | LIVE_MEDIUM | SOUND_MEDIUM , LIVE_VIDEO = (1u << 11u) | LIVE_MEDIUM | FRAME_MEDIUM , MICROPHONE = (1u << 12u) | LIVE_MEDIUM , MOVIE = (1u << 13u) | FINITE_MEDIUM | FRAME_MEDIUM | SOUND_MEDIUM } |
Definition of different medium types. More... | |
Public Types inherited from Ocean::Media::SoundMedium | |
typedef float | SoundFrequency |
Definition of a sound frequency defined in Hz. More... | |
Static Public Member Functions inherited from Ocean::Media::Android::AMedium | |
static bool | areInterfaceIdsIdentical (const SLInterfaceID &interfaceId0, const SLInterfaceID &interfaceId1) |
Returns whether two interface ids are identical. More... | |
static std::string | toAString (const SLInterfaceID &interfaceId) |
Returns the hex string of an interface id,. More... | |
Static Public Member Functions inherited from Ocean::Media::Medium | |
static std::string | convertType (const Type type) |
Converts a medium type to a unique string. More... | |
static Type | convertType (const std::string &type) |
Converts a medium type string to a medium type. More... | |
Static Public Attributes inherited from Ocean::Media::Android::AMedium | |
static constexpr SLInterfaceID_ | slEffectTypeNoiseSuppressorId_ = {0x58b4b260, 0x8e06, 0x11e0, 0xaa8e, {0x00, 0x02, 0xa5, 0xd5, 0xc5, 0x1b}} |
Definition of the interface for Noise Suppressor (NS). More... | |
static constexpr SLInterfaceID_ | slEffectTypeAcousticEchoCancelerId_ = {0x7b491460, 0x8d4d, 0x11e0, 0xbd61, {0x00, 0x02, 0xa5, 0xd5, 0xc5, 0x1b}} |
Definition of the interface for Acoustic Echo Canceler (AEC). More... | |
Static Public Attributes inherited from Ocean::Media::FiniteMedium | |
static constexpr float | AS_FAST_AS_POSSIBLE = 0.0f |
Definition of a speed value allowing to deliver the media content as fast as possible. More... | |
|
explicitprotected |
Creates a new medium by a given url.
slEngineInterface | The interface of the SL engine, must be valid |
url | Url of the medium |
|
overrideprotected |
Destructs the live video object.
|
protected |
The callback function for position events.
slCaller | The caller of the function |
slEvent | The actual event |
|
overridevirtual |
Clones this movie medium and returns a new independent instance of this medium.
Reimplemented from Ocean::Media::Medium.
|
overridevirtual |
Returns the duration of the finite medium.
Implements Ocean::Media::FiniteMedium.
|
protected |
Initializes the audio and all corresponding resources.
slEngineInterface | The interface of the SL engine, must be valid |
|
overridevirtual |
Returns whether the medium is started currently.
Implements Ocean::Media::Medium.
|
overridevirtual |
Returns the duration without speed consideration.
Implements Ocean::Media::FiniteMedium.
|
overridevirtual |
|
overridevirtual |
Returns the pause timestamp.
Implements Ocean::Media::Medium.
|
overridevirtual |
Returns the recent position of the finite medium.
Implements Ocean::Media::FiniteMedium.
|
protected |
Releases the audio and all corresponding resources.
|
overridevirtual |
Sets whether the medium has to be played in a loop.
Reimplemented from Ocean::Media::FiniteMedium.
|
overridevirtual |
Sets the recent position of the finite medium.
Reimplemented from Ocean::Media::FiniteMedium.
|
overridevirtual |
Sets or un-sets the sound medium to a mute state.
Implements Ocean::Media::SoundMedium.
|
overridevirtual |
Sets the volume of the sound in db.
Implements Ocean::Media::SoundMedium.
|
overridevirtual |
Sets the speed of the finite medium.
Reimplemented from Ocean::Media::FiniteMedium.
|
overridevirtual |
Returns whether the sound medium is in a mute state.
Implements Ocean::Media::SoundMedium.
|
overridevirtual |
Returns the volume of the sound in db.
Implements Ocean::Media::SoundMedium.
|
overridevirtual |
Returns the speed of the finite medium.
Implements Ocean::Media::FiniteMedium.
|
overridevirtual |
|
overridevirtual |
Returns the start timestamp.
Implements Ocean::Media::Medium.
|
staticprotected |
The static callback function for position events.
slCaller | The caller of the function |
context | The callback's context |
slEvent | The actual event |
|
overridevirtual |
|
overridevirtual |
|
friend |
Pause timestamp.
|
protected |
The SL output mix object.
|
protected |
The SL player object.
|
protected |
The SL player interface.
|
protected |
The SL seek interface.
|
protected |
The SL volume interface.
Start timestamp.
Stop timestamp.