Звуковой массив,.. миф или реальность?!

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Звуковой массив,.. миф или реальность?!

Сообщение Nik » 01.09.2010 15:51:24

Вот про BASS для Linux, увы, не знал - на сайте про ней не слова, да и на форуме только сама библиотека (не самой свежей версии). Что касается выбора между BASS и Fmod - то это дело вкуса. Я сам уже 6 лет с BASS работаю (пока только под Win) - всё более чем устраивает :)
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: Звуковой массив,.. миф или реальность?!

Сообщение А.Н. » 01.09.2010 21:01:42

Исходники на Pascal. Использовать даже с CBuilder уже не получится. :-(
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Звуковой массив,.. миф или реальность?!

Сообщение Andreich » 02.09.2010 09:13:59

Nik
А где можно глянуть минимальный пример по использованию BASS для Lazarus (желательно в русскоязычном варианте)?
Например загрузка и воспроизведение маленького wav файла...
Andreich
постоялец
 
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Re: Звуковой массив,.. миф или реальность?!

Сообщение А.Н. » 02.09.2010 10:36:48

Там хорошая документация и, вроде бы, есть примеры. Скачайте архив и смотрите. К тому же, в сетке где-то валяется статья про использование BASS. А в lazarus или нет - разницы никакой.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Звуковой массив,.. миф или реальность?!

Сообщение FedeX » 02.09.2010 11:54:29

Могу скинуть исходники своей недописанной кроссплатформенной звуковой библиотеки. Она работает и под Linux и под Windows. Для воспроизведения под Вин использует DirectSound или OpenAL (по выбору), для Линукс - только OpenAL. Умеет декодировать Ogg (если скомпилировать с соответствующим ключом и положить - под вин - в папку с приложением несколько длл с кодеком). Все файлы для проигрывания сначала загружаються в память, а уже потом из памяти могут неоднократно очень быстро воспроизводиться (причём используеться память аудиокарты, если доступна - она бывает на некоторых оч. дорогих аудиокартах). В отличие от PlaySnd можно проигрывать одновременно несколько звуков и они аппаратно (аудиокартой) микшируються. Есть возможность даже позиционировать источники звука в 3Д пространстве.
Но в библиотеке только начата поддержка потокового аудио (например длинный трек музыки, можно будет не грузить сразу весь в память - в расжатом виде это много - а одновременно читать с диска и сразу воспроизводить).

правка
Вообщем вот, если надо путь к SVN:
https://phloxlib.svn.sourceforge.net/sv ... hloxlib/HF

Туда я недавно залил последнюю версию, но не обновлял её уже давно (около двух лет). Библа устроена так чтоб использоваться как отдельная длл (со), но может быть и прикомпилирована к проекту.
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Re: Звуковой массив,.. миф или реальность?!

Сообщение Andreich » 02.09.2010 14:39:39

FedeX
Спасибо! Особенно заинтересовало использование OpenAL, раньше с ним не работал.
Возможно, попробую обойтись первое время без движка как такового, на чистом OpenAL (надо только посмотреть, как он себя в Linux ведет).

Нашел интересную и весьма понятную статейку по OpenAL на GameDev.ru, как раз для начинающих работать со звуком! Проверил пример на Lazarus - все отлично работает, звук играет,.. красота. :)

Кому интересно, прикладываю пример проекта в lazarus (воспроизводится wav-файл). Инсталятор OpenAL для Windows можно взять здесь.

P.S. Если нетрудно, кто под Linux, отпишитесь как оно там работает.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Andreich
постоялец
 
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Re: Звуковой массив,.. миф или реальность?!

Сообщение FedeX » 02.09.2010 15:01:06

Под Линухом все должно быть гуд. Жаль я сейчас не под ним проверить не смогу(
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Re: Звуковой массив,.. миф или реальность?!

Сообщение debi12345 » 02.09.2010 15:21:01

Есть ли возможность заранее подгрузить все нужные звуки в некое подобие массива и потом их воспроизвести?
А в чем проблема ? Навскидку :

Код: Выделить всё
type
  pbyte: ^byte;

var 
wav1_len: integer;
[..]
wavN_len: integer;
all_wavs: array[0..wavs_cnt] of pbyte;

-------------
wav1_len:= read_snd_file(snd_file1, all_wavs[0]);
[...]
wavN_len:= read_snd_file(snd_fileN, all_wavs[N-1]);
------------
[...]
wav_play_proc(all_wavs[X],wavX_len);
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Звуковой массив,.. миф или реальность?!

Сообщение Andreich » 03.09.2010 13:08:28

В примере, который я выложил выше, используется один OpenAL источник и соответственно обрабатывается один звуковой файл... Но ничто не мешает сделать массив и загрузить несколько файлов, а затем воспроизводить нужный элемент, причем возможно воспроизводить звук из нескольких источников одновременно. Я уже проверил этот вариант! Так что можно с уверенностью говорить, что звуковой массив - реальность (причем кросс-платформанная). :)
Andreich
постоялец
 
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Re: Звуковой массив,.. миф или реальность?!

Сообщение kosteek » 26.10.2010 15:48:15

Вот пример который может воспроизводить звуковой массив через OpenAL. (Код сыроват).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
kosteek
постоялец
 
Сообщения: 203
Зарегистрирован: 24.07.2008 14:57:09
Откуда: Украина, г.Славянск

Re: Звуковой массив,.. миф или реальность?!

Сообщение minoshi » 26.10.2010 18:29:42

Andreich писал(а):FedeX
P.S. Если нетрудно, кто под Linux, отпишитесь как оно там работает.


не работает
консоль вывалила только две строки при сборке
Код: Выделить всё
[TMainIDE.DoRunProject] A
TMainIDE.DoInitProjectRun A True -1
Аватара пользователя
minoshi
постоялец
 
Сообщения: 279
Зарегистрирован: 17.05.2008 21:23:38

Re: Звуковой массив,.. миф или реальность?!

Сообщение alex208210 » 23.06.2011 18:59:57

FedeX
P.S. Если нетрудно, кто под Linux, отпишитесь как оно там работает.

linux sabayon(gentoo), fpc 2.4.4 .. демка работает звук играет..

Вот пример который может воспроизводить звуковой массив через OpenAL. (Код сыроват).

Этот тоже работает
alex208210
постоялец
 
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 39

Рейтинг@Mail.ru