AlexaClientSDK  1.22.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Static Public Member Functions | List of all members
alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory Class Reference

#include <CustomApplicationAudioPipelineFactory.h>

Inheritance diagram for alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory:
Collaboration graph
[legend]

Public Member Functions

ApplicationAudioPipelineFactoryInterface
std::shared_ptr< avsCommon::sdkInterfaces::ApplicationMediaInterfacescreateApplicationMediaInterfaces (const std::string &name, bool equalizerAvailable, bool enableLiveMode, bool isCaptionable, avsCommon::sdkInterfaces::ChannelVolumeInterface::Type channelVolumeType, std::function< int8_t(int8_t)> volumeCurve) override
 
std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::PooledApplicationMediaInterfacescreatePooledApplicationMediaInterfaces (const std::string &name, int numMediaPlayers, bool equalizerAvailable, bool enableLiveMode, bool isCaptionable, avsCommon::sdkInterfaces::ChannelVolumeInterface::Type channelVolumeType, std::function< int8_t(int8_t)> volumeCurve) override
 
- Public Member Functions inherited from alexaClientSDK::acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface
virtual ~ApplicationAudioPipelineFactoryInterface ()=default
 

Static Public Member Functions

static std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterfacecreate (const std::shared_ptr< avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface > &channelVolumeFactory, const std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > &speakerManager, const std::shared_ptr< acsdkEqualizerInterfaces::EqualizerRuntimeSetupInterface > &equalizerRuntimeSetup, const std::shared_ptr< avsCommon::sdkInterfaces::HTTPContentFetcherInterfaceFactoryInterface > &httpContentFetcherFactory, const std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > &shutdownNotifier, const std::shared_ptr< captions::CaptionManagerInterface > &captionManager)
 

Detailed Description

Factory to create media players and related interfaces for custom media players.

Custom media players must implement createCustomMediaPlayer(), defined below in the alexaClientSDK namespace.

Member Function Documentation

◆ create()

std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface > alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory::create ( const std::shared_ptr< avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface > &  channelVolumeFactory,
const std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > &  speakerManager,
const std::shared_ptr< acsdkEqualizerInterfaces::EqualizerRuntimeSetupInterface > &  equalizerRuntimeSetup,
const std::shared_ptr< avsCommon::sdkInterfaces::HTTPContentFetcherInterfaceFactoryInterface > &  httpContentFetcherFactory,
const std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > &  shutdownNotifier,
const std::shared_ptr< captions::CaptionManagerInterface > &  captionManager 
)
static

Creates a new instance of ApplicationAudioPipelineFactoryInterface.

Parameters
channelVolumeFactoryThe ChannelVolumeFactoryInterface to use for creating channel volume interfaces.
speakerManagerInterfaceThe SpeakerManagerInterface with which to register speakers.
equalizerRuntimeSetupThe EqualizerRuntimeSetupInterface with which to register equalizers.
httpContentFetcherFactoryThe HTTPContentFetcherInterfaceFactoryInterface to fetch remote http content.
shutdownNotifierThe ShutdownNotifierInterface to notify created media players of shutdown.
captionManagerThe CaptionManagerInterface to add captionable media sources.
Returns
A new ApplicationAudioPipelineFactoryInterface for custom media players.

◆ createApplicationMediaInterfaces()

std::shared_ptr< avsCommon::sdkInterfaces::ApplicationMediaInterfaces > alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory::createApplicationMediaInterfaces ( const std::string &  name,
bool  equalizerAvailable,
bool  enableLiveMode,
bool  isCaptionable,
avsCommon::sdkInterfaces::ChannelVolumeInterface::Type  channelVolumeType,
std::function< int8_t(int8_t)>  volumeCurve 
)
overridevirtual

Creates a new ApplicationMediaInterfaces struct of related application media interfaces.

Parameters
nameThe name of this media player.
equalizerAvailableWhether an equalizer is available for this media player. If equalizers are enabled in SDK configuration, the equalizer will be added to the EqualizerRuntimeSetup.
enableLiveModeWhether live mode is enabled for this media player.
isCaptionableWhether this media player is a source for captions.
channelVolumeTypeOptional ChannelVolumeType of the speaker. Default is AVS_SPEAKER_VOLUME.
volumeCurveOptional channel volume curve to be used for channel volume attenuation.
Returns
A new ApplicationMediaInterfaces struct, including media player and other interfaces.

Implements alexaClientSDK::acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface.

◆ createPooledApplicationMediaInterfaces()

std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::PooledApplicationMediaInterfaces > alexaClientSDK::acsdkCustomApplicationAudioPipelineFactory::CustomApplicationAudioPipelineFactory::createPooledApplicationMediaInterfaces ( const std::string &  name,
int  numMediaPlayers,
bool  equalizerAvailable,
bool  enableLiveMode,
bool  isCaptionable,
avsCommon::sdkInterfaces::ChannelVolumeInterface::Type  channelVolumeType,
std::function< int8_t(int8_t)>  volumeCurve 
)
overridevirtual

Creates a new PooledApplicationMediaInterfaces struct of multiple media players and related interfaces.

Parameters
nameThe name of these media players for logging purposes.
numMediaPlayersThe number of media players to create.
equalizerAvailableWhether an equalizer is available. If equalizers are enabled in SDK configuration, the equalizers will be added to the EqualizerRuntimeSetup.
enableLiveModeWhether live mode is enabled for these players.
isCaptionableWhether these players are a source for captions.
channelVolumeTypeOptional ChannelVolumeType of the speakers. Default is AVS_SPEAKER_VOLUME.
volumeCurveOptional channel volume curve to be used for channel volume attenuation.
Returns
A new PooledApplicationMediaInterfaces struct, including media players and other interfaces.

Implements alexaClientSDK::acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface.


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

AlexaClientSDK 1.22.0 - Copyright 2016-2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0