vision.VideoFileWriter

Запишите видеокадры и аудиосэмплы к видеофайлу

Описание

VideoFileWriter возразите пишут видеокадры и аудиосэмплы к видеофайлу. Видео и аудио могут быть сжаты. Доступные компрессионные типы зависят от энкодеров, установленных на платформе.

Примечание

Этот блок поддерживает генерацию кода для платформ, которые имеют файловый ввод-вывод в наличии. Вы не можете использовать этот блок с программным обеспечением Simulink® Desktop Real-Time™, потому что тот продукт не делает ввода-вывода файла поддержки.

Этот объект выполняет лучше всего на платформах с Версией 11 или позже программного обеспечения Player Windows Media®. Это поддержка объектов только распаковало файлы RGB24 AVI на платформах Mac и Linux®.

Сгенерированный код для этого объекта использует предварительно созданные файлы библиотеки. Можно запустить этот код вне среды MATLAB®, или повторно развернуть его, но быть уверены с учетом этих дополнительных файлов библиотеки при выполнении так. Функция packNGo создает один zip-файл, содержащий все части, требуемые запустить или восстановить этот код. Смотрите packNGo (Simulink Coder) для получения дополнительной информации.

Чтобы запустить исполняемый файл, который был сгенерирован от объекта, вы, возможно, должны добавить предварительно скомпилированные совместно использованные файлы библиотеки в свой системный путь. Смотрите MATLAB Coder и Simulink Разделяемые Библиотечные зависимости для деталей.

Примечание

Запуск в R2016b, вместо того, чтобы использовать step метод, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполните эквивалентные операции.

Создание

Описание

пример

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 соответствующее значение. Name должен появиться в одинарных кавычках (''). Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: videoFWriter = vision.VideoFileWriter('myFile.avi','FrameRate',... videoFReader.info.VideoFrameRate);

Свойства

развернуть все

Имя файла видеовыхода в виде вектора символов. Расширение файла вы даете для Filename должен совпадать с FileFormat.

Формат выходного файла в виде одних из поддерживаемых форматов файлов, показанных в таблице.

FileFormat ОписаниеРасширение файлаПоддерживаемая платформа

'AVI'

Файл Чередования аудио и видео.avi Все платформы

'MJ2000'

Файл Motion JPEG 2000.mj2 Все платформы

'MPEG4'

MPEG-4/H.264 Видео.mp4 , .m4vWindows® и Mac

Запишите аудиоданные в виде false или true. Используйте это свойство управлять, пишет ли объект аудиосэмплы в видеофайл. Установите это значение к true записать аудиоданные. Чтобы записать аудио и видео к файлу, необходимо использовать.avi формат.

Частота видеокадров в кадрах в секунду в виде положительного числового скаляра. Для видео, которые также содержат аудиоданные, будет определен уровень аудиоданных, когда уровень видео, умноженного на количество аудиосэмплов, передал в. Например, если вы используете частоту кадров 30, и передайте 1 470 аудиосэмплов, объект устанавливает аудиосэмпл на 44100, (1470 x 30 = 44100).

Задайте тип алгоритма сжатия, чтобы реализовать для аудиоданных. Это сжатие уменьшает размер видеофайла. Выберите None (uncompressed) сохранить несжатые аудиоданные в видеофайл. Другие опции отражают доступные алгоритмы сжатия звука, установленные в вашей системе. Это свойство применяется только при записи AVI файлы на платформах Windows.

Задайте тип алгоритма сжатия, чтобы использовать, чтобы сжать видеоданные. Это сжатие уменьшает размер видеофайла. Выберите None (uncompressed) сохранить несжатые видеоданные в видеофайл. VideoCompressor свойство может также быть установлено в один из компрессоров, доступных в вашей системе. Чтобы получить список доступных видео компрессоров, можно использовать заполнение клавишей Tab. Выполните эти шаги:

  1. Инстанцируйте объекта:

    y = vision.VideoFileWriter

  2. Чтобы запустить функциональность заполнения клавишей Tab, введите последующую обработку и анализ к открытой кавычке.

    y.VideoCompressor='

    Список компрессоров, доступных в вашей системе, появится после того, как вы нажмете Tab ключ. Например:

Это свойство применяется только при записи AVI файлы на платформах Windows.

Задайте сжатый тип выходных аудиоданных. Это свойство только применяется, когда вы пишете, распаковал WAV файлы.

Цветовое пространство для файла выхода AVI в виде RGB или YCbCr 4:2:2. Это свойство применяется, когда вы устанавливаете FileFormat свойство к AVI и только на платформах Windows.

Размер элемента управления выходного видеофайла в виде целого числа в области значений [0,100]. Увеличьте это значение для большего качества видео. Однако выполнение так увеличивает размер файла. Уменьшите значение, чтобы понизить качество видео с меньшим размером файла.

