Видео и аудио файлов в MATLAB® и поддерживаемые ими форматы файлов и кодеки.
Для видео данных термин «файл формат» часто относится либо к контейнерному формату, либо к кодеку. Формат контейнера описывает размещение файла, в то время как кодек описывает, как кодировать/декодировать видео данных. Многие форматы контейнеров могут содержать данные, закодированные различными кодеками.
Чтобы прочитать видео файла, любое приложение должно:
Распознавать формат контейнера (например, AVI).
Иметь доступ к кодеку, который может декодировать видео, данные хранящееся в файле. Некоторые кодеки являются частью стандартной Windows® и установки системы Macintosh, и позволяют воспроизводить видео в Windows Media® Плеер или QuickTime. В MATLAB, VideoReader
может получить доступ к большинству, но не ко всем из этих кодеков.
Правильно используйте кодек, чтобы декодировать видео, данные в файле. VideoReader
не всегда можно считать файлы, сопоставленные с кодеками, которые не были частью исходной системной установки.
VideoReader
ПоддержкиИспользование VideoReader
для чтения видео файлов в MATLAB. Форматы файлов, которые VideoReader
поддержки варьируются в зависимости от платформы и не имеет ограничений на расширения файлов.
Платформы | Форматы файлов |
---|---|
Все платформы | AVI, включая несжатое, индексированное, полутоновое и видео с кодировкой Motion JPEG ( |
Все окна | MPEG-1 ( |
Windows 7 или более поздняя версия | MPEG-4, включая H.264 закодированное видео ( |
Макинтош | Большинство форматов, поддерживаемых QuickTime Player, включая: Примечание: Для OS X Yosemite (версия 10.10) и более поздних версий, MPEG-4/H.264 файлы, написанные с помощью |
Linux® | Любой формат, поддерживаемый установленными плагинами для GStreamer 1.0 или выше, как указано на https://gstreamer.freedesktop.org/documentation/plugins_doc.html, включая Ogg Theora ( |
В этом примере показов, как просмотреть кодек, сопоставленный с видео файла, используя mmfileinfo
функция.
Сохраните информацию о выборке видео файла, shuttle.avi
, в массиве структур с именем info
. The info
структура содержит следующие поля: Filename
, Path
, Duration
, Audio
и Video
.
info = mmfileinfo('shuttle.avi');
Показать свойства в командном окне путем отображения полей info
структура. Например, чтобы просмотреть информацию под Video
поле, тип info.Video
info.Video
ans = struct with fields:
Format: 'Motion JPEG'
Height: 288
Width: 512
Файл, shuttle.avi
, использует Движущийся JPEG кодек.
Возможно, вы не сможете считать видео- файл, если MATLAB не сможет получить доступ к соответствующему кодеку. 64-разрядные приложения используют 64-разрядные библиотеки кодеков, а 32-разрядные - 32-разрядные библиотеки кодеков. Для примера при работе с 64-битным MATLAB нельзя читать видео- файлы, которые требуют доступа к 32-битному кодеку, установленному в вашей системе. Чтобы прочитать эти файлы, попробуйте одно из следующих:
Установите 64-разрядный кодек, поддерживающий этот формат файла. Затем попробуйте считать файл с помощью 64-битного MATLAB.
Повторно закодируйте файл в другой формат с помощью 64-разрядного кодека, установленного на вашем компьютере.
Иногда, VideoReader
невозможно открыть видео- файл для чтения на платформах Windows. Это может произойти, если вы установили сторонний кодек, который переопределяет ваши системные параметры. Uninstall кодек и попробуйте снова открыть файл видео в MATLAB.
Аудиосигнал в файле представляет серию выборок, которые захватывают амплитуду звука с течением времени. Частота дискретных проб - это количество дискретных выборок, взятых в секунду и представленных в герцах. Точность выборок, измеренная битовой глубиной (количество бит на выборку), зависит от доступных аудио оборудования.
Аудио функции MATLAB считывают и сохраняют одноканальное (моно) аудио данных в m
-by-1 вектора-столбца и стерео данных в m
-by-2 матрица. В любом случае m
количество выборок. Для стереофонических данных первый столбец содержит левый канал, а второй - правый канал.
Обычно каждая выборка является значением двойной точности между -1 и 1. В некоторых случаях, особенно когда аудио оборудование не поддерживает высокие битовые глубины, аудио файлов хранить значения как 8-битовые или 16-битовые целые числа. Область значений значений выборки зависит от доступного количества бит. Для примера выборок сохранены как uint8
значения могут варьироваться от 0 до 255 (28 – 1). MATLAB sound
и soundsc
функции поддерживают только одинарную или двойную точность значений между -1 и 1. Другие аудио функции поддерживают несколько типов данных, как указано на страницах с описанием функции.
audioReader
ПоддержкиИспользовать audioread
для чтения аудио файлов в MATLAB. audioread
функция поддерживает эти форматы файлов.
Поддержка платформ | Формат файла |
---|---|
Все платформы | ВОЛНА (.wav ) |
OGG (.ogg ) | |
FLAC (.flac ) | |
АУ (.au ) | |
AIFF (.aiff , .aif ) | |
МФЦА (.aifc ) | |
Windows 7 (или более поздняя версия), Macintosh и Linux | MP3 (.mp3 ) |
MPEG-4 AAC (.m4a , .mp4 ) |
На платформах Windows до Windows 7, audioread
не считывает Файлов WAVE с MP3 закодированными данными.
На платформах Windows 7 (или более поздних версий) audioread
могут также считываться любые файлы, поддерживаемые Windows Media Foundation.
На платформах Linux, audioread
могут также считываться любые файлы, поддерживаемые GStreamer.
audioread
может извлечь аудио из MPEG-4 (.mp4
, .m4v
) видео файлов в Windows 7 или более поздней версии, Macintosh, и Linux, и из Windows Media Video (.wmv
) и AVI (.avi
) файлы на платформах Windows 7 (или более поздней версии) и Linux.
audioinfo
| audioread
| mmfileinfo
| VideoReader