Как воспроизвести wav-файл из приложения Free Pascal, работающего в Linux?

У меня есть мультиплатформенное приложение, написанное на Free Pascal. Это приложение воспроизводит короткий звук на каком-то событии. В Windows я могу сделать это с помощью MMSystem и sndPlaySound('sound.wav'). Однако я не знаю, как это сделать в Linux без внешних библиотек.

У меня есть решение для воспроизведения с помощью SDL и OpenAL, но я не хочу, чтобы какая-либо зависимость от этих библиотек воспроизводила один короткий звук. Существует ли проигрыватель командной строки Linux, который по умолчанию присутствует в большинстве дистрибутивов? Формат файла не имеет значения; Я буду конвертировать его.


person Dibo    schedule 07.08.2012    source источник


Ответы (4)


mplayer - это командная строка и графика. Вы можете запустить его на tty и pty.

person alinsoar    schedule 07.08.2012
comment
Однако встроено ли это во многие системы Linux? Я знаю, что он почти вездесущ, но все мои Linux-системы требовали для него отдельной установки. - person Ricardo Altamirano; 08.08.2012
comment
Mplayer должен быть установлен в Linux, а насколько я знаю, его нет даже в Ubuntu. Есть ли в ядре какой-нибудь проигрыватель Linux (любого формата)? - person Dibo; 08.08.2012
comment
нет. в ядре linux есть только звуковой драйвер, и он зависит от вашей звуковой карты. В ubuntu можно установить с помощью apt-get install mplayer или с ./configure && make && make install , если скачать исходники с официального сайта (в Венгрии). - person alinsoar; 08.08.2012

Вы можете попробовать aplay, но это зависит от ALSA. Может сокс?

person entropy    schedule 07.08.2012

Программа mplayer - "the movie player" дает вам возможность использовать графический интерфейс пользователя или использовать консоль. Так что я бы предположил, что у него есть решение вашей проблемы.

person Dylan    schedule 07.08.2012

Вы ищете BEEP, BLEEP и BOOP и BOP (и низкочастотный пердеж)? Используйте сокс. Если вы хотите воспроизвести файл: используйте sox или SDL.

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

Звуковой сигнал, вероятно, нужен вам, хотя. Установите пакет, поместите его на материнскую плату (ДА... без подключения? используйте sox) и включите модуль pcspkr. (В Ubuntu по умолчанию он занесен в черный список.) Если BEEP ничего не выдает, попробуйте sox.

Хоть что-то у тебя будет. Да, вы можете проверить загруженные модули и установленные пакеты. Я считаю, что я сделал и то, и другое.

person snobhobber3    schedule 28.12.2019