![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
IBasicAudio, put_Volume - реальная граница?
DevilDevil © (2006-12-01 00:05:00)В справке говорится, что нижняя граница = -10000, в путной книжке по программированию музыки (про DirectMusic, правда), говорится -9600. Однако уже при -5000 музыки не слышно. А на самом деле?
XProger (2006-12-08 22:24:00) [1]DevilDevil, ogg многопоточен и громкость регулируется. mp3 mid wma в качестве музыки в своих проектах использовать не собираюсь.
DevilDevil (2006-12-05 23:21:00) [2]> XProger © (05.12.06 18:12) [7]
1) Thanks
2) Эх, Прогер, Прогер... вот у тебя в движке и 3D звук и поддержка OGG уже появилась... а вот трекерной музыки и нормальной многопоточной, с регулеровкой громкости, mp3-wma-mid-... музыки до сих пор нет...
XProger (2006-12-05 18:12:00) [3]DevilDevil, причёт тут OGG? Это стандартный диапозон DirectSound'а )
DevilDevil (2006-12-05 12:41:00) [4]> XProger © (05.12.06 01:52) [5]
Thanks, а в OGG какой диапазон?
XProger (2006-12-05 01:52:00) [5]
procedure TOGG.SetVolume(Value: Integer);
var
db : Integer;
begin
if not Ready then Exit;
if Value > 100 then Value := 100;
if Value < 0 then Value := 0;
if Value = 0 then
db := DSBVOLUME_MIN
else
db := Trunc(33.22 * 100 * ln(Value/100)/ln(10));
Buffer.SetVolume(db);
end;
Переводим проценты (0-100) в децибелы )
DevilDevil (2006-12-04 11:54:00) [6]> а книжку лохи писали
Ну если Вы автора кучи статей на gamedev.net (Мейсон МакКаски) и редактора этой книги Андре Ламота лохами считаете...
А как преобразовать экспонентный закон в линейный, знает кто-нибудь?
NailMan (2006-12-03 13:37:00) [7]Справка не врет, а книжку лохи писали, которые справку не читали. А чтобы плавно повышать звук сделай значения по кривой(достаточно будет 15-20 точек) от -10000 до 0. Я у себя в плеере(новой версии) даже решил сделать эту кривую настраиваемой. Выглядит как эквалайзер. Соотвественно когда пользователь изменяет громкость(движок максимум на 20 положений), то пихается нужное число громкости.
На самом деле у мелкого сделана громкость не с линейным законом, а с экспонентой, так что что -9000 что -5000 - одинаково оччень тихо. Почему так - х.з. Потому то я и сделал настраиваему кривую громкости, чтобы на слух приблизить шкалу громкости к линейной зависимости.
DevilDevil (2006-12-01 10:44:00) [8]Ну я вообще надеялся, что из мастеров сталкивался кто-либо с такой проблемой...
Дмитрий Белькевич (2006-12-01 05:43:00) [9]А кто ж правду знает? Проверь на тройке-пятерке машин/звуковух, сам узнаешь...
Есть предположение, что от производителя сильно зависит.