|
|
  |
Проигрывание звука, Кто-нибудь пробовал проигрывать звуковые файлы? |
|
|
|
Mar 16 2006, 16:28
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(Kovrov @ Mar 16 2006, 11:58)  Я так понял реализация PWM1, PWM2 - под Т0 - это один канал аппаратный под ОС0, другой канал программный? ну и каковы результаты? в смысле качества-разборчивости? Нет, оба канала аппаратные: один формируется с помощью регистра OCRxA, другой - OCRxB (выводы OCxA и OCxB соответственно). Режим - Fast PWM. На каждом выходе получается независимая ШИМ (16-битное число должно быть беззнаковым, ессно). Далее напряжения ШИМ складываются с коэффициентами 255/256 и 1/256 соответственно, формируя 16-битную выходную величину. Всё это использовалось для вывода 8 кГц речи, с простой интерполяцией до 32-х кГц, субьективно качество практически не отличимо от "телефонных" 16-бит сигма-дельта ЦАП. Подняв частоту ШИМ, можно ожидать не очень плохих результатов и при воспроизведении аудио (искажения, однако, такому способу вывода звука присущи принципиально). Необходимо только оценить выч. затраты на интерполяцию. Существенного уменьшения искажений можно попытаться добиться применением Phase-Correct PWM. Однако, это снизит частоту и увеличит вычислительную нагрузку на процессор.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Mar 16 2006, 17:27
|

Мастер-фломастер
   
Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700

|
Цитата(Stanislav @ Mar 16 2006, 19:28)  ]Нет, оба канала аппаратные: один формируется с помощью регистра OCRxA, другой - OCRxB (выводы OCxA и OCxB соответственно). че то я в не понятках.... Разве у мег 8 битные таймера T0, T2 не один выход модулятора (oc0, oc2)? или я ошибаюсь (просто сам не помню)... или здесь задействаван Т1 с ocr1a,b а резолюция урезана до 8 бит?
--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
|
|
|
|
|
Mar 16 2006, 17:44
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(Kovrov @ Mar 16 2006, 20:27)  Цитата(Stanislav @ Mar 16 2006, 19:28)  ]Нет, оба канала аппаратные: один формируется с помощью регистра OCRxA, другой - OCRxB (выводы OCxA и OCxB соответственно).
че то я в не понятках.... Разве у мег 8 битные таймера T0, T2 не один выход модулятора (oc0, oc2)? или я ошибаюсь (просто сам не помню)... или здесь задействаван Т1 с ocr1a,b а резолюция урезана до 8 бит? Ну да, конечно. Напр. ATmega48/88/168. В общем, даташиты почитайте. Честно говоря, я и не помню точно, какой именно таймер использовал - дело давно уже было. Но с T/C 0 должно всё работать...
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Mar 17 2006, 07:17
|

Участник

Группа: Участник
Сообщений: 73
Регистрация: 23-12-05
Из: Украина Днепродзержинск
Пользователь №: 12 599

|
Цитата(Kovrov @ Mar 17 2006, 10:47)  Наверное все помнят, раньше были синклеровские звук синтезаторы типа AY8910 с которыми давали неплохие результаты... и объем мелодий был более чем приемлимый... Насколько я помню в AY8910 было 3 выходных 4-битных цапа через которые собственно и выходил аудио поток.А сама мелодия синтезировалась с помошью чм модуляции.Так что качества звука там не было.Моё мнение(возможно ошибочное  ):поставить внешний цап ,например по spi и в придачу какой нибуть атмелевский датафлеш для хранения аудио и всё будет ок.
|
|
|
|
|
Mar 17 2006, 07:51
|
Знающий
   
Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32

|
нет, звук был качественный. Что до 4-битных цапов, то они задавали амплитуду генераторов синусоид на всех 3 каналах. Использовать AY, как три 4-битных цапа - это было из разряда программистских ухищрений, применявшихся для проигрывания сэмплированного звукового потока - это звучало действительно плохо, но это нештатное использование AY. PS: возможно, заинтересует - тут недавно пробегало сообщение про отечественный м/к с архитектурой 8051 и встроенным аналогом AY.
Сообщение отредактировал vet - Mar 17 2006, 07:59
--------------------
Главная линия этого опуса ясна мне насквозь!
|
|
|
|
|
Mar 17 2006, 09:52
|

Мастер-фломастер
   
Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700

|
Цитата(plan @ Mar 17 2006, 10:17)  Насколько я помню в AY8910 было 3 выходных 4-битных цапа через которые собственно и выходил аудио поток.А сама мелодия синтезировалась с помошью чм модуляции.Так что качества звука там не было. я так понимаю вы просто не слушали ;-) булькание AY - было шедевром в те времена да и соотношение объем мелодии/качество было окейным насчет 8 бит цапа и SPI - я думаю мертвому припарка 8 бит оно и в африке 8 бит -помоему самое экономичное что предложил Stanislav для голоса конечно подойдет..
--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
|
|
|
|
|
Mar 17 2006, 10:10
|

Участник

Группа: Участник
Сообщений: 73
Регистрация: 23-12-05
Из: Украина Днепродзержинск
Пользователь №: 12 599

|
Цитата(Kovrov @ Mar 17 2006, 13:52)  Цитата(plan @ Mar 17 2006, 10:17)  Насколько я помню в AY8910 было 3 выходных 4-битных цапа через которые собственно и выходил аудио поток.А сама мелодия синтезировалась с помошью чм модуляции.Так что качества звука там не было.
я так понимаю вы просто не слушали ;-) булькание AY - было шедевром в те времена да и соотношение объем мелодии/качество было окейным Прошу прощения,но наверно Вы не слушали. Во первых AY я не предлагал использовать для вывода голоса. Во вторых - здесь насколько я понимаю идет обсуждение воспроизведения именно звуковых семплов. Цитата(Kovrov @ Mar 17 2006, 13:52)  насчет 8 бит цапа и SPI - я думаю мертвому припарка 8 бит оно и в африке 8 бит . А что в африке нет 14-16 битных цапов
|
|
|
|
|
Mar 17 2006, 10:49
|

Мастер-фломастер
   
Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700

|
Цитата(plan @ Mar 17 2006, 13:10)  Прошу прощения,но наверно Вы не слушали. Во первых AY я не предлагал использовать для вывода голоса. Я предлагал использовать AY для голоса??? вот новость - по крайне мере для меня!!! насчет разрядности и дискретности тут тоже все просто.. берем wav 48000 и 32 бита - и суем в звуковой редактор и потом делаем все возможные даунсемплинги, понижение разрядности и слухаем... устравивает - все ок не устраивает - не все ок!!! ну и скидку на то что в результате будет ещё хуже...
Сообщение отредактировал Kovrov - Mar 17 2006, 10:50
--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
|
|
|
|
|
Mar 17 2006, 11:13
|

Участник

Группа: Участник
Сообщений: 73
Регистрация: 23-12-05
Из: Украина Днепродзержинск
Пользователь №: 12 599

|
Цитата(Kovrov @ Mar 17 2006, 14:49)  Я предлагал использовать AY для голоса??? вот новость - по крайне мере для меня!!! Я не заявлял что предложили именно Вы. Читайте сообщения плиз повнимательнее.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|