Как узнать частоту дискретизации аудиофайла

от admin

Re: [ALSA] Как узнать частоту дискретизации у звуковой карты?

А какая карта? Если встроенная, то почти наверняка 48. Ещё можешь запустить на воспроизведение любой трек (с любой частотой) и посмотреть где-то в /proc/asound/card0/pcm0p/sub0/hw_params — там будет частота, к которой приводит дорожку dmix (он не должен быть отключён). Эта частота и должна быть родной для устройства.

> А какая карта? Если встроенная, то почти наверняка 48.

Мне на надо «наверняка».

Раньше ядро писало 48000KHz, сейчас (2.6.32) не пишет. Поиск в /proc/asound результатов не дал.

Как я могу программно определить частоту дискретизации файла WAV?

Есть программа написанная на python, которая распознаёт текст с использованной библиотекой vosk. Для распознавания текста нужно передать частоту дискретизации и модель языка этой строкой : KaldiRecognizer(model, 96000) , где 96000 — это сама частота. чтобы определить частоту дискретизации файла я использую следующий код:

НО! Практически во всех файлах он определяет частоту: 48000, для некоторых аудио файлов она почему-то не подходит и выводится какой-то бред а не текст (просто набор слов), тобиш vosk не правильно определяет текст в аудио, решается эта проблема ручной заменой частоты на нужную, постоянно необходимо подбирать её. в чём может быть проблема? до этого, преобразовывал аудио файл в онлайн конвертации. Хотелось бы автоматизировать процесс.

Полагаю, проблема в теории

Может быть несколько причин, по которым ваш код неправильно определяет частоту дискретизации некоторых аудиофайлов:

1. Неподдерживаемый аудиоформат: Модуль wave, используемый в вашем коде, поддерживает только ограниченный набор аудиоформатов. Если аудиофайл, который вы пытаетесь открыть, находится в формате, который модуль не поддерживает, он может возвращать неправильную частоту. Возможно, вам потребуется использовать другой модуль, поддерживающий более широкий спектр аудиоформатов, например модуль pydub.

2. Неправильная информация о заголовке: Некоторые аудиофайлы могут содержать неправильную информацию о заголовке, которая не соответствует фактической частоте дискретизации. Это может произойти, когда файл создан неправильно или когда он конвертируется из одного формата в другой. В этом случае вам, возможно, потребуется вручную установить частоту дискретизации при передаче файла в библиотеку Vosk .

3. Кодирование с переменной скоростью передачи данных (VBR): Некоторые аудиофайлы могут иметь кодировку с переменной скоростью передачи данных, что означает, что скорость передачи данных изменяется по всему файлу. В этом случае частота, сообщаемая модулем wave, может быть неточной, и вам может потребоваться использовать другой метод для определения частоты дискретизации.

Чтобы автоматизировать процесс, вы можете попробовать использовать вышеупомянутый модуль pydub для преобразования аудиофайлов в поддерживаемый формат с фиксированной частотой дискретизации перед передачей их в библиотеку Vosk . Вы также можете попробовать использовать модуль mediainfo для извлечения частоты дискретизации непосредственно из метаданных файла вместо того, чтобы полагаться на модуль wave.

Информатика. Базовый курс

Звук

Звук представляет собой волну с меняющейся интенсивностью и частотой (громкостью и его тональностью соответственно). Чем больше амплитуда, тем громче звук. Чем больше частота, тем больше тон.

Хранение и передача аналогового звукового сигнала осуществляется за счёт представления его в виде электрического сигнала с помощью модуляции.

Звуковой сигнал

Модуляция – процесс изменения одного или нескольких параметров (амплитуды, частоты или фазы) высокочастотного колебания по закону низкочастотного сигнала (несущей частоты).

Существуют разные виды модуляции:

Амплитудная (АМ, amplitude modulation ) – изменение высокочастотных колебаний с частотой, равной частоте звукового сигнала. Например, несущей частотой может быть питание сети – 50 Гц. Или радиоволна СВ (MW) диапазона от 300 кГц до 3 МГц.

Частотная (FM, frequency modulation) – модуляция при которой информационный сигнал управляет несущей частотой. По сравнению с амплитудной модуляцией здесь амплитуда остаётся постоянной.

Цифровой сигнал

Для того чтобы аналоговый (непрерывный) сигнал представить последовательностью чисел определённой разрядности, его необходимо превратить в дискретный (прерывистый) сигнал, а затем подвергнуть квантованию.

Дискретизация и квантование

За кодирование звука отвечает звуковая карта, чем выше разрядность звуковой карты, тем больше уровней квантования она выдаёт и тем точнее становится звук при прослушивании.

На современном ПК карта всегда интегрирована в материнской плате, и имеет разрядность не ниже 24 бит.

Оцифровка звука – дискретизация и квантование аналогового сигнала.

1-й этап: Дискретизация сигнала по времени

Допустим, Вы, с помощью микрофона записали свой голос длительностью 5 сек. Этот фрагмент можно разбить на равные малые временный отрезки, которые в сумме дают нам 5 сек. Получаем частоту дискретизации (f, Гц), которая является обратной величиной времени: t сек. При частоте дискретизации 8 кГц=8 000 Гц, из формулы получаем отрезок, равный 0,000125 сек. или 125 миллисекунд.

Частота дискретизации2-й этап: Квантование сигнала по уровню

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

Например, возьмём 8 уровней, чтобы их закодировать в двоичный код нам достаточно 3 бита, что мы получаем из формулы Хартли:

формула Хартли

2³=8 – комбинаций двоичного ряда чисел от 000 до 111.

Параметр (i) – называется глубина кодирования. 8 бит – 256 уровней, 16 бит – 65 536 уровней, 24 бита – более 16 млн. уровней.

3 этап: Определяем скорость потока звука

Частота дискретизации – 22 кГц, глубина кодирования – 16 бит. Произведение этих двух величин дает нам скорость потока 352 кбит/сек.

скорость потока

Именно такой канал передачи данных потребуется для воспроизведения звукового файла в режиме он-лайн.

Расчёт количество звуковой информации

Для определения информационного объёма звуковой информации, нам необходимы следующие параметры:

Объём звуковой информации

  • f– частота дискретизации (Гц);
  • t – время звучания звукового файла (сек.);
  • i – глубина кодирования (бит);
  • n – количество звуковых каналов (n = 1, моно; n = 2, стерео).

Задача 1:

Одна минута записи цифрового аудиофайла занимает 1,3 МБ, разрядность звуковой платы — 8 бит. С какой частотой дискретизации записан звук?

сетка

Воспользуемся формулой: I=f∙t∙i∙n , из формулы видно что для нахождения частоты дискретизации формула примет вид: f=I/t∙i∙n.

1,3 МБ = 13,31,2 КБ = 1 363 148,8 Байт. Принимая во внимание что 8 бит = 1 Байту, делим 1 363 148,8 на 60, канал у нас записан 1, поэтому n=1.

audacity

Ответ: 22719,1 Гц или 22 050 Гц, см. основные настройки параметров звукового файла в программе Audacity

Читать:
Почему youtube не показывает 4к

Задача 2:

Две минуты записи цифрового аудиофайла занимают на диске 5,1 МБ. Частота дискретизации — 22 050 Гц. Какова разрядность аудиоадаптера?

сетка

Решение: 5,1 МБ = 5 347 737,6 Байт, делим по формуле: i = I / f∙ t ∙ n.

5 347 737,6 / 22 050 ∙ 120 = 2,02 Байт.

Ответ: 16 бит.

Кодирование видео

Информация хранится на различных носителях в виде файлов. Файл занимает память и может быть измерен в единицах измерения информации: бит, Байт, КБ и т.д.

Стремительное развитие интернета резко увеличило обмен информацией между людьми, для оптимизации хранения данных люди стали использовать специальные алгоритмы сжатия.

В основе цифрового видео лежит графический и звуковой файлы. Если рассчитать объём видеофайла без сжатия, нам необходимо учитывать тот факт, что человек начинает воспринимать смену кадров (картинок), как непрерывное плавное движение, если за 1 сек. будет мелькать 24 кадра.

Основы ТВ

Для приёма телевизионного сигнала используется антенна и приёмник. Приёмник – это электронная схема, которая преобразует сигнал в изображение на экране. В этом процессе участвует генератор кадровой развёртки и строчной.

Кадровая развёртка формируется на частоте, близкой к частоте переменного тока в бытовых электросетях – 50 Гц.

Кадровая развёртка, в сочетании со строчной служит для преобразования плоского двумерного изображения в одномерную последовательность, то есть, видеосигнал, а в телевизоре или мониторе компьютера для преобразования видеосигнала обратно в изображение на экране.

Для создания такой последовательности, используются специальные стандарты разложения:

576i, 625/50 — стандарт разложения, принятый для аналогового и цифрового телевидения в Европе, России, Австралии, странах Африки и Азии. 576 – это количество активных строк для аналогового телевидения и число пикселей по вертикали, для цифрового. Буква «i», англ. Interlace означает чересстрочную развёртку, передающую 25 целых кадров в 50 полях за 1 секунду.

480i, 525/60 — стандарт разложения, принятый в США, число активных строк составляет 480.

Существует также прогрессивная (p) кадровая развёртка, где все строки каждого кадра отображаются последовательно. Прогрессивная развертка стала широко распространена с появлением персональных компьютеров. Для комфортного чтения мелкого текста с экрана монитора, чересстрочная развертка стала малопригодна, так как мерцание строк вызывало быстрое утомление глаз.

