Разработка аудиоплеера в кроссплатформенной среде Embarcadero Delphi

СОДЕРЖАНИЕ

СОДЕРЖАНИЕ 2

ВВЕДЕНИЕ 3

ТЕХНИЧЕСКОЕ ЗАДАНИЕ 4-7

  1. Введение 4
  2. Требования к программному продукту 4
  3. Условия эксплуатации 5
  4. Требования к программной документации 6
  5. Календарный план работ 7
  6. Цена разработки, порядок контроля и приемки 7

ПРОЕКТИРОВАНИЕ «АУДИО ПЛЕЕР "3PMPLAYER"» 8

РАЗРАБОТКА «АУДИО ПЛЕЕР "3PMPLAYER"» 13

ТЕСТИРОВАНИЕ АУДИО ПЛЕЕРА 26

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ «АУДИО ПЛЕЕР 26

«3PMPLAYER»

ИНСТРУКЦИЯ АДМИНИСТРАТОРА АУДИО ПЛЕЕРА 28

ЗАКЛЮЧЕНИЕ. 30

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 31


ВВЕДЕНИЕ

Тема дипломной работы «Разработка аудиоплеера в кроссплатформенной среде Embarcadero Delphi». Проектирование и разработка аудиоплеера – это применение навыков в работе с мультимедиа файлами, звуковыми компонентами и библиотеками, а также написание структурированного программного кода. Профессия программиста состоит не только из написания кода к физическим и логическим объектам программной среды, она подразумевает умение работать с растровыми и векторными графическими редакторами, использовать внешние аудио библиотеки и кодеки, группировать объекты согласно их назначению и придавать законченный программный вид, понятный и доступный для работы широкого спектра пользователей.

Целью создания прикладного приложения стало закрепление навыков в области программирования и изучения библиотеки Bass 2.4.

Поставленные задачи:

  • изучить рабочую область и функциональные возможности среды программирования «Embarcadero Delphi»;
  • подобрать теоретический материал по созданию аудио приложений;
  • получить консультации более опытных программистов через форумы и блоги;
  • разработать внутренний и внешний интерфейс аудио приложения;
  • написать программный код;
  • упорядочить и объединить компоненты интерфейса с программным кодом, подключить внешние .dll библиотеки;
  • провести тестирование и отладку готового приложения.

Embarcadero Delphi - [дэлф’и], ранее Borland Delphi и CodeGear Delphi, — интегрированная среда разработки ПО для Microsoft Windows, Mac OS, iOS иAndroid на языке Delphi (ранее носившем название Object Pascal), созданная первоначально фирмой Borland и на данный момент принадлежащая и разрабатываемая Embarcadero Technologies. Embarcadero Delphi является частью пакета Embarcadero RAD Studio и поставляется в пяти редакциях: Starter, Professional, Enterprise, Ultimate и Architect. Координирующий офис Embarcadero, ответственный за разработку Delphi, находится в Торонто, тогда как сама разработка сконцентрирована главным образом в Румынии и России. В России Embarcadero представлена двумя офисами — в Санкт-Петербурге(разработка) и в Москве (маркетинг)

ГЛОССАРИЙ ТЕРМИНОВ И ОПРЕДЕЛЕНИЙ

Библиотека (от англ. library) в программировании — сборник подпрограмм или объектов, используемых для разработки программного обеспечения (ПО).

В некоторых языках программирования (например, в Python) то же, что и модуль, в некоторых — несколько модулей. С точки зрения операционной системы (ОС) и прикладного ПО библиотеки разделяются на динамические и статические.

Термин «библиотека подпрограмм» по всей видимости одними из первых упомянули Уилкс М., Уиллер Д., Гилл С. в качестве одной из форм организации вычислений на компьютере. Исходя из изложенного в их книге под библиотекой понимался набор «коротких, заранее заготовленных программ для отдельных, часто встречающихся (стандартных) вычислительных операций».

Визуализация (от лат. visualis, «зрительный») — общее название приёмов представления числовой информации или физического явления в виде, удобном для зрительного наблюдения и анализа.

Аудиофайл (файл, содержащий звукозапись) — компьютерный файл, состоящий из информации об амплитуде и частоте звука, сохранённой для дальнейшего воспроизведения на компьютере или проигрывателе.

РАЗДЕЛ I. ТЕХНИЧЕСКОЕ ЗАДАНИЕ

1. Общие сведения

1.1 Наименование системы

Полное наименование: прикладное программное средство музыкально-развлекательного назначения 3pmPlayer. Краткое наименование: 3pmPlayer.

1.2. Основания для проведения работ

Работа выполняется на основании учебного плана по специальности 230115 «Программирование в компьютерных системах» и является дипломным проектом.

1.3. Плановые сроки начала и окончания работы

Сроки выполнения с 1.02.2015 по 31.05.2015.

1.4. Порядок оформления и предъявления результатов работ

Работы по созданию проекта сдаются в полном объеме, в срок, установленный учебным планом.

2. Назначение и цели создания системы

2.1. Назначение системы

Программа ориентирована на широкий круг пользователей и преследует музыкально-развлекательные цели.

2.2. Цели создания системы

Аудиоплеер предназначен для удобного воспроизведения аудио файлов форматов: "mp3, wav, wma" из своей избранной аудио библиотеки. Аудиоплеер ориентирован на широкий возрастной диапазон пользователей и может также помочь расслабиться и отдохнуть.

3. Требования к приложению

3.1. Требования к приложению в целом

Разрабатываемое приложение должно обеспечивать выполнение функций:

гибкость системы к изменениям;

простота запуска и настройки пользователем.

3.1.1. Требования к структуре и функционированию приложения

Структура и возможности программного средства должны содержать:

список элементов на каждом экране с названиями и текстом подсказок;

описание поведения элементов;

статистика и отчеты.

Определяются требования к режимам функционирования программного средства:

система должна быть стабильна в работе;

необходимо установленное антивирусное программное обеспечение на рабочей станции.

3.1.2. Требования к надежности технических средств и программного обеспечения.

К надежности оборудования предъявляются следующие требования:

в качестве аппаратных платформ должны использоваться средства с средней надежностью;

аппаратно-программный комплекс системы должен иметь возможность восстановления в случаях сбоев;

операционная система семейства Windows XP/7/8/8.1/10.

К надежности электроснабжения предъявляется следующее требование: с целью повышения отказоустойчивости программного средства в целом рекомендуема комплектация компьютеров источником бесперебойного питания (ИБП) с возможностью автономной работы системы не менее 5 минут.

3.1.3. Требования к эргономике и технической эстетике

Программное средство должно обеспечивать удобный для конечного пользователя интерфейс, отвечающий следующим требованиям:

графический интерфейс рабочей области с оптимизированной цветовой схемой и читаемым текстом;

наличие активных кнопок, назначение которых понятно пользователю;

возможность быстрого перехода между графическими объектами.

3.1.4. Требования к антивирусной защите

Средство антивирусной защиты рекомендуется установить на рабочем месте пользователя. Рекомендуемым средством антивирусной защиты являются NOD32 и Kaspersky Internet Security 2015.

Средство антивирусной защиты должно обеспечивать:

централизованное управление сканированием, удалением вирусов;

централизованную автоматическую инсталляцию клиентского по на рабочих местах пользователей и администраторов;

централизованное автоматическое обновление вирусных сигнатур на рабочих местах пользователей и администраторов;

ведение журналов вирусной активности;

администрирование всех антивирусных продуктов.

3.2. Требования к функциям, выполняемым системой

Функция, выполняемая программным средством - предоставление пользователю удобной и понятной рабочей области, способной помочь в воспроизведении аудио в режиме реального времени.

3.2.1. Требования к контролю, обновлению и восстановлению данных

К контролю данных предъявляется требование: программное средство должно протоколировать все события, связанные с изменением своего информационного наполнения, и иметь возможность восстановления данных.

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

3.2.2. Требования к организационному обеспечению

Требования к защите от ошибочных действий пользователя.

Основными пользователями программного средства, являются люди широкого возрастного диапазона с минимальным уровнем владения персональным компьютером, которым установлены требования:

для всех пользователей должна быть запрещена возможность удаления преднастроенных объектов и отчетности;

для снижения ошибочных действий пользователей должно быть разработано полное и доступное руководство пользователя.

  1. Для нормальной работы программы необходимо:

3.3.1. Процессор х86-64 не ниже 800 Мгц

3.3.2. ОЗУ не менее 256 Мб

3.3.3. VGA-совместимый видеоадаптер

3.3.4. Не менее 10 Мб на жёстком диске

3.3.5. Совместимая аудио-карта

3.3.6. HID-средства: клавиатура, мышь

4. Состав и содержание работ по созданию системы

Работы по созданию программного средства выполняются в три этапа:

проектирование;

разработка эскизного проекта;

разработка технического проекта.

Конкретные сроки выполнения разработки определяются планом выполнения работ по настоящему частному техническому заданию.

5. Требования к документированию

Приложение разрабатывается в соответствии с согласованным Разработчиком и Заказчиком перечнем подлежащих разработке комплектов и видов документов, соответствующих требованиям ГОСТ 34.201-89 и требованиям по документированию комплектующих элементов;

Вся документация должна быть подготовлена и передана как в печатном, так и в электронном виде (в формате Microsoft Word).

6. Источники разработки

Настоящее техническое задание разработано на основе следующих документов и информационных материалов:

учебный план по специальности 230115 «Программирование в компьютерных системах»;

ГОСТ 24.701-86 «Надежность автоматизированных систем управления».

ГОСТ 21958-76 Система "Человек-машина".

7. Календарный план работ

Таблица 1. Календарный план создания и тестирования аудио приложения

№ этапа

Название этапа

Сроки этапа

Чем заканчивается этап

Изучение предметной области. Проектирование программного средства

1.02.2015 – 28.02.2015

Предложения по реализации ПС, создание прототипа на бумажном носителе

Проектирование медиа приложения.

Написание технического задания

1.03.2015 – 16.03.2015

Медиа приложения и документация

Разработка медиа приложения и проектной документации

17.03.2015 – 17.05.2015

Готовое медиа приложение с пакетом прилагающийся документации

Тестирование, отладка и сдача проекта

18.05.2014 – 31.05.2014

Отчет о тестировании и отладке, сдача готового проекта

РАЗДЕЛ II. ПРОЕКТИРОВАНИЕ АУДИОПЛЕЕРА

«3pmPlayer»

Проектирование — процесс создания структуры будущего приложения, с указанием входных, выходных данных, их оформления и описания работоспособности.

Основные задачи проектирования:

  • определение среды разработки и средств, расширяющих ее возможности;
  • создание структурной модели будущего приложения;
  • описание входных и выходных данных;
  • реструктурирование компонентов приложения;
  • оформление отдельных компонентов;
  • преобразование отдельных компонентов в целостное приложение;
  • описание работоспособности приложения.

Определение среды разработки и средств, расширяющих, ее возможности

Для проектирования приложения «3pmPlayer» была выбрана интегрированная среда разработки приложений - «Embarcadero Delphi». Она является одним из самых известных кроссплатформенных сред для семейства операционных систем Windows и Mac OS, написанный на языке Delphi.

Интерфейс «Embarcadero Delphi» (рис. 2.1) объединяет в себе окна:

Ниже перечислены основные составные части Delphi:

  1. Дизайнер Форм (Form Designer)
  2. Окно Редактора Исходного Текста (Editor Window)
  3. Палитра Компонент (Component Palette)
  4. Инспектор Объектов (Object Inspector)
  5. Справочник (On-line help)

Создание аудиоплеера в «Embarcadero Delphi» требует предварительного знакомства, с каким-либо из языков программирования.

Рис. 2.1. Интерфейс рабочей области Embarcadero Delphi

При решении поставленной задачи оптимально использовать для представления информационных материалов язык Delphi, который является языком высокого уровня и позволяет быстро и эффективно создавать приложения.

Для реализации "Аудиоплеера" была выбрана система программирования Delphi версии XE2 фирмы Embarcadero, так как она предоставляет наиболее широкие возможности для программирования приложений ОС Windows.

Delphi – это продукт Embarcadero для быстрого создания приложений.

Высокопроизводительный инструмент визуального построения приложений включает в себя настоящий компилятор кода и предоставляет средства визуального программирования, несколько похожие на те, что можно обнаружить в Microsoft Visual Basic или в других инструментах визуального проектирования. В основе Delphi лежит язык Object Pascal, который является расширением объектно-ориентированного языка Pascal.

В Delphi также входят локальный SQL-сервер, генераторы отчетов, библиотеки визуальных компонентов, и прочее хозяйство, необходимое для того, чтобы чувствовать себя совершенно уверенным при профессиональной разработке информационных систем или просто программ для Windows-среды.

Прежде всего Delphi предназначен для профессиональных разработчиков, желающих очень быстро разрабатывать приложения в архитектуре клиент-сервер.

Delphi производит небольшие по размерам (до 15-30 Кбайт) высокоэффективные исполняемые модули (.exe и .dll), поэтому в Delphi должны быть прежде всего заинтересованы те, кто разрабатывает продукты на продажу.

С другой стороны небольшие по размерам и быстро исполняемые модули означают, что требования к клиентским рабочим местам существенно снижаются – это имеет немаловажное значение и для конечных пользователей.

Преимущества Delphi по сравнению с аналогичными программными продуктами.

    – быстрота разработки приложения;

    – высокая производительность разработанного приложения;

    – низкие требования разработанного приложения к ресурсам компьютера;

    – наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi;

    – возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных кодах);

    – удачная проработка иерархии объектов.

Система программирования Delphi рассчитана на программирование различных приложений и предоставляет большое количество компонентов для этого.

К тому же работодателей интересует прежде всего скорость и качество создания программ, а эти характеристики может обеспечить только среда визуального проектирования, способная взять на себя значительные объемы рутинной работы по подготовке приложений, а также согласовать деятельность группы постановщиков, кодировщиков, тестеров и технических писателей. Возможности Delphi полностью отвечают подобным требованиям и подходят для создания систем любой сложности.

Создание структурной модели будущего приложения

Структурная модель представляет собой взаимодействие пользователя, рабочей станции и приложения, представленного на рис. 2.2. Весь процесс начинается с обращения пользователя через рабочую станцию к приложению, которое в свою очередь из внутренних компонентов и дополнительных библиотек формирует единый функциональный интерфейс, передаваемый пользователю.

Формируемый интерфейс содержит пять основных типа компонентов: Кнопки, Ползунки, Листбоксы, Таймеры, Надписи. Кнопки представляют собой объекты, на которые программируются основные функции аудиоплеера. Ползунки – это те объекты с помощью которых можно менять числовые значения определённых функций аудиоплеера. Листбоксы хранят в себе все данные о аудио файлах: длина трека, название трека, путь к треку и тд. Таймеры — это те объекты, которые контролируют правильный процесс выполнения временных функций программы, т.е. правильное воспроизведение, остановка, пауза и тд. Надписи отвечают за удобность и понятность интерфейса программы, подсказки, название функций и тд.

Рис. 2.2. Схема структурной модели аудиоплеера.

Описание входных и выходных данных

Входные данные представляют собой аудио файлы, с флеш-накопителя, с жёсткого диска, с CD или DVD диска..

Сохранения плейлиста с данными, будет предусмотрена возможность формирования таблиц с аудио файлами.

Весь программный код будет представлять упорядоченный набор символов, которым в зависимости от функционального назначения присвоится соответствующий тип данных (символьный, целочисленный, вещественный). Код будет иметь блочную структуру, что даст возможность пользователям, имеющим базовые знания в области программирования ознакомиться с внутренними компонентами аудиоплеера и по необходимости вносить в него изменения, настраивая визуальную и техническую среду согласно своим предпочтениям (рис. 2.3).

Рис. 2.3. Схема внутренних компонентов программного кода

Структура программного кода логически делится на основной исполнительный код, вспомогательный и комментарии. Основной исполнительный код будет контролировать работу основных функций аудиоплеера(физические настройки). Задача вспомогательного кода обеспечение пользовательского интерфейса активными кнопками. Комментарии будут включать в себя пояснения к основному и вспомогательному коду.

Реструктурирование компонентов приложения

Все внутренние компоненты приложения делятся на блоки, согласно назначению и типу (рис. 2.4).

Рис. 2.4. Схема внутренних компонентов приложения

Компоненты основного окна представляют иерархическую структуру, где каждый последующий объект входит в состав предыдущего и выполняет определенную функцию.

Основными объектами в меню аудиоплеера являются активные кнопки, с различным назначением и визуальным представлением. В главном меню присутствуют кнопки, позволяющие начать воспроизведение, поставить на паузу воспроизведение, остановить воспроизведение, открыть плейлист, сохранить плейлист, открыть папка, открыть аудио файл, удалить трек. Кнопки представлены изображениями понятными для пользователя.

Основной функционал аудиоплеера:

Поддержка формата mp3.

Стандартные функции медиа-плеера.

Play/Pause, Stop, Next track, Previous track.

Возможность регулировки громкости.

Возможность регулировки баланса.

Наличие play-листа.

Возможность сохранения play-листа в файл.

Возможность загрузки play-листа из файла.

Возможность сворачивания плеера в трей.

Защита от повторного запуска приложения.

Планируется применить к меню аудиоплеера анимированные компоненты, путем программирования координатной области (рис. 2.9).

Рис. 2.9. Схема расположения активных объектов меню

Оформление отдельных компонентов

На этапе описания внутренних компонентов аудиоплеера была создана логическая схема, которая определяет количественный состав функционирующих объектов, их расположение на рабочей области и области исполнения.

После утверждения количественного состава объектов и их функционала, была поставлена задача по подбору внешних прикладных программ, для разработки интерфейса. Классификация внешних прикладных программ зависела от типов обрабатываемых данных и их физического объема на жестком диске. На рис. 2.10 представлена схема прикладных программ, которые планируется использовать при разработке интерфейса.

Рис. 2.10. Схема прикладных программ для разработки интерфейса

Стандартные средства по управлению звуковыми файлами в «Delphi Embarcadero» не смогут удовлетворить требования разработчика, из-за нерационального распределения физических ресурсов программной среды, которые бы повлекли чрезмерную потребность в памяти рабочей станции. Для управления звуковой части программы планируется использовать аудиобиблиотеку Bass.Dll

BASS (BASS audio library) — это небольшая аудио-библиотека для использования в операционных системах Windows и Mac OS X, а также доступна для Linux, Win64, WinCE, Android и iOS платформ.

Цель библиотеки заключается в том, чтобы предоставить разработчикам образец аудио-центра, в частности, обеспечить работу с потоками (MP3, MP2, MP1,OGG, WAV, AIFF), MOD файлами (XM, IT, S3M, MOD, MTM, UMX), MO3 файлами (mp3, ogg и сжатых MOD файлов), функциями записи, редактирования тегов аудиофайлов, конвертирования популярных форматов, «граббить» AudioCD, потребляя малое количество системных ресурсов.

Весь набор возможностей предоставляется в виде динамической библиотеки размером около 100 Kb.

Для работы BASS в операционной системе Windows, требуется DirectX 3 или выше, библиотека использует DirectSound и DirectSound3D для воспроизведения и записи звука. В Mac OS X BASS используетCoreAudio.

Основные дополнения

В таблице предоставлены основные дополнения для библиотеки.

Имя

Версия

Описание

BASSWMA

2.4.3

Расширение позволяет воспроизводить WMA, кодированные WMA файлы и потоки, а также широковещательный канал.

BASSCD

2.4.3

Расширение позволяет воспроизводить, а также осуществлять перенос информации с AudioCD в файл.

BASSFLAC

2.4.1

Расширение позволяет воспроизводить FLAC файлы.

BASSMIDI

2.4.5

Расширение позволяет воспроизводить MIDI файлы и события в реальном времени, используя SF2 SoundFonts.

BASSWV

2.4.2

Расширение позволяет воспроизводить закодированные WavPack файлы.

BASSenc

2.4.6

Расширение позволяет BASS-каналам кодироваться, используя для этого любую командную строку кодировщика STDIN, LAME, OGGENC и других.

BASSmix

2.4.4

Расширение предоставляет возможность смешивать различные BASS-каналы, с помощью передискретизации и функции матрицы смешивания.

Вторичные дополнения

В таблице предоставлены вторичные дополнения для библиотеки.

Имя

Версия

Описание

BASSFX

2.4.5

Расширение предоставляет ряд эффектов (к примеру, темпы).

BASSSPX

2.4

Расширение позволяет воспроизведение Speex закодированных файлов.

BASSMPC

2.4.1

Расширение позволяет воспроизведение Musepack закодированных файлов.

BASSAC3

2.4.0.2

Расширение позволяет воспроизведение AC3 закодированных файлов, а также потоков.

BASSAAC

2.4.2

Расширение созданное на основе faad2 декодера, которое позволяет воспроизведение AAC и MP4 закодированных файлов и потоков, а также AAC + Shoutcast потоков.

BASSALAC

2.4.1

Расширение позволяет воспроизведение ALAC (Apple Lossless) закодированных файлов.

BASSTTA

2.4

Расширение позволяет воспроизведение TTA закодированных файлов.

BASSAPE

2.4.0.4

Расширение позволяет воспроизведение Monkey's Audio Codec закодированных файлов.

BASSOFR

2.4.0.2

Расширение позволяет воспроизведение OptimFROG закодированных файлов.

BASSWADSP

2.4.1.0

Расширение позволяет использовать плагины Winamp DSP в BASS.

BASSVST

2.4.0.6

Расширение позволяет использовать VST.

BassWinamp

2.4.1.4

Расширение позволяет использовать подключаемые модули ввода от Winamp.

BASSSFX

2.4.2.1

Расширение позволяет использовать визуальные плагины от Windows Media Player, Sonique, Winamp и BassBox в BASS.

BASSWA

Расширение позволяет подключать визуальные плагины Winamp для использования в BASS.

Tags

15

Расширение для работы с тегами.

BASSDSHOW

2.4.0.8

Расширение позволяет воспроизведение видео файлов в BASS, используя для этого DirectShow кодек.

На основе данной библиотеки написан ряд популярных аудиоплееров: XMPlay, AIMP (начиная с версии 3.0, аудиоплеер использует BASS только как декодер), Spider Player, Ipple Play, Small Player,MusicBee, MusicSort Platinum, её также используют для воспроизведения некоторых аудиоформатов такие медиаплееры, как The KMPlayer, Kantaris, Daum PotPlayer. Mp3 плеер 1by1 использует библиотеки bass для не mp3 аудиоформатов.

Преобразование отдельных компонентов в целостное приложение

Целостность компонентов – свойство системы, состоящее в том, что при любой демонстрации отдельного объекта заданные значения его параметров демонстрируемого представления соответствуют специфицированным требованиям.

После реструктурирования внутренних компонентов аудиоплеера и описания программных продуктов, планируемых использовать в результате разработки, можно сформировать общую структуру проектируемой системы. Создав графическую оболочку для каждого активного объекта, потребуется загрузить его в рабочую область и присвоить ему значение, которые затем объединить в группы согласно их будущему назначению.

Каждому блоку компонентов следует задать программный код таким образом, чтобы взаимодействие смежных компонентов осуществлялось между объектами, которым присвоен один и тот же тип данных. Блокам с вещественным типом данных необходимо установить параметры с ограниченными числовыми диапазонами, для предотвращения перегруженности исполнительных узлов и уменьшения физической памяти, необходимой для обеспечения работоспособности приложения. Целочисленный тип данных будут присваиваться только тем объектам, которые будут содержать математические вычисления и логические операции, основанные на операциях с целочисленным числовым диапазоном. Символьному типу данных будут присвоены значения логических операций над функциями с переменными значениями, результаты от выполнения которых будут носить второстепенный характер.

Описание работоспособности приложения

Аудиоплеер 3pmPlayer будет представлять медиа приложение с использованием библиотеки Bass.dll. Функционал аудиоплеера планируется создавать таким образом, чтобы при какой-либо неисправности или некорректной работе одного или нескольких объектов, поиск системной ошибки и ее устранение не занимало свыше одного часа реального времени.

Первым объектом интерфейса, с котором придется взаимодействовать пользователю будет меню, состав и расположение объектов на котором были уже описаны. Все активные кнопки будут иметь подсветку и иметь внешний вид, понятный даже людям с минимальными знаниями в области владения персональным компьютером. Начав процесс воспроизведения, система сгенерирует данные блочной структуры и предоставит готовые данные о аудио файле. После завершения работы с процессами, пользователю будет доступна сохранение получившейся таблицы с избранными треками.

РАЗДЕЛ III. РАЗРАБОТКА АУДИОПЛЕЕРА

Разработка аудиоплеера - это этап реализации проектных решений в выбранной среде программирования, с использование описанных средств, методов, утверждённых техническим заданием.

В процессе разработки аудиоплеера "3pmPlayer" применялись схемы концептуального и логического проектирования, что существенно облегчило работу по разработке внутренних компонентов приложения.

Разработку аудиоплеера можно разделить на этапы:

  • подготовка среды программирования для реализации проекта;
  • создание компонентов интерфейса;
  • написание основного программного кода и реализация визуальных эффектов в интерфейсе;
  • расположение и настройка активных объектов в приложение;
  • тестирование аудиоплеера на наличие ошибок и совместимость с различными операционными системами.

Каждый этап разработки выполнялся с учетом календарного плана работ и был успешно выполнен в срок.

  1. Подготовка среды программирования для реализации проекта

Для разработки аудиоплеера "3pmPlayer" на рабочий компьютер был установлена среда разработки "Embarcadero Delphi", подключены внешние библиотеки и установлены необходимые драйверы, обеспечивающие корректную работу среды программирования.

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

  1. Создание компонентов аудиоплеера

Началом разработки аудиоплеера "3pmPlayer" было создание интерфейса главного меню. Фоновое изображение кнопок было нарисовано в программе Adobe Photoshop с использованием сторонних средств и ресурсов, на основе ранее подобранного материала. Фоновому изображению кнопок было присвоено разрешение 28х28 пикселей, которое в будущем утвердилось и стало применяться для всех фоновых изображений кнопок (рис. 3.2).

Рис. 3.2. Фоновое изображение кнопок

После создания фонового изображения и реструктурирования будущих компонентов меню и всего приложения в целом, разрабатывались графические шаблоны для динамических и статических объектов меню. Динамические объекты выполнялись в двух экземплярах с различной фоновой обводкой, для того, чтобы имитировать подсветку будущих кнопок при наведении на них курсора мыши. Все готовые изображения сохранялись в форматах .png, .jpg и .gif.

Следующими объектами создавались системные графические кнопки, назначениями которых были завершение работы приложения, получение справочной информации и звуковые настройки. Между каждым графическим объектом имеется связь, которая в последствии послужит основополагающим фактором в формировании целостного приложения.

Все исходные объекты графики были помещены в системный контейнер и при необходимости могут быть изменены или удалены из приложения. Системные кнопки имеют двойную вариацию, как и кнопки запуска.

После создания компонентов меню создавались компоненты внутреннего интерфейса, такие как: управляемые объекты, движущиеся объекты. В процессе создания компонентов интерфейса основными задачами были:

  • сохранение цветового баланса;
  • обеспечение зрительного различия между отдельными элементами;
  • обеспечение финального взаимодействия элементов.

Ниже представлены готовые компоненты внутреннего интерфейса.

Рис. 3.5.2 Изображение основного меню начальной версии.

Рис. 3.5.2 Изображение основного меню.

На данной вкладке расположены:

  • 10 активных кнопок - плей/пауза, стоп, пред. трек, след. трек, повтор трека/плейлиста/без повтора, добавление трека/папки с трека, удаление трека/всего плейлиста, кнопка шестерёнки(настройки), загрузка плейлиста, сохранение плейлиста;
  • 4 компонента Panel: 2 для отображения времени трека, 2 для визуальной красоты;
  • Компонент TrackBar - регулятор громкости.
  • Компонент ListBox- плейлист
  • 3 компонента Label-"Уровень звука:",громкость в процентах, с двигающимся текстом в самом верху окна плеера.

Каждый фон представляет статическое изображение с элементами зимней тематики. Создание проходило в растровом графическом редакторе Adobe Photoshop, корректировка и более точная детализация некоторых элементов проводилась в редакторах Paint и CorelDRAW. Оптимизацией цветовой гаммы выбиралась из расчета длительного пользования будущим приложением, с минимальной нагрузкой на зрительные органы. Для того чтобы изображения имели контрастность с управляемыми и движущимися объектами, применялись различные эффекты форматирования стилей слоев.

Рис. 3.6. Изображение дополнительного меню.

На данной вкладке расположены:

  • 2 активных кнопок -закрыть, сброс эквалайзера и баланса звука;
  • фотография выбранного номера;
  • 11 TrackBar - 10 для эквалайзера, 1 для баланса звука;
  • 29 Label.

При создании всех компонентов внутреннего интерфейса каждому в отдельности присваивалось уникальное имя, содержащее информацию о назначении объекта, тип данных и расположение на рабочей области в "Embarcadero Delphi". Данная унификация позволила структурировать и размещать объекты в логическом порядке с применением списка, что в свою очередь сильно облегчало поиск необходимой рабочей единицы (рис. 3.7). Каждая рабочая единица имеет в своем составе группу, которая объединяет отдельные компоненты в зависимости от программного назначения.

Рис. 3.7. Изображение структурированного размещения графических объектов в рабочей среде

Рис. 3.8. Изображение структурированного размещения графических объектов в рабочей среде

Рис. 3.9. Изображение структурированного размещения графических объектов в рабочей среде

Рис. 3.10. Изображение структурированного размещения графических объектов в рабочей среде

Рис. 3.11. Изображение необходимых файлов проекта.

На рис. 3.12 изображение запущенной программы.

На рис. 3.12.2 изображение повторного запуска плеера.

  1. Написание основного программного кода.

После создания графических объектов интерфейса и их структурирования в рабочей области "Embarcadero Delphi", создавался программный код. Программировались кнопки, функционал которых основывался на математических функциях.

На рис. 3.13, 3.14 и .15 представлен основной исполнительный код управляемых объектов.

Рис. 3.13. Изображение исполнительного кода получения аудио файлов путем добавления папки.

Рис. 3.14. Изображение исполнительного кода настройки эквалайзера и дополнительных переменных необходимых для воспроизведения

Рис. 3.15. Изображение исполнительного кода кнопки воспроизведения.

После завершения кодирования управляемых объектов создавался исполнительный код для движущихся, устанавливалась общая логическая связь по взаимодействию компонентов в целостном приложении. Основной задачей было сопоставление функционала основного исполнительного кода с второстепенным. Каждый запрограммированный объект компилировался независимо от других, таким образом исключалась вероятность допустить системную ошибку. Для обеспечения минимального требования приложения к ресурсам рабочей станции использовались функции по уничтожению объектов с рабочей поверхности и из файлового буфера. Принцип работы команды основан на циклической работе внутренней функции языка Delphi, которая задает определенному объекту собственный жизненный цикл, с параметрами условия, после выполнения которых компоненту с заданной командой поступает сигнал о завершении работы и удаления из файлового буфера (рис. 3.16).

Рис. 3.16. Изображение исполнительного кода и команды "DESTROY"

После написания программного кода к исполнительным и управляемым объектам, кодировались объекты меню (подключение активных кнопок к соответствующим объектам, реализация визуальных эффектов). На рис. 3.17 изображен программный код анимированной визуализации.

Рис. 3.17. Изображение исполнительного кода отрисовки визуализации.

  1. Расположение и настройка активных объектов в аудиоплеере

Завершающим этапом разработки была настройка взаимодействия внутренних объектов интерфейса в целостное приложение, расположение готовых компонентов на фонах и обеспечение централизованной функциональности. Данный этап являлся самым сложным шагом при создании приложения, так как полноценная работоспособность зависела от корректно настроенных и реализованных связей всех элементов плеера и не допускала наличия ошибок. После получения единого образа готового приложения, подключались внешние библиотеки и файлы. Для приложения был создан единый исполнительный файл .exe и сформированы минимальные системные требования, основанные на общей ресурсоемкости аудиоплеера. На рис. 3.18 представлено изображение готового и полноценного меню.

Рис. 3.18. Изображение полноценного меню

  1. Тестирование приложения на наличие ошибок и совместимость с различными операционными системами

Аудиоплеер "3pmPlayer" разрабатывалось под операционные системы семейства Windows XP, 7, 8, 8.1, 10, а также под Mac OS. На начальном этапе тестирования, проводившемся после написания основного программного кода, были выявлены недочеты, касающиеся некорректной работы управляемых объектов и длительного запуска приложения. Источником проблемы был нарушенный участок кода, отвечающий за внутреннюю связь компонентов приложения. Длительность запуска была обусловлена отсутствием внешних библиотек на рабочей станции и устаревшей версией аудио драйверов. В последствии все проблемы подлежали устранению, и система стала работать корректно, показывая желаемые результаты.

РАЗДЕЛ IV. ПАСПОРТ АУДИОПЛЕЕРА «3pmPlayer»

Аудиоплеер «3pmPlayer» разрабатывался в кроссплатформенной среде программирования Embarcadero Delphi, с использование операционной системы Windows 7-8-8.1 64-bit. Предварительные шаблоны будущих компонентов с указанием типов данных проектировались с использованием текстового и табличного процессоров Word, Excel. Все объекты интерфейса на основании которых создавалось единое приложения были созданы в растровом графическом редакторе Adobe Photoshop. Подробные сведения о сроках выполнения работы и требованиях к документированию описаны в техническом задании приложения «3pmPlayer».

Для функционирования приложения необходимо следующее техническое обеспечение со следующими минимальными характеристиками:

  • процессор – Intel Pentium IV/ 1.8 Ghz или выше;
  • объем оперативной памяти – 512 Mb RAM;
  • место на жестком диске - 10 Mb HDD;
  • наличие привода DVD±R;
  • встроенная/внешняя звуковая карта;
  • встроенная/внешняя видеокарта.

Приложение имеет внутреннюю иерархическую структуру, каждый компонент которой логически и программно связан со смежным ему объектом. Приложение делится на три основных группы:

Простой и удобный интерфейс позволяет пользователям без труда ориентироваться и получать необходимую справочную информацию о работе приложения. Каждый графический объект перед созданием тщательное продумывался и создавался максимально понятным и доступным для пользователей широкой возрастной категории.

Перед разработкой приложения создавался документ с описанием компонентов и их функционала. Следующим этапом в проектировании приложения было создание шаблонов и схем, соответствующих оригинальным компонентам будущего приложения. На основании шаблонов проектировались отдельные элементы, впоследствии протестированные на совместимость. Полученные результаты были оформлены в виде презентации. Рекомендуемая операционная система Windows 7 (Enterprise или Professional).

Ниже указаны необходимые условия для запуска Windows 7 на компьютере:

  • 32-разрядный (x86) или 64-разрядный (x64) процессор с тактовой частотой 1 GHz (ГГц) или выше;
  • 1 гигабайт (ГБ) (для 32-разрядной системы) или 2 ГБ (для 64-разрядной системы) оперативной памяти (ОЗУ);
  • 16 гигабайт (ГБ) (для 32-разрядной системы) или 20 ГБ (для 64-разрядной системы) пространства на жестком диске;

графическое устройство DirectX 10 с драйвером WDDM версии 1.0 или выше.

ЗАКЛЮЧЕНИЕ

В результате выполнения дипломной работы мной был создан полный перечень технической документации к аудиоплееру «3pmPlayer».

Итогом работы стало выполнение следующих поставленных задач:

  • подбор и изучение теоретического материала;
  • изучение функциональных возможностей и средств программирования на языке Delphi;
  • поэтапная разработка отдельных компонентов будущего приложения;
  • создание работоспособного приложения;
  • проведение тестирования на наличие ошибок и ввод приложения в эксплуатацию.
  • ознакомление с принципами создания работы с библиотекой Bass.dll;
  • ознакомление с принципами создания работы с медиа-плеером;
  • ознакомление с принципом создания программного обеспечения при помощи языка программирования DELPHI.
  • ознакомление с принципами разработки программной документации к программному обеспечения и аудио плеерам в целом;
  • построение моделей будущего программного средства;
  • подробное описание компонентов аудио плеера и программной оболочки в процессе разработки прототипа;
  • окончательная разработка аудио плеера и программной оболочки, а также соответствующей документации.

Данное приложение оказалось актуальным программным продуктом и собрало значительное количество положительных отзывов, получив средний балл 9,4 среди 30 опрошенных пользователей, которым был дан Аудиоплеер.

В будущем планируется продолжить развитие навыков программирования в кроссплатформенной среде Embarcadero Delphi, продолжая работы по усовершенствованию имеющегося приложения и по созданию новых проектов с использованием внешних библиотек.

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ «АУДИО ПЛЕЕР "3PMPLAYER"»

Данное программное обеспечение предоставляет пользователю спектр возможностей по работе с «Аудио плеер "3pmPlayer"» - воспроизведение аудио файлов, подстройка частот воспроизводимого трека, красивая визуализация.

Программная оболочка имеет активные кнопки быстрого перехода между формами;

Также аудио плеер создаёт отдельным файлом (любого Формата "*.*") сохраненных треков в плейлисте, в которой содержится информация о треках которые были загружено в плейлист, который можно перенести на какой-нибудь носитель информации (Будь то USB-накопитель или бумажный лист, при наличии принтера).

Пользование аудио плеером может осуществляться как специалистом в области компьютерной техники, так и рядовым пользователем, имеющим базовые навыки владения ПК.

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

  1. Сайт ://ru.wikipedia.org/wiki/
  2. Сайт ://programmersclub.ru/help/
  3. Сайт: ://cyberforum.ru/delphi/
  4. Гражданский кодекс РФ от 30.11.1994 N-51 ФЗ;
  5. Государственный стандарт Российской Федерации от 20 декабря 1993 г. № 260 (ГОСТ Р ИСО/МЭК ТО 9294-93);
  6. Васильев Д.В. «Делопроизводство на компьютере», Москва: Приор, 1998;


Аудио приложение

Кнопки

Ползунки

Листбоксы

Таймеры

Дополнительные библиотеки

ользователь

Рабочая станция

Визуализация

Плейлист

Кнопки запуска воспроизведения

Кнопки управления очередностью

Название аудиоплеера и анимированные компоненты меню.

Кнопка добавления аудио файлов

Кнопка звуковых настроек

Кнопка сохранения плейлиста

Разработка аудиоплеера в кроссплатформенной среде Embarcadero Delphi