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

bass.dll

28.10.2009, 15:10. Показов 65281. Ответов 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
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
16.12.2009, 10:47
Студворк — интернет-сервис помощи студентам
А как сделать паузу? BASS_ChannelPause работаек как стоп.
0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
16.12.2009, 20:29
Цитата Сообщение от BARS1991 Посмотреть сообщение
А как сделать паузу? BASS_ChannelPause работаек как стоп.
Посмотри на код внимательнее, а именно на кнопку плей. Скорее за все ты просто на просто заново создаешь новый поток, при нажатии не плей.
0
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
17.12.2009, 10:17
А как не создавать новый поток?
0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
17.12.2009, 17:51
Вот это код, стоит на кнопке плей:
C++
1
2
3
4
AnsiString p1="C:\\детское лето.mp3";
char * p2 = p1.c_str() ;
название потока = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
BASS_ChannelPlay(название потока,FALSE);
А в нем есть код, который изначально делает CreateFile:
C++
1
название потока = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
но поскольку код:
C++
1
2
AnsiString p1="C:\\детское лето.mp3";
char * p2 = p1.c_str() ;
Указывает на путь к файлу, то что бы продолжить воспроизведение потока - остается лишь элементарщина)))
C++
1
BASS_ChannelPlay(название потока потока,FALSE);
Добавлено через 2 часа 28 минут
Капец! Что Bass.dll не понимает формат "wma"???

Добавлено через 9 минут
Ахтунг! Знаете все, Bass.dll понимает только: OGG, mp1, mp2, mp3, AIFF, CA, WAV, MOD, MTM, S3M, XM, IT, MO3.
2
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
17.12.2009, 18:10
У меня так и написанно
C++
1
BASS_ChannelPlay(chan,FALSE);
. Но после нажатия паузы, при нажатии на воспроизведение, музыка играет сначала.
0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
18.12.2009, 13:30
Код в студию.
0
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
18.12.2009, 18:23
Вот мой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
HSTREAM chan;
//---------------------------------------------------------------------------
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
BASS_Init( -1,44100, BASS_DEVICE_3D,0,NULL);
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::sButton1Click(TObject *Sender)
{
sOpenDialog1->Execute();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::sButton2Click(TObject *Sender)
{
AnsiString b=sOpenDialog1->FileName;
char *a=b.c_str();
chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
 
BASS_ChannelPlay(chan,FALSE);
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::sButton3Click(TObject *Sender)
{
BASS_ChannelPause(chan);
}
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
18.12.2009, 18:28  [ТС]
Цитата Сообщение от BARS1991 Посмотреть сообщение
Вот мой код:
C++
1
2
3
4
5
6
7
8
void __fastcall TForm1::sButton2Click(TObject *Sender)
{
AnsiString b=sOpenDialog1->FileName;
char *a=b.c_str();
chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
 
BASS_ChannelPlay(chan,FALSE);
}
Об этом и говроли, что вы загружаете поток заново:
0
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
18.12.2009, 18:35
А как его не загружать? У меня же написанно как вы говорили
C++
1
BASS_ChannelPlay(chan,FALSE);
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
18.12.2009, 18:40  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
///////////////////////////
void __fastcall TForm1::sButton1Click(TObject *Sender)
{
sOpenDialog1->Execute();
AnsiString b=sOpenDialog1->FileName;
char *a=b.c_str();
chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::sButton2Click(TObject *Sender)
{
BASS_ChannelPlay(chan,FALSE);
}
///////////////////////////
Измени на такое, и все, на кнопке открытия трека через опендиалог, сразу загружай файл в поток. создавай его, а накнопке плей токак это код и все:
C++
1
BASS_ChannelPlay(chan,FALSE);
Те.е как я выше сделал,
0
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
18.12.2009, 19:48
Огромное спасибо.

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

Добавлено через 59 минут
Да, как сделать обратный отсчёт времени композиции?
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
18.12.2009, 21:13  [ТС]
Вот усовршенствовал плеер=)
Терь мона добавлять прям с компа, с папок музыку в плейлист=) и менять местами песни в плейлисте=)
За функцию чтоб менять местами спс большое Otaka
Миниатюры
bass.dll   bass.dll  
Вложения
Тип файла: rar VorteX MP3 Player.rar (1.01 Мб, 225 просмотров)
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
18.12.2009, 22:20  [ТС]
Цитата Сообщение от Tree Посмотреть сообщение
Вот это код, стоит на кнопке плей:
C++
1
2
3
4
AnsiString p1="C:\\детское лето.mp3";
char * p2 = p1.c_str() ;
название потока = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
BASS_ChannelPlay(название потока,FALSE);
А в нем есть код, который изначально делает CreateFile:
C++
1
название потока = BASS_StreamCreateFile(FALSE, p2, 0, 0, 0);
но поскольку код:
C++
1
2
AnsiString p1="C:\\детское лето.mp3";
char * p2 = p1.c_str() ;
Указывает на путь к файлу, то что бы продолжить воспроизведение потока - остается лишь элементарщина)))
C++
1
BASS_ChannelPlay(название потока потока,FALSE);
Добавлено через 2 часа 28 минут
Капец! Что Bass.dll не понимает формат "wma"???

Добавлено через 9 минут
Ахтунг! Знаете все, Bass.dll понимает только: OGG, mp1, mp2, mp3, AIFF, CA, WAV, MOD, MTM, S3M, XM, IT, MO3.
Насколько я знаю можно подключать библиотеку basswma.dll и все будет ок=) Но сам не проверял.
0
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
19.12.2009, 10:50
Ответьте на мой вопрос, пожалуйста.
0
 Аватар для Otaka
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
19.12.2009, 19:33
Бегущая строка:
C++
1
2
3
4
5
6
7
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
if(Label1->Caption!="")
  {
  Label1->Caption=Label1->Caption.SubString(2,1000)+Label1->Caption[1];
  }
}
В Label записана сама строка. Желательно добавить с десяток пробелов к этой строке.
2
 Аватар для BARS1991
23 / 15 / 0
Регистрация: 16.11.2009
Сообщений: 332
19.12.2009, 19:36
Спасибо, а как с остальным?
0
 Аватар для Tree
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
21.12.2009, 01:00
Цитата Сообщение от BARS1991 Посмотреть сообщение
У меня так и написанно
C++
1
BASS_ChannelPlay(chan,FALSE);
. Но после нажатия паузы, при нажатии на воспроизведение, музыка играет сначала.
Вот нормальный код кнопки плей:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
if(Button3->Tag == 0)
  {
     const char * a = ppp.c_str() ;                                                        
     chan=BASS_StreamCreateFile(FALSE, a, 0, 0, 0);           
     BASS_ChannelPlay(chan,FALSE); 
 
     Button3->Tag = 1 ;                                       
     Button3->Caption = "Pause" ;                       
  }
else
  {
    if(Button3->Tag == 1)
      {
 
        BASS_ChannelPause(chan);
 
        int p1 ;
        Button3->Tag = 2 ;
        Button3->Caption = "Play" ;
      }
    else
      {
 
        BASS_ChannelPlay(chan,FALSE);
  
        Button3->Tag = 1 ;
        Button3->Caption = "Pause" ;
      }
 
  }
Только мой совет тебе, если тупо скопируешь и вставишь код - ничего и не научися, попробуй полностью разобрать что зачем и для чего написано и где была твоя ошибка)

Добавлено через 1 час 14 минут
Цитата Сообщение от Falen Посмотреть сообщение
Вот усовршенствовал плеер=)
Терь мона добавлять прям с компа, с папок музыку в плейлист=) и менять местами песни в плейлисте=)
За функцию чтоб менять местами спс большое Otaka
У меня он не играет, говорит ошибку по каком-то адресу, и диспетчером закрывать приходится - говорит что не может создать там Lisssssssssssssst.txt.
Ай-я-я-я-яй
Кста, поделись с миром, как ты организовал перемещение в листе?
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
21.12.2009, 10:16  [ТС]
Некоторые музыкальные файлы когда проигрываю выдает ошибкц, что не может прочитать чтото по адресу 0000003, я так понимаю что это связанно с TAGS ID3, как обработать ошибку? если прога неможет прочитать таги, как вернуть значение 0?
На джаве я писал через try(){} catch(){}, как выглядит эта архетектура на С++?
0
 Аватар для Otaka
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
21.12.2009, 10:22
Вот так вот она выглядит
C++
1
2
3
4
5
6
7
try
{
//наш код
}catch(...)
  {
  //обрабатываем ошибку
  }
0
 Аватар для VorteX
172 / 96 / 12
Регистрация: 29.05.2009
Сообщений: 341
21.12.2009, 10:43  [ТС]
Вот исправил ошибку.
+ проигрывает WMA
Вложения
Тип файла: rar VMP.rar (1.46 Мб, 236 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.12.2009, 10:43

Получение спектра (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 запускается но не воспроизводит...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
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
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru