audiowrite

Запись аудио файла

Описание

пример

audiowrite(filename,y,Fs) записывает матрицу аудио данных, y, со скоростью дискретизации Fs в файл с именем filename. The filename вход также задает формат выходного файла. Тип выходных данных зависит от формата выходного файла и типа данных аудиоданных, y.

пример

audiowrite(filename,y,Fs,Name,Value) использует дополнительные опции, заданные одним или несколькими Name,Value аргументы в виде пар.

Примеры

свернуть все

Создайте файл WAVE из файла примера handel.matи считайте файл обратно в MATLAB ®.

Написание WAVE (.wav) файл в текущей папке.

load handel.mat

filename = 'handel.wav';
audiowrite(filename,y,Fs);
clear y Fs

Считайте данные обратно в MATLAB с помощью audioread.

[y,Fs] = audioread(filename);

Слушайте аудио.

sound(y,Fs);

Создайте файл FLAC из примера handel.mat и укажите количество выхода бит на выборку и комментарий.

load handel.mat

filename = 'handel.flac';
audiowrite(filename,y,Fs,'BitsPerSample',24,...
'Comment','This is my new audio file.');
clear y Fs

Просмотрите информацию о новом файле FLAC с помощью audioinfo функция

info = audioinfo(filename) ;

The info структура содержит следующие информационные поля: Filename, CompressionMethod, NumChannels, SampleRate, TotalSamples, Duration, Title, Comment, Artist, и BitsPerSample.

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

свернуть все

Имя файла для записи или полный путь к файлу, заданный как вектор символов или строковый скаляр, включающий расширение файла.

В зависимости от места, в котором вы пишете, filename может принять одну из этих форм.

Местоположение

Форма

Текущая папка

Чтобы записать в текущую папку, укажите имя файла в filename.

Пример: 'sample_audio.wav'

Другие папки

Чтобы записать в папку, отличную от текущей папки, укажите полное или относительное имя пути в filename.

Пример: 'C:\myFolder\sample_audio.mp3'

Пример: 'myFolder\sample_audio.wav'

Удаленное местоположение

Чтобы записать в удаленное место, filename должен содержать полный путь к файлу, заданному в качестве равномерного указателя ресурса (URL) формы:

scheme_name://path_to_file/ my_file.ext

В зависимости от вашего удаленного местоположения, scheme_name может быть одним из значений в этой таблице.

Удаленное местоположениеscheme_name
Амазонки S3™s3
Windows Azure® Хранилище больших двоичных объектовwasb, wasbs
HDFS™hdfs

Для получения дополнительной информации см. раздел Работа с удаленными данными.

Пример: 's3://bucketname/path_to_file/sample_audio.mp3'

audiowrite поддерживает следующие форматы файлов.

Поддержка платформФормат файла
Все платформыВОЛНА (.wav)
OGG (.ogg)
FLAC (.flac)
Windows® и MacMPEG-4 AAC (.m4a, .mp4)

Пример: 'myFile.m4a'

Пример: '../myFile.m4a'

Пример: 'C:\temp\myFile.m4a'

При записи файлов AAC в Windows audiowrite заполняет переднюю и заднюю часть выходного сигнала дополнительными выборками молчания. Windows AAC энкодера также помещает очень резкое замирание и замирание на аудио. Это приводит к появлению аудио с увеличенным количеством выборок после записи на диск.

Типы данных: char | string

Аудио данных для записи, заданное как m-by- n действительная матрица, где m количество аудио выборок для записи и n количество аудиоканалов для записи.

Если либо m или n равен 1, затем audiowrite принимает, что эта размерность задаёт количество аудиоканалов, а другая размерность задаёт количество аудиоканалов выборок.

Максимальное количество каналов зависит от формата файла.

Формат файлаМаксимальное количество каналов
ВОЛНА (.wav)1024
OGG (.ogg)255
FLAC (.flac)8
MPEG-4 AAC (.m4a, .mp4)2

Допустимая область значений для данных в y зависит от типа данных y.

Тип данных yДопустимая область значений для y
uint80 ≤ <reservedrangesplaceholder0> ≤ 255
int16- 32 768 ≤ <reservedrangesplaceholder0> ≤ +32767
int32- 2^31 ≤ <reservedrangesplaceholder0> ≤ 2^31–1
single- 1,0 ≤ <reservedrangesplaceholder0> ≤ +1.0
double- 1,0 ≤ <reservedrangesplaceholder0> ≤ +1.0

Данные за пределами допустимой области значений обрезаются.

Если y является single или double, затем аудио данных в y должны быть нормированы к значениям в области значений − 1,0 и 1,0 включительно .

Типы данных: single | double | int16 | int32 | uint8

Частота дискретизации, в герцах, аудио данных y, заданный как положительный целочисленный скаляр, больший 0. При записи в .m4a или .mp4 файлы на платформах Windows, audiowrite поддерживает только скорости выборок 44100 и 48000.

Пример: 44100

Типы данных: double

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Title','Symphony No. 9','Artist','My Orchestra' инструктирует audiowrite написать аудио файла с заголовком «Симфония № 9» и исполнительской информацией «Мой оркестр».

Количество выхода бит на образец, заданное как разделенная запятой пара, состоящее из 'BitsPerSample' и целое число.

Доступен только для WAVE (.wav) и FLAC (.flac) файлы. Для файлов FLAC поддерживаются только 8, 16 или 24 бита на выборку.

Пример: 'BitsPerSample',32

Количество килобитов в секунду (кбит/с), используемых для сжатого аудио файлов, задается как разделенная запятой пара, состоящая из 'BitRate' и целое число. В Windows 7 или более поздней версии допустимые значения: 96, 128, 160 и 192.

В целом, большая BitRate Значение результатов в более высоком качестве сжатия.

Доступен только для MPEG-4 (.m4a, .mp4) файлы.

Пример: 'BitRate',96

Настройка качества для компрессора Ogg Vorbis, заданная как разделенная разделенными запятой парами, состоящая из 'Quality' и число в области значений [0 100], где 0 является более низким качеством и более высоким сжатием, и 100 является более высоким качеством и более низким сжатием.

Доступно только для OGG (.ogg) файлы.

Пример: 'Quality',25

Информация о заголовке, заданная как разделенная разделенными запятой парами, состоящая из 'Title' и вектор символов или строковый скаляр.

Типы данных: char | string

Информация о художнике, заданная как разделенная разделенными запятой парами, состоящая из 'Artist' и вектор символов или строковый скаляр.

Типы данных: char | string

Дополнительная информация, заданная как разделенная разделенными запятой парами, состоящая из 'Comment' и вектор символов или строковый скаляр.

Типы данных: char | string

Примечание

На платформах Mac, audiowrite записывает метаданные только в файлы WAVE, OGG и FLAC, и не будет записывать 'Title', 'Author', или 'Comment' поля для MPEG-4 файлов AAC.

Алгоритмы

Тип выходных данных определяется форматом файла, типом данных y, и заданный выход BitsPerSample.

Форматы файловТип данных yВыход BitsPerSampleВыход данных
ВОЛНА (.wav), uint8, int16, int32, single, double8uint8
16int16
24int32
uint8, int16, int3232int32
single, double32single
single, double64double
FLAC (.flac)uint8, int16, int32, single, double8int8
16int16
24int32
MPEG-4 (.m4a, .mp4),
OGG (.ogg)
uint8, int16, int32, single, doubleН/Дsingle
Введенный в R2012b