📄 libvisca.c
字号:
unsigned intVISCA_set_zoom_tele(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM); _VISCA_append_byte(&packet, VISCA_ZOOM_TELE); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_wide(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM); _VISCA_append_byte(&packet, VISCA_ZOOM_WIDE); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_stop(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM); _VISCA_append_byte(&packet, VISCA_ZOOM_STOP); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_tele_speed(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int speed){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM); _VISCA_append_byte(&packet, VISCA_ZOOM_TELE_SPEED | (speed & 0x7)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_wide_speed(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int speed){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM); _VISCA_append_byte(&packet, VISCA_ZOOM_WIDE_SPEED | (speed & 0x7)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_value(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int zoom){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM_VALUE); _VISCA_append_byte(&packet, (zoom & 0xF000) >> 12); _VISCA_append_byte(&packet, (zoom & 0x0F00) >> 8); _VISCA_append_byte(&packet, (zoom & 0x00F0) >> 4); _VISCA_append_byte(&packet, (zoom & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_zoom_and_focus_value(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int zoom, unsigned int focus){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_ZOOM_FOCUS_VALUE); _VISCA_append_byte(&packet, (zoom & 0xF000) >> 12); _VISCA_append_byte(&packet, (zoom & 0x0F00) >> 8); _VISCA_append_byte(&packet, (zoom & 0x00F0) >> 4); _VISCA_append_byte(&packet, (zoom & 0x000F)); _VISCA_append_byte(&packet, (focus & 0xF000) >> 12); _VISCA_append_byte(&packet, (focus & 0x0F00) >> 8); _VISCA_append_byte(&packet, (focus & 0x00F0) >> 4); _VISCA_append_byte(&packet, (focus & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_dzoom(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int power){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_DZOOM); _VISCA_append_byte(&packet, power); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_far(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS); _VISCA_append_byte(&packet, VISCA_FOCUS_FAR); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_near(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS); _VISCA_append_byte(&packet, VISCA_FOCUS_NEAR); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_stop(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS); _VISCA_append_byte(&packet, VISCA_FOCUS_STOP); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_far_speed(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int speed){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS); _VISCA_append_byte(&packet, VISCA_FOCUS_FAR_SPEED | (speed & 0x7)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_near_speed(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int speed){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS); _VISCA_append_byte(&packet, VISCA_FOCUS_NEAR_SPEED | (speed & 0x7)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_value(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int focus){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_VALUE); _VISCA_append_byte(&packet, (focus & 0xF000) >> 12); _VISCA_append_byte(&packet, (focus & 0x0F00) >> 8); _VISCA_append_byte(&packet, (focus & 0x00F0) >> 4); _VISCA_append_byte(&packet, (focus & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_auto(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t power){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_AUTO); _VISCA_append_byte(&packet, power); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_one_push(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_ONE_PUSH); _VISCA_append_byte(&packet, VISCA_FOCUS_ONE_PUSH_TRIG); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_infinity(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_ONE_PUSH); _VISCA_append_byte(&packet, VISCA_FOCUS_ONE_PUSH_INF); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_autosense_high(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_AUTO_SENSE); _VISCA_append_byte(&packet, VISCA_FOCUS_AUTO_SENSE_HIGH); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_autosense_low(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_AUTO_SENSE); _VISCA_append_byte(&packet, VISCA_FOCUS_AUTO_SENSE_LOW); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_focus_near_limit(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int limit){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_FOCUS_NEAR_LIMIT); _VISCA_append_byte(&packet, (limit & 0xF000) >> 12); _VISCA_append_byte(&packet, (limit & 0x0F00) >> 8); _VISCA_append_byte(&packet, (limit & 0x00F0) >> 4); _VISCA_append_byte(&packet, (limit & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_whitebal_mode(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int mode){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_WB); _VISCA_append_byte(&packet, mode); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_whitebal_one_push(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_WB_ONE_PUSH); _VISCA_append_byte(&packet, VISCA_WB_ONE_PUSH_TRIG); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_rgain_up(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_RGAIN); _VISCA_append_byte(&packet, VISCA_UP); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_rgain_down(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_RGAIN); _VISCA_append_byte(&packet, VISCA_DOWN); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_rgain_reset(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_RGAIN); _VISCA_append_byte(&packet, VISCA_RESET); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_rgain_value(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int value){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_RGAIN_VALUE); _VISCA_append_byte(&packet, (value & 0xF000) >> 12); _VISCA_append_byte(&packet, (value & 0x0F00) >> 8); _VISCA_append_byte(&packet, (value & 0x00F0) >> 4); _VISCA_append_byte(&packet, (value & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_bgain_up(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_BGAIN); _VISCA_append_byte(&packet, VISCA_UP); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_bgain_down(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_BGAIN); _VISCA_append_byte(&packet, VISCA_DOWN); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_bgain_reset(VISCAInterface_t *interface, VISCACamera_t *camera){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_BGAIN); _VISCA_append_byte(&packet, VISCA_RESET); return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_bgain_value(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int value){ VISCAPacket_t packet; _VISCA_init_packet(&packet); _VISCA_append_byte(&packet, VISCA_COMMAND); _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1); _VISCA_append_byte(&packet, VISCA_BGAIN_VALUE); _VISCA_append_byte(&packet, (value & 0xF000) >> 12); _VISCA_append_byte(&packet, (value & 0x0F00) >> 8); _VISCA_append_byte(&packet, (value & 0x00F0) >> 4); _VISCA_append_byte(&packet, (value & 0x000F)); return _VISCA_send_packet_with_reply(interface, camera, &packet);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -