libvisca.c

来自「visca lib, for camera control」· C语言 代码 · 共 2,352 行 · 第 1/5 页

C
2,352
字号
  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_RGAIN_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_bgain_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_BGAIN_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_auto_exp_mode(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *mode){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_AUTO_EXP);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *mode=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_slow_shutter_auto(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *mode){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_SLOW_SHUTTER);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *mode=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_shutter_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_SHUTTER_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_iris_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_IRIS_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_gain_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_GAIN_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_bright_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_BRIGHT_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_exp_comp_power(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_EXP_COMP_POWER);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_exp_comp_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_EXP_COMP_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_backlight_comp(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_BACKLIGHT_COMP);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_aperture_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_APERTURE_VALUE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_zero_lux_shot(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_ZERO_LUX);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_ir_led(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_IR_LED);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_wide_mode(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *mode){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_WIDE_MODE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *mode=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_mirror(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_MIRROR);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_freeze(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_FREEZE);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_picture_effect(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *mode){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_PICTURE_EFFECT);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *mode=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_digital_effect(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *mode){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_DIGITAL_EFFECT);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *mode=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_digital_effect_level(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_DIGITAL_EFFECT_LEVEL);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *value=(interface->ibuf[2]<<12)+(interface->ibuf[3]<<8)+(interface->ibuf[4]<<4)+interface->ibuf[5];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_memory(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *channel){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_MEMORY);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *channel=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_display(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t *power){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_DISPLAY);  err=_VISCA_send_packet_with_reply(interface, camera, &packet);  if (err!=VISCA_SUCCESS)    return err;  else    {      *power=interface->ibuf[2];      return VISCA_SUCCESS;    }}unsigned intVISCA_get_id(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *id){  VISCAPacket_t packet;  unsigned int err;  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_INQUIRY);  _VISCA_appe

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?