Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.82/313: Рейтинг темы: голосов - 313, средняя оценка - 4.82
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341

bass.dll

28.10.2009, 15:10. Показов 65254. Ответов 129
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Так как гугл не помог мне, обращаюсь к этому форуму=) можете плз привести пример использование bass.dll . Если точнее- то показать как ее подключить к проекту, как обращаться к ее функциям(например привести примерчик проигрывания файла).зарание спасибо=)
3
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.10.2009, 15:10
Ответы с готовыми решениями:

Куда закинуть bass.dll,bass.h,bass.lib
Ребят, пересмотрел темы на форуме, гуглил, толком ничего не нашел. Собственно такая проблема, вот я скачал архив bass.zip, в нем находится...

Где взять bass.dll bass.lib for win64
Приветствую. Тут много тем было на эти вопросы , но ответа не нашел. Где можно и вообще есть ли bass.dll,bass.lib для Windows 8.1 64...

[Linker Error] 'E:\Programming\C++\BASS.DLL\BASS.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
Народ, подскажите пожалуйста, из-за чего ошибку билдер выбивает?? 'E:\Programming\C++\BASS.DLL\BASS.LIB' contains invalid OMF record,...

129
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
27.01.2010, 21:41  [ТС]
Студворк — интернет-сервис помощи студентам
Да, если как подключать то также как и bass.dll, потом пишешь прост фунцкцию
BASS_LoadPlugin("basswma.dll);, кактотак называеться, в хелпе все написанно, как подрубить еще одну дллку
0
 Аватар для Legalas
2 / 2 / 0
Регистрация: 16.01.2010
Сообщений: 5
28.01.2010, 05:13
Спасибо за ответы...
0
28.01.2010, 14:08

Не по теме:

Цитата Сообщение от Falen Посмотреть сообщение
Да, если как подключать то также как и bass.dll, потом пишешь прост фунцкцию
BASS_LoadPlugin("basswma.dll);, кактотак называеться, в хелпе все написанно, как подрубить еще одну дллку
Хм, странно, когда я прикреплял еще basswma.dll, то у меня ошибку писало, приходилось доставать новою basswma.lib, с помощью утилы implib.exe....

0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
12.02.2010, 01:29
Цитата Сообщение от Falen Посмотреть сообщение
собственно застрял я на эквалайзере , нигде не могу инфу найти как его создавать, причем на С++, мож ктото уже разобрался? Выкладывайте код плз с объяснением
bass_fx.dll - вот собственно то что тебе нужно.
http://www.un4seen.com/ - сдесь скачай архив, а в нем будет сама библиотека, хелп дай еще примерчики на С (наверно) в придачу. Посмотри именно на примеры.
0
17 / 17 / 3
Регистрация: 14.10.2009
Сообщений: 82
17.02.2010, 12:45
я так понимаю, скины делали с помощью AlphaSkins??? Так вот, у меня проблема. Когда я ставлю какой нибудь скин (прога компилится нормально), через OpenDialog открываю какой нибудь файл, нажимаю на Play - выбивает ошибку: Project Project1.exe raised exception class EInvalidOperation with message 'Scrollbar property out of range'. Что интересно, иногда может и нормально запуститься, никаких ошибок, но редко. Ну а как уберешь с формы скинпровайдер и скинменеджер так все норм работает. Ни у кого такого не было??? Или может кто нить подскажет какой нить другой инструмент для использования скинов.
0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
17.02.2010, 16:51
Цитата Сообщение от Wital Посмотреть сообщение
Scrollbar property out of range
Вот твоя ошибка. Что то со Scrollbar'ом у тя... Или пропиши в коде нормальный путь к скинам.
Если же нет, то засунь тот код, где ошибку говорить в блок try и запусти прогу без билдера, вручну)
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
18.02.2010, 21:27
Всем привет седня в поисках наткнулся на эту тему. Тут возникла проблема с полосой прокрутки у меня когда я пробовал сделать проигрыватель.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void __fastcall TForm1::Timer2Timer(TObject *Sender)
{
 
size_p=BASS_ChannelGetLength(chan,BASS_POS_BYTE);
size_p1=BASS_ChannelGetPosition(chan,BASS_POS_BYTE);
pos=((size_p1)/(size_p/100));
 
ScrollBar1->Position=pos;
Timer1->Enabled=false;
Timer1->Interval=1;
Timer1->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ScrollBar1Change(TObject *Sender)
{
 
size_p=BASS_ChannelGetLength(chan,BASS_POS_BYTE);
pos=(ScrollBar1->Position)/((size_p)/100);
BASS_ChannelSetPosition(chan, pos, BASS_POS_BYTE);
 
 
 
}
Почему то музыка идет не гладко в чем проблема. Помогите пожалуйста

Добавлено через 4 минуты
Ой сори наконец-то догадался))

