Сетевое издание
Международный студенческий научный вестник
ISSN 2409-529X

SOFTWARE UNIT FOR AUDIO SIGNAL PROCESSING

Vasilev S.V. 1
1 Bauman Moscow State Technical University
The modern world is more and more immersed in the process of digitalization of all branches of human life. The transmission and processing of digital information firmly occupies a dominant place in various advanced areas of human life, such as medicine, television and telecommunications, mobile digital communications and much more. In this regard, much attention is paid to the development and improvement of various methods and methods of digital signal processing. The most commonly used audio format is WAVE. This format is convenient because it is used on the Windows operating system and most often all audio files are stored on the computer in this particular format, in the form of "chains". The uncompressed audio file is directly stored on a personal computer in wav format using LPCM, or Linear Pulse Code Modulation. This format is able to save the audio file in the usual size, without compression, as a result, it is very convenient for the user to work with all audio material without losing its quality. These properties can also have files with the wav extension. When developing the interface, FXML and CSS were used, which made it possible to create icons that would be convenient for any user.
equalizer
audio file
audio player
Java
wav

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

Проводимое исследование было направлено на разработку аудиоплеера, эквалайзер которого поддерживал бы файлы с расширением «.wav». При подготовке к исследованию рассматривались два основных режима работы аудиоплеера. Первый, статический, при котором файл, выбранный для работы, заносится полностью в буфер обмена для последующей возможной обработки. И второй, потоковый режим, при котором используются части определенного аудиофайла. Потоковый режим в свою очередь позволяет работать над большим количеством файлов, следующих друг за другом. Ввиду подобной функции вышеописанный буфер также называется кольцевым [1].

Для работы с аудио чаще всего используется формат WAVE. Данный формат удобен тем, что используется на операционной системе Windows и чаще всего все аудиофайлы хранятся на компьютере именно в данном формате, в виде «цепочек». По процессу работы подобные файлы относятся к приложению формата RIFF, который напоминает форматы, используемые на компьютерах Macintosh и Amiga [3]. Также все звуки, вне зависимости от степени сжатия файла обычно хранятся в формате wav.

Несжатый файл с аудио непосредственно хранится на персональном компьютере в формате wav, при этом используется LPCM, или линейная импульсно-кодовая модуляция [2]. Данный формат способен сохранять аудиофайл в привычном размере, без сжатия, вследствие чего, пользователю очень удобно работать со всем аудиоматериалом, без потери его качества. Такими свойствами также может обладать и файлы с расширением wav.

Однако у формата wav есть и свои недостатки, например, аудиофайлы с подобным расширением имеет достаточно большой вес, что мешает свободно передавать такие файлы по сети Интернет. Несмотря на этот минус, пользователи все равно используют данный формат, чтобы хранить аудиофайлы на персональных компьютерах в высоком качестве, особенно в тех моментах, когда от размера файла не страдает производительность и остается еще место на диске. Часто формат wav используют при редактировании аудиофайлов и аудиодорожек, так как этому не предшествует процедура распаковки данных.

В процессе исследования и разработки аудиоплеера было выяснено, что наиболее удачным для разработки эквалайзера фильтром будет являться КИХ-фильтр. Данный фильтр имеет ряд преимуществ перед другими, а именно: достаточная устойчивость при работе, не требуется обратная связь, присутствует линейность [4].

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

При разработке программы использовалась среда IntelliJ IDEA, а также язык программирования Java. Для удобства работы также использовались платформа JavaFX, позволяющая разрабатывать различные приложения с большой вариативностью интерфейсов. Данная платформа также может реализовывать большое количество различного вида приложений, которые могут запускаться как с персонального компьютера, от определенной операционной системы, так и в каких-либо приложениях сети Интернет.

При разработке интерфейса использовался языки FXML и CSS, которые позволили создать значки, которые были бы удобны любому пользователю. Благодаря Java можно легко работать с потоками, что позволяет продуктивно создавать сразу несколько потоков выполнения, которые также можно запускать одновременно [2].

Таким образом, после исследования возможностей создания аудиоплеера с использованием различных сред и языков программирования, можно отметить, что эквалайзер был реализован с помощью КИХ-фильтра на языке Java. Сам графический интерфейс был создан с помощью платформы JavaFX. Кольцевой буфер, который был описан выше, был создан с помощью кода. Использовалась платформа MATLAB, которая позволила создать оптимальную функцию фильтрации. При разработки интерфейса предпочтение было отдано отображению спектров сигнала, которое также было разработано с помощью языка Java.