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

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

  • автор:

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

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

with wave.open(r'a.wav', "rb") as wave_file: frame_rate = wave_file.getframerate() print(frame_rate) 

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

Отслеживать
задан 14 фев 2023 в 18:45
123 6 6 бронзовых знаков

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

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

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

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

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

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

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

Осциллограмма звукового файла

Калькулятор отображает форму сигнала из входного wav-файла.

Этот калькулятор можно использовать для просмотра осциллограммы аудио сигнала. Осциллограмма это форма аудио сигнала, как функция от времени. Калькулятор принимает на вход wav файлы в формате PCM (линейный или закодированный А или Мю правилу) в результате выдается график с осциллограммой. Калькулятор может отображать осциллограммы для многоканальных аудио-файлов (стерео, квадро и т.д.)

Осциллограмма аудио файла

Звуковой файл
Перетащите сюда файлы
Начало фрагмента, секунды
Конец фрагмента, секунды
Максимальное число точек
Рассчитать
Точность вычисления
Знаков после запятой: 3
Формат файла
Осциллограмма
Файл очень большой, при загрузке и создании может наблюдаться торможение браузера.
Загрузить
Ссылка Сохранить Виджет

Алгоритм отображения осциллограммы

PCM данные хранятся в виде значений амплитуды сигнала, зафиксированного с равными промежутками времени (частота дискретизации). Одна секунда низкокачественного аудио с частотой дискретизации 8кГц содержит 8 тысяч отсчетов амплитуды. Чтобы отобразить осциллограмму этого фрагмента без преобразований потребуется экран шириной 8 тыс. пикселей, но кажется, что такое разрешение в 2020 году еще не столь популярно. Следовательно требуется некий алгоритм для упаковки формы сигнала.
Наш калькулятор использует среднеквадратическое значение для отображения нескольких отсчетов в виде одной линии на графике осциллограммы. Краткое описание алгоритма отрисовки:

  • По разрешению экрана определить число точек P (в калькуляторе этот параметр задается в настройках)
  • Вычислить число отсчетов в одной точке S=T/P, where T — количество отсчетов амплитуды во всем фрагменте
  • Для каждой точки вычислить среднеквадратичное значение по формуле:

Некоторые особенности форматов PCM аудио

PCM аудио данные могут хранитья либо в виде чисел с плавающей точкой, либо в виде целых чисел различной разрядности. Для отрисовки в едином стиле калькулятор преобразовывает амплитуды в виде целых чисел в значения с плавающей точкой в диапазоне от -1 до 1. Как оказалось существует два способа хранения амплитуды в виде целых чисел. Если разрядность отсчета 8 бит или меньше, то значение амплитуды хранится как беззнаковое целое, в противном случае (разрядность более 8 бит) значение хранится со знаком в дополнительном коде. Калькулятор преобразует 8-битные значения амплитуды в число с плавающей точкой по формуле: (s(n)-128)/128. Более длинные целые разрядностью 16, 24 или 32 бита преобразуются в число с плавающей точкой так: s(n)/|int_min|. |int_min| равняется 32768; 8388608 и 2147483648 для целого длинной 16, 24 и 32 бит соответственно.

Настройки файла Windows Media Audio — Общие

Вкладка Общие в диалоговом окне Настройки Windows Media аудио файла позволяет вам указать частоту дискретизации, разрядность и каналы для кодируемого файла.

  1. Частота дискретизации Позволяет вам установить частоту дискретизации 44.100, 48000, или 96000 кГц. Используйте эту настройку для установки частоты дискретизации соответствующей исходному материалу или используйте ближайшее более высокое значение.
  2. Разрядность Позволяет вам установить разрядность 16 или 24 бита. Используйте эту настройку для установки частоты дискретизации соответствующей исходному материалу или используйте ближайшее более высокое значение.

Прим. Всегда помните о предполагаемом использовании файла. Для интернета, например, не обязательно использовать высокое разрешение.

  • Выберите Постоянный битрейт , если вы хотите ограничить размер файла. Чтобы рассчитать файл, который кодируется с постоянным битрейтом, просто перемножьте битрейт на длительность файла.
  • Выберите Переменный битрейт , если вы хотите? чтобы битрейт изменялся в зависимости от характера и сложности кодируемого материала. Чем более сложные фрагменты в исходном материале, тем выше битрейт и тем больше конечный файл.
  • Выберите Без потерь для кодирования файла с компрессией без потерь.
  • Позволяет вам сделать настройки битрейта в зависимости от выбранного режима и/или выходных каналов. Чем выше битрейт или выбранное качество, там больше размер файла.
  1. ��
  2. Вдаваясь в детали
  3. Экспорт в аудио микс
  4. Формат файла
  5. Windows Media аудио файлы (Только для Windows)
  6. Настройки файла Windows Media Audio — Общие
  • Введение
  • Вдаваясь в детали
    • Настройка вашей системы
    • VST подключения
    • Окно проекта
    • Управление проектом
    • Треки
    • Управление треком
    • Партии/части и события
    • Редактирование диапазона
    • Воспроизведение и Транспорт
    • Виртуальная клавиатура
    • Запись
    • Квантизация МIDI и аудио
    • Фейды и кроссфейды
    • Трек Аранжировщик (Только в версии Cubase Elements)
    • Маркеры
    • MixConsole (Микшер)
    • Aудио эффекты
    • Аудио обработка и функции
    • Редактор cэмплов
    • Хитпойнты
    • Редактор аудио части
    • Управление воспроизведением семплов с помощью трека семплера (Только в версии Cubase Elements)
    • Пул
    • MediaBay
    • Автоматизация
    • VST инструменты
    • Установка и управление плагинами
    • Дистанционное управление Cubase
    • MIDI параметры, работающие в реальном времени,
    • Использование MIDI устройств
    • MIDI обработка
    • MIDI редакторы
    • Функции аккордов
    • Аккордовые пэды
    • Редактирование темпа и тактового размера
    • Экспорт в аудио микс
      • Микс в аудио файлы
      • Доступные для экспорта каналы
      • Расположение файла
      • Формат файла
        • Wave Файлы
        • AIFC файлы
        • AIFF Файлы
        • MP3 (MPEG 1 Layer 3) Файлы
        • Windows Media аудио файлы (Только для Windows)
          • Настройки файла Windows Media Audio — Общие
          • Настройки файла Windows Media Audio — Дополнительно
          • Настройки файла Windows Media Audio — Медиа

          © 2017 Steinberg Media Technologies GmbH All rights reserved.

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

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

          Несмотря на преклонный возраст, формат звука MP3 (MPEG-1 audio layer 3) по-прежнему остается лидером и большинство музыкальных треков и других звукозаписей кодируются именно в этом формате. Из преимуществ можно отметить хорошее качество на выходе, отличную компрессию, аппаратную поддержку практически на всей аппаратуре, низкие системные требования и поддержку со стороны всех редакторов. Минусов немного и если опустить ограничения на количество каналов (максимум два) и частоту дискретизации (максимум 48кГц), которые не очень то и критичны, то самым главным можно считать особенность кодера, который использует спектральные отсечения согласно психоакустической модели. Если простыми словами, то кодер берет за основу слух среднестатистического человека, который в теории не слышит ниже 20 Гц (глубокие упругие басы) и выше 15 кГц (детализация речи, вокальные инструменты и прочее) и отрезает ту самую часть спектра, либо больше, если выставлено низкое качество. Зачем кодировать то, что многие не в силах услышать или не хотят приобретать аппаратуру, способную это воспроизводить? Также подумали разработчики и создали замечательный формат MP3. Все что за этими пределами – удел Hi-Res аудио, а там главенствуют другие форматы, да и ценники на аппаратуру совсем другие, поэтому если хотите «слышать все», переходите на «новый уровень».

          Для распространенной бытовой аппаратуры формат MP3 наиболее предпочтителен, на нем и остановимся. Благодаря своеобразному алгоритму кодирования, есть возможность быстрого определения действительно качественных аудиозаписей, полученных путем кодирования с CD-DA или конвертирования с Lossless (несжатого) источника от апконвертов, т.е. полученных путем конвертирования из более низкого в более высокое качество (128kbps -> 320kbps). Наиболее популярные кодеры делают характерный срез в зависимости от битрейта:

          • CBR 320 – 20000-20500 Гц
          • CBR 256 — 19500 Гц
          • CBR 192 – 18000-18500 Гц
          • CBR 160 – 16500-17000 Гц
          • CBR 128 — 16000 Гц
          • VBR V0 — 22100 Гц
          • VBR V2 — 18500 Гц

          Все это можно посмотреть на наглядных спектрограммах. В качестве примера трек с качеством 320kbps:

          Можно заметить характерный срез на 20,5 кГц, а почти все, что выше, вырезалось кодером. Остались только небольшие всплески, которые алгоритм счел нужным оставить. Также срезалась небольшая часть информации выше 16 кГц, виден небольшой «бордюр». В оригинале спектрограмма следующая:

          Если сравнить размеры файла, то во FLACе трек весит в 3 раза больше, чем в MP3 320kbps:

          Если взглянуть на спектрограмму с битрейтом 128kbps, то там вырезано практически все, что выше 16 кГц:

          Если у вас не «изысканный» слух и нет соответствующей аппаратуры, способной досконально воспроизводить несжатую музыку, то особого смысла за ней гнаться нет, хватит и честного MP3 320kbps. Но вот главная проблема заключается в том, что некоторые недобросовестные пользователи конвертируют треки из 128kbps, выдавая их за 320kbps (апконверт). При аналогичном размере качество будет соответствовать 128kbps, поэтому дабы не хранить гигабайты «дутых» треков, есть несколько программ, помогающих выявить «пережатки».

          Spek:

          Наиболее популярная программа для проверки аудиозаписей:

          Размер крохотный, есть портабельная и установочные версии. Для удобства рекомендую добавить соответствующий пункт в контекстное меню проводника. К сожалению, не умеет работать с несколькими файлами одновременно, поэтому проверка всей музыкальной коллекции/диска может затянуться.

          Spectro:

          Представляет собой альтернативу предыдущей программы, но дополнительно выдает некоторую информацию по треку:

          Также как и предыдущая, не умеет работать с несколькими файлами (папками) одновременно.

          Foobar:

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

          Console Audio Tools:

          Представляет собой пакет утилит для проверки и конвертации аудиофайлов. Умеет стоить наглядные спектрограммы:

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

          *Upd, совсем забыл про замечательную программу Audacity, спасибо Stanislav Yuzva, что напомнил про нее

          Audacity:

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

          Основной упор сделан именно на редактирование: склейка/обрезка, изменение параметров звучания и наложение эффектов, сведение дорожек и прочее. В отличие от популярных монстров типа Adobe Audition, эта программа небольшая (есть портабельная версия) и абсолютно бесплатная. Единственный минус, нет быстрого доступа к построению спектрограммы, первые две проги в этом плане гораздо предпочтительнее.

          Выводы:

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

          Ах да, сейчас в самом разгаре распродажа, поэтому рекомендую заглянуть!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *