Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для Windows/Dos > Работа с линейным входом. Помогите!!!


Автор: mustafa1453 8.8.2009, 22:28
Суть вопроса: как через ассемблер работать с линейным входом. Нашел одну литературу, так там описано работа с звуковой картой(DSP,mixer,FM,MIDI). Вот только я не смог там найти ничего по линейному входу. Там есть пример как воспроизвести звуковой файл, ну а мне требуеться запись звука через линейный вход, его обработка, вывод графиков и т.д. Помогите пожалуйста литературой. Если уж среди нашых нету, давайте книги на английском. За ранее спасибо всем откликнувшимся!

Автор: AndNot 11.8.2009, 03:10
Могу только с Sound Blaster помочь, там не сложно. С нынешними слишком много мороки, да и не работает в половине случаев, поскольку у каждого разработчика есть отклонения от "стандарта" (которого по сути и нет). 
Цитата(mustafa1453 @  8.8.2009,  22:28 Найти цитируемый пост)
Нашел одну литературу, так там описано работа с звуковой картой(DSP,mixer,FM,MIDI). Вот только я не смог там найти ничего по линейному входу.

Собственно запись и воспроизведение цифры осуществляются именно через DSP-процессор, просто коды команд разные.

Автор: mustafa1453 18.8.2009, 23:25
Тоесть под современную звуковую карту ничего не выйдет? Сори за оффтоп, а на С/С++ можна работать с современными звуковыми картами?

Автор: AndNot 19.8.2009, 11:54
С современными можно. И язык роли не играет, хоть на бейсике smile Но проблема в том, что кодеки AC'97 не совсем совместимы у разных производителей. Могу кинуть сорсы на интеловский чипсет (асм 32-бит защищенный режим). Но на чипсетах других производителей работать скорее всего не будет. Выход один - писать с учетом особенностей каждого производителя, благо их не много. Но проблема в отсутствии документации. Я ее в свое время нигде не нашел, может быть сейчас кто-то выложил.

Автор: mustafa1453 20.8.2009, 13:43
вот и мне не хватает документации(хотя я еще полный чайник в ассемблере)

Автор: Aids 4.9.2009, 16:47
Цитата

waveInAddBuffer
waveInClose
waveInGetDevCaps
waveInGetErrorText
waveInGetID
waveInGetNumDevs
waveInGetPosition
waveInMessage
waveInOpen
waveInPrepareHeader
waveInProc
waveInReset
waveInStart
waveInStop
waveInUnprepareHeader
waveOutBreakLoop
waveOutClose
waveOutGetDevCaps
waveOutGetErrorText
waveOutGetID
waveOutGetNumDevs
waveOutGetPitch
waveOutGetPlaybackRate
waveOutGetPosition
waveOutGetVolume
waveOutMessage
waveOutOpen
waveOutPause
waveOutPrepareHeader
waveOutProc
waveOutReset
waveOutRestart
waveOutSetPitch
waveOutSetPlaybackRate
waveOutSetVolume
waveOutUnprepareHeader
waveOutWrite


Вот API функции которые тебе нужны

Добавлено позже
Цитата

waveInAddBuffer
waveInClose
waveInGetDevCaps
waveInGetErrorText
waveInGetID
waveInGetNumDevs
waveInGetPosition
waveInMessage
waveInOpen
waveInPrepareHeader
waveInProc
waveInReset
waveInStart
waveInStop
waveInUnprepareHeader
waveOutBreakLoop
waveOutClose
waveOutGetDevCaps
waveOutGetErrorText
waveOutGetID
waveOutGetNumDevs
waveOutGetPitch
waveOutGetPlaybackRate
waveOutGetPosition
waveOutGetVolume
waveOutMessage
waveOutOpen
waveOutPause
waveOutPrepareHeader
waveOutProc
waveOutReset
waveOutRestart
waveOutSetPitch
waveOutSetPlaybackRate
waveOutSetVolume
waveOutUnprepareHeader
waveOutWrite


Вот API функции которые тебе нужны

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)