Ввод/вывод звука в режиме ядра

Тема в разделе "WASM.AUDIO", создана пользователем al79, 5 сен 2007.

  1. al79

    al79 Алексей

    Публикаций:
    0
    Регистрация:
    11 май 2006
    Сообщения:
    126
    Адрес:
    Екатеринбург
    Привет всем.
    Есть драйвер который принимает от устройства аудио поток, вот вопрос, как этот поток выдать на звуковую карту в режиме ядра?
    Соответственно хотелось бы и узнать как получить данные с микрофона ?
     
  2. Geen

    Geen New Member

    Публикаций:
    0
    Регистрация:
    23 июл 2007
    Сообщения:
    51
    судя по всему ирпами по врайту мажера дровины ... должно быть стандартно для всех дров карт ... по идее.
    хотя , пардон , не имею такой инфы.
    ты с кодаками работаешь ?
     
  3. al79

    al79 Алексей

    Публикаций:
    0
    Регистрация:
    11 май 2006
    Сообщения:
    126
    Адрес:
    Екатеринбург
    Ни разу не приходилось.
     
  4. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    Открываешь спецификацию звуковой карты
    через PCI (или через что-то другое (зависит от звуковой карты)) находишь базовые адреса регистров (в I/O пространстве или отображенных на физическое адресное пространство) и работаешь с ними, предварительно прочитав их описание и протокол взаимодействия
     
  5. Miller Rabin

    Miller Rabin New Member

    Публикаций:
    0
    Регистрация:
    4 янв 2006
    Сообщения:
    185
    Тебе походу нужно копать в сторону работы с потоковыми устройствами.

    они не создают устройство через IoCreateDevice, вместо этого вызывается функция StreamClassRegisterAdapter.
    После этого тебе в определенную функцию начинают приходить srb(Stream Request block). Так же как с асинхронными сокетами.

    У меня стоит похожая задача только с ТВ-тюнером на этот предмет изучаю исходники TestCap из WinDDK. Только я пока сам очень мало знаю по этой теме.

    А вообще в папке DDK\Src\WDM\Audio находится пример драйвера к АС97 думаю тебе стоит начать оттуда
     
  6. al79

    al79 Алексей

    Публикаций:
    0
    Регистрация:
    11 май 2006
    Сообщения:
    126
    Адрес:
    Екатеринбург
    А может кто нибудь слышал про драйвер sysaudio, как я понял через него работают все звуковые API, а то мой поиск про этот драйвер результатов не принёс.
    Может кто поделится хотябы полезной сылкой (хорошо бы ещё с примерами)
     
  7. Novi4ek

    Novi4ek New Member

    Публикаций:
    0
    Регистрация:
    3 авг 2007
    Сообщения:
    317
    al79, если найдешь какую-нибудь не слишком сухую документацию по звуковым потокам в кернел режиме, да и вообще по теме топика, скинь сюда обязательно!
     
  8. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    al79

    Драйвер звука - это как бы минидрайвер,а основной драйвер обрабатывающий запросы IOCTL это либо stream.sys, либо ks.sys. Проще посмотри какие IOCTL получают указанные драйверы при проигрывании звука, дальше открываешь их и посылаешь IOCTL.
     
  9. al79

    al79 Алексей

    Публикаций:
    0
    Регистрация:
    11 май 2006
    Сообщения:
    126
    Адрес:
    Екатеринбург
    Ковырял тут winmm.dll, она походу дела работает через wdmaud.drv, сейчас ковыряю в эту сторону.