有云端存储,无本地存储

IPC/NVR/可视门铃等具备多媒体能力的设备,扫地机/AGV等机器人设备


丶千叶
Posts: 11

Passat 2025年 Dec 2日 18:11
  1. 主码流帧时间戳正常,但并没有帧类型和音频帧写入 ringbuf 的相关信息

  2. 提供主码流的帧率、GOP 、音频帧率和 ringbuf 初始化的 max_buffer_sec

主码流帧率为20,gop为5,ringbuf 初始化的 max_buffer_sec设置的是0,也就是10s,音频帧率16000/640=25
帧类型和音频帧写入 ringbuf 的相关信息复现出来后提供

丶千叶
Posts: 11

Re: 有云端存储,无本地存储

Passat 2025年 Dec 2日 18:11
  1. 主码流帧时间戳正常,但并没有帧类型和音频帧写入 ringbuf 的相关信息

  2. 提供主码流的帧率、GOP 、音频帧率和 ringbuf 初始化的 max_buffer_sec

这是带帧类型和音频帧的日志,麻烦看一下,PB是0,I是1

Attachments
2025-12-02-133349.log
(9.77 MiB) Downloaded 3 times
User avatar
Passat
Posts: 136

Re: 有云端存储,无本地存储

Code: Select all

[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:451] ch0st0tr0 delay too much(seq_no:71460->71549)
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:456] ch0st0tr0 delay too much:0xb506f008 0xb50b1bf3 0xb5243c08 0xb5080f1e 7a120
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty E][8694][tuya_ring_buffer.c:1151] loop 600 times, exit
  1. ringbuf 默认10s 时, gop 5s 并不合理,推荐改为2s
  2. 从日志的报错看,问题可能是主码流实际码率 & tuya_ipc_ring_buffer_init 时设定码率不一致,会使主码流的 ringbuf 过快被覆盖,最终取到无效值。
  3. 检查你的代码中,主码流 ringbuf 的是否存在非主码流数据的写入
丶千叶
Posts: 11

Re: 有云端存储,无本地存储

Passat 2025年 Dec 3日 14:38

Code: Select all

[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:451] ch0st0tr0 delay too much(seq_no:71460->71549)
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:456] ch0st0tr0 delay too much:0xb506f008 0xb50b1bf3 0xb5243c08 0xb5080f1e 7a120
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty E][8694][tuya_ring_buffer.c:1151] loop 600 times, exit
  1. ringbuf 默认10s 时, gop 5s 并不合理,推荐改为2s
  2. 从日志的报错看,问题可能是主码流实际码率 & tuya_ipc_ring_buffer_init 时设定码率不一致,会使主码流的 ringbuf 过快被覆盖,最终取到无效值。
  3. 检查你的代码中,主码流 ringbuf 的是否存在非主码流数据的写入

主码流ringbuf应该不存在非主码流数据写入,原本tuya_ipc_ring_buffer_init 时设定码率配置的1500,第二条是指实际平均码率大于设定码率了吗
目前gop改为2,设定码率改为2000正在测试

丶千叶
Posts: 11

Re: 有云端存储,无本地存储

Passat 2025年 Dec 3日 14:38

Code: Select all

[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:451] ch0st0tr0 delay too much(seq_no:71460->71549)
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty D][8694][tuya_ring_buffer.c:456] ch0st0tr0 delay too much:0xb506f008 0xb50b1bf3 0xb5243c08 0xb5080f1e 7a120
[2025-12-02 13:38:40.598]<5> [12-02 21:38:40 ty E][8694][tuya_ring_buffer.c:1151] loop 600 times, exit
  1. ringbuf 默认10s 时, gop 5s 并不合理,推荐改为2s
  2. 从日志的报错看,问题可能是主码流实际码率 & tuya_ipc_ring_buffer_init 时设定码率不一致,会使主码流的 ringbuf 过快被覆盖,最终取到无效值。
  3. 检查你的代码中,主码流 ringbuf 的是否存在非主码流数据的写入

你好,目前仍存在这种情况,测试了230次事件录像没触发,但是后续测试连续录像时出现了这种情况,然后还有一台事件录像时触发了,不过这台我gop改的是3,是不是2000仍然有些小了,麻烦帮忙看一下(此次日志未打印推流信息)
-------------------------------
也不太能再大了,我们机器内存不太够用了

Attachments
2025-12-03-163542.log
2000 gop2复现日志
(6.28 MiB) Downloaded 5 times
1970-01-01-000731.log
2000 gop3复现日志
(9.77 MiB) Downloaded 4 times
2000 gop3的相关配置
2000 gop3的相关配置
2000 gop2的相关配置
2000 gop2的相关配置
User avatar
Passat
Posts: 136

Re: 有云端存储,无本地存储

  1. 主码流实际输出码率 和 tuya_ipc_ring_buffer_init 的设定码率是否一致?

  2. 2025-12-03-163542.log 在连续录像和事件存储模式下都没并没看到之前的异常。 但是出现了开启事件录像后,并没有使用tuya_ipc_ss_stop_event结束事件录像,之后再次tuya_ipc_ss_start_event,出现current event is not stopped,unable to start new one 报错。

  3. 1970-01-01-000731.log 中也有上述相同问题。同时存在大量No data inside ring buffer 报错,说明没有这段时间内没有向ringbuf写入音视频帧数据;之后开启事件录像,出现了之前取帧异常问题。 /mnt/sdcard/DCIM/CHAN0/2025/12/03/1764766988_-016。音视频帧写入ringbuf的流程需要持续保持稳定!!

  4. 日志中出现大量 get service time, 频繁调用 tuya_ipc_get_service_time 会影响其他 SDK 业务执行速度。

    Code: Select all

    [tuya_ipc_sdk_info.c:168] ipc get service time 1764807607 28800
    
