Запишите кадры видео и аудиосэмплы к видеофайлу
Объект VideoFileWriter
пишет кадры видео и аудиосэмплы к видеофайлу. Видео и аудио могут быть сжаты. Доступные компрессионные типы зависят от энкодеров, установленных на платформе.
Этот блок поддерживает генерацию кода для платформ, которые имеют файловый ввод-вывод в наличии. Вы не можете использовать этот блок с программным обеспечением Simulink® Desktop Real-Time™, потому что тот продукт не делает ввода-вывода файла поддержки.
Этот объект выполняет лучше всего на платформах с Версией 11 или позже программного обеспечения Player Windows Media®. Это поддержка объектов только распаковало файлы RGB24 AVI на платформах Mac и Linux®.
Сгенерированный код для этого объекта полагается на предварительно созданные файлы библиотеки. Можно запустить этот код вне среды MATLAB®, или повторно развернуть его, но, несомненно, сможете объяснить эти дополнительные файлы библиотеки при выполнении так. Функция packNGo создает один zip-файл, содержащий все части, требуемые запустить или восстановить этот код. Смотрите packNGo
для получения дополнительной информации.
Чтобы запустить исполняемый файл, который был сгенерирован от объекта, вы, возможно, должны добавить предварительно скомпилированные совместно использованные файлы библиотеки в свой системный путь. Смотрите MATLAB Coder и Simulink Разделяемые Библиотечные зависимости для деталей.
При запуске в R2016b, вместо того, чтобы использовать метод step
, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x)
и y = obj(x)
выполняют эквивалентные операции.
videoFWriter = vision.VideoFileWriter
videoFWriter = vision.VideoFileWriter(Filename)
videoFWriter = vision.VideoFileWriter(___,Name,Value)
videoFWriter = vision.VideoFileWriter
возвращает Системный объект средства записи видеофайла, videoFWriter
. Это пишет кадры видео в несжатый видеофайл 'output.avi
'. Каждый вызов метода step
пишет кадр видео.
videoFWriter = vision.VideoFileWriter(
возвращает объект средства записи видеофайла, Filename
)videoFWriter
, который пишет видео в файл, Filename
. Типом файла может быть .avi
, .mj2
, .mp4
и .m4v
, заданный свойством FileFormat
.
videoFWriter = vision.VideoFileWriter(___,
конфигурирует свойства средства записи видеофайла, заданные как один или несколько аргументов пары "имя-значение". Незаданные свойства имеют значения по умолчанию.Name,Value
)
Name
является именем свойства, и Value
является соответствующим значением. Имя должно находиться внутри одинарных кавычек (' ').
Можно задать несколько аргументов пары "имя-значение" в любом порядке как
Name1,Value1,...,NameN,ValueN
.
videoFWriter = vision.VideoFileWriter('myFile.avi','FrameRate',... videoFReader.info.VideoFrameRate);
Для версий ранее, чем R2016b, используйте функцию step
, чтобы запустить алгоритм Системного объекта. Аргументы к step
являются объектом, который вы создали, сопровождаемый аргументами, показанными в этом разделе.
Например, y = step(obj,x)
и y = obj(x)
выполняют эквивалентные операции.
Filename = videoFWriter(videoFrame)
Filename = videoFWriter(videoFrame,audio)
Filename = videoFWriter(videoFrame,Y,Cb,Cr,audio)
записи один кадр видео, Filename
= videoFWriter(videoFrame
)videoFrame
, к выходному файлу. Входным видео может быть M-by-N-by-3 кадр видео RGB истинного цвета или M-by-N полутоновый кадр видео..
записи один кадр входного видео, Filename
= videoFWriter(videoFrame
,audio
)videoFrame
и одного кадра аудиосэмплов, audio
, к выходному файлу. Это применяется, когда вы устанавливаете свойство AudioInputPort
на true
.
записи один кадр видео YCbCr 4:2:2 и один кадр аудиосэмплов, Filename
= videoFWriter(videoFrame
,Y
,Cb
,Cr
,audio
)audio
, к выходному файлу. Это применяется, когда вы устанавливаете AudioInputPort
на true
и свойство FileColorSpace
к 'YCbCr 4:2:2
'. Ширина компонентов цвета Cb и Cr должна быть половиной ширины Y.
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)
VideoReader
| VideoWriter
| vision.VideoFileReader
| vision.VideoPlayer