User Tag List

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 36

Тема: AY:воспроизведение WAV-файла

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    10.11.2007
    Адрес
    Khimki
    Сообщений
    18,222
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Берёте оригинал музыки, запихиваете его в AY-emul, там переводите его в WAV, далее загружаете его, например, в Sound Forge, а там на выходе делаете его в OGG. Всё, именно так оригинал и играет. В вафке да, звучание другое.
    Последний раз редактировалось GriV; 07.08.2012 в 14:48.
    Может, мы обидели кого-то зря,
    Сбросив пару лишних мегатонн,
    И горит зелёным пламенем земля,
    Там, где был когда-то Пентагон!..

    Profi-576 v3.2/AY-3-8912A GI/FDD-5.25'

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,869
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    110
    Поблагодарили
    66 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Rindex Посмотреть сообщение
    Берёте оригинал музыки, запихиваете его в AY-emul, там переводите его в WAV, далее загружаете его, например, в Sound Forge, а там на выходе делаете его в OGG. Всё, именно так оригинал и играет. В вафке да, звучание другое.
    ты хоть знаешь, чем отличается wav от mp3 и ogg?
    Последний раз редактировалось GriV; 07.08.2012 в 14:51.

  4. #3

    Регистрация
    10.11.2007
    Адрес
    Khimki
    Сообщений
    18,222
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    ты хоть знаешь, чем отличается wav от mp3 и ogg?
    Обьясни, если не трудно.
    Последний раз редактировалось GriV; 07.08.2012 в 14:50.
    Может, мы обидели кого-то зря,
    Сбросив пару лишних мегатонн,
    И горит зелёным пламенем земля,
    Там, где был когда-то Пентагон!..

    Profi-576 v3.2/AY-3-8912A GI/FDD-5.25'

  5. #4

    Регистрация
    18.08.2005
    Адрес
    Саратов
    Сообщений
    97
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    ты хоть знаешь, чем отличается wav от mp3 и ogg?
    Расширением файла, внутренней структурой, алгоритмом сжатия, способом проигрывания. Не?

  6. #5

    Регистрация
    18.08.2005
    Адрес
    Саратов
    Сообщений
    97
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вопрос: как воспроизвести WAV на аигрике. Ты знаешь, как проиграть WAV на аигрике?
    Последний раз редактировалось GriV; 07.08.2012 в 14:52.

  7. #6

    Регистрация
    06.05.2006
    Адрес
    Ливны, Орловская обл
    Сообщений
    1,169
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gobuka Посмотреть сообщение
    Ты знаешь, как проиграть WAV на аигрике?
    Ну начнём с того, что wav - это RIFF контейнер, в котором может лежать и mp3 тоже...

  8. #7

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ТС, сделай простой тест. загрузи в sound forge нужный звук. законверть его в 8-бит моно. сохрани как RAW беззнаковый.

    напиши программку, которая будет брать байт из этого файла, сдвигать его вправо на 4 бита (чтобы старшие 4 бита в итоге были =0) и выводить в регистр громкости ау. и это в цикле для каждого байта.

    всё! услышишь звук - полдела сделано. чтобы было более лучше - надо найти табличку, по которой байт конвертится в 4 бита (не тупо сдвигом как здесь).

    лол в zx-format 8 статья про это самое, даже с табличкой! угадайте, блин, чья))
    Последний раз редактировалось GriV; 07.08.2012 в 14:55.

  9. #8

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пользуйтесь поиском на форуме:
    http://zx.pk.ru/showthread.php?t=13526
    и списком рекомендуемых для ознакомления тем:
    http://zx.pk.ru/showthread.php?t=5335
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  10. #9

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Плеер по MCC (middle channel correction) есть в Basil Demo (в приложении к ZX-Guide 2.5 trash) и в Born Dead #0G.

  11. #10

    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,089
    Спасибо Благодарностей отдано 
    281
    Спасибо Благодарностей получено 
    70
    Поблагодарили
    49 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для начала надо точнее определиться с задачей и изучить, что такое wav-файлы, что такое цифровой звук и импульсно-кодовая модуляция (ИКМ). Без этого будет трудно даже понять предложенные здесь решения.

    Навскидку, вот простая процедура воспроизведения куска цифровой записи звука на AY из памяти:

    Код:
    LD BC,#FFFD
    LD A,7
    OUT (C),A ;Выбрать регистр управления
    LD A,#3F
    LD B,#BF
    OUT (C),A ;Отключить генерацию тона и шума на всех каналах
    LD B,#FF
    LD A,9
    OUT (C),A ;Выбрать регистр громкости канала B
    LD B,#BF
    LD HL,sound_start
    LD DE,sound_length
    SOUNDLOOP:
    LD A,(HL) ;7
    OUT (C),A ;12
    INC HL ;6
    DEC DE ;6
    LD A,D ;4
    OR E ;4
    JR NZ,SOUNDLOOP ;12/7
    При этом каждый проход цикла выполняется за 51 такт, следовательно при тактовой частоте 3.5МГц за одну секунду цикл выполнится 68627 раз, то есть частота дискретизации будет равна 68627. Это слишком большая частота, которая ведет к нерациональному расходу памяти. Поэтому цикл надо замедлять, вставляя в него команды NOP, каждая из которых кушает 4 такта.

    Я рекомендую использовать частоты дискретизации в районе 10кГц, что обеспечивает воспроизведение звуков с частотами до 5кГц при умеренном расходе памяти. Как только определится частота дискретизации, необходимо подготовить звуковой файл. Для этого:

    1) загружаем его в любой звуковой редактор
    2) передискретизируем его (Resample) на требуемую частоту дискретизации
    3) выполняем другую обработку (фильтрацию, усиление). Нужно стремиться к возможно более полному использованию динамического диапазона, ведь у AY ЦАП имеет разрядность всего 4 бит. Есть смысл использовать компрессию динамического диапазона и усилить сигнал так, чтобы загнать его немного в насыщение (Clipping). Все равно шум квантования будет сильный, поэтому надо стремиться, чтобы сохранялся приемлемый баланс между шумом квантования и шумом от насыщения. Фильтрация звука необходима для того, чтобы убрать из него те частоты, которые не слышно или ими можно пожертвовать. Тем самым уменьшится энергия сигнала и его амплитуда, что позволит усилить его дополнительно без искажений от насыщения.

    После обработки сохраняем файл в формат wav или raw (без заголовка) и без компрессии. Никаких MP3, никаких OGG, никаких ADPCM. Формат должен быть PCM, 8 или 16 бит.

    Сохраненный файл необходимо обработать программой, которая удалит из него заголовок (если он есть) и сделает данные 4-битными. После этого его можно проигрывать программой, которую я привел выше.

    Ну и настоятельно рекомендуется изучение основ цифровой обработки сигналов. Мою программу можно усовершенствовать, чтобы она более рационально использовала память. Ведь из каждых 8 бит памяти она использует только 4, таким образом можно будет повысить длительность проигрываемого файла в 2 раза! Но все равно будет мало. У Спектрума памяти слишком мало чтобы играть цифровой звук в записи сколько-нибудь долго. Несколько секунд - и все.
    Последний раз редактировалось Barmaley_m; 09.08.2012 в 23:27.

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 43
    Последнее: 17.08.2023, 18:30
  2. Чтение файла в tr-dos
    от hippiman в разделе Программирование
    Ответов: 14
    Последнее: 29.09.2011, 11:11
  3. воспроизведение AY+SOUNDRIVE возможно?
    от solegstar в разделе Музыка
    Ответов: 7
    Последнее: 25.05.2011, 09:19
  4. Воспроизведение YM на ATM 2+
    от POIND в разделе ATM
    Ответов: 8
    Последнее: 25.07.2005, 16:09

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •