IoT Lab KVS WebRTC Q&A
Audio/Video Support:
Check our official docs for more details.
Check this Workshop: Cross Compile For Other Platforms provided by IoT Lab.
DEFAULT_ROLLING_BUFFER_DURATION_IN_SECONDS * HIGHEST_EXPECTED_BIT_RATE / 8 / DEFAULT_MTU_SIZE). Reduce rolling buffer according to your user cases at Rtp.h, i.e.:
#define DEFAULT_MTU_SIZE 1200
#define DEFAULT_ROLLING_BUFFER_DURATION_IN_SECONDS 1
#define HIGHEST_EXPECTED_BIT_RATE (5 * 1024 * 1024)
#define DEFAULT_SEQ_NUM_BUFFER_SIZE 1000
#define DEFAULT_VALID_INDEX_BUFFER_SIZE 1000
#define DEFAULT_PEER_FRAME_BUFFER_SIZE (5 * 1024)
#define SRTP_AUTH_TAG_OVERHEAD 10
ENABLE_DATA_CHANNEL=OFF to disable it.Check this Workshop: Connect Amazon KVS WebRTC with AWS IoT provided by IoT Lab.
LOG_LEVEL_VERBOSE.This could happen on devices set with incorrect system time. You need to synchronize your system time with UTC via date -s.
KVS WebRTC SDK supports dynamic bitrate/resolution on the fly, since H.264 SPS contains video bitrate/resolution information. If both the encoder and decoder support dynamic video bitrate/resolution, change video bitrate/resolution will work on the fly.
In normal case KVS WebRTC can provide real-time video/audio communication with low latency, if you observed abnormal latency issues:
DEFAULT_ROLLING_BUFFER_DURATION_IN_SECONDS at Rtp.hLOG_LEVEL_ERROR or LOG_LEVEL_SILENT.There are several metrics available on AWS Cloud watch
Signaling:
Those metrics could be used to troubleshoot connection issues.
TURN:
This metrics could be used to track charges.
Alexa provides an interface Alexa.RTCSessionController in Smart Home Skills. By implementing skills with Alexa.RTCSessionController, user could connect Amazon KVS WebRTC with Alexa Echo Show.