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

bass.dll

28.10.2009, 15:10. Показов 64392. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru