Основные Функции Библиотеки Bass

  • Автор темы Автор темы Lomanu4
  • Дата начала Дата начала

Lomanu4

Команда форума
Администратор
Ofline
function BASS_Init(device: Integer; freq, flags: DWORD; win: HWND; clsid: PGUID): BOOL; Иницилаизирует звуковой поток
Пример использования:
BASS_Init(-1, 44100, 0, handle, nil);

function BASS_StreamFree(handle: HSTREAM): BOOL - Очищает звуковой поток, в скобках указываем имя потока.

function BASS_StreamCreateFile(mem: BOOL; f: Pointer; offset, length: QWORD; flags: DWORD): HSTREAM; - Создаем звуковой поток из локального файла
Пример использования
Имя потока := Bass_streamCreateFile(false, PChar('C:\muzic.mp3'),0,0,0);

function BASS_ChannelGetLength(handle, mode: DWORD): QWORD; - Узнать длинну звукового потока
Пример использования
BASS_ChannelGetLength(Имя потока,0);

function BASS_ChannelPlay(handle: DWORD; restart: BOOL): BOOL; - Начать проигрывать звук
Пример использования:
Bass_channelPlay(Имя потока, false);

function BASS_ChannelPause(handle: DWORD): BOOL; - Сделать паузу
Пример использования
BASS_ChannelPause(Имя потока);

function BASS_ChannelStop(handle: DWORD): BOOL; - Остановить проигрывание звука.
Пример использования
BASS_ChannelStop(Имя потока);

function BASS_ChannelSetPosition(handle: DWORD; pos: QWORD; mode: DWORD): BOOL; Установить новую позицию в потоке( необходимио для перемотки) Сдвигает позицию проигрывания на pos вперед.
Пример использования
BASS_ChannelSetPosition(Имя потока, ScrollBar1.Position, 0);

function BASS_ChannelGetAttribute(handle, attrib: DWORD; var value: FLOAT): BOOL; Получает атрибуты канала. Если не хочешь получать какое-нибудь свойство, ставь null
 
Ладно уговорили 🙂 , выкладываю код:

добавляем компонент Bass, пару кнопок,и обязательно в папку с программой кидаем библиотеку bass.dll скачать которую можно здесь Bass

Код:
uses  Bass;

var
radiourl:Cardinal;

procedure TForm1.StopRadioClick(Sender: TObject);
begin
if radiourl <> 0 then
begin
  BASS_ChannelStop(radiourl); // останавливаем воспроизведения
end;
end;

procedure TForm1.PlayRadioClick(Sender: TObject);
begin
BASS_ChannelStop(radiourl); //<--- если у вас только одна программа вещания то это писать не нужно
BASS_Init(-1,44000,0,Handle,nil); //устанавливаем параметры звуковой карты
radiourl:=BASS_StreamCreateURL('http://ruhit.imgradio.pro/RusHit',0,0,nil,0); // Создаем поток
BASS_ChannelPlay(radiourl,False);// проигруем
end;

Вот и всё пока ,незабываем ставить лайки
 
Скажите, а что то похожее есть для iOS?
Или такого в принципе нет!
 
Все аудио библиотеки построины на основе bass
 
Назад
Сверху Снизу