Форум программистов, компьютерный форум, киберфорум
Delphi: Графика, звук, видео
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.10.2013
Сообщений: 17

Bass.dll, адрес в переменной типа String

23.07.2014, 15:23. Показов 1220. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, тут запара
Подключил я bass.dll к проекту и вроде бы всё работает...но есть одно НО !
Вот код:

Delphi
1
2
3
4
5
6
7
8
9
var
channel:cardinal;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
BASS_Init(-1, 44100, 0, application.Handle, nil);
Channel:=BASS_SreamCreateUrl( 'http://.../music.mp3' , 0,0, nil, 0 );
BASS_ChannelPlay(Channel, False);
end;
Это рабочий код, файл он по ссылке конечно же проигрывает...

Но вот надо сделать тоже самое, но вот ссылка будет не в кавычках а в переменной типа string.

Вот так вот:

Delphi
1
2
3
4
5
6
7
8
9
10
11
var
channel:cardinal;
url: string;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
url:= 'http://.../music.mp3';
BASS_Init(-1, 44100, 0, application.Handle, nil);
Channel:=BASS_SreamCreateUrl( url , 0,0, nil, 0 );
BASS_ChannelPlay(Channel, False);
end;
А вот так он выбивает ошибку

Это похоже что в самой bass.pas прописано что нужно читать url из кавычек

Кто знает как это решить, напишите пожалуйста
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.07.2014, 15:23
Ответы с готовыми решениями:

Bass.dll, bass_fx.dll - как сделать, чтобы менялась только высота звука без скорости?
Как сделать, чтобы при изменении частоты потока скорость оставалась той же, то есть, чтобы менялась только высота звука, а длина...

Bass.dll аудио
Доброго времени суток. Дело такое, нужен простенький аудиоредактор на delphi, решил сделать с помощью bass.dll. Но не могу понять как с...

Плеер на Bass.dll
Вообщем проблема такова я делаю вот так procedure TForm1.Timer1Timer(Sender: TObject); begin ...

9
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33414 / 21523 / 8237
Регистрация: 22.10.2011
Сообщений: 36,923
Записей в блоге: 12
23.07.2014, 15:47
Delphi
1
Channel:=BASS_StreamCreateUrl(PChar(url), 0, 0, nil, 0);
0
0 / 0 / 0
Регистрация: 04.10.2013
Сообщений: 17
23.07.2014, 16:20  [ТС]
Неа, не работает.
Он выбивает что ошибка в PChar(url)....
0
157 / 300 / 47
Регистрация: 14.08.2012
Сообщений: 2,578
23.07.2014, 16:34
Jeison6, PWideChar
0
0 / 0 / 0
Регистрация: 04.10.2013
Сообщений: 17
23.07.2014, 16:40  [ТС]
Ошибка всё равно...
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var
  Form1: TForm1;
  channel:cardinal;
  url: string;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
url:= 'http://???.mp3';
Channel:=BASS_StreamCreateUrl( PWideChar(url) , 0,0, nil, 0 );
BASS_ChannelPlay(Channel, False);
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
BASS_Init(-1, 44100, 0, application.Handle, nil);
end;
 
end.
0
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
23.07.2014, 16:51
PAnsiChar
0
0 / 0 / 0
Регистрация: 04.10.2013
Сообщений: 17
23.07.2014, 17:02  [ТС]
Это типо методом тыка?)
Ну если честно то опять не катит...но в этот раз он компилирует проект и даже по нажатии на кнопку ошибку не выбивает но и ничего и не происходит

Добавлено через 7 минут
Я залез в bass.pas и окопал строку:
Delphi
1
function BASS_StreamCreateURL(url: PAnsiChar; offset: DWORD; flags: DWORD; proc: DOWNLOADPROC; user: Pointer):HSTREAM; {$IFDEF MSWINDOWS}stdcall{$ELSE}cdecl{$ENDIF}; external bassdll;
Пробовал менять ...url: PAnsiChar;... на ...url: string;... и т.д. но опять же ничего, но проект компилирует.
0
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
23.07.2014, 17:05
Лучший ответ Сообщение было отмечено Jeison6 как решение

Решение

Цитата Сообщение от Jeison6 Посмотреть сообщение
Это типо методом тыка?
Нет. Это PWideChar саша40 как обычно взял с потолка.

Добавлено через 2 минуты
Цитата Сообщение от Jeison6 Посмотреть сообщение
Пробовал менять ...url: PAnsiChar;... на ...url: string;... и т.д.
Не там меняешь. Менять надо тип переменной в программе
Delphi
1
2
3
4
var
  Form1: TForm1;
  channel:cardinal;
  url: Ansistring;
1
0 / 0 / 0
Регистрация: 04.10.2013
Сообщений: 17
23.07.2014, 17:09  [ТС]
Оппа

Код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var
  Form1: TForm1;
  channel:cardinal;
  url: Ansistring;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
url:= 'http://???.mp3';
Channel:=BASS_StreamCreateUrl( PAnsiChar(url) , 0,0, nil, 0 );
BASS_ChannelPlay(Channel, False);
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
BASS_Init(-1, 44100, 0, application.Handle, nil);
end;
 
end.
Работает
Ну наконец то...спасибо огромное!
0
 Аватар для krapotkin
6851 / 4677 / 1465
Регистрация: 14.04.2014
Сообщений: 20,674
Записей в блоге: 21
24.07.2014, 07:49
а еще лучше почитать док по INIT и найти там ключ для принятия unicode строки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.07.2014, 07:49
Помогаю со студенческими работами здесь

Bass.dll подключение
Здравствуйте! Я пишу медиаплеер, но столкнулся с проблемой подключения библиотеки Bass.dll. Она находится в Libraries\Bass.dll. Как...

Bass.dll BASS_ERROR_FILEOPEN
я написал вот такую процедуру: if not (bass_init(-1, 44100, 0, handle, 0)) then showmessage('Ошибка инициализации bass.dll!'); ...

использование bass.dll
Доброго времени суток. Делаю простой плеер (сдираю всё с исходника), но проблема с перемоткой. В исходнике используется gauge и процедура...

Воспроизведение с bass.dll
Привет всем, немогу воспроизвести файл используя библиотеку bass.dll (2.4) помогите если сможете) procedure...

Bass.dll не работает
Кароче такая проблема: хочу написать плеер, основан на bass.dll Пишу что надо, компилирую, выдает оишбку, мол, программа не может быть...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru