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

€50.00

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

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

Add To Cart

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

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

Technical support service
Options:

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

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

Purchase options

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's size. This library is built upon the OpenCV library (version >= 4.5.0). The library records .avi video files with "D.I.V.X" codec (build in OpenCV) and accepts BGR24 (native for OpenCV) pixel format. 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

namespace cr
{
namespace video
{
/// Video recorder class base on OpenCV.
class VideoRecorderOpenCv
{
public:

    /// Class constructor.
    VideoRecorderOpenCv();

    /// Class destructor.
    ~VideoRecorderOpenCv();

    /// 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 stop();
};
}
}

Simple example

#include <iostream>
#include <opencv2/opencv.hpp>
#include "VideoRecorderOpenCv.h"

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

    // Init video video recorder.
    cr::video::VideoRecorderOpenCv recorder;
    if (!recorder.init("Output;10;2;test;30;sync"))
        return -1;

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

        // Write frame.
        if (!recorder.write(frameBgr.data, frameBgr.size().width, frameBgr.size().height))
            std::cout << "Recording problem" << std::endl;
        else
            std::cout << "Frame " << frameId++ << " recorded" << std::endl;
    }
    return 1;
}
ChildProcess C++ lib. Simple way to run external process from your app
€10.00
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