Quality свойство только применяется, когда вы пишете видеофайлы MPEG4 (на Windows или Mac) или когда вы записываете видео MJPEG-AVI только файлы на Mac или Linux.

Целевое отношение между количеством байтов во входе отображает и сжатое изображение в виде целого числа, больше, чем 1. CompressionFactor указывает на целевое отношение между количеством байтов во входном изображении и сжатым изображением. Данные сжаты как можно больше до заданной цели. Это свойство применяется только при записывании файлов MJ2000 С потерями.

Использование

Описание

пример

Filename = videoFWriter(videoFrame) записи одна система координат видео, videoFrame, к выходному файлу. Входным видео может быть M-by-N-by-3 видеокадр RGB истинного цвета или M-by-N полутоновый видеокадр..

Filename = videoFWriter(videoFrame,audio) записи одна система координат входного видео, videoFrame, и одна система координат аудиосэмплов, audio, к выходному файлу. Это применяется, когда вы устанавливаете AudioInputPort свойство к true.

Filename = videoFWriter(videoFrame,Y,Cb,Cr,audio) записи одна система координат видео YCbCr 4:2:2 и одна система координат аудиосэмплов, audio, к выходному файлу. Это применяется, когда вы устанавливаете AudioInputPort к true и FileColorSpace свойство к 'YCbCr 4:2:2'. Ширина компонентов цвета Cb и Cr должна быть половиной ширины Y.

Входные параметры

развернуть все

Видеокадр, возвращенный как истинный цвет или 2D полутоновое изображение.

Цветной формат YCbCr, возвращенный в YCbCr 4:2:2 формат.

Одна система координат аудиосэмплов, возвращенных в одном из следующих форматов.

ПлатформаПоддерживаемые расширения файла
Все платформыAVI (.avi)
Windows Изображение:
.jpgBMP
Видео:
MPEG (.mpeg)
MPEG-2 (.mp2)
MPEG-1.mpg

MPEG-4, включая H.264 закодировал видео (.mp4. m4v)
Motion JPEG 2000 (.mj2)
Windows Media Video (.wmv, .asf, .asx. asx)
и любой формат, поддержанный Microsoft DirectShow® 9.0 или выше.
Аудио:
WAVE (.wav)
Файл Windows Media Audio (.wma)
Аудио формат файла обмена (.aif, .aiff)
Сжатый аудио формат файла обмена (.aifc),
MP3 (.mp3)
Аудио Sun (.au)
Apple (.snd)
Macintosh Видео:
.avi
Motion JPEG 2000 (.mj2)
MPEG-4, включая H.264 закодировал видео (.mp4. m4v)
Фильм в формате QuickTime Apple (.mov)
и любой формат, поддержанный QuickTime, как перечислено на http://support.apple.com/kb/HT3775.
Аудио:
Несжатый .avi
Linux Motion JPEG 2000 (.mj2)
Любой формат, поддержанный вашими установленными плагинами для GStreamer 0.1 или выше, как перечислено на http://gstreamer.freedesktop.org/documentation/plugins.html, включая Ogg Theora (.ogg).

Платформа Windows XP и Windows 7 x64 поставляется с ограниченным набором 64-битных видеокодеков и аудиокодеков. Если сжатому мультимедийному файлу не удается вопроизвести, попытайтесь сохранить мультимедийный файл к поддерживаемому формату файла, перечисленному в таблице выше.

Если вы используете Windows, используйте Версию 11 Windows Media Player или позже.

Примечание

Файлы MJ2 с битовой глубиной выше, чем 8 битов не поддерживаются vision.VideoFileReader. Используйте VideoReader и VideoWriter для более высоких битовых глубин.

Чтение аудио из сжатых файлов MP4 с видео и аудио не поддерживается vision.VideoFileReader.

Выходные аргументы

развернуть все

Имя файла видеовыхода в виде '.avi', '.mj2', '.mp4', и '.m4v'. Расширение файла вы даете для Filename должен совпадать с FileFormat.

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

infoИнформация о заданном видеофайле
isDone(Логическое) состояние конца файла
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

свернуть все

Загрузите видеофайл и запишите файл в объект средства записи.

videoFReader = vision.VideoFileReader('viplanedeparture.mp4');
videoFWriter = vision.VideoFileWriter('myFile.avi', ...
    'FrameRate',videoFReader.info.VideoFrameRate);

Запишите первые 50 систем координат из исходного файла в недавно созданный myFile.avi файл.

for i=1:50
  videoFrame = videoFReader();
  videoFWriter(videoFrame);
end

Закройте файлы ввода и вывода.

release(videoFReader);
release(videoFWriter);

Расширенные возможности

Представленный в R2012a