主要内容

VideoWriter

创建用于写入视频文件的对象

描述

用一个VideoWriter对象从数组或MATLAB创建视频文件®电影。对象包含有关视频和控制输出视频的属性的信息。您可以创建VideoWriter对象使用VideoWriter函数,指定其属性,然后使用对象函数编写视频。

创建

描述

例子

v= VideoWriter(文档名称创造一个VideoWriter对象以将视频数据写入带有Motion JPEG压缩的AVI文件。

例子

v= VideoWriter(文档名称配置文件另外,应用一组针对特定文件格式(例如mpeg - 4的或者未压缩的AVI的).

输入参数

展开全部

文件名,指定为字符向量或字符串标量。VideoWriter创建该文件。

VideoWriter万博1manbetx支持这些文件扩展名。

.avi

AVI文件

.mj2

Motion JPEG 2000文件

mp4或者.m4v

MPEG-4文件(系统视窗®7或者以后,或macOS10.7及以后版本)

如果您没有指定有效的文件扩展名,VideoWriter追加扩展名.avi.mj2, 或者mp4,这取决于配置文件论点。如果没有指定值配置文件,然后VideoWriter创建带有扩展名的Motion JPEG压缩AVI文件.avi

例子:“myFile.avi”

例子:“. . / dir /视频/ myFile.mj2”

数据类型:字符|细绳

文件类型,指定为其中之一。

的价值配置文件 描述

“档案”

Motion JPEG 2000文件具有无损压缩

'Motion JPEG AVI'

AVI文件使用Motion JPEG编码

'Motion JPEG 2000'

Motion JPEG 2000文件

mpeg - 4的

MPEG-4文件与H.264编码(系统Windows 7或者以后,或macOS10.7及以后版本)

未压缩的AVI的

未压缩的avi文件RGB24视频

'索引avi'

未压缩的AVI文件与索引视频

“灰度AVI”

未压缩的AVI文件与灰度视频

配置文件为视频属性设置默认值,例如VideoCompressionMethod

数据类型:字符|细绳

特性

展开全部

VideoWriter对象包含控制输出视频的属性。您可以创建VideoWriter对象,该对象具有定制为特定格式的属性,例如未压缩的AVI的或者mpeg - 4的,通过使用VideoWriter用预定义的功能配置文件.例如,您可以创建一个VideoWriter对象与一个运动JPEG AVI配置文件并赋值给质量财产。

v = VideoWriter('newfile.avi''Motion JPEG AVI');v.quality = 95;

打电话给了打开功能上的VideoWriter对象,无法更改属性的值。因此,在打开视频文件之前修改属性值。

此属性是只读的。

每个输出视频帧的彩色通道数,指定为正整数:

  • 未压缩的AVI、Motion JPEG AVI和MPEG-4文件有三个彩色通道。

  • 索引和灰度AVI文件有一个颜色通道。

  • 对于Motion JPEG 2000文件,通道的数量取决于输入数据writevideo.功能:一个用于单色数据或三个颜色数据。

数据类型:双倍的

视频文件的颜色信息,指定为具有三列的数字矩阵,最多256行。矩阵中的每一行使用RGB三重态定义了一种颜色。RGB三联网是一个三元素行向量,其元素指定了红色,绿色和蓝色组件的强度。强度必须在范围内[0, 1]

可以在调用之前显式地设置颜色映射打开,或使用COLOROMAP.在写第一帧时电影帧结构的场域。

Colormap属性仅适用于用于编写索引AVI文件的对象。

例子:colormap(夏天(256))

数据类型:双倍的|uint8.

目标压缩比,指定为大于1的整数。压缩比是输入图像的字节数与压缩图像的字节数之间的比率。对视频数据进行尽可能多的压缩,达到指定的目标。

CompressionRatio仅适用于用于写入Motion jpeg2000文件的对象。后你叫打开,你不能改变CompressionRatio价值。如果你之前设置无损压抑真的,然后设置CompressionRatio生成一个错误。

例子:5

数据类型:单身的|双倍的|INT8.|int16|int32|INT64.|uint8.|uint16|UINT32|UINT64

此属性是只读的。

输出文件的持续时间,以秒为单位,指定为标量值。

数据类型:双倍的

此属性是只读的。

写入的文件类型,指定为'avi''mp4', 或者“mj2”

数据类型:字符|细绳

此属性是只读的。

文件的名称,指定为字符向量或字符串标量。

数据类型:字符|细绳

此属性是只读的。

写入视频文件的帧数,指定为整数。

数据类型:双倍的

以每秒帧数为单位的视频播放速率,指定为正数。

后你叫打开,你不能改变帧速率价值。

例子:10.

数据类型:单身的|双倍的|INT8.|int16|int32|INT64.|uint8.|uint16|UINT32|UINT64

此属性是只读的。

每个视频帧的高度以像素为单位,指定为标量。的writevideo.方法为高度宽度基于第一帧的尺寸。

MPEG-4文件要求可以被2整除的帧尺寸。如果MPEG-4文件的输入帧高度不是偶数,则VideoWriter用底部的一行黑色像素划接框架。对于Windows系统上的MPEG-4文件,允许的值取决于Windows的版本。

数据类型:双倍的

无损压缩,指定为真的或者.的无损压抑属性仅适用于用于编写Motion JPEG 2000文件的对象。

如果无损压抑真的,那么:

  • writevideo.函数写入数据,使解压缩后的数据与输入数据相同。

  • VideoWriter忽略任何指定的值CompressionRatio

后你叫打开,你不能改变无损压抑价值。

默认情况下,无损压抑'Motion JPEG 2000'概要文件和真的“档案”概要文件。

数据类型:逻辑

Motion JPEG 2000文件的位深度,指定为范围内的整数(1、16).位深是输入图像数据中最低有效位的数目

MJ2BitDepth仅适用于用于写入Motion jpeg2000文件的对象。如果在调用之前没有指定值打开方法,然后VideoWriter根据输入数据类型设置位深度。例如,如果输入数据writevideo.uint8.或者INT8.值,然后MJ2BitDepth8

例子:8

数据类型:单身的|双倍的|INT8.|int16|int32|INT64.|uint8.|uint16|UINT32|UINT64

此属性是只读的。

视频文件的完整路径,指定为字符向量或字符串标量。

数据类型:字符|细绳

视频质量,指定为范围内的整数,[0,100].更高质量的数字导致更高的视频质量和更大的文件大小。较低的质量数字导致较低的视频质量和较小的文件大小。

质量仅适用于与之关联的对象MPEG-4.或者运动JPEG AVI概要文件。后你叫打开,你不能改变质量价值。

例子:50.

数据类型:单身的|双倍的|INT8.|int16|int32|INT64.|uint8.|uint16|UINT32|UINT64

此属性是只读的。

每个输出视频帧中每像素的位数,指定为数字标量。

带有真彩色视频的AVI文件,Motion JPEG AVI和MPEG-4文件有每像素24位(三个颜色波段各8位)。

索引和灰度AVI文件每像素有8位。

对于Motion jpeg2000文件,每个像素的比特数取决于值MJ2BitDepth以及图像数据的频带数。例如,如果输入数据writevideo.是三维阵列uint16或者int16值,然后是默认值MJ2BitDepth16., 和videobitsperpixel.48.(位深的三倍)。

数据类型:双倍的

此属性是只读的。

视频压缩类型,指定为'没有任何'“h”'Motion JPEG', 或者'Motion JPEG 2000'

数据类型:字符|细绳

此属性是只读的。

MATLAB表示视频格式,指定为字符向量或字符串标量。

对于除Motion jpeg2000以外的文件类型,VideoWriterVideoFormat给下面的人。

视频格式

的价值VideoFormat

未压缩的AVI,Motion JPEG AVI或MPEG-4文件

'rgb24'

AVI文件与索引视频

'索引'

AVI文件与灰度视频

“灰度”

对于Motion jpeg2000文件,VideoWriter设置VideoFormat基于…的价值MJ2BitDepth所述的输入图像数据的格式writevideo.方法。例如,如果您未指定MJ2BitDepth属性,然后VideoWriter设置格式如下所示。

图像数据格式

的价值VideoFormat

单波段uint8. “Mono8”
单波段INT8. “Mono8签署”
单波段uint16 'mono16'
单波段int16 “Mono16签署”
三级uint8. 'rgb24'
三级INT8. “RGB24签署”
三级uint16 'rgb48'
三级int16 “RGB48签署”

数据类型:字符|细绳

此属性是只读的。

每个视频帧的宽度以像素为单位,指定为数字标量。的writevideo.函数设置值高度宽度基于第一帧的尺寸。

MPEG-4文件要求可以被2整除的帧尺寸。如果MPEG-4文件的输入帧宽度不是偶数,则VideoWriter在框架的右侧填充一列黑色像素。对于Windows系统上的MPEG-4文件,允许的值取决于Windows的版本。

数据类型:双倍的

对象的功能

打开 打开文件编写视频数据
关闭 写完视频数据后关闭文件
writevideo. 将视频数据写入文件
VideoWriter.getProfiles 配置文件和文件格式VideoWriter万博1manbetx支持

例子

全部折叠

将视频写入文件,通过创建随机数据数组,使VideoWriter对象,然后将该数组写入视频。

创建一个300×300矩阵的数据。

a = rand(300);

创建一个VideoWriter对象写入名为newfile.avi.并打开文件进行写入。

v = VideoWriter('newfile.avi');打开(v)

写出数据的矩阵一个转到视频文件。

writeVideo (v)

关闭该文件。

关闭(v)

使用指定的配置文件创建一个视频对象,使包含RGB映像的数组,然后将数组写入视频文件。

创建一个VideoWriter对象为一个新的未压缩的AVI文件RGB24视频。

v = VideoWriter('newfile.avi'未压缩的AVI的);

打开文件进行写入。

打开(v)

创建一个包含静态图像样本数据的数组,peppers.png.写图像一个转到视频文件。

a = imread(“peppers.png”);writeVideo (v)

关闭该文件。

关闭(v)

通过生成帧序列,为文件创建要写入的视频对象,然后将帧写入视频文件,将帧序列写入压缩的AVI文件。

设置轴和图形属性以为视频生成帧。

Z =山峰;冲浪(Z);轴手册集(gca),“nextplot”“replacechildren”);

为输出的视频文件创建一个视频写入器对象,并打开要写入的对象。

v = VideoWriter(“peaks.avi”);开放(v);

生成一组帧,从图中获取帧,然后将每个帧写入文件。

k = 1:20冲浪(SIN(2 * PI * K / 20)* z,z)帧= getFrame(GCF);WriteVideo(v,帧);结束关闭(v);

扩展能力

另请参阅

|

介绍了R2010b