Skip to content

Commit 4afccb3

Browse files
committed
Add delay recommendations for multi-camera startup and stream switching in FAQ
1 parent fb8a6ea commit 4afccb3

File tree

3 files changed

+30
-2
lines changed

3 files changed

+30
-2
lines changed
6 Bytes
Binary file not shown.

docs/en/source/8_FAQ/FAQ.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,4 +72,18 @@ rosrun orbbec_camera list_devices_node
7272
Then launch with the serial number explicitly set, for example:
7373
```bash
7474
roslaunch orbbec_camera femto_bolt.launch serial_number:=CL8H741005J
75-
```
75+
```
76+
77+
### Why Is It Necessary to Add Delays When Starting Multiple Cameras or Switching Streams?
78+
79+
Multi-camera systems place high demands on USB bandwidth and device initialization timing. If multiple camera streams are started or switched simultaneously, it may cause temporary bandwidth congestion, leading to device initialization failures, stream startup errors, or frame drops. To ensure system stability, the following practices are recommended:
80+
81+
- **Multi-camera startup phase**
82+
83+
When starting multiple cameras, it is recommended to introduce an appropriate delay between each camera startup (e.g., **2 seconds**) to avoid instantaneous bandwidth overload or low-level device initialization conflicts.
84+
85+
- **Stream enable/disable and mode switching phase**
86+
87+
When invoking stream control services (such as `set_streams_enable`, `toggle_depth`, and `toggle_color`), avoid triggering multiple service calls at the same time. Instead, introduce a reasonable interval between operations (e.g., **20 ms**) to ensure reliable stream state transitions.
88+
89+
Following these timing control guidelines can significantly improve the stability of multi-camera systems during startup and runtime, reducing errors and unexpected behavior.

docs/zh/source/8_FAQ/FAQ.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,18 @@ rosrun orbbec_camera list_devices_node
8282
然后在启动时显式指定序列号,例如:
8383
```bash
8484
roslaunch orbbec_camera femto_bolt.launch serial_number:=CL8H741005J
85-
```
85+
```
86+
87+
### 多相机启动或切换流时为什么需要设置延迟?
88+
89+
多相机系统对带宽和设备初始化时序要求较高。如果在同一时间启动或切换多个相机流,可能会引发带宽瞬时拥塞,进而导致设备初始化失败、流启动异常或丢帧等问题。为确保系统稳定性,建议注意以下几点:
90+
91+
- **多相机启动阶段**
92+
93+
在启动多个相机时,建议在每个相机启动之间增加适当的延迟(例如 **2s**),以避免瞬时带宽过载或底层设备初始化冲突。
94+
95+
- **流开关与模式切换阶段**
96+
97+
在调用开关流相关服务(如 `set_streams_enable``toggle_depth``toggle_color`)时,不建议同时触发多个接口调用,应在各操作之间设置合理的时间间隔(例如 **20 ms**),以保证流状态切换的可靠性。
98+
99+
遵循上述时序控制原则,有助于提升多相机系统在启动和运行过程中的稳定性,减少异常和不可预期行为的发生。

0 commit comments

Comments
 (0)