Страница: 1 |
Страница: 1 |
Вопрос: Помогите разобраться с waveOut'ом
Добавлено: 05.04.05 22:28
Автор вопроса: Страшный Сон
Есть у меня следующие объявления:
Public Type WAVEHDR
lpData As String
dwBufferLength As Long
dwBytesRecorded As Long
dwUser As Long
dwFlags As Long
dwLoops As Long
lpNext As Long
Reserved As Long
End Type
Нужно заставить это дело работать. Кто-нибудь подскажет?
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 06.04.05 13:02
Основная проблема, наверно, с lpData As String? Попробуй поместить там lpData as long, и присвоить ему указатель на байтовый массив, где хранятся твои данные
Номер ответа: 2
Автор ответа:
Sur
ICQ: 1249088
Вопросов: 10
Ответов: 304
Web-сайт:
Профиль | | #2
Добавлено: 06.04.05 13:56
тут хороший топик по этому делу, но все же решили, что лучше DirectSound...
http://www.developerfusion.com/forums/topic-14635
Номер ответа: 3
Автор ответа:
Страшный Сон
Вопросов: 46
Ответов: 848
Профиль | | #3
Добавлено: 06.04.05 21:46
Нашел я в этом топике только пример с проигрыванием звукового файла. А мне нужно из массива типа Integer (16-битный звук).
Номер ответа: 4
Автор ответа:
Z_of_X
ICQ: 997550
Вопросов: 5
Ответов: 18
Профиль | | #4
Добавлено: 16.07.05 02:38
Я наверное припозднился, но вот куски из моей проги, кому надо обращайтесь - попробую помочь с wavIn и out, я вродеб разобрался.
Вот такое должно быть описание типа
Public Type WAVEHDR
lpData As Long
dwBufferLength As Long
dwBytesRecorded As Long
dwUser As Long
dwFlags As Long
dwLoops As Long
lpNext As Long
Reserved As Long
End Type
dim DATA() as Byte - сами данные, потом просто редимом хернуть их и все ОК
Dim DataLen as Long - это размер данных
Dim WaveH as WAVEHDR
With WaveH
.lpData = VarPtr(DATA(0))
.dwBufferLength = DATAlen
.dwFlags = 0
End With