Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Мультимедиа
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.05.2010, 09:31
cstyle cstyle вне форума
Прохожий
 
Регистрация: 01.05.2010
Сообщения: 5
Репутация: 10
По умолчанию bass.dll зацикливание звука без пауз

При зацикливании звука при помощи bass.dll возникает такая проблема: звук воспроизводится и перед повторением возникает пауза буквально в несколько милисекунд, но это очень мешает моей программе. Например: играют зацикленные ударные и гитара.. при повторе ударные будут отставать от гитары на эти самые милисекунды с каждым повтором все больше и больше...
Так вот можно ли сделать зацикливание в bass непрерывным?
Заранее спасибо.

код:
Bass_StreamFree(Channel1);
Channel1:= Bass_StreamCreateFile(false,PChar('Sounds/DrumMachine/Sample01.wav'),0,0,BASS_SAMPLE_LOOP);
BASS_ChannelPlay(Channel1,false);

Последний раз редактировалось cstyle, 05.05.2010 в 09:39.
Ответить с цитированием
  #2  
Старый 05.05.2010, 15:05
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Цитата:
Сообщение от cstyle
При зацикливании звука при помощи bass.dll возникает такая проблема: звук воспроизводится и перед повторением возникает пауза буквально в несколько милисекунд, но это очень мешает моей программе. Например: играют зацикленные ударные и гитара.. при повторе ударные будут отставать от гитары на эти самые милисекунды с каждым повтором все больше и больше...
Так вот можно ли сделать зацикливание в bass непрерывным?
Заранее спасибо.

код:
Bass_StreamFree(Channel1);
Channel1:= Bass_StreamCreateFile(false,PChar('Sounds/DrumMachine/Sample01.wav'),0,0,BASS_SAMPLE_LOOP);
BASS_ChannelPlay(Channel1,false);
Мутишь семплер?
Поступают обычно так: есть 2 канала. Второй, разумеется, заранее загружен и подготовлен. Сначала вызывается запуск второго, и сразу остановка первого. Дело в том, что метод, который юзаешь ты - это тормознутая тема, так как загрузка звука в память - дело долгое. От туда и пауза.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:43.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter