Spec-Zone.ru › Octave 7

33.5 Обработка аудиоданных

Octave предоставляет несколько функций для работы с аудиоданными. Аудио«образец» — это одно выходное значение от АЦП, т. е. небольшое целое число (обычно 8 или 16 бит), а аудиоданные — это просто последовательность таких образцов. Их можно охарактеризовать тремя параметрами: частотой дискретизации (измеряется в образцах в секунду или Гц, например, 8000 или 44100), количеством бит на образец (например, 8 или 16) и количеством каналов (1 для моно, 2 для стерео и т. д.).

Существует множество различных форматов представления таких данных. В настоящее время поддерживаются только два наиболее распространенных формата: *линейное кодирование* и *кодирование с μ-законом*. Существует превосходный FAQ по форматам аудио от Гвидо ван Россума guido@cwi.nl, который можно найти на любом FTP-сайте FAQ, в частности, в каталоге /pub/usenet/news.answers/audio-fmts архива rtfm.mit.edu.

Octave просто обрабатывает аудиоданные как векторы образцов (немоно данные пока не поддерживаются). Предполагается, что аудиофайлы с линейным кодированием имеют один из расширений lin или raw, а файлы, содержащие данные с кодированием по μ-закону, заканчиваются на au, mu или snd.

: y = lin2mu (x, n) ¶

Преобразовать аудиоданные из линейного в μ-закон.

Значения μ-закона используют 8-битовые беззнаковые целые числа. Линейные значения используют n-битовые знакомые целые числа или значения с плавающей запятой в диапазоне -1 ≤ x ≤ 1, если n равно 0.

Если n не указано, оно по умолчанию равно 0, 8 или 16 в зависимости от диапазона значений в x.

См. также: mu2lin.

: y = mu2lin (x, n) ¶

Преобразовать аудиоданные из μ-закона в линейный.

Значения μ-закона — это 8-битовые беззнаковые целые числа. Линейные значения используют n-битовые знакомые целые числа или значения с плавающей запятой в диапазоне -1 ≤ y ≤ 1, если n равно 0.

Если n не указано, оно по умолчанию равно 0.

См. также: lin2mu.

: record (sec) ¶
: record (sec, fs) ¶

Записать sec секунд аудио с системного стандартного аудиовхода с частотой дискретизации 8000 образцов в секунду.

Если задан необязательный аргумент fs, он определяет частоту дискретизации для записи.

Для более тонкого управления аудиозаписью используйте класс audiorecorder.

См. также: sound, soundsc.

: sound (y) ¶
: sound (y, fs) ¶
: sound (y, fs, nbits) ¶

Воспроизвести аудиоданные y с частотой дискретизации fs на стандартном аудиоустройстве.

Аудиосигнал y может быть вектором или двумерным массивом, представляющим моно или стерео аудио соответственно.

Если fs не задан, используется стандартная частота дискретизации 8000 образцов в секунду.

Необязательный аргумент nbits задаёт разрядность воспроизведения на аудиоустройстве и по умолчанию равен 8 битам.

Для более тонкого управления аудиовоспроизведением используйте класс audioplayer.

См. также: soundsc, record.

: soundsc (y) ¶
: soundsc (y, fs) ¶
: soundsc (y, fs, nbits) ¶
: soundsc (…, [ymin, ymax]) ¶

Масштабировать аудиоданные y и воспроизвести их с частотой дискретизации fs на стандартном аудиоустройстве.

Аудиосигнал y может быть вектором или двумерным массивом, представляющим моно или стерео аудио соответственно.

Если fs не задан, используется стандартная частота дискретизации 8000 образцов в секунду.

Необязательный аргумент nbits задаёт разрядность воспроизведения на аудиоустройстве и по умолчанию равен 8 битам.

По умолчанию y автоматически нормализуется к диапазону [-1, 1]. Если задан диапазон [ymin, ymax], элементы y, попадающие в диапазон ymin ≤ y ≤ ymax, масштабируются к диапазону [-1, 1] вместо этого.

Для более тонкого управления аудиовоспроизведением используйте класс audioplayer.

См. также: sound, record.

© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v7.2.0/Audio-Data-Processing.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API