This project is going to demonstrate how to use KVS Producer and WebRTC on AmebaPro
Amazon FreeRTOS-LTS libraries are supported on AmebaPro now, it can be used to communicate with AWS IoT core easily! Version 202012.00
📘 Amazon Kinesis Video Streams
include two main services, which are Producer and WebRTC
📘 KVS Producer
stream live video from devices to the AWS Cloud, or build applications for batch-oriented video analytics.
📘 KVS WebRTC
enable real-time communication (RTC) across browsers and mobile applications via simple APIs.
📘 FreeRTOS-LTS Libraries
provides feature stability, and security patches and critical bug fixes for two years from release date.
AmebaPro(Producer) + Rekognition(AWS AI) = video cloud storage and content analytics ☁️
1. Stream live video from AmebaPro to KVS 2. AI face detection by using AWS Rekognition API 👉 |
AmebaPro(WebRTC master) + Viewer(WebRTC Client) = real-time communication, 1-way video & 2-way audio
1. AmebaPro start a signaling channel, as a master 2. Browser run as a viewer (client) 3. Start a P2P connection 👉 |
AmebaPro(image uploader) + Rekognition(AWS AI) = object detection and classification ☁️
1. Take a snapshot by camera sensor 2. Upload image from AmebaPro to S3 3. Trigger Lambda function to do object detection 👉 Notes: Based on FreeRTOS-v202012-LTS framework |
AmebaPro can connect to AWS IoT with the long term support libraries maintained by Amazon.
FreeRTOS demos: coreHTTP, coreMQTT, Over-the-air updates(OTA), AWS IoT Device Shadow...
✏️ KVS WebRTC lib_amazon/amazon-kinesis-video-streams-webrtc-sdk-c-for-freertos/main_amebapro
✏️ KVS Producer lib_amazon/amazon-kinesis-video-streams-producer-embedded-c/samples/kvs-amebapro
✏️ S3 file upload project/component/common/application/amazon/JPEG_snapshot_s3_upload_example
✏️ FreeRTOS-LTS lib_amazon/amazon-freertos-202012.00/demos
🔨 IAR Embedded Workbench - IAR Systems
Please use IAR version 8.3
🔨 GCC toolchain
Linux: asdk-6.4.1-linux-newlib-build-3026-x86_64
Cygwin: asdk-6.4.1-cygwin-newlib-build-2778-i686
To check out this repository:
git clone --recurse-submodules https://github.com/ambiot/ambpro1_sdk.git
If you already have a checkout, run the following command to sync submodules recursively:
git submodule update --init --recursive
If there is GCC makefile error like: "No rule to make target …", it may mean that some codes have not been downloaded correctly.
Please run the above command again to download the missing codes.
If there is compile error with shell script in "component/soc/realtek/8195b/misc/gcc_utility/", you may need to run following command
dos2unix component/soc/realtek/8195b/misc/gcc_utility/*