Добавлено через 13 минут
А еще вопрос. Как сделать правильно листбокс что бы в него записывались названия песен и с помощью этого списка прослушивать нужное?
0
17 / 17 / 3
Регистрация: 14.10.2009
Сообщений: 82
18.02.2010, 22:40
Цитата Сообщение от nextgen Посмотреть сообщение
void __fastcall TForm1::ScrollBar1Change(TObject *Sender)
{
size_p=BASS_ChannelGetLength(chan,BASS_P OS_BYTE);
pos=(ScrollBar1->Position)/((size_p)/100);
BASS_ChannelSetPosition(chan, pos, BASS_POS_BYTE);
}
Событие скролбара OnChange замени на OnScroll и все бут норм!
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
19.02.2010, 16:06
да да я уже тогда написал что догадался))
А вот с загрузкой песен в лист бокс проблема, да так что бы щелкая по названию песни она включалась((
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
19.02.2010, 16:20  [ТС]
Чтобы не было проблем учи С++. И задавай конкретные вопросы.
Как добавить строку(элемент) в листбокс?
C++
1
ListBox1->Items->Add("Stroka");
Как получить строку(элемент) на который нажал в листбоксе?
В листбоксе есть события, есть и событие OnClick,
Строке str присвоим название нажатого эдемента списке:
C++
1
AnsiString str=ListBox1->Items->Strings[ListBox1->ItemIndex];
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
19.02.2010, 16:27
Не не это понятно, я действительно не так задал вопрос.

Дело в том что типы лист бокса и тип загружаемого названия песни отличаются.
один ансистринг а другон просто стриг и выдает ошибку
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
19.02.2010, 16:33  [ТС]
Кинь кусок кода де не получаеться, чтоб видеть в чем трабл
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
19.02.2010, 16:42
так вот на чем остановился.
AnsiString str=ListBox1->Items->Strings[ListBox1->ItemIndex];
str=BASS_ChannelPlay(chan,FALSE);

Но начинает проигрывать самый последний трек из списка
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
19.02.2010, 17:40  [ТС]
str=BASS_ChannelPlay(chan,FALSE);
Зачем ты функцию строке присвоил?
Вот как проигрываеться файл:
C++
1
2
3
4
AnsiString p1="C:\\трек.mp3";
char * p2 = p1.c_str() ;
chan = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
BASS_ChannelPlay(chan,FALSE);
А ты сделай так :
создай StringList *SL где будут храниться пути к файлам
В листбоксе названия файлов соответственно в такомже порядке
И тогда в событии двойного клика в листбоксе:

C++
1
2
3
4
AnsiString p1=SL->Strings[ListBox1->ItemIndex]+ListBox1->Items->Strings[ListBox1->ItemIndex];
char * p2 = p1.c_str() ;
название потока = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
BASS_ChannelPlay(название потока,FALSE);
Добавлено через 13 минут
Вечером, буду дома, кину исходник простенький.
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
20.02.2010, 11:13
Спасибо! Помогло)

Добавлено через 17 часов 21 минуту
VorteX, можешь еще кое-что подсказать?
Значит пытаюсь сделать кнопку перехода на следующий трек и вот что получается.
Пишу это при клике на кнопку
Code
1
2
3
4
5
 b=ListBox1->Items->Strings[ListBox1->ItemIndex+1];
ListBox1->ItemIndex=Active;
     const char * a = b.c_str() ;
     chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
     BASS_ChannelPlay(chan,FALSE);
1)играет активный в листбоксе трек
2)переходим на следующий трек в листбоксе
3)делаем его активным
4)проигрываем трек

Но выходит только 1 переход не более.
Пробывал сделать в цикле но там что то еще хуже выходит((
0
17 / 17 / 3
Регистрация: 14.10.2009
Сообщений: 82
23.02.2010, 13:56
по-моему, твоя вторая строчка кода не обязательна.

Добавлено через 8 минут
C++
1
2
3
4
5
ListBox1->ItemIndex= ListBox1->ItemIndex+1;
b=ListBox1->Items->Strings[ListBox1->ItemIndex+1];
const char * a = b.c_str() ;
chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
BASS_ChannelPlay(chan,FALSE);
Попробуй так.
0
2 / 2 / 0
Регистрация: 08.11.2009
Сообщений: 23
23.02.2010, 17:38
Wital, Сорри я твой не проверил, я просто до этого довел до ума свой код но не сказал)
Code
1
2
3
4
5
 ListBox1->ItemIndex++;
 AnsiString b=ListBox1->Items->Strings[ListBox1->ItemIndex];
     const char * a = b.c_str() ;
     chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
     BASS_ChannelPlay(chan,FALSE);
Сейчас вот сижу думаю как открыть папку с файлами мп3 а не добавлять их по одному)
1
17 / 17 / 3
Регистрация: 14.10.2009
Сообщений: 82
23.02.2010, 21:21
ну так это тоже самое)
А сейчас вопрос для всех. В некоторых случаях у меня проигрыватель отказывался воспроизводить файл (ну а при следующем запуске с этим файлом все было норм) и выбивал ошибку. Я ее выловил (в документации к bass.dll нашел эту ошибку), но не знаю, из-за чего она возникает и как ее можно исправить. Вот она: BASS_ERROR_HANDLE. В чем дело??
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
23.02.2010, 22:39  [ТС]
хм, первый раз сылшу об этой ошибке, приведи кусок кода где ошибка происходит
0
17 / 17 / 3
Регистрация: 14.10.2009
Сообщений: 82
24.02.2010, 13:15
C++
1
chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
После этой строчки. Дело в том, что в документации про ошибку сказано, а из-за чего она происходит и как ее исправить нету ничего.((( Я уже думал, что он просто отказывается некоторые файлы воспроизводить. Так нет, через 2 раза например он все таки заиграет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.02.2010, 13:15

Получение спектра (bass.dll)
Добрый день! Начал писать выпускную работу по обработке аудио файлов и столкнулся с проблемой. Функция BASS_ChannelGetData(stream, fft,...

Освобождение файла из BASS.dll
Вопрос может немного не корректный, но все же. Проблема нашла меня при попытке переименовывать файл. Никак не хотел переименовывать, потом...

Bass.dll в CodeGear 2010
Народ подскажите как подключить bass к codegear 2010... что куда надо копировать и где что прописывать? Если сможете напишите пошагово.

Визуализация с использованием bass.dll
Как сделать визуализацию на bass.dll

BASS.DLL не работает на Windows XP
Я написал приложение с использованием аудио библиотеки bass.dll оно прекрасно работает на Win7 а вот на XP запускается но не воспроизводит...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru