Issues Streaming and Taking Snapshots Simultaneously with OV64B on VOXL2 (Hadron 640 Setup)
-
Hi,
I'm working with a VOXL2 and the FLIR Hadron 640 camera, and I'm trying to stream video from the OV64B sensor while taking snapshots at the same time.Initially, I attempted to use "en_preview": true along with "en_snapshot": true, but that configuration did not allow me to stream video. I assumed it might be a resolution constraint, so I modified the configuration to use "en_small_video": true and "en_snapshot": true instead.
Now I can stream video, and when I enter the following command:
voxl2:/data/snapshots$ voxl-send-command hires_snapshot
Successfully sent command to /run/mpa/hires_snapshot/control
In the voxl-camera-server terminal, I receive this error:
ERROR: Camera: hires got unknown Command:
However, when I enter:
voxl2:/data/snapshots$ voxl-send-command hires_snapshot snapshot-no-save
Successfully sent command to /run/mpa/hires_snapshot/control
The camera server shows:
------ voxl-camera-server: Camera server is now running
Camera: hires taking snapshot for pipe only (not saving it)
But I’m unable to access the snapshot data, even after running adb pull.
My Questions:
Is it possible to stream and take snapshots simultaneously on the OV64B?What does the error message “Camera: hires got unknown Command” mean?
How can I access the output of snapshot-no-save if it's not being saved to disk?
Thanks in advance for your help!
Below is my camera config code:
{
"version": 0.1,
"fsync_en": false,
"fsync_gpio": 109,
"cameras": [
{
"type": "boson",
"name": "boson",
"enabled": true,
"camera_id": 0,
"fps": 30,
"en_preview": true,
"en_misp": false,
"preview_width": 640,
"preview_height": 512,
"en_raw_preview": true,
"en_small_video": false,
"en_large_video": false,
"ae_mode": "off"
},
{
"type": "ov64b",
"name": "hires",
"enabled": true,
"camera_id": 1,
"fps": 15,
"en_preview": false,
"en_misp": false,
"preview_width": 1920,
"preview_height": 1080,
"en_raw_preview": false,
"en_small_video": true,
"small_video_width": 1024,
"small_video_height": 768,
"small_venc_mode": "h265",
"en_large_video": false,
"small_venc_br_ctrl": "cqp",
"small_venc_Qfixed": 30,
"small_venc_Qmin": 15,
"small_venc_Qmax": 40,
"small_venc_nPframes": 9,
"small_venc_mbps": 2,
"en_snapshot": true,
"en_snapshot_width": 1920,
"en_snapshot_height": 1080,
"ae_mode": "isp",
"gain_min": 54,
"gain_max": 32000
}
]
} -
Hi,
I'm working with a VOXL2 and the FLIR Hadron 640 camera, and I'm trying to stream video from the OV64B sensor while taking snapshots at the same time.Initially, I attempted to use "en_preview": true along with "en_snapshot": true, but that configuration did not allow me to stream video. I assumed it might be a resolution constraint, so I modified the configuration to use "en_small_video": true and "en_snapshot": true instead.
Now I can stream video, and when I enter the following command:
voxl2:/data/snapshots$ voxl-send-command hires_snapshot
Successfully sent command to /run/mpa/hires_snapshot/control
In the voxl-camera-server terminal, I receive this error:
ERROR: Camera: hires got unknown Command:
However, when I enter:
voxl2:/data/snapshots$ voxl-send-command hires_snapshot snapshot-no-save
Successfully sent command to /run/mpa/hires_snapshot/control
The camera server shows:
------ voxl-camera-server: Camera server is now running
Camera: hires taking snapshot for pipe only (not saving it)
But I’m unable to access the snapshot data, even after running adb pull.
My Questions:
Is it possible to stream and take snapshots simultaneously on the OV64B?What does the error message “Camera: hires got unknown Command” mean?
How can I access the output of snapshot-no-save if it's not being saved to disk?
Thanks in advance for your help!
Below is my camera config code:
{
"version": 0.1,
"fsync_en": false,
"fsync_gpio": 109,
"cameras": [
{
"type": "boson",
"name": "boson",
"enabled": true,
"camera_id": 0,
"fps": 30,
"en_preview": true,
"en_misp": false,
"preview_width": 640,
"preview_height": 512,
"en_raw_preview": true,
"en_small_video": false,
"en_large_video": false,
"ae_mode": "off"
},
{
"type": "ov64b",
"name": "hires",
"enabled": true,
"camera_id": 1,
"fps": 15,
"en_preview": false,
"en_misp": false,
"preview_width": 1920,
"preview_height": 1080,
"en_raw_preview": false,
"en_small_video": true,
"small_video_width": 1024,
"small_video_height": 768,
"small_venc_mode": "h265",
"en_large_video": false,
"small_venc_br_ctrl": "cqp",
"small_venc_Qfixed": 30,
"small_venc_Qmin": 15,
"small_venc_Qmax": 40,
"small_venc_nPframes": 9,
"small_venc_mbps": 2,
"en_snapshot": true,
"en_snapshot_width": 1920,
"en_snapshot_height": 1080,
"ae_mode": "isp",
"gain_min": 54,
"gain_max": 32000
}
]
}When you use
voxl-send-command, the format of the arguments is as follows:voxl-send-command <image-pipe-name> <command>, so when you runvoxl-send-command hires_snapshot, you are sending an empty command to the pipehires_snapshot. The correct usage would be:voxl-send-command hires_snapshot snapshotPlease try it.
Alex
-
When you use
voxl-send-command, the format of the arguments is as follows:voxl-send-command <image-pipe-name> <command>, so when you runvoxl-send-command hires_snapshot, you are sending an empty command to the pipehires_snapshot. The correct usage would be:voxl-send-command hires_snapshot snapshotPlease try it.
Alex
Reading along? Create a free ModalAI Forum account to join in.
With an account you can reply, ask your own question, get an email when a ModalAI engineer answers, and mark the reply that solved it. Your place in each thread is saved between visits.
Questions about VOXL, Flight Core, ESCs and ModalAI drones are answered here by the engineers who build them.
Register Login