丶千叶
Posts: 11

Re: 有云端存储,无本地存储

Passat 2025年 Dec 4日 10:47
  1. 主码流实际输出码率 和 tuya_ipc_ring_buffer_init 的设定码率是否一致?

  2. 2025-12-03-163542.log 在连续录像和事件存储模式下都没并没看到之前的异常。 但是出现了开启事件录像后,并没有使用tuya_ipc_ss_stop_event结束事件录像,之后再次tuya_ipc_ss_start_event,出现current event is not stopped,unable to start new one 报错。

  3. 1970-01-01-000731.log 中也有上述相同问题。同时存在大量No data inside ring buffer 报错,说明没有这段时间内没有向ringbuf写入音视频帧数据;之后开启事件录像,出现了之前取帧异常问题。 /mnt/sdcard/DCIM/CHAN0/2025/12/03/1764766988_-016。音视频帧写入ringbuf的流程需要持续保持稳定!!

  4. 日志中出现大量 get service time, 频繁调用 tuya_ipc_get_service_time 会影响其他 SDK 业务执行速度。

    Code: Select all

    [tuya_ipc_sdk_info.c:168] ipc get service time 1764807607 28800
    

2025-12-03-163542.log这个日志也有的,具体在这里[2025-12-03 17:52:36.365]<5> [12-04 01:52:36 ty E][7404][tuya_ipc_stream_storage.c:435] split record,mode[2]st[1764784201]cur frame tm:1764784356>1764784348+6
我看了下漏了10s的录像,
第三条可能是我不小心按到隐私模式了

User avatar
Passat
Posts: 136

Re: 有云端存储,无本地存储

  1. Code: Select all

    [2025-12-03 17:52:36.365]<5> [12-04 01:52:36 ty E][7404][tuya_ipc_stream_storage.c:435] split record,mode[2]st[1764784201]cur frame tm:1764784356>1764784348+6
    为正常的分片打印
Passat 2025年 Dec 4日 10:47
  1. 主码流实际输出码率 和 tuya_ipc_ring_buffer_init 的设定码率是否一致?

  2. 2025-12-03-163542.log 在连续录像和事件存储模式下都没并没看到之前的异常。 但是出现了开启事件录像后,并没有使用tuya_ipc_ss_stop_event结束事件录像,之后再次tuya_ipc_ss_start_event,出现current event is not stopped,unable to start new one 报错。

  3. 1970-01-01-000731.log 中也有上述相同问题。同时存在大量No data inside ring buffer 报错,说明没有这段时间内没有向ringbuf写入音视频帧数据;之后开启事件录像,出现了之前取帧异常问题。 /mnt/sdcard/DCIM/CHAN0/2025/12/03/1764766988_-016。音视频帧写入ringbuf的流程需要持续保持稳定!!

  4. 日志中出现大量 get service time, 频繁调用 tuya_ipc_get_service_time 会影响其他 SDK 业务执行速度。

    Code: Select all

    [tuya_ipc_sdk_info.c:168] ipc get service time 1764807607 28800
    

2. 重点检查和解决上述细节和问题

丶千叶
Posts: 11

Re: 有云端存储,无本地存储

Passat 2025年 Dec 5日 09:41
  1. Code: Select all

    [2025-12-03 17:52:36.365]<5> [12-04 01:52:36 ty E][7404][tuya_ipc_stream_storage.c:435] split record,mode[2]st[1764784201]cur frame tm:1764784356>1764784348+6
    为正常的分片打印
Passat 2025年 Dec 4日 10:47
  1. 主码流实际输出码率 和 tuya_ipc_ring_buffer_init 的设定码率是否一致?

  2. 2025-12-03-163542.log 在连续录像和事件存储模式下都没并没看到之前的异常。 但是出现了开启事件录像后,并没有使用tuya_ipc_ss_stop_event结束事件录像,之后再次tuya_ipc_ss_start_event,出现current event is not stopped,unable to start new one 报错。

  3. 1970-01-01-000731.log 中也有上述相同问题。同时存在大量No data inside ring buffer 报错,说明没有这段时间内没有向ringbuf写入音视频帧数据;之后开启事件录像,出现了之前取帧异常问题。 /mnt/sdcard/DCIM/CHAN0/2025/12/03/1764766988_-016。音视频帧写入ringbuf的流程需要持续保持稳定!!

  4. 日志中出现大量 get service time, 频繁调用 tuya_ipc_get_service_time 会影响其他 SDK 业务执行速度。

    Code: Select all

    [tuya_ipc_sdk_info.c:168] ipc get service time 1764807607 28800
    

2. 重点检查和解决上述细节和问题

确认了下给VCAP和ring_buffer设定的码率是一致的,但是我改大码率确实感觉有效,是gop的原因吗,我现在正在测试gop,然后那个连续确实是有漏录像,查看回放连续录像从26s到36s中间是断开的
第二条是因为异步的问题,在上一次事件录像快结束的时候触发就会这样,我有试过一直连续触发这种情况,不会漏录像
第三条确实是当时点到隐私模式了

Post Reply