Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Изменить громкость записи [D6]


Kotka ©   (2003-01-05 15:18:00) 

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


Digitman   (2003-01-08 09:30:00) [1]

знач-е каждого байта массива в подобных случаях как правило интерпретируется как целое число со знаком в диапазоне от -128..+127.

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

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

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


Kotka   (2003-01-06 00:47:00) [2]

8000 Гц 8бит моно


Digitman   (2003-01-05 17:26:00) [3]

Это зависит от формата, в котором хранится оцифрованный сигнал в твоем массиве


Наверх

Титульная страница Поиск, карта сайта Написать письмо