Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

запись и цифровка wav. [D5, D6, Win95/98]


vidiv ©   (2003-01-13 09:23:00) 

Мастера, подскажите плиз, как оцифроватоь звук с микрофона. Только это надо использовать интерактивно. т.е. есть какой-то буфер и в него накапливается "звук". я с него считываю - он обнуляется и продолжает дальше накапливаться. помогите срочно надо....


vidiv   (2003-01-20 06:42:00) [1]

2 Vitaly_s Спасибо. Большое спасибо. Я даже не ожидал такого ответа.


Vitaly_s   (2003-01-19 23:30:00) [2]

Как считать сигнал с микрофона
В Windows нет разделения каналов записи по источникам.
CD-ROM ----------|
| |--- Динамики
Микрофон --------| |
|-- Windows --|--- Записывающие программы
Линейный вход ---| |
| |--- Линейный выход
MIDI ------------|
Все поступающие в систему звуки смешиваются, и лишь после этого их получает программа.
Для получения звукового сигнала нужно воспользоваться WinAPI. WaveInOpen открывает доступ к микрофону. Одновременно только одна программа может работать с микрофоном. Заодно Вы указываете, какая нужна частота, сколько бит на значение и размер буфера. От последнего зависит, как часто и в каком объеме информация будет поступать в программу.
Далее нужно выделить память для буфера и вызвать функцию WaveInAddBuffer, которая передаст Windows пустой буфер. После вызова WaveInStart Windows начнет заполнять буфер, и, после его заполнения, пошлет сообщение MM_WIM_DATA. В нем нужно обработать полученную информацию и вновь вызвать WaveInAddBuffer, тем самым указав, что буфер пуст.
Функции WaveInReset и WaveInClose прекратят поступление информации в программу и закроют доступ к микрофону.
Эта программа считывает сигнал с микрофона и выводит его на экран. Частота сигнала - 22050 Гц. Количество бит определяется флажком, размер буфера TrackBar-ом.


$hade   (2003-01-14 07:44:00) [3]

Ищи компоненты для записи звука (например что-то было типа Eldos-чегототам)...у них есть события типа OnBufferEmpty и OnBufferFull вроде как...вот!


vidiv   (2003-01-14 04:02:00) [4]

Ну одно из 2. либо я очень некорректно вопрос задал(рекомендуется:)))), либо никто не чего не знает по этому поводу...

Переделаю вопрос:
Я хочу сделать небольшую программу для того чтобы транслировать звук в инет. Но надо так чтобы его можно было послушать в winamp как эту ссылку: http://horus.mtu.ru:9000/(Европа+). С сетью я разберусь, т.к. я сетью немного работал, а вот со звуком... надеюсь я правильно объяснил... И еще. мне надо так чтобы можно было регулировать битрейд. Помогите, пожалуйста, кто чем может...


Наверх

Титульная страница Поиск, карта сайта Написать письмо