Troubleshooting Guide

leala-amzn edited this page Jun 9, 2018 · 8 revisions

Troubleshooting

Having trouble with the AVS Device SDK? Here's a list of workarounds for common issues reported by AVS developers.

Let us know what we can do to help you by creating a new issue when you run into a problem.

All Platforms

Issue Workaround/Resolution
Playback of Alexa TTS is truncated If you are using the GStreamer-based MediaPlayer, change g_object_set(m_pipeline.audioSink, "sync", FALSE, NULL); to TRUE on line 978. Alternatively, change the sleep duration static const std::chrono::milliseconds SLEEP_AFTER_END_OF_AUDIO{300}; on line 93. Audio timeline synchronization is turned off to account for poor MPEG-TS audio packet timestamping, so you will need to adjust one or more of these values.
The SDK fails to load The AlexaClientSDKConfig.json must reference database files or the SDK will fail to load.
No audio output from the SDK The SDK uses the autoaudiosink element, which automatically selects the best sink to use based on your system's configuration. Step 1). Run this command: gst-launch-1.0 -m audiotestsrc ! autoaudiosink. If the system is working, you will hear a test tone. If the system is not working, you will hear no test tone. -m will help you determine which sink is selected, and allow you to troubleshoot that sink. Example: autoaudiosink0-actual-sink-osxaudio" (tag): GstMessageTag, taglist=(taglist)"taglist\,\ description\=\(string\)\"audiotest\\\ wave\"\;;. In this example, the log suggests that osxaudio is used. Step 2). Run this command gst-launch-1.0 -m audiotestsrc ! alsasink. If you hear a test tone, modify the value on line 589 from m_pipeline.audioSink = gst_element_factory_make("autoaudiosink", "audio_sink"); to m_pipeline.audioSink = gst_element_factory_make("alsasink", "audio_sink");.
The device fails to play Amazon Music, and the following error message is generated: curlEasyPerformFailed:error=Peer certificate cannot be authenticated with given CA certificates If the device doesn't have the correct date you will experience certificate issues when contacting Amazon servers, so you'll need to change the date. To change the date (for example, to Jan 31, 2018): date +%Y%m%d -s "20180131". To change the time: date +%T -s "16:11:00".

Linux

Issue Workaround/Resolution
No sound - Plantronix Speakerbox sudo apt install gstreamer1.0-alsa. Additionally, there is some configuration work that needs to be done. See Issue 212 for details.
Can't play more than one sound simultaneously Install the dmix plugin. See Issue 415 for details.

macOS

Issue Workaround/Resolution
The SDK fails to build because of missing dependencies Sometimes, the brew install command that is run during step 1.2.3 will fail if a dependency is already installed. To get around this issue, run a brew install command for each dependency individually.
SampleApp fails to build because your version of curl doesn't support HTTP/2 It's possible that curl didn't link correctly. To fix this issue, run brew uninstall curl, then repeat the steps in 1.2.2.
AuthServer.py throws this error: File "AuthServer/AuthServer.py", line 67 print 'The file "' + \ SyntaxError: Missing parentheses in call to 'print' This is a known issue with Python 3.x. The workaround is to use Python 2.7.x.

RaspberryPi

Issue Workaround/Resolution
No USB soundcard option The SampleApp uses the default input and output for audio. To use a USB soundcard, install the dsnoop and dmix plugins. Paste this code into .asoundrc, and into asound.conf.
Trouble building with / linking against Kitt.ai This link has some helpful suggestions. You can pass in CXX flags to the SampleApp CMake command like so: -DCMAKE_CXX_FLAGS:STRING="-D_GLIBCXX_USE_CXX11_ABI=0 -pg"

Windows

Issue Workaround/Resolution
The system can't locate libwinpthread-1.dll when running the sample app This means that Windows can't find the library either because it's not installed, or it's not in the path environment variable. To troubleshoot first verify that the library exists, and that it is nested within the proper file path, such as c:/msys64/mingw64/bin.
The sample app hangs at startup, and ~35% of CPU is being used This likely means that Pacman isn't updated. Update Pacman by following the steps in the [Windows Quick Start Guide] (https://github.com/alexa/avs-device-sdk/wiki/https://github.com/alexa/avs-device-sdk/wiki/Windows-Quick-Start-Guide-with-Script#1-install-and-configure-dependencies-for-the-sdk).
Unable to run Windows sample app with GStreamer 1.14 or later GSTreamer 1.14 or later may be missing directsoundsink. As a workaround, delete INetCache in the registry, and restart the sample app. directsoundsink should reappear, and you should be able to run the sample app again. See here for more information.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.