Страсти по Саунд Бластер :)

yura_n
Под событиями звуковой карты я подразумеваю все случаи, которые требуют вмешательства CPU. А звуковая карта, как может быть вы думаете, это вовсе не отдельный (независимый) от системы модуль, значительная часть вычислений ложится именно на плечи процессора. Как программисту вам требуется только наполнить буфер. Но почему вы забываете про драйвер?
В приведённом мной примере фигурировали DOS и ассемблер. Никакого драйвера там не было, было прямое управление звуковой картой из программы на ассемблере. И привёл я этот пример именно для иллюстрации того, как происходит управление звуковой картой НА САМОМ НИЗКОМ уровне. И когда я говорил “программы”, я имел в виду ВЕСЬ программный уровень, ВКЛЮЧАЯ драйвер.

Никаких вычислений, ложащихся на процессор, там не было вообще – данные с винчестера в память читались через DMA, и звуковая карта читала их из памяти так же. Так же и драйвер в ОСи – не выполняет он никаких вычислений над звуком, просто задаёт звуковой карте адреса в памяти для чтения данных, принимает прерывания от неё и т.д. Все вычисления выполняются в юзерспейсе, и результаты идут в буфер.
Natrio
В приведённом мной примере фигурировали DOS и ассемблер. Никакого драйвера там не было, было прямое управление звуковой картой из программы на ассемблере. И привёл я этот пример именно для иллюстрации того, как происходит управление звуковой картой НА САМОМ НИЗКОМ уровне. И когда я говорил “программы”, я имел в виду ВЕСЬ программный уровень, ВКЛЮЧАЯ драйвер.
А было это лет 15-20 назад. Вы бы еще программирование “пищалки” вспомнили. Вот линк. В нем есть схема устройства современной звуковой карты. DSP взаимодействует с материнской платой, ОС и CPU. При отсутствии DSP вся работа ложится на CPU, то есть управление АЦП, ЦАП, синтезатором, промежуточные вычисления. И даже при наличии DSP часть работы все равно остается на CPU. Если вы и после этого будете утверждать, что на самом НИЗКОМ уровне все заключается только в наполнении буфера, то спорить я с вами больше не буду, по причине полной бессмысленности этого процесса.
нда ;) специалисты!
такие дела.
без прерываний все это как карточный домик, так что оба правы, просто говорите о разных вещах имхо.
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
yura_n, вы хоть посмотрели бы, что там написано, и как они назвали звуковую карту – “Sound Blaster” :)))
Ну да, вот как раз в те бородатые времена, о которых я рассказывал, такие “современные” и были в ходу. Ещё 8-битные ;)
Правда, они подключались к шине (E)ISA, а не PCI.
Потом появились 16-битные, и я программировал именно такую.

А вообще статья откровенно поверхностная и общеобразовательная, сообщающая совсем несведущим чайникам (студентам?) очень абстрактную теорию в вакууме, и никаких подробностей устройства, равно как и ссылок на них там нет. Ни о каком описании хотя бы интерфейса речи не идёт в принципе. Вся цифровая часть аудиокарты там обозначена как “процессор”. С таким же успехом можно что угодно процессором обозвать, если в этом чём-то идут какие-то тайные процессы ;)

В общем, уровень дискуссии мне теперь более-менее понятен, так что предлагаю не продолжать.
Natrio
yura_n, вы хоть посмотрели бы, что там написано, и как они назвали звуковую карту – “Sound Blaster” :)))
Ну да, вот как раз в те бородатые времена, о которых я рассказывал, такие “современные” и были в ходу. Ещё 8-битные ;)
Правда, они подключались к шине (E)ISA, а не PCI.
Потом появились 16-битные, и я программировал именно такую.

А вообще статья откровенно поверхностная и общеобразовательная, сообщающая совсем несведущим чайникам (студентам?) очень абстрактную теорию в вакууме, и никаких подробностей устройства, равно как и ссылок на них там нет. Ни о каком описании хотя бы интерфейса речи не идёт в принципе. Вся цифровая часть аудиокарты там обозначена как “процессор”. С таким же успехом можно что угодно процессором обозвать, если в этом чём-то идут какие-то тайные процессы ;)

