Page 2 of 66

Posted: Wed Oct 26, 2005 12:04 am
by Wildwest
SuperMP3 0.70 на http://coolthemes.narod.ru/supermp3.html
ealex - в ближайшие дни загружу или отправлю.

Posted: Wed Oct 26, 2005 11:57 am
by ealex
А какой формат 100% должен проигрываться?

Посмотрел я исходники ядра, где функции Sound Blaster, и не нашел там инициализации карточки. Это делается очень просто. Можно сразу определить правильно ли указанный базовый порт и, заодно, определить версию карточки. Если захотеть, можно даже перебрать все возможные адреса базового порта, тогда в настройках его не надо будет указывать. Я не совсем понимаю, как всунуть инициализацию в ядро, поэтому пока написал маленькую программку под ДОС (лежит здесь: http://e-al.narod.ru/sbinit.htm).

Было бы неплохо, если в настройках МеОС после указания базового порта, сразу проверялось наличие карточки и выводиоись сообщение найдена она или нет и ее версия.

Posted: Fri Oct 28, 2005 11:41 am
by ealex
Первый контроллер DMA может работать с памятью после первого мегабайта? Он ведь работает с 20-битными адресами, а в sb16.inc буффер находится за пределами первого мегабайта.

Code: Select all

DMAPage          equ   0x2A
SB16Buffer       equ   0x2A0000 
Еще интересную вещь заметил. Если запустить настройку устройств, а затем SoundBlaster, то в окне настроек строка "MIDI: ROLAND MPU-401 BASE", превратится в

Code: Select all

@H        ND MPU-401 BASE".

Posted: Fri Oct 28, 2005 4:29 pm
by VaStaNi
Привет народ! Давненько у Вас тут не прогуливался ;)...
Тема то родная на сей момент, т.к. произвожу смертельную схватку с AC97 кодеками не не на жизнь. Скажу сразу с высоты сего дзена и изрядно высушенных мозгов, что многие высказывания по поводу AC97 некорректны... Даю материал профессионального класса он сам скажет за себя
http://www.ferra.ru/online/multimedia/20876/
Итак, вкурив эту статью по самые...э-э-э-э... наконец понимаешь, что AC97 это не карта и не звук и не интерфейс программера. Хотя его можно назвать "внутренним" интерфейсом (я имею ввиду AC-Link )
между чипсетом южного моста и содека AC97 стандарта.
К стати сам стандарт, коль уж подчевать...
http://www.nondot.org/sabre/os/files/So ... onv2.1.pdf
Да так вот сначала надо поиметь PCI доступ к той функции ЮЖНОГО моста, которая отвечает за это дело, как PCI! Т.е. VIA686 Dev7 Func 5, VIA8233/8235 Dev11h Func 5, а вот IntelЫ балуются как функция Dev 31 Func 5 (ICH0...ICH7). Вот там вычитываются уже БАЗОВЫЕ порты для общения с кодеком AC97 по интерфейсу AC97. Исходя из базы работа с кодеком может быть представлять из себя уже чистые IN EAX, DX; OUT...
программа-ИСХОДНИК послужившая прототипом к плееру Поддубного (только для Intel!)
http://www.programmersheaven.com/UserUp ... /23237.zip
Cуперский проект мирового класса по звуку
http://www.alsa-project.org/
попутно почитать рекомендую это (не рассматривать применительно AC97!)
http://www.ferra.ru/online/supply/17758/
Успехов!

Posted: Fri Oct 28, 2005 9:27 pm
by camper
Про ковокс ничего нету :) А последняя статья интересная, у нас была давно идея спектрометр мессбауэровский с звуковой карты запустить, но все както сошло на нет с появлением новых недорогих плат на плисах и пиках.

Posted: Mon Oct 31, 2005 6:05 pm
by andrew_programmer
Хочу поделить с вами одним нехорошим глюком,который я уже давно наблюдаю.
С тех пор,как у меня заработала шина PCI(третий дистрибутив Колибри) я слушаю музыку в Колибри через плеер AC'97 .У меня есть целая папка в которой 2 гигабайта WAV файлов.Испльзуя SYSXTRE я запускаю музыкальные файлы.Ну так вот,давно заметил,что иногда при повторном щелчке на WAV файле(даже после того как WAV файл прослушан,а AC'97 плеер выключен) операционная система замирает.Тоесть:на экране все обездвиживается,клавиатура не работает,мышь не работает(при этом не мигает индикатор жесткого диска).Только перезагрузка через RESET спасает ситуацию.Самое удивительное,что иногда глюк легко повторим,а иногда раз 10 запустишь один и тот же WAV файл прежде чем он появиться.

Такой глюк возможен только тогда,когда операционная система не возвращается из обработки системного прерывания(я проверял).И приложение,которое является его причиной - это AC'97 WAV плеер.Нужно только понять какая системная функция допускает невозврат.

Posted: Mon Oct 31, 2005 7:40 pm
by Wildwest
ealex, сорри за задержку. Завтра постараюсь отправить.
Wildwest
Зарегистрирован: 18.05.2005
Сообщения: 160
Добавлено: Sat Aug 20, 2005 2:30 pm Заголовок сообщения:
Марату про звуковые карты
ftp://tirion.ivanco.net/devel/hard/Sound/

