Программа воспроизведения произвольного звукового файла с использованием звукового адаптера (формат - wav)
Состав работы
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Введение
Программирование современных звуковых плат - весьма сложное занятие. В качестве примера рассмотрим одну часто применяемую операцию – воспроизведение оцифрованного звука. Для вывода звука через звуковую плату может использоваться один из трех режимов: пряной вывод (команда 10h), когда программа должна сама с нужной частотой посылать отдельные байты из оцифрованного звука в DSP; простой DMA-режим, когда выводится блок данных, после чего вызывается прерывания; и DMA с автоинициализацией, когда данные выводятся непрерывно и после вызова каждого блока вызывается прерывание. Именно в этом порядке увеличивается качество воспроизводимого звука. В первом случаи качество звука будет очень плохим, поэтому будем реализовывать второй случай, благодаря чему мы сможем указать точную скорость оцифровки звука и выводить 16-битный звук. Данная программа работает только на звуковых платах Sound Blaster.
Устройство звуковой платы Sound Blaster
Звуковые платы совместимые с теми или иными моделями Sound Blaster, выглядят как четыре независимых устройства:
DSP (Digital Signal Processor) - устройство, позволяющее выводить и считывать оцифрованный звук;
Микшер (Mixer) - система регуляторов громкости для всех каналов платы;
DFM (Frequency Modulation) или AdLib (по названию первой звуковой платы) - устройство, позволяющее синтезировать звук из синусоидальных и треугольных волн. Слова типа OPL2 или OPL3 в описании платы - это и есть номера версии используемого FM-синтезатора;
MIDI (Music Instrumental Digital Interface) - стандартный интерфейс передачи данных в музыкальной аппаратуре. Но в нашем случае рассматривается GMIDI (обобщенный MIDI) - более качественная система генерации музыки, в которой используются не искусственные синусоидальные сигналы, а образцы звучания различных инструментов. К сожалению, качество этих образцов в большинстве дешевых плат оставляет желать лучшего.
Номера портов ввода-вывода, предоставляющих доступ ко всем этим устройствам, отсчитываются от базового порта, обычно равного 220h, но допускаются также конфигурации с 210h, 230h, 240h, 250h, 260h и 280h. Кроме того, интерфейс - GMIDI использует другую серию портов, которая может начинаться как с 300h, так и с 330h. В описаниях портов мы будем считать, что базовыми являются 220U и 300h. Область портов интерфейса с AdLib начинается с 388h.
Существует большое число модификаций плат Sound Blaster, отличающихся, помимо всего прочего, набором поддерживаемых команд и портов ввода-вывода. После названия каждой команды или порта мы будем указывать сокращенное название платы, начиная с которой эта команда или порт поддерживается:
Программирование современных звуковых плат - весьма сложное занятие. В качестве примера рассмотрим одну часто применяемую операцию – воспроизведение оцифрованного звука. Для вывода звука через звуковую плату может использоваться один из трех режимов: пряной вывод (команда 10h), когда программа должна сама с нужной частотой посылать отдельные байты из оцифрованного звука в DSP; простой DMA-режим, когда выводится блок данных, после чего вызывается прерывания; и DMA с автоинициализацией, когда данные выводятся непрерывно и после вызова каждого блока вызывается прерывание. Именно в этом порядке увеличивается качество воспроизводимого звука. В первом случаи качество звука будет очень плохим, поэтому будем реализовывать второй случай, благодаря чему мы сможем указать точную скорость оцифровки звука и выводить 16-битный звук. Данная программа работает только на звуковых платах Sound Blaster.
Устройство звуковой платы Sound Blaster
Звуковые платы совместимые с теми или иными моделями Sound Blaster, выглядят как четыре независимых устройства:
DSP (Digital Signal Processor) - устройство, позволяющее выводить и считывать оцифрованный звук;
Микшер (Mixer) - система регуляторов громкости для всех каналов платы;
DFM (Frequency Modulation) или AdLib (по названию первой звуковой платы) - устройство, позволяющее синтезировать звук из синусоидальных и треугольных волн. Слова типа OPL2 или OPL3 в описании платы - это и есть номера версии используемого FM-синтезатора;
MIDI (Music Instrumental Digital Interface) - стандартный интерфейс передачи данных в музыкальной аппаратуре. Но в нашем случае рассматривается GMIDI (обобщенный MIDI) - более качественная система генерации музыки, в которой используются не искусственные синусоидальные сигналы, а образцы звучания различных инструментов. К сожалению, качество этих образцов в большинстве дешевых плат оставляет желать лучшего.
Номера портов ввода-вывода, предоставляющих доступ ко всем этим устройствам, отсчитываются от базового порта, обычно равного 220h, но допускаются также конфигурации с 210h, 230h, 240h, 250h, 260h и 280h. Кроме того, интерфейс - GMIDI использует другую серию портов, которая может начинаться как с 300h, так и с 330h. В описаниях портов мы будем считать, что базовыми являются 220U и 300h. Область портов интерфейса с AdLib начинается с 388h.
Существует большое число модификаций плат Sound Blaster, отличающихся, помимо всего прочего, набором поддерживаемых команд и портов ввода-вывода. После названия каждой команды или порта мы будем указывать сокращенное название платы, начиная с которой эта команда или порт поддерживается:
Похожие материалы
Разработка узла с функцией перевода чисел из формата в формат
alfFRED
: 13 августа 2013
Режим работы данного узла - преобразование чисел, поэтому стоит поговорить о самих числах и их представлении в ЭВМ.
В ЭВМ используются двоичные числа, которые не привычны обыкновенному человеку, привыкшему к арабским - десятичным числам. Но для ЭВМ операции и само хранение двоичных чисел более удобно. Двоичные числа - это числа, составленные из 0 и 1. Например:
15 руб.
Разработка конвертора из текстового формата nroff в гипертекстовый формат HTML
evelin
: 29 сентября 2013
Задание.
Разработать транслятор документов из формата nroff в формат HTML.
1. Транслятор должен быть реализован средствами программ lex и yacc.
2. Трансляции подлежит обособленный документ. (Один файл –один документ).
3. В качестве тестовых примеров использовать документы из руководства ОС UNIX (man-файлы).
4. В качестве среду разработки использовать ОС UNIX.
Введение.
В настоящее время все большее распространение находит использование для доступа к RISC‐серверам, на к
15 руб.
Аудио форматы на DVD
alfFRED
: 2 октября 2013
За последние годы сильно развились различные форматы аудио и видео. Аудио мир захвачен CD благодаря их высокой практичности и низкой цене, а видео переходит от VHS кассет на DVD. Но музыкальная индустрия и DVD Forum предпочитают универсальный формат, они желают продавать наши любимые альбомы на DVD, так и появился формат DVD аудио. С технической точки зрения DVD имеет больший объем, чем CD. CD может вместить 80 минут музыки в обычном формате, тогда как DVD может вместить в 10 раз больше, да и по
10 руб.
Задание физического формата вселенной
evelin
: 27 февраля 2013
Расстояние между двумя объектами как бы далеко друг от друга они не находились, может быть выражено посредством отрезка. Применительно к данному аспекту, посредством отрезка состоящего из бесконечного количества точек. Поскольку сами габариты материального пространства заключающего вселенную, значительно больше и не могут быть выражены посредством отрезка, логичен вывод, что:
Материальное пространство, заключающее вселенную, имеет габариты соответствующие заданным посредством прямой (луча) состо
5 руб.
Разработка программы для преобразования денежных сумм в чековой книжке из формата чисел в словесный формат
evelin
: 30 сентября 2013
Объектом работы является денежная сумма в чековой книжке.
Целью работы является разработка программы преобразование денежных сумм в чековой книжке из формата чисел в словесный формат.
В результате проделанной работы была разработана и отлажена программа , осуществляющая ввод пользователем денежной суммы в числовом виде , преобразование и вывод на экран этой суммы в словесном формате.
Программа написана на языке Turbo Pascal и предназначена для эксплуотации под управлением операционной систе
10 руб.
Задача в тестовом формате. Менеджмент. ТУСУР
kolonokus1
: 27 июля 2025
Требуется определить уровень финансового левериджа при увеличении валового дохода от базового уровня 500 тыс. руб. на 15 %. Общая сумма капитала компании составляет 290 тыс. руб., в том числе заемный капитал – 20 %. Процент, выплачиваемый за пользование заемным капиталом, составляет 12 %. Ставка налога на прибыль – 15 %.
Решение:
Шаг 1.
Вычислите сумму заемных средств.
Ответ дайте с точностью до целого значения.
Ответ
тыс. руб.
Шаг 2.
Рассчитайте расходы за пользование заемными средствами.
Ответ
130 руб.
Оптимизация альтернативных форматов документов (не HTML)
alfFRED
: 26 февраля 2014
За пределами HTML - поисковые роботы понимают много разных форматов.
Поисковые роботы основных поисковых систем сейчас могут индексировать не только HTML страницы, но и много других форматов документов, таких как doc, pdf и т.д. Наступило время, когда нужно оптимизировать и эти форматы, но разрешайте роботам индексировать только те файлы, которые действительно могут быть интересны пользователям, а разного рода "технические данные" или что-нибудь подобное, что явно не нужно вашим посетителям, про
10 руб.
3D-формати і їх застосування
Elfa254
: 2 октября 2013
1. 3D-формати
Тут ми дамо стислу характеристику деяких популярних форматів, які містять у собі опис тривимірних об'єктів.
Формат VRML
VRML (мова моделювання віртуальної реальності — Virtual Reality Modeling Language) — графічний формат, що базується на підмножині Open Inventor фірми Silicon Graphics. Він призначений для опису тривимірних зображень й обміну ними в мережі World Wide Web.
Мова VRML, що була розроблена Gavin Bell, Rick Carey, Mark Pesce і Tony Parisi, стала першою мовою тривимір
10 руб.
Другие работы
Визуальное программирование и человеко-машинное взаимодействие (часть 1). Зачет. Билет 1.
nik200511
: 10 июня 2019
Билет 1
(для получения Зачета по дисциплине)
Задание. Разработать приложение, выполняющее следующие действия:
• по нажатию на кнопку Start формируется двумерный массив A размером N x M с помощью генератора случайных чисел и отображается в окне формы.
• размеры массива А[N, M] задаются c помощью элементов textbox (допускается использование других элементов).
• по нажатию на кнопку Max: осуществляется поиск наибольшего элемента каждой строки матрицы А; из этих максимальных элементов составляе
22 руб.
Лабораторная работа №3 по дисциплине: Информатика (часть 1). Вариант 6.
Alexbur1971
: 11 января 2019
Лабораторная работа №3
ОБРАБОТКА СИМВОЛЬНОЙ ИНФОРМАЦИИ
Цель работы: Приобрести навыки разработки программ для обработки символьной информации.
Подготовка к лабораторной работе
1. Изучить разделы теоретического материала по языку Си: обработка символьной информации: правила описания символьных массивов, правила ввода данных в символьный массив, обработка символьных массивов.
Задание к лабораторной работе
1. Подготовить текст исходного предложения в соответстви
300 руб.
Расчёт механического устройства для ликвидации прихватов колонны труб ПЛПК 145, 122, 245 -Технологический комплекс для бурения скважины № 116-А Белоусовского ГКМ с модернизацией механического устройства для ликвидации прихватов колонны тру
nakonechnyy_lelya@mail.ru
: 21 мая 2020
Расчетная часть-Расчёт механического устройства для ликвидации прихватов колонны труб ПЛПК 145, 122, 245 -Технологический комплекс для бурения скважины № 116-А Белоусовского ГКМ с модернизацией механического устройства для ликвидации прихватов колонны труб ПЛПК 145, 122, 245-Курсовая работа-Дипломная работа-Оборудование для бурения нефтяных и газовых скважин (Магистерская работа 12А1)-Текст пояснительной записки выполнен на Украинском языке вы можете легко его перевести на русский язык через Янд
349 руб.
Вычислительная математика. Лабораторная работа №1. Интерполяция. Вариант №9
nik200511
: 29 ноября 2013
Известно, что функция удовлетворяет условию при любом x. Рассчитать шаг таблицы значений функции f(x), по которой с помощью линейной интерполяции можно было бы найти промежуточные значения функции с точностью 0.0001, если табличные значения функции округлены до 4-х знаков после запятой. Составить программу, которая
1.Выводит таблицу значений функции с рассчитанным шагом h на интервале [c, c+30h].
2. С помощью линейной интерполяции вычисляет значения функции в точках по таблице значений фун
25 руб.