В общем, уровень дискуссии мне теперь более-менее понятен, так что предлагаю не продолжать.
Я вам на статью указал только для того, чтобы вы посмотрели на структурную схему. Название, в данном случае, значения не имеет. Что касается процессора, то это отдельная программируемая микросхема. Это и есть процессор, самый что ни на есть настоящий, только ориентированный на определенные вычисления. И он не вся логическая часть. Что касается спора, то он представляется мне бессмысленным, вы умудрились даже в простой статье не заметить очевидного.
yura_n
Я вам на статью указал только для того, чтобы вы посмотрели на структурную схему. Название, в данном случае, значения не имеет. Что касается процессора, то это отдельная программируемая микросхема. Это и есть процессор, самый что ни на есть настоящий, только ориентированный на определенные вычисления. И он не вся логическая часть.
Проблема в том, что на этой “структурной схеме” изображена только аналоговая часть и преобразователи, а всё что действительно имеет отношение к дискуссии, то есть приём и обработка цифрового сигнала, размашисто описано одним блоком с красноречивой надписью. Ну и что? Какая разница, сколько там микросхем, если вы не описали ПРИНЦИП РАБОТЫ звуковой карты, если не считать банальностей о ЦАП, АЦП и микшерах? Нам нужно не то, что снаружи, а то что ВНУТРИ этой пресловутой микросхемы.

yura_n
вы умудрились даже в простой статье не заметить очевидного
О да, вы правы! Я не заметил вот этого перла:
“При воспроизведении этого звукового файла данные с жесткого диска через шину PCI поступают в сигнальный процессор звуковой платы”
Я думал эта статья просто ликбез для неграмотных студентов, а это, оказывается, вдохновенный бред художественный вымысел про звуковую карту, которая, пишет и читает прямо на на диск и диска :))
Устройство по обработке звука именуют звуковой картой или звуковой платой, иногда звуковым адаптером, а иногда саундбластером. Хотя следует заметить, что правильнее было бы звуковые карты называть саундбластерами (а ещё точнее Sound Blaster).
Хотя уже ЭТО должно была насторожить.
Natrio
Нам нужно не то, что снаружи, а то что ВНУТРИ этой пресловутой микросхемы.
Нам это не нужно. Я прочитал достаточно материала на эту тему. И у меня есть достаточно большой практический опыт работы со звуком, чтобы делать выводы. Это нужно вам. На более или менее продвинутых звуковых картах DSP имеется. Выбирайте любую карту, списывайте маркировку с микросхемы (обычно это самая большая микросхема на плате) и ищите для нее API.
О да, вы правы! Я не заметил вот этого перла:
Обычное косноязычие. Им грешат многие статьи.
Хотя уже ЭТО должно была насторожить.
Читаем здесь историю. Никого это не должно насторожить. Статья просто старая.
yura_n
На более или менее продвинутых звуковых картах DSP имеется.
Спасибо, о Капитан Очевидность, как же я сам не догадался!
Я знаю :)
Выбирайте любую (обычно это самая большая микросхема на плате) списывайте маркировку и ищите для нее API.
Откуда API у микросхемы? API это ПРОГРАММНЫЙ интерфейс, которым оперирую программы юзерспейса, а у микросхем обычно бывают регистры, доступные CPU через шину по определённым адресам, именно ими оперирует драйвер.

у меня есть достаточно большой практический опыт работы со звуком, чтобы делать выводы.
Прикладное программирование?

Читаем здесь историю. Никого это не должно насторожить. Статья просто старая.
Спасибо, эта история проходила перед моими глазами, я даже приводил пример :)
Кхе-кхе… (с опаской), друзья! А не перименовать-ли нам тему? А ТС вынести предупреждение за offtop?
Всё, ушёл, не смею беспокоить.
 
Зарегистрироваться или войдите чтобы оставить сообщение.