Posted: Mon Oct 31, 2005 8:35 pm
by andrew_programmer
Странно,на мою тему ноль эмоций...............

Posted: Mon Oct 31, 2005 10:25 pm
by mike.dld
andrew_programmer
Ещё не вечер :)
У меня ещё хуже (ALC650, ICH4): при "горячей" перезагрузке в Менует система подвисает сразу же после попытки запуска плеера, при "холодной" всё в порядке.

Posted: Tue Nov 01, 2005 12:12 am
by ealex
Запустил звуковушку ESS ES1868 в Колибри! Для этого пришлось до загрузки Колибри запустить досовский драйвер для карточки. Этот же трюк не прошел с Avance Logic ALS4000, она секунду играет и вешает систему.

Posted: Tue Nov 01, 2005 2:35 pm
by VaStaNi
andrew_programmer wrote:иногда при повторном щелчке на WAV файле(даже после того как WAV файл прослушан,а AC'97 плеер выключен) операционная система замирает.Тоесть:на экране все обездвиживается,клавиатура не работает,мышь не работает(при этом не мигает индикатор жесткого диска).Только перезагрузка через RESET спасает ситуацию.Самое удивительное,что иногда глюк легко повторим,а иногда раз 10 запустишь один и тот же WAV файл прежде чем он появиться.
Такой глюк возможен только тогда,когда операционная система не возвращается из обработки системного прерывания(я проверял).И приложение,которое является его причиной - это AC'97 WAV плеер.Нужно только понять какая системная функция допускает невозврат.
Скорее всего АППАРАТНОЕ прерывание от кодека остается непогашенным! И далее происходит это в кольце, что и глушит систему. Несмотря на то, что прога не умеет ЕГО испльзовать, это не говорит еще о том, что IRQ не поступает на PIC... Существует общее правило: что ПЕРЕД закрытием программы нужно всегда гамотно "загасить железяку" в соответствии с её прихотями и правилами! Как там в проге-плеере не помню, её статус-зародыш и давно просит доработки, но все симптомы говорят об этом. Т.е. нужно просмотреть доки (исходники, например что ссылал или MPXPLAY, там проще разбираться, да и Intel поддержка AC97 проще и "приятнее" VIA) на предмет CLOSE CODEC AC97! Там обязательно должен быть финт с портами(ну точно скажу, что адрес дескриптора таблицы PCM out надо нулить...), дабы не только остановить проигрывание PCM данных посредством DMA, но и предотсварить их в дальнейшем + возможен доп. RESET кодека для верности. Дело в том, что звук то работает АППАРАТНО и раз проинив ему задачу где брать данные, выдавать + например, в кольце (спец бит). Звук будет крутиться вечно, естественно выбирая САМ(!) из памяти (DMA32) данные без участия проца или проги... Т.е. можно вообще проц остановить... Наряду с этим вернее всего что то гасится, а что то осталось, да еще в тени, т.к. и не подозревается, что оно включалось... ;)

Posted: Tue Nov 01, 2005 3:50 pm
by andrew_programmer
VaStaNi,раз ты так хорошо разбираешься в AC'97 чипсетах,то почемубы тебе не доработать плеер и сделать драйвер для AC'97 чипсетов?

Posted: Tue Nov 01, 2005 6:45 pm
by VaStaNi
andrew_programmer, я к данной системе уже давно отношусь лишь созерцательно. Но мне интересно наблюдать за творениями, ходом творческого процесса, тем, направлений, а также успехами и неудачами ребят, отношениями с забугоным "коллегам"... ну и жизненные выводы соответствующие для себя. Вместе с тем я всегда открыт и повернут лицом к людям, которым хоть чем нибудь могу помочь и это распространяется на многие места инета. В данный момент упорно и максимально с профессиональной точки зрения решаю аппаратно-дровные вопросы архитектуры АТ машин (естественно для моего проекта оси). Считаю, что в этом направлении работ (а он многообразный и сложный) НИ ОДИН RU ПРОЕКТ ОС НЕ МОЖЕТ ПОХВАСТАТЬ ХОТЬ ЧЕМ-ЛИБО! И не только RU. В плане данной системы лишь код драйвера Ethernet, говорит о том, что там творил профессионал. А на счет понятия драйвера - никогда не соглашусь с тем, что драйвер и приложение это одно и тоже. Можно конечно и так обзывать, но драйвером оно от этого не станет. Т.к. драйвер это прежде всего стратегия, пересечение технологий, принципов взаимодействия, а результат - не столько сама поддержка той или иной железки, сколько производительность системы, её потенциал... Но это отдельная очень большущая тема разговора, проектирования.

Posted: Wed Jan 18, 2006 2:48 am
by Hater
А как насчёт драйвера звука для Covox? Я почти написал свой, но возможно кто-то сможет написать быстрее меня. Ведь есть люди, которые более глубже знакомы с ядром чем я.

Posted: Fri Jan 20, 2006 8:37 pm
by Mario79
Hater
До тебя никто о написании драйвера для этого устройства не заявлял.
К тому же мало у кого оно есть.
Но ты пиши. Так как:
1) Кому ни будь, все равно это понадобится. В первую очередь тебе.
2) Ты получишь свой личный не за какие коврижки не покупаемый опыт, богатство которого у тебя никто и никогда не сможет отнять (кроме смерти).