⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 libvisca.c

📁 visca lib, for camera control
💻 C
📖 第 1 页 / 共 5 页
字号:
unsigned intVISCA_set_wide_mode(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t 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_WIDE_MODE);  _VISCA_append_byte(&packet, mode);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_mirror(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_MIRROR);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_freeze(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_FREEZE);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_picture_effect(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t 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_PICTURE_EFFECT);  _VISCA_append_byte(&packet, mode);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_digital_effect(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t 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_DIGITAL_EFFECT);  _VISCA_append_byte(&packet, mode);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_digital_effect_level(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t level){  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_DIGITAL_EFFECT_LEVEL);  _VISCA_append_byte(&packet, level);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_memory_set(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t channel){  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_MEMORY);  _VISCA_append_byte(&packet, VISCA_MEMORY_SET);  _VISCA_append_byte(&packet, channel);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_memory_recall(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t channel){  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_MEMORY);  _VISCA_append_byte(&packet, VISCA_MEMORY_RECALL);  _VISCA_append_byte(&packet, channel);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_memory_reset(VISCAInterface_t *interface, VISCACamera_t *camera, UInt8_t channel){  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_MEMORY);  _VISCA_append_byte(&packet, VISCA_MEMORY_RESET);  _VISCA_append_byte(&packet, channel);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_display(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_DISPLAY);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_date_time(VISCAInterface_t *interface, VISCACamera_t *camera, unsigned int year, unsigned int month, unsigned int day, unsigned int hour, unsigned int minute){  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_DATE_TIME_SET);  _VISCA_append_byte(&packet, year/10);  _VISCA_append_byte(&packet, year-10*(year/10));  _VISCA_append_byte(&packet, month/10);  _VISCA_append_byte(&packet, month-10*(month/10));  _VISCA_append_byte(&packet, day/10);  _VISCA_append_byte(&packet, day-10*(day/10));  _VISCA_append_byte(&packet, hour/10);  _VISCA_append_byte(&packet, hour-10*(hour/10));  _VISCA_append_byte(&packet, minute/10);  _VISCA_append_byte(&packet, minute-10*(minute/10));  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_date_display(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_DATE_DISPLAY);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_time_display(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_TIME_DISPLAY);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_title_display(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_TITLE_DISPLAY);  _VISCA_append_byte(&packet, power);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_title_clear(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_TITLE_DISPLAY);  _VISCA_append_byte(&packet, VISCA_TITLE_DISPLAY_CLEAR);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_title_params(VISCAInterface_t *interface, VISCACamera_t *camera, VISCATitleData_t *title){  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_TITLE_SET);  _VISCA_append_byte(&packet, VISCA_TITLE_SET_PARAMS);  _VISCA_append_byte(&packet, title->vposition);  _VISCA_append_byte(&packet, title->hposition);  _VISCA_append_byte(&packet, title->color);  _VISCA_append_byte(&packet, title->blink);  _VISCA_append_byte(&packet, 0);  _VISCA_append_byte(&packet, 0);  _VISCA_append_byte(&packet, 0);  _VISCA_append_byte(&packet, 0);  _VISCA_append_byte(&packet, 0);  _VISCA_append_byte(&packet, 0);  return _VISCA_send_packet_with_reply(interface, camera, &packet);}unsigned intVISCA_set_title(VISCAInterface_t *interface, VISCACamera_t *camera, VISCATitleData_t *title){  VISCAPacket_t packet;  int i, err=0;    _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_COMMAND);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_TITLE_SET);  _VISCA_append_byte(&packet, VISCA_TITLE_SET_PART1);  for (i=0;i<10;i++)    _VISCA_append_byte(&packet, title->title[i]);  err+=_VISCA_send_packet_with_reply(interface, camera, &packet);  _VISCA_init_packet(&packet);  _VISCA_append_byte(&packet, VISCA_COMMAND);  _VISCA_append_byte(&packet, VISCA_CATEGORY_CAMERA1);  _VISCA_append_byte(&packet, VISCA_TITLE_SET);  _VISCA_append_byte(&packet, VISCA_TITLE_SET_PART2);  for (i=0;i<10;i++)    _VISCA_append_byte(&packet, title->title[i+10]);  err+=_VISCA_send_packet_with_reply(interface, camera, &packet);  return err;}/***********************************//*       INQUIRY FUNCTIONS         *//***********************************/unsigned intVISCA_get_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_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_dzoom(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_DZOOM);  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_zoom_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_ZOOM_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_focus_auto(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_FOCUS_AUTO);  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_focus_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_FOCUS_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_focus_auto_sense(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_FOCUS_AUTO_SENSE );  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_focus_near_limit(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_FOCUS_NEAR_LIMIT);  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_whitebal_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_WB);  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_rgain_value(VISCAInterface_t *interface, VISCACamera_t *camera, UInt16_t *value){

⌨️ 快捷键说明

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