![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Звук в двоичной переменной
seemann © (2003-07-03 14:40:00)
Возникла такая проблема: у меня есть переменная типа Pointer, в неё постоянно записывается по 4 байта звука в виде двоичных данных, как я могу тут же воспроизвести этот звук, не записывая его в файл? Если кто знает, ответьте пожалуйста, срочно надо.
Думкин (2003-07-04 07:00:00) [1]
Вопрос в том, что ты хрчешь?
Если у тебя готов некоторый буфер, который ты хочешь проиграть, тогда
1. Опредлись кавовы характеристики - частота, дискретизация и т.д.
2. создай заголовок как у Wav-файла,
3. Припиши его в начало своего буфера
4. Потом читай jel © (03.07.03 16:17)
Если же ты хочешь выводить каждый элемент сразу, то опять же определись с параметрами и ищи здесь инфу по выводу на динамик с частотой и длительностью - но по-моему это страшная дичь.
Или - тебе дорога к работе со звуковой картой, но тогда - в добрый путь, и опять - это дичь.
Можно использовать ДиректХ, но подгружать буфера там все едино надо более-менее солидными блоками.
Так что не играй пословно - формируй буферы - и уже их отдавай на озвучку.
Все слова про дичь - мое ИМХО, может я и ошибаюсь.
seemann (2003-07-03 17:52:00) [2]
Дело в том, что данные содержатся в двоичном формате и PlaySound тоже(я пробывал так же с помощью функций Bass.dll) отказывается проигрывать неформатированые данные.
jel (2003-07-03 16:17:00) [3]
Вообще-то Pointer - указатель и писать в негозвук занятие не для слабонервных, но оставим это на твоей совести.
А воспроизвести можно PlaySound с флагом SND_MEMORY.