Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Самый простой звуковой движок(подскажите)

Самый простой звуковой движок(подскажите)

Поделиться

Страницы: 1 2 Следующая

GladiatorПостоялецwww20 мар. 201722:24#0
Привет.

Нужен самый простой бесплатный звуковой двиг, который можно встроить в программу максимум за 2 дня. Нужно проигрывание ogg. Пока пытаюсь разобраться с openAL, однако тут есть непонятки определённые. Хотелось бы что-то простое вроде bass'а. Кстати, на счёт bass'а, кто-нить знает если я покупал bass, то как мне скачать его с офф. сайта ? Там только кнопочка Purchase.

AMM1AKПостоялецwww20 мар. 201723:42#1
Gladiator
Какие проблемы с яOpenAL?
ZabПостоялецwww21 мар. 20170:04#2
Чем не устраивает оригинальный ogg vorbis?
MrShoorУчастникwww21 мар. 20170:11#3
Gladiator
> Кстати, на счёт bass'а, кто-нить знает если я покупал bass, то как мне скачать
> его с офф. сайта ? Там только кнопочка Purchase.
BASS бесплатен для некоммерческого, и для коммерческого, если продукт дешевле 4010 евро. Поэтому скачать его можно всегда, бесплатно:
bass | Самый простой звуковой движок(подскажите)
udp. Сейчас почитал ихнюю лицензию. Походу поменяли, для продуктов стоимостью от 10 до 40 баксов теперь надо покупать лицензию за 125 евро, раньше такого не было.

Правка: 21 мар. 2017 0:14

gamedevforПользовательwww21 мар. 20170:26#4
Использую https://github.com/FrictionalGames/OALWrapper но есть один недостаток он тянет за собой SDL2 и мне пришлось два дня убить чтобы отвязать его от SDL.
FROLПостоялецwww21 мар. 20171:14#5
MrShoor
+1
Басс оч. крут! :)
gamedevforПользовательwww21 мар. 20171:15#6
FROL
> Басс оч. крут!

Чем же?

ZabПостоялецwww21 мар. 20171:51#7
ogg формат идет со своей родной библиотекой воспроизведения. Повторяю вопрос, чем она не устраивает, если нужен только ogg? Или не только он нужен? Или вы не на С++ программируете?

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

Правка: 21 мар. 2017 1:54

MrShoorУчастникwww21 мар. 20173:05#8
gamedevfor
> Чем же?
Простейший API. Широкие возможности (хавает кучу форматов, 3д звук, апи на коллбеках для генерации звука и куча еще чего, вот сам почитай: https://www.un4seen.com ). Кроссплатформа.

upd. А еще шикарная справка и огромный ворох примеров по использованию.

Правка: 21 мар. 2017 3:06

MrShoorУчастникwww21 мар. 20173:09#9
Zab
> ogg формат идет со своей родной библиотекой воспроизведения.
ogg - это вообще контейнер. Туда можно положить что угодно, в каком угодно формате. Как это, воспроизводить контейнер?
ZabПостоялецwww21 мар. 20173:20#10
MrShoor
> ogg - это вообще контейнер. Туда можно положить что угодно, в каком угодно формате. Как это, воспроизводить контейнер?
ogg vorbis - это конкретное наполнение контейнера.
В свое время пришлось переходить на эту библиотеку, когда в течение почти двух лет mp3 был форматом не легальным (когда его AOL перекупила и закрыла). Теперь такой необходимости нет, вроде бы.
DampireПостоялецwww21 мар. 20177:36#11
https://github.com/raysan5/raylib/issues/52
Целый список библиотек.
BUzerУчастникwww21 мар. 20178:53#12
Zab
> ogg формат идет со своей родной библиотекой воспроизведения.
Так там же вроде только декодер, разве нет? Стриминг и вывод звука через платформенное апи всё равно надо самому писать.
ZabПостоялецwww21 мар. 20179:40#13
BUzer
> Так там же вроде только декодер, разве нет? Стриминг и вывод звука через платформенное апи всё равно надо самому писать.
А вот этого не помню. У меня было свое низкоуровневое воспроизведение, поэтому не обратил внимание есть ли в библиотеке.
GladiatorПостоялецwww21 мар. 201712:17#14
Нашёл уроки здесь на сайте(openAL). Очень хорошие.
Единственное есть непонятки с тем как это работает. В частности, я думаю что звуки скорее всего нужно кешировать как-то, чтобы каждый раз не грузить их с диска. И вот в этом месте непонятка.

Если разобрать код, то там есть следующее:

// Создаем источник соответствующий нашему звуку
  alGenSources(1, &mSourceID);

Почитал спецификацию, но не нашёл конкретно что эта функция делает. Нет, я понимаю, что она создаёт источник. Но что это значит для меня ? Я могу сколько угодно источников сделать ?

т.е. условно сделать мапу:

// key: filename, value: sourceID
std::map<string, int> soundsList;

Это так делается ?

Страницы: 1 2 Следующая

/ Форум / Программирование игр / Звук

2001—2017 © GameDev.ru — Разработка игр