Skip to content

How to handle failure in putFrame 0x52000040 STATUS_CLIENT_AUTH_CALL_FAILED #1263

@gustavofuhr

Description

@gustavofuhr

Hello, I'm trying to capture when putFrame are failing with this specific status to restart the pipeline, but I'm unable to do that for now.

** Logging **
After some time, my cameras (Axis ACAPs) start to fail with the following:

2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [ERROR] [KVS] Put frame for B8A44FD014E5__distorted_tree failed with 0x52000040
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [ERROR] [KVS] Put frame for B8A44FD014E5__distorted_tree failed with 0x52000040
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [ERROR] [KVS] Put frame for B8A44FD014E5__distorted_tree failed with 0x52000040
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [ERROR] [KVS] Put frame for B8A44FD014E5__distorted_tree failed with 0x52000040
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] fromAuthClientState(): Invalid auth token as it is expiring in less than 30 seconds
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] fromAuthClientState(): Invalid auth token as it is expiring in less than 30 seconds
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] fromAuthClientState(): Invalid auth token as it is expiring in less than 30 seconds
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] putKinesisVideoFrame(): [B8A44FD014E5__distorted_tree] Failed to submit frame to Kinesis Video client. status: 0x52000040 decoding timestamp: 17527719123905702 presentation timestamp: 17527719123905702
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] putKinesisVideoFrame(): [B8A44FD014E5__distorted_tree] Failed to submit frame to Kinesis Video client. status: 0x52000040 decoding timestamp: 17527719124314757 presentation timestamp: 17527719124314757
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] putKinesisVideoFrame(): [B8A44FD014E5__distorted_tree] Failed to submit frame to Kinesis Video client. status: 0x52000040 decoding timestamp: 17527719124706314 presentation timestamp: 17527719124706314
2025-07-17T18:05:21.589+01:00 axis-b8a44fd014e5 [ INFO    ] iamotionstreamer[91409]: [WARN ] [KVS] putKinesisVideoFrame(): [B8A44FD014E5__distorted_tree] Failed to submit frame to Kinesis Video client. status: 0x52000040 decoding timestamp: 17527719125109437 presentation timestamp: 17527719125109437

** Any design considerations/constraints **
This an ACAP running the CPP KVS producer and sending frames, it works for some hours/days, but it starts to fail after a while, like an expired auth token or something. I'm using this credentials provider:

    credential_provider.reset(new IotCertCredentialProvider(kvs_opts.aws_iot_credentials_endpoint,
        "credentials/certificate.pem",
        "credentials/private.key",
        kvs_opts.aws_iot_role_alias,
        "credentials/AmazonRootCA1.pem",
        kvs_opts.aws_iot_thing_name));

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions