VideoRecorderOpenCv C++ lib. Simple video recorder with memory control

€50.00

VideoRecorderOpenCv C++ library version 1.1.1 provides methods for recording video to file's with controlling file's and folder size's.

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.

Downloads

Programmer’s manual: DOWNLOAD

Overview

VideoRecorderOpenCv C++ library provides methods for recording video to file's with controlling file's and folder size's. This library is built upon the OpenCV library. The library records .avi video files with "D.I.V.X" codec (build in OpenCV). The library is cross-platform and compatible with Windows and Linux OS. The library built with C++17 standard and doesn't have any third-party dependencies except OpenCV library.

Simple interface

class VideoRecorderOpenCv
{
public:

    /// Get current class version.
    static std::string getVersion();

    /// Init video recorder.
    bool init(std::string initString);

    /// Write video frame.
    bool write(uint8_t* frameBgr, int width, int height);

    /// Stop video recording.
    void stopRecording();
};

Simple example

#include <iostream>
#include "VideoRecorderOpenCv.h"

using namespace cr::video;
using namespace std;
using namespace cv;

int main(void)
{
    // Open video file.
    VideoCapture videoSource;
    if (!videoSource.open("test.mp4"))
        return -1;

    // Init video video recorder.
    VideoRecorderOpenCv recorder;
    if (!recorder.init("Output;200;20;test;30;async"))
        return -1;

    // Main loop.
    Mat frameBgr;
    while (true)
    {
        // Capture video frame.
        videoSource >> frameBgr;
        if (frameBgr.empty())
        {
            videoSource.set(CAP_PROP_POS_FRAMES, 0);
            continue;
        }

        // Write frame.
        if (!recorder.write(frameBgr.data,
                            frameBgr.size().width,
                            frameBgr.size().height))
            cout << "Recording problem" << endl;
        
    }
    return 1;
}
License C++ lib. Easy way to add licensing in your application
€250.00
FormatConverterOpenCv C++ lib. Pixel format converter with lot of formats support
€20.00
ChildProcess C++ lib. Simple way to run external process from your app
€10.00