-
Notifications
You must be signed in to change notification settings - Fork 608
Volume control function is too slow during iHR playing for the request "Alexa, play kiss fm" #553
Comments
Hi boyce-xx, This looks like another manifestation of issue 447. Can you try specifying a short timeout (e.g. 10 milliseconds) in AttachmentReaderSource.cpp's call to read() and let us know if that resolves the issue? Thank you, |
Hi @scotthea-amazon , I noticed the solution was posted 2 months ago, may I know why the solution was not included in SDK V1.5.0 or V1.6.0? I have another question: How can I modify the default volume of MediaPlayer, it will restore the volume to 100(AVS MAX volume) when I re-launch the APP. Thanks. |
Hi boyce-xx, Sorry, but I don't have a good explanation for why a fix did not make it in to 1.5 or 1.6. It seems like it just got lost in the other tasks at hand. As for persisting the volume, that is an interesting issue. I expect you could add persistence for the settings and restore them at start-up. I will add an item to our internal work queue to look in to doing that. Thank you, |
Hi @scotthea-amazon , |
Thanks @boyce-xx. I'll close this issue for now. |
Changes in this update: **Enhancements** * `AuthDelegate` and `AuthServer.py` have been replaced by `CBLAUthDelegate`, which provides a more straightforward path to authorization. * Added a new configuration property called [`cblAuthDelegate`](https://github.com/alexa/avs-device-sdk/blob/master/Integration/AlexaClientSDKConfig.json#L2). This object specifies parameters for `CBLAuthDelegate`. * Added a new configuration property called [`miscDatabase`](https://github.com/alexa/avs-device-sdk/blob/master/Integration/AlexaClientSDKConfig.json#L34), which is a generic key/value database to be used by various components. * Added a new configuration property called [`dcfDelegate`](https://github.com/alexa/avs-device-sdk/blob/master/Integration/AlexaClientSDKConfig.json#L17) This object specifies parameters for `DCFDelegate`. Within this object, values were added for the 'endpoint' and `overridenDcfPublishMessageBody`. 'endpoint' is the endpoint to connect to in order to send device capabilities. `overridenDcfPublishMessageBody`is the message that will get sent out to the Capabilities API. Note: values within the `dcfDelegate` object will only work in `DEBUG` builds. * Added a new configuration property called [`deviceInfo`](https://github.com/alexa/avs-device-sdk/blob/master/Integration/AlexaClientSDKConfig.json#L9) which specifies device-identifying information for use by the Device Capability Framework (DCF), and for authorization (CBLAuthDelegate). * Updated the Directive Sequencer to support wildcard directive handlers. This allows a handler for a given AVS interface to register at the namespace level, rather than specifying the names of all directives within that namespace. * Updated the Raspberry Pi installation script to include `alsasink` in the configuration file. * Added `audioSink` as a configuration option. This allows users to override the audio sink element used in `Gstreamer`. * Added an interface for monitoring internet connection status: `InternetConnectionMonitorInterface.h`. * The Alexa Communications Library (ACL) is no longer required to wait until authorization has succeeded before attempting to connect to AVS. Instead, `HTTP2Transport` handles waiting for authorization to complete. * Added the Device Capabilities Framework (DCF) delegate. Device capabilities can now be sent for each capability interface using DCF publish messages. * The sample app has been updated to send DCF publish messages, which will automatically occur when the sample app starts. Note: a DCF publish message must be successfully sent in order for communication with AVS to occur. * The SDK now supports HTTP PUT messages. * Added support for opt-arg style arguments and multiple configuration files. Now, the sample app can be invoked by either of these commands: `SampleApp <configfile> <debuglevel>` OR `SampleApp -C file1 -C file2 ... -L loglevel`. **Bug Fixes** * Issues [447](#447) and [553](#553) Fixed the `AttachmentRenderSource`'s handling of `BLOCKING` `AttachmentReaders`. * Updated the `Logger` implementation to be more resilient to `nullptr` string inputs. * Fixed a `TimeUtils` utility-related compile issue. * Fixed a bug in which alerts failed to activate if the system was restarted without network connection. * Fixed Android 64-bit build failure issue. **Known Issues** * The `ACL` may encounter issues if audio attachments are received but not consumed. * `SpeechSynthesizerState` currently uses `GAINING_FOCUS` and `LOSING_FOCUS` as a workaround for handling intermediate state. These states may be removed in a future release. * Some ERROR messages may be printed during start-up event if initialization proceeds normally and successfully. * If an unrecoverable authorization error or an unrecoverable DCF error is encountered, the sample app may crash on shutdown. * If a non-CBL `clientId` is included in the `deviceInfo` section of `AlexaClientSDKConfig.json`, the error will be reported as an unrecoverable authorization error, rather than a more specific error.
Hi,
I'm using SDK V1.6.0.
I want to add speaker control function in my product, I noticed that there have a SpeakerManager class to manage the operations like setVolume, adjustVolume or setMute. I encountered a problem when using SpeakerManager to adjust the volume by pressed a physical button: it will take about 13 seconds to finish the adjust operation during iHR playing(Alexa, play KissFM), but it just take about 40 milliseconds during idle or Amazon music playing or iHR playing(Alexa, Play lady gaga station on iHR).
Let me put a portion of the code here to display how did I do it:
If I pressed the volumeDown key on the device during Amazon music playing, the log will like this:
But
If I pressed the volumeDown key on the device during iHR playing(Alexa, play KissFM), the log will like this:
The text was updated successfully, but these errors were encountered: