ViscaParser C++ lib. Control protocol parser library for VISCA camera

€160.00

ViscaParser C++ library version 3.0.1 is designed for parsing VISCA (trademark of Sony Corporation) protocol messages.

LICENSE: We sell source code of this library as is, without future updates and technical support according to perpetual non-exclusive royalty-free license. You pay once and can use this library in your software and hardware products without limits. Please read the license agreement before purchasing: DOWNLOAD LICENSE. You can buy technical support service for this product.

Add To Cart
Technical support service
Options:

Purchase options

You can by this software online by card or you can buy the software by bank transfer. Bank transfer available only for companies. To buy software by bank transfer please send us request to info@constantrobotics.com. Also, you can buy technical support service for this product.

Overview

ViscaParser C++ library version 3.0.1 is designed for parsing VISCA (trademark of Sony Corporation) protocol messages. The library is designed according to the VISCA protocol description for the camera Sony FCB-EV7520A. The library allows you to use it to control other cameras that support the VISCA protocol. Before encoding and decoding specific commands, please check the source code of the library for the corresponding command according to the technical description of your camera. The library provides: VISCA messages encoding, VISCA messages decoding and searching for messages in a continuous data set. Folder examples contains examples how to use the library. The library has been developed with C++17 standard and doesn't have third party dependencies.

Downloads

Programmer’s manual: DOWNLOAD

Simple interface

class ViscaParser
{
public:

    /// Encode COMMAND or ENQUIRY COMMAND.
    bool encodeCommand(
        visca::ViscaPackets commandId, uint8_t* packet,
        uint32_t& packetSize, uint32_t cameraAddress,
        uint32_t param1 = 0, uint32_t param2 = 0,
        uint32_t param3 = 0, uint32_t param4 = 0,
        uint32_t param5 = 0, uint32_t param6 = 0,
        uint32_t param7 = 0, uint32_t param8 = 0,
        uint32_t param9 = 0, uint32_t param10 = 0);

    /// Decode input data byte-by-byte.
    visca::ViscaPackets decodeData(
        uint8_t nextByte, uint32_t cameraAddress,
        uint32_t& param1, uint32_t& param2,
        uint32_t& param3, uint32_t& param4,
        uint32_t& param5, uint32_t& param6,
        uint32_t& param7, uint32_t& param8,
        uint32_t& param9, uint32_t& param10);

    /// Get library version.
    static std::string getVersion();
};

Prepare command example

// Encoding
uint8_t packetData[24];
uint32_t packetSize = 0;
visca_parser.encodeCommand(cr::visca::ViscaPackets::INQUIRY_CAM_ZoomPosInq,
                           packetData, packetSize, 1, 1);

// Sending to serial port.
serialPort.sendData(packetData, packetSize);
StingrayParser C++ lib. Protocol parser library for Stingray SWIR lenses
€160.00
FujiSxCamera C++ lib. Software controller for Fujinon SX series CCTV cameras.
€400.00
Slc C++ lib. Software controller for Stingray SWIR lenses with advanced auto focus functions
€600.00
ViscaCamera C++ lib. Software controller for VISCA protocol compatible cameras
€400.00
KowaProtocolParser C++ lib. Protocol parser library for KOWA low-light cameras.
€30.00