Closed gi12345 closed 1 year ago
Have you tried clean building? I am not sure what your older version was but our SDK went through significant folder restructuring between 2.1.0 and 3.0.0.
Yes. It is a completely new clean build. It was built with the KVS SDK from June17,2022. The build machine is an AWS-EC2 with OS Ubuntu-20 LTS ARM64 preinstalled by AWS on EC2.
These are the exact build steps: sudo apt install libssl-dev sudo apt install libcurl4-openssl-dev sudo apt install libgstreamer1.0-dev sudo apt install libgstreamer-plugins-base1.0-dev sudo apt install gstreamer1.0-plugins-base-apps sudo apt install gstreamer1.0-plugins-bad sudo apt install gstreamer1.0-plugins-good sudo apt install gstreamer1.0-plugins-ugly sudo apt install gstreamer1.0-tools
mkdir ~/kvssdk_jun17 cd ~/kvssdk_jun17 git clone https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp.git
cd amazon-kinesis-video-streams-producer-sdk-cpp
export GST_PLUGIN_PATH=pwd
export LD_LIBRARY_PATH=pwd
/open-source/local/lib
mkdir build
cd build
cmake .. -DBUILD_GSTREAMER_PLUGIN=ON -DBUILD_DEPENDENCIES=ON >result1 2>&1 make >result2 2>&1
Can you please place the cert file here: /etc/ssl/cert.pem
and try again? Make sure the location is correct.
-----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk 6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE-----
The cert file /etc/ssl/cert.pem sits at this location. The output is as above.
Is there a file here: /etc/ssl/certs/ca-certificates.crt
no
Can you create one there just try a symlink to /etc/ssl/cert.pem
?
I added the softlink. Runs further now but seems to encounter error 0x52000014:
[INFO ] [27-06-2022 21:01:29:944.941 GMT] createKinesisVideoClient(): Creating Kinesis Video Client [INFO ] [27-06-2022 21:01:29:945.244 GMT] heapInitialize(): Initializing native heap with limit size 8388608, spill ratio 0% and flags 0x00000001 [INFO ] [27-06-2022 21:01:29:945.316 GMT] heapInitialize(): Creating AIV heap. [INFO ] [27-06-2022 21:01:29:945.439 GMT] heapInitialize(): Heap is initialized OK [DEBUG] [27-06-2022 21:01:29:945.900 GMT] getSecurityTokenHandler invoked [DEBUG] [27-06-2022 21:01:29:946.110 GMT] Refreshing credentials. Force refreshing: 0 Now time is: 1656363689945990312 Expiration: 0 [INFO ] [27-06-2022 21:01:29:946.197 GMT] New credentials expiration is 1656367289 [INFO ] [27-06-2022 21:01:29:946.371 GMT] createDeviceResultEvent(): Create device result event. [DEBUG] [27-06-2022 21:01:29:946.480 GMT] clientReadyHandler invoked xxx-gi kinesis_video_init Using IOT credentials Point99 [DEBUG] [27-06-2022 21:01:29:946.875 GMT] Client is ready
xxx-gi kinesis_video_stream_init. Point-1 xxx-gi kinesis_video_stream_init. Point-2 xxx-gi kinesis_video_stream_init. Point-3 *** [INFO ] [27-06-2022 21:01:29:947.471 GMT] Creating Kinesis Video Stream 1C825919603C [INFO ] [27-06-2022 21:01:29:948.839 GMT] createKinesisVideoStream(): Creating Kinesis Video Stream. [INFO ] [27-06-2022 21:01:29:948.910 GMT] logStreamInfo(): SDK version: 70f74f14cf27b09f71dc1889f36eb6e04cdd90a8 [DEBUG] [27-06-2022 21:01:29:948.952 GMT] logStreamInfo(): Kinesis Video Stream Info [DEBUG] [27-06-2022 21:01:29:949.021 GMT] logStreamInfo(): Stream name: 1C825919603C path : /sdcard/2022/05/06/local.idx [DEBUG] [27-06-2022 21:01:29:949.097 GMT] logStreamInfo(): Streaming type: STREAMING_TYPE_REALTIME [DEBUG] [27-06-2022 21:01:29:949.180 GMT] logStreamInfo(): Content type: video/h264 [DEBUG] [27-06-2022 21:01:29:949.255 GMT] logStreamInfo(): Max latency (100ns): 300000000 [DEBUG] [27-06-2022 21:01:29:949.325 GMT] logStreamInfo(): Fragment duration (100ns): 50000000 [DEBUG] [27-06-2022 21:01:29:949.394 GMT] logStreamInfo(): Key frame fragmentation: No [DEBUG] [27-06-2022 21:01:29:949.497 GMT] logStreamInfo(): Use frame timecode: Yes [DEBUG] [27-06-2022 21:01:29:949.567 GMT] logStreamInfo(): Absolute frame timecode: No [DEBUG] [27-06-2022 21:01:29:949.683 GMT] logStreamInfo(): Nal adaptation flags: 0 [DEBUG] [27-06-2022 21:01:29:949.781 GMT] logStreamInfo(): Average bandwith (bps): 4194304 [DEBUG] [27-06-2022 21:01:29:949.851 GMT] logStreamInfo(): Framerate: 20 [DEBUG] [27-06-2022 21:01:29:949.917 GMT] logStreamInfo(): Buffer duration (100ns): 300000000 [DEBUG] [27-06-2022 21:01:29:949.986 GMT] logStreamInfo(): Replay duration (100ns): 300000000 [DEBUG] [27-06-2022 21:01:29:950.081 GMT] logStreamInfo(): Connection Staleness duration (100ns): 600000000 [DEBUG] [27-06-2022 21:01:29:950.155 GMT] logStreamInfo(): Store Pressure Policy: 1 [DEBUG] [27-06-2022 21:01:29:950.222 GMT] logStreamInfo(): View Overflow Policy: 1 [DEBUG] [27-06-2022 21:01:29:950.326 GMT] logStreamInfo(): Segment UUID: NULL [DEBUG] [27-06-2022 21:01:29:950.394 GMT] logStreamInfo(): Frame ordering mode: 0 [DEBUG] [27-06-2022 21:01:29:950.464 GMT] logStreamInfo(): Track list [DEBUG] [27-06-2022 21:01:29:950.516 GMT] logStreamInfo(): Track id: 1 [DEBUG] [27-06-2022 21:01:29:950.581 GMT] logStreamInfo(): Track name: kinesis_video [DEBUG] [27-06-2022 21:01:29:950.657 GMT] logStreamInfo(): Codec id: V_MPEG4/ISO/AVC [DEBUG] [27-06-2022 21:01:29:950.741 GMT] logStreamInfo(): Track type: TRACK_INFO_TYPE_VIDEO [DEBUG] [27-06-2022 21:01:29:950.808 GMT] logStreamInfo(): Track cpd: NULL
GET /role-aliases/IoTDevicesRoleAlias/credentials HTTP/1.1 Host: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com Accept: / x-amzn-iot-thingname:1C825919603C
[INFO ] [27-06-2022 21:01:urs":2160,"DeviceName":null,"IngestionConfiguration":null,"KmsKeyId":"arn:aws:kms:us-east-2:465671368404:alias/aws/kinesisvideo","MediaType":"video/h264","Status":"ACTIVE","StreamARN":"arn:aws:kinesisvideo:us-east-2:465671368404:stream/1C825919603C/1653284561747","StreamName":"1C825919603C","Version":"N7lv8TwIzVCydSJWleFS"}}
hello: any update on this? I am still stuck on this problem.
I took a closer look at the error log before adding the symlink" "Can you create one there just try a symlink to /etc/ssl/cert.pem ?"
...........................................
Error in Log:
[WARN ] [20-06-2022 15:13:36:171.158 GMT] curlCompleteSync(): curl perform failed for url https://kinesisvideo.us-east-2.amazonaws.com/describeStream with result Problem with the SSL CA cert (path? access rights?): error setting certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: /etc/ssl/certs
............................................
Application code to trigger thsi error:
data->credential.reset(new Credentials(string(accessKey),
string(secretKey),
sessionTokenStr,
std::chrono::seconds(DEFAULT_CREDENTIAL_EXPIRATION_SECONDS)));
...........................................
AWS-KVS-SDK file: dependency/libkvscproducer/kvscproducer-src/src/source/Response.c
STATUS curlCompleteSync(PCurlResponse pCurlResponse)
{
STATUS retStatus = STATUS_SUCCESS, status = STATUS_SUCCESS;
PCHAR url;
struct curl_slist* header;
PCurlApiCallbacks pCurlApiCallbacks;
...
if (result != CURLE_OK && ATOMIC_LOAD_BOOL(&pCurlResponse->terminated)) {
// The transmission has been force terminated.
pCurlResponse->callInfo.httpStatus = HTTP_STATUS_CODE_REQUEST_TIMEOUT;
pCurlResponse->callInfo.callResult = SERVICE_CALL_REQUEST_TIMEOUT;
} else if (result != CURLE_OK) {
curl_easy_getinfo(pCurlResponse->pCurl, CURLINFO_EFFECTIVE_URL, &url);
DLOGW("curl perform failed for url %s with result %s: %s", url, curl_easy_strerror(result), pCurlResponse->callInfo.errorBuffer); <====
pCurlResponse->callInfo.callResult = getServiceCallResultFromCurlStatus(result);
} else {
// get the response code and note the request completion time
curl_easy_getinfo(pCurlResponse->pCurl, CURLINFO_RESPONSE_CODE, &pCurlResponse->callInfo.httpStatus);
pCurlResponse->callInfo.callResult = getServiceCallResultFromHttpStatus(pCurlResponse->callInfo.httpStatus);
}
............................................ The AWS cloud side code triggers the error; it should be possible to determine the root cause from the error string.
Hey, sorry for the slow response. I checked your requests on backend, and they're all succeeding. The error you're getting says that your arguments are invalid, but they're not, so I think something has gone wrong with your package configuration. I suspect it's something with jsmn, or the JSON parsing in general although the JSON of the response you got appears fine.
Could you apply the following patch, delete the build dir and make clean and report the logs on debug level? It should verify this is the issue. If it is, from there we need to find out why your jsmn_init or JSON parsing is failing on a valid JSON string.
diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
index 6c4490e..96e0a5e 100644
--- a/CMake/Dependencies/libkvscproducer-CMakeLists.txt
+++ b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
@@ -7,7 +7,7 @@ include(ExternalProject)
# clone repo only
ExternalProject_Add(libkvscproducer-download
GIT_REPOSITORY https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.git
- GIT_TAG 79da5b6d6ad67560cc08530f967e9187a6d1c594
+ GIT_TAG d5a0455b752d1a3149b022d734dd8c7f759d308e
SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-src"
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-build"
CONFIGURE_COMMAND ""
Hello, Thanks for you feedback. I am not sure how to apply your recommended fix:
@.***:~/kvssdk_jun17/amazon-kinesis-video-streams-producer-sdk-cpp$ diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt diff: unrecognized option '--git' diff: Try 'diff --help' for more information.
Also I tried to start a videostream using IOT credentials (instead of access key, secret key); [TRACE] [08-07-2022 19:05:08:951.959 GMT] xxx-gi iot_get_credential_endpoint: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com [TRACE] [08-07-2022 19:05:08:952.000 GMT] xxx-gi cert_path : /mnt/plugin/.3x/certificate.pem [TRACE] [08-07-2022 19:05:08:952.039 GMT] xxx-gi private_key_path : /mnt/plugin/.3x/private.pem.key [TRACE] [08-07-2022 19:05:08:952.079 GMT] xxx-gi role_alias : IoTDevicesRoleAlias [TRACE] [08-07-2022 19:05:08:952.116 GMT] xxx-gi ca_cert_path : /mnt/plugin/.3x/cacert.pem [TRACE] [08-07-2022 19:05:08:952.156 GMT] xxx-gi data->stream_name : 1C825919DCA2
[DEBUG] [08-07-2022 19:05:08:952.404 GMT] Creating IoT auth callbacks. [ERROR] [08-07-2022 19:05:09:354.144 GMT] Unable to create Iot Credential provider. Error status: 0x15000027 [ERROR] [08-07-2022 19:05:09:354.520 GMT] Failed to initialize kinesis video with an exception: Unable to create Iot Credential provider. Error status: 0x15000027
And error status comes from here: Src/credential-providers/IotCertCredentialProvider.cpp: IotCertCredentialProvider::callback_t IotCertCredentialProvider::getCallbacks(PClientCallbacks client_callbacks) { STATUS retStatus = STATUS_SUCCESS;
LOG_DEBUG("Creating IoT auth callbacks.");
if (STATUS_FAILED(retStatus = createIotAuthCallbacks(client_callbacks,
STRING_TO_PCHAR(iot_get_credential_endpoint_),
STRING_TO_PCHAR(cert_path_),
STRING_TO_PCHAR(private_key_path_),
STRING_TO_PCHAR(ca_cert_path_),
STRING_TO_PCHAR(role_alias_),
STRING_TO_PCHAR(stream_name_),
&iot_callbacks))) {
std::stringstream status_strstrm;
status_strstrm << std::hex << retStatus;
LOG_AND_THROW("Unable to create Iot Credential provider. Error status: 0x" + status_strstrm.str());
}
return *iot_callbacks;
}
I have an implementation based on an “old” kvs sdk. It passes and video is successfully received on the cloud side. It uses the same camera hardware and configuration (credentials, …)
From: jdelapla @.> Sent: July 8, 2022 12:26 PM To: awslabs/amazon-kinesis-video-streams-producer-sdk-cpp @.> Cc: Illner, Gerhard @.>; Author @.> Subject: Re: [awslabs/amazon-kinesis-video-streams-producer-sdk-cpp] Unable to create Kinesis-video-stream (Issue #870)
CAUTION: EXTERNAL MESSAGE
Hey, sorry for the slow response. I checked your requests on backend, and they're all succeeding. The error you're getting says that your arguments are invalid, but they're not, so I think something has gone wrong with your package configuration. I suspect it's something with jsmn, or the JSON parsing in general although the JSON of the response you got appears fine.
Could you apply the following patch, delete the build dir and make clean and report the logs on debug level? It should verify this is the issue. If it is, from there we need to find out why your jsmn_init or JSON parsing is failing on a valid JSON string.
diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
index 6c4490e..96e0a5e 100644
--- a/CMake/Dependencies/libkvscproducer-CMakeLists.txt
+++ b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
@@ -7,7 +7,7 @@ include(ExternalProject)
ExternalProject_Add(libkvscproducer-download
GIT_REPOSITORY https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.git<https://urldefense.com/v3/__https:/github.com/awslabs/amazon-kinesis-video-streams-producer-c.git__;!!JCruJraw!JmhUvbyhsD9lIxi3NMkjm7bmJSBkgvYbPjaRcr-1mGVoRFll2oFhNA37h-IqJbnJ_AmNSUyaW0nnk5tDUFQMmLKuzdM_$>
GIT_TAG 79da5b6d6ad67560cc08530f967e9187a6d1c594
GIT_TAG d5a0455b752d1a3149b022d734dd8c7f759d308e
SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-src"
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-build"
CONFIGURE_COMMAND ""
— Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https:/github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp/issues/870*issuecomment-1179298614__;Iw!!JCruJraw!JmhUvbyhsD9lIxi3NMkjm7bmJSBkgvYbPjaRcr-1mGVoRFll2oFhNA37h-IqJbnJ_AmNSUyaW0nnk5tDUFQMmC3W_OL3$, or unsubscribehttps://urldefense.com/v3/__https:/github.com/notifications/unsubscribe-auth/AX55NFX73MVH7C5CANY65WTVTB6ELANCNFSM5ZJMC2LQ__;!!JCruJraw!JmhUvbyhsD9lIxi3NMkjm7bmJSBkgvYbPjaRcr-1mGVoRFll2oFhNA37h-IqJbnJ_AmNSUyaW0nnk5tDUFQMmHbKvrQ7$. You are receiving this because you authored the thread.Message ID: @.***>
This message and any attachments may contain Stanley Black & Decker confidential information. Any unauthorized review, use, disclosure or distribution of any such information is prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
Este mensaje y los archivos adjuntos pueden contener información confidencial de Stanley Black & Decker. Se prohíbe cualquier revisión, uso, divulgación o distribución no autorizados de dicha información. Si no es el destinatario previsto, comuníquese con el remitente y elimine todas las copias.
本邮件及其附件可能包含史丹利百得公司的保密信息。非经授权,任何人不得阅读、使用、披露或传播这种信息。若您不是收件人,请您联系发件人并删除所有内容。谢谢。
Below find the traces taken on the same camera platform with the same configuration with "same" application software software (only minor adjustments for KVS-SDK, KVS function calls and parameters are the same). Software uses IOT certificates. .............................................................................. Working example with "older ~ 2years" KVS-SDK version:
[INFO ] [08-07-2022 16:16:22:224.644 GMT] Using region: us-east-2 [INFO ] [08-07-2022 16:16:22:225.107 GMT] Using IoT credentials for Kinesis Video Streams [DEBUG] [08-07-2022 16:16:22:225.654 GMT] Creating IoT auth callbacks. 1C825919DCA2
Connected to c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com (13.58.55.139) port 443 (#0)
ALPN, offering http/1.1
successfully set certificate verify locations:
CAfile: /mnt/plugin/.3x/cacert.pem CApath: none
SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
ALPN, server accepted to use http/1.1
Server certificate:
subject: CN=*.credentials.iot.us-east-2.amazonaws.com
start date: Oct 30 00:00:00 2021 GMT
expire date: Oct 6 23:59:59 2022 GMT
subjectAltName: host "c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com" matched cert's "*.credentials.iot.us-east-2.amazonaws.com"
issuer: C=US; O=Amazon; OU=Server CA 1B; CN=Amazon
SSL certificate verify ok.
GET /role-aliases/IoTDevicesRoleAlias/credentials HTTP/1.1 Host: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com Accept: / x-amzn-iot-thingname:1C825919DCA2
Mark bundle as not supporting multiuse < HTTP/1.1 200 OK < content-type: application/json < content-length: 1305 < date: Fri, 08 Jul 2022 16:16:22 GMT < x-amzn-RequestId: 899f53e6-cbd3-4916-2596-e158a672a464 < {"credentials":{"accessKeyId":"","secretAccessKey":"","sessionToken":"* Connection #0 to host c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com left intact 100 1305 100 1305 0 0 2685 0 --:--:-- --:--:-- --:--:-- 2685 x3ZRZM1jadRkB2+iL8mUysqE5z28vR3CEhSS39gKoKrdYkkBC+FchrFypIM4lNMxYloMgA9AcYHMbs2hXQa6lBeO7Ea8kx5IUeJ38vjiiXpoyHtTI5lDDRYtg6u4hjflVbGCkTNReolDGAD028miu5NrQS52XfcRT7rV6QIo80etY/ATGrC6jTmyCG60g5Pt3YEREXG7SV2e1HVmkggMtPR9bhb4pNcPV+xNsBBSz3vR/Kxos=","expiration":"2022-07-08T17:16:22Z"}}
[INFO ] [08-07-2022 16:16:22:740.089 GMT] createKinesisVideoClient(): Creating Kinesis Video Client [INFO ] [08-07-2022 16:16:22:740.237 GMT] heapInitialize(): Initializing native heap with limit size 8388608, spill ratio 0% and flags 0x00000001 [INFO ] [08-07-2022 16:16:22:740.281 GMT] heapInitialize(): Creating AIV heap. [INFO ] [08-07-2022 16:16:22:740.377 GMT] heapInitialize(): Heap is initialized OK [DEBUG] [08-07-2022 16:16:22:740.454 GMT] stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002 [DEBUG] [08-07-2022 16:16:22:740.510 GMT] stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000010 [INFO ] [08-07-2022 16:16:22:740.557 GMT] createDeviceResultEvent(): Create device result event. [DEBUG] [08-07-2022 16:16:22:740.650 GMT] stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040 [DEBUG] [08-07-2022 16:16:22:740.701 GMT] clientReadyHandler invoked [TRACE] [08-07-2022 16:16:22:740.747 GMT] createKinesisVideoClientSync(): Awaiting for the Kinesis Video Client to become ready... [TRACE] [08-07-2022 16:16:22:740.785 GMT] createKinesisVideoClientSync(): Kinesis Video Client is Ready. DEBUG] [08-07-2022 16:16:22:740.842 GMT] Client is ready
.............................................................................. Failure example with "newer ~ June 17,2022" KVS-SDK version:
[INFO ] [08-07-2022 19:04:38:509.342 GMT] Using region: us-east-2 [INFO ] [08-07-2022 19:04:38:509.560 GMT] Using IoT credentials for Kinesis Video Streams xxx-gi kinesis_video_init Using IOT credentials Point10 [TRACE] [08-07-2022 19:04:38:509.614 GMT] xxx-gi iot_get_credential_endpoint: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com [TRACE] [08-07-2022 19:04:38:509.656 GMT] xxx-gi cert_path : /mnt/plugin/.3x/certificate.pem [TRACE] [08-07-2022 19:04:38:509.695 GMT] xxx-gi private_key_path : /mnt/plugin/.3x/private.pem.key [TRACE] [08-07-2022 19:04:38:509.736 GMT] xxx-gi role_alias : IoTDevicesRoleAlias [TRACE] [08-07-2022 19:04:38:509.775 GMT] xxx-gi ca_cert_path : /mnt/plugin/.3x/cacert.pem [TRACE] [08-07-2022 19:04:38:509.813 GMT] xxx-gi data->stream_name : 1C825919DCA2 xxx-gi kinesis_video_init Using IOT credentials Point11 xxx-gi kinesis_video_init Using IOT credentials Point50 [DEBUG] [08-07-2022 19:04:38:510.979 GMT] Creating IoT auth callbacks.
GET /role-aliases/IoTDevicesRoleAlias/credentials HTTP/1.1 Host: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com Accept: / x-amzn-iot-thingname:1C825919DCA2
xxx-gi General:ReceiveParserEx: CODE NOW ADDED xxx-gi General:ReceiveParserEx: error-code-success1 xxx-gi General:ReceiveParserEx: done xxx-gi General:ReceiveParserEx: called
..................................................................................... Location in KVS-SDK where error code comes from:
LOGGER_TAG("com.amazonaws.kinesis.video");
using namespace com::amazonaws::kinesis::video;
IotCertCredentialProvider::callback_t IotCertCredentialProvider::getCallbacks(PClientCallbacks client_callbacks) { STATUS retStatus = STATUS_SUCCESS;
LOG_DEBUG("Creating IoT auth callbacks.");
if (STATUS_FAILED(retStatus = createIotAuthCallbacks(client_callbacks,
STRING_TO_PCHAR(iot_get_credential_endpoint_),
STRING_TO_PCHAR(cert_path_),
STRING_TO_PCHAR(private_key_path_),
STRING_TO_PCHAR(ca_cert_path_),
STRING_TO_PCHAR(role_alias_),
STRING_TO_PCHAR(stream_name_),
&iot_callbacks))) {
std::stringstream status_strstrm;
status_strstrm << std::hex << retStatus;
LOG_AND_THROW("Unable to create Iot Credential provider. Error status: 0x" + status_strstrm.str());
}
return *iot_callbacks;
}
Hello, Thanks for you feedback. I am not sure how to apply your recommended fix: @.***:~/kvssdk_jun17/amazon-kinesis-video-streams-producer-sdk-cpp$ diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt diff: unrecognized option '--git' diff: Try 'diff --help' for more information.
github doesn't allow me to directly attach a .patch file. Copy the code section in my comment and put it into a your.patch file.
From the top of master enter the following:
git apply path/to/your.patch
Substituting path/to/your.patch with the actual path to the patch file you've created.
Please apply this patch and try again with debug level logging and post the logs here. I understand an older version work well for you, however I suspect in the current version your setup is having errors with jsmn, these logs would confirm that and we can proceed from there.
Hello, I can’t see your patch modifications. If you please could send me the source code changes and I will apply hem manually. For building I hope a make clean; make will do. Thanks
From: jdelapla @.> Sent: July 10, 2022 3:53 PM To: awslabs/amazon-kinesis-video-streams-producer-sdk-cpp @.> Cc: Illner, Gerhard @.>; Author @.> Subject: Re: [awslabs/amazon-kinesis-video-streams-producer-sdk-cpp] Unable to create Kinesis-video-stream (Issue #870)
CAUTION: EXTERNAL MESSAGE
Hello, Thanks for you feedback. I am not sure how to apply your recommended fix: @.***:~/kvssdk_jun17/amazon-kinesis-video-streams-producer-sdk-cpp$ diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt diff: unrecognized option '--git' diff: Try 'diff --help' for more information.
github doesn't allow me to directly attach a .patch file. Copy the code section in my comment and put it into a your.patch file. From the top of master enter the following: git apply path/to/your.patch Substituting path/to/your.patch with the actual path to the patch file you've created.
Please apply this patch and try again with debug level logging and post the logs here. I understand an older version work well for you, however I suspect in the current version your setup is having errors with jsmn, these logs would confirm that and we can proceed from there.
— Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https:/github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp/issues/870*issuecomment-1179815835__;Iw!!JCruJraw!PcaUmz1FW7ZdVHgmlPErwijj4ceImmMeMD1mLDNyLCsIds8K1YNWt1Zu8fXxSQTS0YKu0PGjyn3ZvRpfZFjroc2PqJbb$, or unsubscribehttps://urldefense.com/v3/__https:/github.com/notifications/unsubscribe-auth/AX55NFVBP5E5SKKIZJCWFGLVTNH6DANCNFSM5ZJMC2LQ__;!!JCruJraw!PcaUmz1FW7ZdVHgmlPErwijj4ceImmMeMD1mLDNyLCsIds8K1YNWt1Zu8fXxSQTS0YKu0PGjyn3ZvRpfZFjroYhbfEeX$. You are receiving this because you authored the thread.Message ID: @.***>
This message and any attachments may contain Stanley Black & Decker confidential information. Any unauthorized review, use, disclosure or distribution of any such information is prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
Este mensaje y los archivos adjuntos pueden contener información confidencial de Stanley Black & Decker. Se prohíbe cualquier revisión, uso, divulgación o distribución no autorizados de dicha información. Si no es el destinatario previsto, comuníquese con el remitente y elimine todas las copias.
本邮件及其附件可能包含史丹利百得公司的保密信息。非经授权,任何人不得阅读、使用、披露或传播这种信息。若您不是收件人,请您联系发件人并删除所有内容。谢谢。
diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
index 6c4490e..96e0a5e 100644
--- a/CMake/Dependencies/libkvscproducer-CMakeLists.txt
+++ b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
@@ -7,7 +7,7 @@ include(ExternalProject)
# clone repo only
ExternalProject_Add(libkvscproducer-download
GIT_REPOSITORY https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.git
- GIT_TAG 79da5b6d6ad67560cc08530f967e9187a6d1c594
+ GIT_TAG d5a0455b752d1a3149b022d734dd8c7f759d308e
SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-src"
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-build"
CONFIGURE_COMMAND ""
in CMake/Dependencies/libkvscproducer-CMakelists.txt change GIT_TAG to d5a0455b752d1a3149b022d734dd8c7f759d308e
This does not work for my environment; I don’t have such a setup. If you give the code to be changed I can rebuild that manually. Thanks,
From: jdelapla @.> Sent: July 11, 2022 10:00 AM To: awslabs/amazon-kinesis-video-streams-producer-sdk-cpp @.> Cc: Illner, Gerhard @.>; Author @.> Subject: Re: [awslabs/amazon-kinesis-video-streams-producer-sdk-cpp] Unable to create Kinesis-video-stream (Issue #870)
CAUTION: EXTERNAL MESSAGE
diff --git a/CMake/Dependencies/libkvscproducer-CMakeLists.txt b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
index 6c4490e..96e0a5e 100644
--- a/CMake/Dependencies/libkvscproducer-CMakeLists.txt
+++ b/CMake/Dependencies/libkvscproducer-CMakeLists.txt
@@ -7,7 +7,7 @@ include(ExternalProject)
ExternalProject_Add(libkvscproducer-download
GIT_REPOSITORY https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.git<https://urldefense.com/v3/__https:/github.com/awslabs/amazon-kinesis-video-streams-producer-c.git__;!!JCruJraw!ON67tLL5xIDI1x2LGlVhvtllxUWUOqTMluCHFZpuwuUMkAUhKGrqUWXTWzxaTWKtB5HXrNOrkcSr1rsQenL6D3HJBUip$>
GIT_TAG 79da5b6d6ad67560cc08530f967e9187a6d1c594
GIT_TAG d5a0455b752d1a3149b022d734dd8c7f759d308e
SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-src"
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/kvscproducer-build"
CONFIGURE_COMMAND ""
in CMake/Dependencies/libkvscproducer-CMakelists.txt change GIT_TAG to d5a0455b752d1a3149b022d734dd8c7f759d308e
— Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https:/github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp/issues/870*issuecomment-1180648494__;Iw!!JCruJraw!ON67tLL5xIDI1x2LGlVhvtllxUWUOqTMluCHFZpuwuUMkAUhKGrqUWXTWzxaTWKtB5HXrNOrkcSr1rsQenL6D3hXwBpy$, or unsubscribehttps://urldefense.com/v3/__https:/github.com/notifications/unsubscribe-auth/AX55NFXQ7TKJMNRMGCKBB33VTRHHZANCNFSM5ZJMC2LQ__;!!JCruJraw!ON67tLL5xIDI1x2LGlVhvtllxUWUOqTMluCHFZpuwuUMkAUhKGrqUWXTWzxaTWKtB5HXrNOrkcSr1rsQenL6Dz22lute$. You are receiving this because you authored the thread.Message ID: @.***>
This message and any attachments may contain Stanley Black & Decker confidential information. Any unauthorized review, use, disclosure or distribution of any such information is prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
Este mensaje y los archivos adjuntos pueden contener información confidencial de Stanley Black & Decker. Se prohíbe cualquier revisión, uso, divulgación o distribución no autorizados de dicha información. Si no es el destinatario previsto, comuníquese con el remitente y elimine todas las copias.
本邮件及其附件可能包含史丹利百得公司的保密信息。非经授权,任何人不得阅读、使用、披露或传播这种信息。若您不是收件人,请您联系发件人并删除所有内容。谢谢。
Hi, I created a separate branch that applies the patch testing_jsmn_output
, please checkout that branch and reproduce the issue and post logs here to confirm if your environment is having issues parsing the JSON in the response.
git pull
git checkout origin/testing_jsmn_output
I applied the patch you sent and modified the stream_definition code:
unique_ptr
Error-Code 0x52000014 no longer shows up.
......................................................................................
Code section: data->kinesis_video_producer = KinesisVideoProducer::createSync(move(device_info_provider), move(client_callback_provider), move(stream_callback_provider), move(credential_provider), defaultRegionStr);
Log: [INFO ] [12-07-2022 14:58:49:872.080 GMT] Using region: us-east-2 [INFO ] [12-07-2022 14:58:49:872.274 GMT] Using IoT credentials for Kinesis Video Streams [TRACE] [12-07-2022 14:58:49:872.467 GMT] xxx-gi iot_get_credential_endpoint: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com [TRACE] [12-07-2022 14:58:49:872.510 GMT] xxx-gi cert_path : /mnt/plugin/.3x/certificate.pem [TRACE] [12-07-2022 14:58:49:874.059 GMT] xxx-gi private_key_path : /mnt/plugin/.3x/private.pem.key [TRACE] [12-07-2022 14:58:49:874.110 GMT] xxx-gi role_alias : IoTDevicesRoleAlias [TRACE] [12-07-2022 14:58:49:874.152 GMT] xxx-gi ca_cert_path : /mnt/plugin/.3x/cacert.pem [TRACE] [12-07-2022 14:58:49:874.193 GMT] xxx-gi data->stream_name : 1C825919DCA2 1C825919DCA2 Trying 3.130.143.195:443...
TCP_NODELAY set
Connected to c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com (3.130.143.195) port 443 (#0)
ALPN, offering http/1.1
successfully set certificate verify locations:
CAfile: /mnt/plugin/.3x/cacert.pem CApath: /etc/ssl/certs
SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
ALPN, server accepted to use http/1.1
Server certificate:
subject: CN=*.credentials.iot.us-east-2.amazonaws.com
start date: Oct 30 00:00:00 2021 GMT
expire date: Oct 6 23:59:59 2022 GMT
subjectAltName: host "c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com" matched cert's "*.credentials.iot.us-east-2.amazonaws.com"
issuer: C=US; O=Amazon; OU=Server CA 1B; CN=Amazon
SSL certificate verify ok.
GET /role-aliases/IoTDevicesRoleAlias/credentials HTTP/1.1 Host: c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com Accept: / x-amzn-iot-thingname:1C825919DCA2
Mark bundle as not supporting multiuse < HTTP/1.1 200 OK < content-type: application/json < content-length: 1281 < date: Tue, 12 Jul 2022 14:58:50 GMT < x-amzn-RequestId: 35a5d8cf-8ec8-ae4f-4d1a-31acce9630c4 < {"credentials":{"accessKeyId":"","secretAccessKey":"","sessionToken":"* Connection #0 to host c1b70zh904bdzu.credentials.iot.us-east-2.amazonaws.com left intact xW+Vgpsrpuon7Tl4Cs07Gn9qqUUqNoFdvmKC+kOTRxisbfs+5LcyeRPeRwUkpFuK17AJxJgbhxo/qgBeRDhhFN1f43kJIruDA73Suz9eSmuZkELtGXPcMQbRgtl/vRyndVfUXM6qf5I4IiMqsAtmu1gpeCJ+OVfCKVNsYuxIrDrV8+VVUU9vy1ZcpH6WRM3lLcVsDLz8FAGmm03gBv7pbp6UM=","expiration":"2022-07-12T15:58:50Z"}} [ERROR] [12-07-2022 14:58:50:353.840 GMT] Unable to create Iot Credential provider. Error status: 0x15000027 [ERROR] [12-07-2022 14:58:50:360.160 GMT] Failed to initialize kinesis video with an exception: Unable to create Iot Credential provider. Error status: 0x15000027
The error you see is STATUS_CLIENT_BEING_SHUTDOWN
can you please provide complete logging, please put in a file and attach, do not put in the comments as it is very difficult to read
Any update on that? Thanks.
You are getting 0z15000027 which is defined here
This error code is generated here: https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/blob/6d9d47c064f35fbe4443b4d0420c67410d1c465b/src/source/Common/IotCredentialProvider.c#L168
This is indicative of an invalid IoT response being generated or there is a parser error.
Is there anything specific you are doing? What's your network topology? Can you run it in another network? Can you double-check the IoT cert, etc?
I agree with your assessment: "This is indicative of an invalid IoT response being generated or there is a parser error." I ran the response through a json-online parser and it signaled failure in session key. I have run my software on 2 devices located in 2 different cities (so different networks), both create the same error. I have an older software running with an older kvs-sdk (>2 years) and it works. But I checked the json-response and the online parser also flagged error in the session key. So, it seems, either the session key is invalid json or the parser cannot parse the key.
Is there a way you can obfuscate some of the A-Za-z characters in the JSON token and paste it here? AWS folks might want to check whether it's something funny returned from the IoT
I have not found any specific pattern when I tried to dissent the credential reply. The sessionToken seems to use / to "concatenate" different pieces, but nothing special I can derive from the pieces.
Here is the failed credential: {"credentials": {"accessKeyId":"", "secretAccessKey":"", "sessionToken":"", "expiration":"2022-07-18T22:10:18Z"}}
And here is one which passed in an old version. Again, slash seems to be used as some "concatenator" and the pieces seem to be similar to the pieces from the failed token above; but the contents is all different: {"credentials": {"accessKeyId":"", "secretAccessKey":"", "sessionToken":"", "expiration":"2022-07-08T17:16:22Z"} }
JSON validators fail to parse this excerpt on LN 4. It seems that the multiple '/' backslashes break the parsers.
I think AWS IoT folks should comment on this.
Any progress on this. Neither IOT certificate nor private key is working. It's a showstopper for the entre project.
Still nothing working. Any update o this please?
Still nothing working. Any update o this please?
Is your problem solved? I have the same problem after compiling and running on rock pi If there is any progress, please reply Thanks
[ERROR] [12-07-2022 14:58:50:353.840 GMT] Unable to create Iot Credential provider. Error status: 0x15000027 [ERROR] [12-07-2022 14:58:50:360.160 GMT] Failed to initialize kinesis video with an exception: Unable to create Iot Credential provider. Error status: 0x15000027
The problem still exists and is a showstopper for us. No reply from AWS. I added extensive tracing to AWS SDK and the json buffer format and their parameters seem fine. Even the reply from the cloud side seems fine, it's the error code which is interpreted and causes error handling logic.
The curl request looks like this: [DEBUG] [22-08-2022 22:12:19:853.667 GMT] describeStreamCurlHandler(): xxx-gi executing curl requests. Len=33 [DEBUG] [22-08-2022 22:12:19:853.816 GMT] describeStreamCurlHandler(): xxx-gi Curl-Buf={ "StreamName": "1C825919DCA2" } [DEBUG] [22-08-2022 22:12:19:854.009 GMT] describeStreamCurlHandler(): xxx-gi Curl-HEX=7B0A0922.53747265.616D4E61.6D65223A.20223143.38323539.31394443.4132220A.7D
And the curl reply like this: [DEBUG] [22-08-2022 22:12:20:241.871 GMT] describeStreamCurlHandler(): xxx-gi DescribeStream API response: Len=391 Val={"StreamInfo":{"CreationTime":1.657031570327E9,"DataRetentionInHours":8760,"DeviceName":null,"IngestionConfiguration":null,"KmsKeyId":"arn:aws:kms:us-east-2:465671368404:alias/aws/kinesisvideo","MediaType":"video/h264","Status":"ACTIVE","StreamARN":"arn:aws:kinesisvideo:us-east-2:465671368404:stream/1C825919DCA2/1657031570327","StreamName":"1C825919DCA2","Version":"M3HjvO1mtiB53dBxOE23"}} [DEBUG] [22-08-2022 22:12:20:242.118 GMT] describeStreamCurlHandler(): xxx-gi DescribeStream API response: TokenCount=23
The parser detects 23 tokens which seems correct.
It enters the cleanup handler like this: [INFO ] [22-08-2022 22:12:20:243.621 GMT] describeStreamResultEvent(): Describe stream result event. [ERROR] [22-08-2022 22:12:20:243.837 GMT] describeStreamResultEvent(): operation returned status code: 0x52000014
I don't think the error is json parser related. It looks more like an error between network buffer and json layer on AWS cloud side.
Error code 0x52000014 (AWS error description): The backend returns this error when a service call argument is not valid or when the SDK encounters an error that it can't interpret.
We cannot reproduce your issue. We recommend you do a complete clean of all open source dependencies are try again. There is not a JSON parser error on the cloud side.
Unable to create Kinesis-video-stream
The function kinesis_video_producer->createStreamSync() fails (never completes). The code was working before with an older SDK version (~ 2 years ago).
Checked-out and built June 17, 2022: git clone https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp.git
cd amazon-kinesis-video-streams-producer-sdk-cpp export GST_PLUGIN_PATH=
pwd
export LD_LIBRARY_PATH=pwd
/open-source/local/lib mkdir build cd buildcmake .. -DBUILD_GSTREAMER_PLUGIN=ON -DBUILD_DEPENDENCIES=ON >result1 2>&1 make >result2 2>&1
This is the code piece: void CKVSVideoStreamService::kinesis_video_stream_init(CustomData data) { / create a test stream */ map<string, string> tags; char tag_name[MAX_TAG_NAME_LEN]; char tag_val[MAX_TAG_VALUE_LEN]; SPRINTF(tag_name, "piTag"); SPRINTF(tag_val, "piValue");
}
The error seems here (entire log below): [WARN ] [20-06-2022 15:13:36:449.385 GMT] curlCompleteSync(): curl perform failed for url https://kinesisvideo.us-east-2.amazonaws.com/describeStream with result Problem with the SSL CA cert (path? access rights?): error setting certificate verify locations: CAfile: /etc/ssl/certs/ca-certificates.crt CApath: /etc/ssl/certs [WARN ] [20-06-2022 15:13:36:449.570 GMT] curlCompleteSync(): HTTP Error 0 : Response: (null) Request URL: https://kinesisvideo.us-east-2.amazonaws.com/describeStream Request Headers: Authorization: AWS4-HMAC-SHA256 Credential=AKIAWY3BNF:3KJYLYWYLB/20220620/us-east-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=4833b3eb01b2f2efd7ff010242720b94e2e86dfcb7da0dca1d01b737263b557d content-length: 33 content-type: application/json host: kinesisvideo.us-east-2.amazonaws.com user-agent: AWS-SDK-KVS/3.0 [DEBUG] [20-06-2022 15:13:36:449.759 GMT] describeStreamCurlHandler(): DescribeStream API response: [INFO ] [20-06-2022 15:13:36:450.012 GMT] describeStreamResultEvent(): Describe stream result event.
Contents of certificate store (the same works with an older KVS version)
ls -l /etc/ssl/certs
lrwxrwxrwx 1 root root 18 May 3 11:02 /etc/ssl/certs -> /etc/pki/tls/certs
ls -l /etc/pki/tls/certs
total 1378 -rw-r--r-- 1 root root 663331 May 16 10:17 ca-bundle.crt -rw-r--r-- 1 root root 745107 May 16 10:18 ca-bundle.trust.crt -rw-r--r-- 1 root root 1424 May 12 09:28 cert.pem
cat /etc/pki/tls/certs/cert.pem
-----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx ... ... ... 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE-----
Detailed Trace: [INFO ] [20-06-2022 15:13:35:995.300 GMT] Using region: us-east-2 xxx-gi kinesis_video_init ENIVIRONMENT KEYS Point1 [INFO ] [20-06-2022 15:13:35:995.538 GMT] Using aws credentials for Kinesis Video Streams [INFO ] [20-06-2022 15:13:35:995.586 GMT] No session token was detected. xxx-gi kinesis_video_init Session-Token detected Point3 xxx-gi kinesis_video_init Point4 count : 10 xxx-gi kinesis_video_init Point5 xxx-gi kinesis_video_init Point6 xxx-gi kinesis_video_init Using IOT credentials Point50 path : /sdcard/2022/05/02/local.idx [INFO ] [20-06-2022 15:13:36:002.588 GMT] createKinesisVideoClient(): Creating Kinesis Video Client [INFO ] [20-06-2022 15:13:36:002.865 GMT] heapInitialize(): Initializing native heap with limit size 8388608, spill ratio 0% and flags 0x00000001 [INFO ] [20-06-2022 15:13:36:002.916 GMT] heapInitialize(): Creating AIV heap. path : /sdcard/2022/05/06/local.idx [INFO ] [20-06-2022 15:13:36:003.015 GMT] heapInitialize(): Heap is initialized OK [DEBUG] [20-06-2022 15:13:36:003.653 GMT] getSecurityTokenHandler invoked [DEBUG] [20-06-2022 15:13:36:003.944 GMT] Refreshing credentials. Force refreshing: 0 Now time is: 1655738016003820073 Expiration: 0 [INFO ] [20-06-2022 15:13:36:004.009 GMT] New credentials expiration is 1655741616 [INFO ] [20-06-2022 15:13:36:004.177 GMT] createDeviceResultEvent(): Create device result event. [DEBUG] [20-06-2022 15:13:36:004.278 GMT] clientReadyHandler invoked xxx-gi kinesis_video_init Using IOT credentials Point99 [DEBUG] [20-06-2022 15:13:36:004.452 GMT] Client is ready xxx-gi kinesis_video_stream_init. Point-1 xxx-gi kinesis_video_stream_init. Point-2 xxx-gi kinesis_video_stream_init. Point-3 *** [INFO ] [20-06-2022 15:13:36:004.837 GMT] Creating Kinesis Video Stream 1C825919603C [INFO ] [20-06-2022 15:13:36:005.060 GMT] createKinesisVideoStream(): Creating Kinesis Video Stream. [INFO ] [20-06-2022 15:13:36:005.198 GMT] logStreamInfo(): SDK version: 70f74f14cf27b09f71dc1889f36eb6e04cdd90a8 [DEBUG] [20-06-2022 15:13:36:005.240 GMT] logStreamInfo(): Kinesis Video Stream Info [DEBUG] [20-06-2022 15:13:36:005.277 GMT] logStreamInfo(): Stream name: 1C825919603C [DEBUG] [20-06-2022 15:13:36:005.314 GMT] logStreamInfo(): Streaming type: STREAMING_TYPE_REALTIME [DEBUG] [20-06-2022 15:13:36:005.353 GMT] logStreamInfo(): Content type: video/h264 [DEBUG] [20-06-2022 15:13:36:005.398 GMT] logStreamInfo(): Max latency (100ns): 300000000 [DEBUG] [20-06-2022 15:13:36:005.434 GMT] logStreamInfo(): Fragment duration (100ns): 50000000 [DEBUG] [20-06-2022 15:13:36:005.472 GMT] logStreamInfo(): Key frame fragmentation: No [DEBUG] [20-06-2022 15:13:36:005.506 GMT] logStreamInfo(): Use frame timecode: Yes [DEBUG] [20-06-2022 15:13:36:005.542 GMT] logStreamInfo(): Absolute frame timecode: No [DEBUG] [20-06-2022 15:13:36:005.580 GMT] logStreamInfo(): Nal adaptation flags: 0 [DEBUG] [20-06-2022 15:13:36:005.616 GMT] logStreamInfo(): Average bandwith (bps): 4194304 [DEBUG] [20-06-2022 15:13:36:005.653 GMT] logStreamInfo(): Framerate: 20 [DEBUG] [20-06-2022 15:13:36:005.688 GMT] logStreamInfo(): Buffer duration (100ns): 300000000 [DEBUG] [20-06-2022 15:13:36:005.725 GMT] logStreamInfo(): Replay duration (100ns): 300000000 [DEBUG] [20-06-2022 15:13:36:005.762 GMT] logStreamInfo(): Connection Staleness duration (100ns): 600000000 [DEBUG] [20-06-2022 15:13:36:005.799 GMT] logStreamInfo(): Store Pressure Policy: 1 [DEBUG] [20-06-2022 15:13:36:005.835 GMT] logStreamInfo(): View Overflow Policy: 1 [DEBUG] [20-06-2022 15:13:36:005.871 GMT] logStreamInfo(): Segment UUID: NULL [DEBUG] [20-06-2022 15:13:36:005.907 GMT] logStreamInfo(): Frame ordering mode: 0 [DEBUG] [20-06-2022 15:13:36:005.942 GMT] logStreamInfo(): Track list [DEBUG] [20-06-2022 15:13:36:005.976 GMT] logStreamInfo(): Track id: 1 [DEBUG] [20-06-2022 15:13:36:006.011 GMT] logStreamInfo(): Track name: kinesis_video [DEBUG] [20-06-2022 15:13:36:006.047 GMT] logStreamInfo(): Codec id: V_MPEG4/ISO/AVC [DEBUG] [20-06-2022 15:13:36:006.094 GMT] logStreamInfo(): Track type: TRACK_INFO_TYPE_VIDEO [DEBUG] [20-06-2022 15:13:36:006.133 GMT] logStreamInfo(): Track cpd: NULL
xxx-gi General:ReceiveParserEx: CODE NOW ADDED xxx-gi General:ReceiveParserEx: error-code-success1 xxx-gi General:ReceiveParserEx: done xxx-gi General:ReceiveParserEx: called xxx-gi General:ReceiveParserEx: CODE NOW ADDED xxx-gi General:ReceiveParserEx: error-code-success1 xxx-gi General:ReceiveParserEx: done
ls -l /etc/ssl/certs
lrwxrwxrwx 1 root root 18 May 3 11:02 /etc/ssl/certs -> /etc/pki/tls/certs
ls -l /etc/pki/tls/certs
total 1378 -rw-r--r-- 1 root root 663331 May 16 10:17 ca-bundle.crt -rw-r--r-- 1 root root 745107 May 16 10:18 ca-bundle.trust.crt -rw-r--r-- 1 root root 1424 May 12 09:28 cert.pem
cat /etc/pki/tls/certs/cert.pem
-----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk 6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE-----