Помимо развёртки существует ещё и соотношение сторон: аналоговое ТВ – 4:3, цифровое ТВ – 16:9, широкоформатное.

Форматы со сжатием

Давайте для начала посчитает объём видеофайла без сжатия, длительность 1 час 30 мин., 576i, 16:9. Звук записан с частотой дискретизации – 44 100 Гц, глубина кодирования 24 бит.

Решение:

Видео: I = 576 ∙ 1024 ∙ 25 ∙ 5400 ∙ 24 = 1 911 029 760 000 бит = 222,5 ГБ

Звук: I = 44 100 ∙ 5400 ∙ 24 = 5 715 360 000 бит = 681,3 МБ = 0,665 ГБ

Ответ: 223,2 ГБ.

Графический формат JPEG

Алгоритм JPEG (от англ. Joint Photographic Experts Group) в большей степени пригоден для реалистичных изображений с плавными переходами яркости и цвета, таковыми являются фотографии.

В основу алгоритма заложен переход от цветового пространства RGB к цветовому пространству YCbCr. Y – компонент яркости, Cb и Crсиний и красный цветоразностные компоненты. Суть сжатия состоит в том что для каждого блока пикселей 2х2 записывается не 12 значений, а 6, за счёт использования усреднённого компонента цвета.

Видео и аудио форматы MPEG

Алгоритм MPEG (англ. Moving Picture Experts Group) – стандарты сжатия и передачи цифровой видео и аудио информации. Базовым объектом кодирования в стандарте MPEG является кадр телевизионного изображения. Поскольку в большинстве фрагментов фон изображения остается достаточно стабильным, а действие происходит только на переднем плане, сжатие начинается с создания исходного кадра.

При сжатии аудио используются хорошо разработанные психоакустические модели, чтобы выбросить звуки, которые не слышны человеческому уху.

Современные цифровые стандарты

Современные дисплеи и мониторы уже давно вышли за рамки старых добрых стандартов.

Как узнать частоту дискретизации аудиофайла

УРОК №30

Тема

Решение задач на кодирование звуковой информации

Типы задач:

1. Размер цифрового аудиафайла (моно и стерео).

2. Определение качества звука.

3. Двоичное кодирование звука.

При решении задач учащиеся опираются на следующие понятия:

Временная дискретизация – процесс, при котором, во время кодирования непрерывного звукового сигнала, звуковая волна разбивается на отдельные маленькие временные участки, причем для каждого такого участка устанавливается определенная величина амплитуды. Чем больше амплитуда сигнала, тем громче звук.

Глубина звука (глубина кодирования) — количество бит на кодировку звука.

Уровни громкости (уровни сигнала) — звук может иметь различные уровни громкости. Количество различных уровней громкости рассчитываем по формуле N= 2 I где I – глубина звука.

Частота дискретизации количество измерений уровня входного сигнала в единицу времени (за 1 сек). Чем больше частота дискретизации, тем точнее процедура двоичного кодирования. Частота измеряется в герцах (Гц). 1 измерение за 1 секунду -1 ГЦ.

1000 измерений за 1 секунду 1 кГц. Обозначим частоту дискретизации буквой D. Для кодировки выбирают одну из трех частот: 44,1 КГц, 22,05 КГц, 11,025 КГц.

Считается, что диапазон частот, которые слышит человек, составляет от 20 Гц до 20 кГц.

Качество двоичного кодирования – величина, которая определяется глубиной кодирования и частотой дискретизации.

Аудиоадаптер (звуковая плата) – устройство, преобразующее электрические колебания звуковой частоты в числовой двоичный код при вводе звука и обратно (из числового кода в электрические колебания) при воспроизведении звука.

Характеристики аудиоадаптера: частота дискретизации и разрядность регистра.).

Разрядность регистра —число бит в регистре аудиоадаптера. Чем больше разрядность, тем меньше погрешность каждого отдельного преобразования величины электрического тока в число и обратно. Если разрядность равна I, то при измерении входного сигнала может быть получено 2 I =N различных значений.

Размер цифрового моноаудиофайла ( A) измеряется по формуле:

A=D*T*I/8, где D частота дискретизации (Гц), T – время звучания или записи звука, I разрядность регистра (разрешение). По этой формуле размер измеряется в байтах.

Размер цифрового стереоаудиофайла ( A) измеряется по формуле:

A=2*D*T*I/8, сигнал записан для двух колонок, так как раздельно кодируются левый и правый каналы звучания.

Учащимся полезно выдать таблицу 1, показывающую, сколько Мб будет занимать закодированная одна минута звуковой информации при разной частоте дискретизации:

Похожие статьи