OpenCV
3.2.0
Open Source Computer Vision
|
Video writer class. More...
#include "videoio.hpp"
Public Member Functions | |
VideoWriter () | |
Default constructors. More... | |
VideoWriter (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true) | |
virtual | ~VideoWriter () |
Default destructor. More... | |
virtual double | get (int propId) const |
Returns the specified VideoWriter property. More... | |
virtual bool | isOpened () const |
Returns true if video writer has been successfully initialized. More... | |
virtual bool | open (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true) |
Initializes or reinitializes video writer. More... | |
virtual VideoWriter & | operator<< (const Mat &image) |
Stream operator to write the next video frame. More... | |
virtual void | release () |
Closes the video writer. More... | |
virtual bool | set (int propId, double value) |
Sets a property in the VideoWriter. More... | |
virtual void | write (const Mat &image) |
Writes the next video frame. More... | |
Static Public Member Functions | |
static int | fourcc (char c1, char c2, char c3, char c4) |
Concatenates 4 chars to a fourcc code. More... | |
Static Protected Member Functions | |
static Ptr< IVideoWriter > | create (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true) |
Protected Attributes | |
Ptr< IVideoWriter > | iwriter |
Ptr< CvVideoWriter > | writer |
Video writer class.
The class provides C++ API for writing video files or image sequences.
Here is how the class can be used:
cv::VideoWriter::VideoWriter | ( | ) |
Default constructors.
The constructors/functions initialize video writers.
cv::VideoWriter::VideoWriter | ( | const String & | filename, |
int | fourcc, | ||
double | fps, | ||
Size | frameSize, | ||
bool | isColor = true |
||
) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
filename | Name of the output video file. |
fourcc | 4-character code of codec used to compress the frames. For example, VideoWriter::fourcc('P','I','M','1') is a MPEG-1 codec, VideoWriter::fourcc('M','J','P','G') is a motion-jpeg codec etc. List of codes can be obtained at Video Codecs by FOURCC page. FFMPEG backend with MP4 container natively uses other values as fourcc code: see ObjectType, so you may receive a warning message from OpenCV about fourcc code conversion. |
fps | Framerate of the created video stream. |
frameSize | Size of the video frames. |
isColor | If it is not zero, the encoder will expect and encode color frames, otherwise it will work with grayscale frames (the flag is currently supported on Windows only). |
Tips:
fourcc=-1
pops up the codec selection dialog from the system.img_%02d.jpg
) and fourcc=0
OR fps=0
. Use uncompressed image format (eg. img_%02d.BMP
) to save raw frames.codec=0; fps=0;
you can create an uncompressed (raw) video file.
|
virtual |
Default destructor.
The method first calls VideoWriter::release to close the already opened file.
|
staticprotected |
|
static |
Concatenates 4 chars to a fourcc code.
This static method constructs the fourcc code of the codec to be used in the constructor VideoWriter::VideoWriter or VideoWriter::open.
|
virtual |
Returns the specified VideoWriter property.
propId | Property identifier from cv::VideoWriterProperties (eg. cv::VIDEOWRITER_PROP_QUALITY) or one of Additional flags for video I/O API backends |
|
virtual |
Returns true if video writer has been successfully initialized.
|
virtual |
Initializes or reinitializes video writer.
The method opens video writer. Parameters are the same as in the constructor VideoWriter::VideoWriter.
true
if video writer has been successfully initializedThe method first calls VideoWriter::release to close the already opened file.
|
virtual |
Stream operator to write the next video frame.
|
virtual |
Closes the video writer.
The method is automatically called by subsequent VideoWriter::open and by the VideoWriter destructor.
|
virtual |
Sets a property in the VideoWriter.
propId | Property identifier from cv::VideoWriterProperties (eg. cv::VIDEOWRITER_PROP_QUALITY) or one of Additional flags for video I/O API backends |
value | Value of the property. |
true
if the property is supported by the backend used by the VideoWriter instance.
|
virtual |
Writes the next video frame.
image | The written frame |
The function/method writes the specified image to video file. It must have the same size as has been specified when opening the video writer.
|
protected |
|
protected |