Видеофайлы и звуковые файлы в MATLAB® и их поддерживаемых форматах файлов и кодеках.
Для видеоданных термин “формат файла” часто относится или к формату контейнера или к кодеку. Формат контейнера описывает размещение файла, в то время как кодек описывает, как кодировать/декодировать видеоданные. Много форматов контейнера могут содержать данные, закодированные с различными кодеками.
Чтобы считать видеофайл, любое приложение должно:
Распознайте формат контейнера (такой как AVI).
Имейте доступ к кодеку, который может декодировать видеоданные, сохраненные в файле. Некоторые кодеки являются частью стандартного Windows® и установок системы Macintosh, и позволяют вам проигрывать видео в Проигрывателе Windows Media® или QuickTime. В MATLAB VideoReader
может получить доступ больше всего, но не все, этих кодеков.
Правильно используйте кодек, чтобы декодировать видеоданные в файле. VideoReader
не может всегда читать файлы, сопоставленные с кодеками, которые не были частью вашей исходной установки системы.
Форматы, которые поддерживает VideoReader
Используйте VideoReader
, чтобы считать видеофайлы в MATLAB. Форматы файлов, что поддержки VideoReader
отличаются платформой и не имеют никаких ограничений на расширения файла.
Платформы | Форматы файлов |
---|---|
Все платформы | AVI, включая несжатый, индексированный, шкалу полутонов и закодированное Движущимся JPEG видео ( |
Весь Windows | ( |
Windows 7 или позже | MPEG-4, включая H.264 закодировал видео ( |
Macintosh | Большинство форматов поддержано QuickTime Player, включая: Примечание: Для OS X Йосемити (Версия 10.10) и позже, MPEG-4/H.264 файлы записанное использование |
Linux® | Любой формат, поддержанный вашими установленными плагинами для GStreamer 1.0 или выше, как перечислено на https://gstreamer.freedesktop.org/documentation/plugins_doc.html, включая Ogg Theora ( |
Этот пример показывает, как просмотреть кодек, сопоставленный с видеофайлом, с помощью функции mmfileinfo
.
Храните информацию о демонстрационном видеофайле, shuttle.avi
, в массиве структур под названием info
. Структура 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). sound
MATLAB и функции soundsc
поддерживают только один - или значения с двойной точностью между-1 и 1. Другие аудио функции поддерживают несколько типов данных, как обозначено на страницах ссылки на функцию.
audioReader
Используйте audioread
, чтобы считать звуковые файлы в MATLAB. Функция audioread
поддерживает эти форматы файлов.
Поддержка платформ | FileFormat |
---|---|
Все платформы | WAVE (.wav ) |
OGG (.ogg ) | |
FLAC (.flac ) | |
AU (.au ) | |
AIFF (.aiff , .aif ) | |
AIFC (.aifc ) | |
Windows 7 (или позже), Macintosh и Linux | MP3 (.mp3 ) |
MPEG-4 AAC (.m4a , .mp4 ) |
На платформах Windows до Windows 7 не читает audioread
, Файлы WAVE с MP3 закодировали данные.
На Windows 7 (или позже) платформы, audioread
может также считать любые файлы, поддержанные Основой Windows Media.
На платформах Linux audioread
может также считать любые файлы, поддержанные GStreamer.
audioread
может извлечь аудио от MPEG-4 (.mp4
, .m4v
) видеофайлы на Windows 7 или позже, Macintosh и Linux, и от Windows Media Video (.wmv
) и AVI (.avi
) файлы на Windows 7 (или позже) и платформы Linux.
VideoReader
| audioinfo
| audioread
| mmfileinfo