![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Здравствуйте форумчане!!!
Подскажите кто нибудь, как проиграть данные с модема с помощью bass.dll. Звуковые данные я получаю воспроизвожу с помощью ACMWaveOut хотелось бы с помощью Bass без сохранения в файл, сразу с буфера. Последний раз редактировалось Aliens_wolfs; 13.06.2011 в 19:42. |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
![]()
выбери это устройство через Bass_Init и делай с ним что хочешь...
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
if not BASS_Init(-1, 8000, 0, Handle, nil) then
begin ShowMessage('Can''t initialize device'); Exit; end; ........... stream:=BASS_StreamCreate(8000, 1, 0, buf, 0); BASS_ChannelPlay(stream,true); Не получается выдает ошибку. А вот с stream:=BASS_StreamCreateFile(false , PChar(Filename), 0, 0, 0); работает постоянно файл приходится создавать. Мне нужно с буфера сразу воспроизводить Последний раз редактировалось Aliens_wolfs; 13.06.2011 в 20:49. |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
![]()
что за ошибка?
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Ошибка Privileged instruction
Как BASS_ChannelPlay(stream,true); эту строку отключаю ошибка непоявляется работает так stream:=BASS_StreamCreateFile(false , PChar(Filename), 0, 0, 0); BASS_ChannelPlay(stream,true); Неудобно что приходиться в этот файл заголовок создавать Последний раз редактировалось Aliens_wolfs; 13.06.2011 в 20:59. |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
![]()
а что у тебя модем стоит дефалтным в системе?
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Модем простой с подержкой голосовых данных, написал прогу которая открывает порт и с помощью модемных команд я получаю звуковые данные вот эти данные хочу воспроизвести с помощью Bass. С помощью модуля ACMWaveOut воспроизводит.
procedure TForm1.Button2Click(Sender: TObject); begin ComPorts.WriteStr('AT+FCLASS=8'+#13 ); //переход в голосовые данные модема ComPorts.WriteStr('AT+VSM=128,8000' +#13); //формат голосовых данных ADPCM ComPorts.WriteStr('AT+VLS=1'+#13); //снимать звук с линии ComPorts.WriteStr('AT+VRX'+#13); //получаю данные Plays:=true; end; procedure TForm1.Button1Click(Sender: TObject); begin ComPorts.Open('COM6',115200,8,0,1); end; procedure TForm1.FormCreate(Sender: TObject); begin if not BASS_Init(-1, 8000, 0, Handle, nil) then begin ShowMessage('Can''t initialize device'); Exit; end; ComPorts:=TComPorts.Create; ComPorts.OnRead:=OnReadComPort; end; //Функция получения данных с буфера модема procedure TForm1.OnReadComPort(Sender: TObject; ComPort: TComPort); var stream : HSTREAM; begin if Plays then begin BASS_SetConfig(BASS_CONFIG_BUFFER, ComPort.BufSize); stream:=BASS_StreamCreate(8000, 1, 0, ComPort.BuF, 0); BASS_ChannelPlay(stream,true); Bass_StreamFree(stream); end; end; Мне нужно работать с Буфером с помощью Bass Последний раз редактировалось Aliens_wolfs; 13.06.2011 в 23:37. |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
![]()
нее, я вот о чем
if not BASS_Init(-1, 8000, 0, Handle, nil) then "-1" - звук. устройство по умолчанию, тебе надо его заменить на индекс модема (может 2?) |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Сейчас попробую
if not BASS_Init(2, 8000, 0, Handle, nil) then begin ShowMessage('Can''t initialize device'); Exit; end; выдает ошибку с другими индексами тоже ошибка Инициализация не проходит тут видимо нужно с BASS_StreamCreate правильно работать Последний раз редактировалось Aliens_wolfs; 13.06.2011 в 22:41. |
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
![]()
попробуй так
Код:
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как воспроизвести звук с модема используя BASS | Aliens_wolfs | Компоненты Delphi | 0 | 20.05.2011 13:50 |
Bass. Проиграть потоковое аудио с прокруткой | Delphi_ProGer | Помощь студентам | 0 | 25.02.2011 21:07 |
Ошибка при выхове функций Bass.dll из другой DLL | SalasAndriy | Общие вопросы Delphi | 7 | 21.10.2009 23:36 |
BASS DLL | ygy | Мультимедиа в Delphi | 4 | 29.09.2009 04:39 |
BASS.DLL | VintProg | Мультимедиа в Delphi | 2 | 21.09.2009 16:36 |