You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
Version 1
Next »
Purpose
- To analyze the amazon voice plugin , explore the architecture, endpoints, configuration parameters. Identify the dependencies & gap
- To analyze the video skill (video catalog) , go through the working principle and dependencies
AVS Plugin
AVS plugin is a thunder plugin developed by metrological/amazon. it supports configurable audio sources and depends on the AVS client SDK.
As of now it only supports general Alexa skills (without any RDK specific skill)
Source code
Source code is hosted in GitHub
https://github.com/WebPlatformForEmbedded/WPEPluginAVS/blob/master
Configurations params
alexaclientconfig | Path to the AlexaClientSDKConfig.json |
smartscreenconfig (optional) | - Path to the SmartScreenSDKConfig.json
- This param will be used only when enablesmartscreen is true
|
kwdmodelspath (optional) | Path to the Keyword Detection (WWE) models which contain localeToModels.json |
audiosource | This can be either portaudio (FFV) or BluetoothRemoteControl (BT) |
enablesmartscreen | Optional, true or false - for Alexa Smart Screen |
enablekwd | Optional, true or false - for WWE |
Methods
Mute
Using this method we can mute the volume coming out of AVS SDK as well we can mute the alerts.
record
Recording voice by Alexa SDK can be toggled on/off. This overrides the hot word detection i.e. if recording is off wake-word will not work.
Notification
dialoguestatechange This notification will come when any state change happens in the Alexa. e.g. when the AVS SDK goes from Idle -> Listening or from Listening -> Thinking -> Speaking
Build dependencies
FindAlexaClientSDK.cmake - For AVS SDK
FindAlexaSmartScreenSDK.cmake - For Smart Screen SDK
FindAsio.cmake - ?
FindGStreamer.cmake - For Gstreamer
FindLibCURL.cmake - For Libcurl
FindPortaudio.cmake - For Port Audio
FindPryonLite.cmake - For Pryon WWE
FindWebsocketpp.cmake - For websocket library
FindYoga.cmake - ?
Gap/Questions
- Recipe files are not available.
- Information on below packages & usage
- Yoga
- Asio
- Pryon Lite
- Information on whether it supports open wake word engines (pryon is not available to all)
- What are the requirement for RDK UI (any reference UI) for interacting with smart screen (interface, API etc.)
- What are requirement for RDK UI to render the display card (text) in UI against each voice command
Video catalog
With the Video Skill API, you can build skills that let customers control their entire video experience by voice.
Customers can control video devices and consume video content without invoking a specific skill. For example, the customer could do the following:
- Start video playback without specifying a provider or device
- Control a specific video device:
- "Alexa, turn on my video device"
- "Alexa, lower the volume on my video device"
The Video Skill API exposes below functionalities:
- Searching and playing content
- Playback controls - Pause, play, rewind, Volume Up/Down
- Turning a video device on or off
- Changing a video device's input (HDMI etc.)
- Launching an app or GUI shortcut
- Recording video content
- Channel navigation
- Video catalog ingestion
Dependency
- Alexa developer account
- AWS account (for lambda)
- OAuth 2.0
- Lambda function can be written using Node.js/Python etc.
Gap/Questions
- Which of the below approach are supported for device end integration
- The skill responses are directly passed to & decision is taken by cloud UI (e.g. metrological UI)
- It should be processed by a native module & then instruction sent to UI
- Any examples to simulate with a dummy operator and other auth fields to verify the video skill end-to-end?
- Under The skill creation steps → Step #2 (Choose a method to host your skill's backend resources) it is mentioned that You can provision your own backend resources or you can have Alexa host them for you. But under that we are getting only 1 option i.e. 'provision your own'
- Unable to create a lambda function via https://console.aws.amazon.com/lambda/home using free tier account