[−][src]Struct opencv::videoio::VideoWriter
Video writer class.
The class provides C++ API for writing video files or image sequences.
Methods
impl VideoWriter
[src]
pub fn as_raw_VideoWriter(&self) -> *mut c_void
[src]
pub unsafe fn from_raw_ptr(ptr: *mut c_void) -> Self
[src]
impl VideoWriter
[src]
pub fn default() -> Result<VideoWriter>
[src]
Default constructors
The constructors/functions initialize video writers.
- On Linux FFMPEG is used to write videos;
- On Windows FFMPEG or VFW is used;
- On MacOSX QTKit is used.
pub fn new(
filename: &str,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<VideoWriter>
[src]
filename: &str,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<VideoWriter>
Parameters
- 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).
@b Tips:
- With some backends
fourcc=-1
pops up the codec selection dialog from the system. - To save image sequence use a proper filename (eg.
img_%02d.jpg
) andfourcc=0
ORfps=0
. Use uncompressed image format (eg.img_%02d.BMP
) to save raw frames. - Most codecs are lossy. If you want lossless video file you need to use a lossless codecs (eg. FFMPEG FFV1, Huffman HFYU, Lagarith LAGS, etc...)
- If FFMPEG is enabled, using
codec=0; fps=0;
you can create an uncompressed (raw) video file.
C++ default parameters
- is_color: true
pub fn new_with_backend(
filename: &str,
api_preference: i32,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<VideoWriter>
[src]
filename: &str,
api_preference: i32,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<VideoWriter>
The apiPreference
parameter allows to specify API backends to use. Can be used to enforce a specific reader implementation
if multiple are available: e.g. cv::CAP_FFMPEG or cv::CAP_GSTREAMER.
C++ default parameters
- is_color: true
pub fn open(
&mut self,
filename: &str,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<bool>
[src]
&mut self,
filename: &str,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<bool>
Initializes or reinitializes video writer.
The method opens video writer. Parameters are the same as in the constructor VideoWriter::VideoWriter.
Returns
true
if video writer has been successfully initialized
The method first calls VideoWriter::release to close the already opened file.
C++ default parameters
- is_color: true
pub fn open_with_backend(
&mut self,
filename: &str,
api_preference: i32,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<bool>
[src]
&mut self,
filename: &str,
api_preference: i32,
fourcc: i32,
fps: f64,
frame_size: Size,
is_color: bool
) -> Result<bool>
C++ default parameters
- is_color: true
pub fn is_opened(&self) -> Result<bool>
[src]
Returns true if video writer has been successfully initialized.
pub fn release(&mut self) -> Result<()>
[src]
Closes the video writer.
The method is automatically called by subsequent VideoWriter::open and by the VideoWriter destructor.
pub fn write(&mut self, image: &Mat) -> Result<()>
[src]
Writes the next video frame
Parameters
- image: The written frame. In general, color images are expected in BGR format.
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.
pub fn set(&mut self, prop_id: i32, value: f64) -> Result<bool>
[src]
Sets a property in the VideoWriter.
Parameters
-
propId: Property identifier from cv::VideoWriterProperties (eg. cv::VIDEOWRITER_PROP_QUALITY) or one of @ref videoio_flags_others
-
value: Value of the property.
Returns
true
if the property is supported by the backend used by the VideoWriter instance.
pub fn get(&self, prop_id: i32) -> Result<f64>
[src]
Returns the specified VideoWriter property
Parameters
- propId: Property identifier from cv::VideoWriterProperties (eg. cv::VIDEOWRITER_PROP_QUALITY) or one of @ref videoio_flags_others
Returns
Value for the specified property. Value 0 is returned when querying a property that is not supported by the backend used by the VideoWriter instance.
pub fn fourcc(c1: i8, c2: i8, c3: i8, c4: i8) -> Result<i32>
[src]
Concatenates 4 chars to a fourcc code
Returns
a fourcc code
This static method constructs the fourcc code of the codec to be used in the constructor VideoWriter::VideoWriter or VideoWriter::open.
pub fn get_backend_name(&self) -> Result<String>
[src]
Returns used backend API name
Note: Stream should be opened.
Trait Implementations
Auto Trait Implementations
impl !Sync for VideoWriter
impl Unpin for VideoWriter
impl UnwindSafe for VideoWriter
impl RefUnwindSafe for VideoWriter
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,