Результат анализа аудио файла




Макеты интерфейса

В приложении MusicJump определены 10 экранов:

● “Главное меню”,

● “Настройки”,

● “Рейтинг”,

● “Помощь”,

● “Выбор музыки”,

● “Анализ музыки”,

● “Игра”,

● “Пауза”,

● “Победа”,

● “Поражение”.

 

Примечание: В рамках данной задачи экран и “Рейтинг” и кнопка “Лайк” не реализуются.

 

Ниже представлен рисунок (Рисунок 1) связи экранов приложения между собой.

 

Рисунок 1. Взаимодействие экранов приложения

 

Главное меню

Главный экран (Рисунок 2), который появляется после запуска приложения. На этом экране располагаются основные элементы управления приложением.

 

 

Рисунок 2. Экран “Меню”

 

1 - Кнопка для перехода на экран “Рейтинг”;

2 - Кнопка для перехода на экран “Настройки”;

3 - Запуск игры, вызов экрана “Выбор музыки”;

4 - Кнопка для перехода на экран “Помощь”.

5 - Кнопка “Лайк”.

 

Помощь

Пояснительный текст о том, как нужно играть в эту игру.

 

Рисунок 3. Экран “Помощь”

 

 

Настройки

Изменение цветовой схемы.

 

 

Рисунок 4. Экран “Настройки”

 

Выбор музыки

Для выбора музыки используется стандартное диалоговое окно выбора файлов ОС Android.

 

Анализ музыки

После выбора музыки и запуска обработки, появляется анимация, которая работает во время обработки музыки (Рисунок 5).

 

 

Рисунок 5. Экран “Анализ музыки”

 

 

Игра

После окончания обработки, перед запуском игры, происходит настройка игрового мира. Для старта игры производится обратный отсчет (Рисунок 6).

 

Рисунок 6. Экран “Игра”, обратный отсчет перед стартом

 

1 - Кнопка для перехода на экран “Пауза”;

2 - Количество очков;

3 - Цифра для отсчета;

4 - Игровые объекты - герой и платформы.

 

После запуска игры, цифры для отсчёта не видны.

 

Пауза

Во время игры можно вызвать окно “Пауза” (Рисунок 7). Во время окна “Пауза” игра останавливается. После выхода из окна “Пауза”, игра продолжается с того места, на котором остановилась.

 

Рисунок 7. Экран “Пауза”

 

1 - Итоговый счёт на текущий момент;

2 - Кнопка для возобновления игры;

3 - Кнопка для рестарта игры - запуск уровня с такой же музыкой;

4 - Кнопка для возврата в главное меню, завершает текущую игру;

 

Победа

В случае, если пользователь успешно проходит все испытания, показывается экран “Победа” (Рисунок 8). Игра завершается.

 

Рисунок 8. Экран “Победа”

 

1 - Итоговый счет за игру;

2 - Кнопка для перехода на экран “Главное меню”;

3 - Кнопка для рестарта игры - запуск уровня с такой же музыкой.

 

 

Поражение

Если пользователь допустил ошибку и персонаж упал (не наступил на платформу), то появляется экран “Поражение” (Рисунок 9), текущая игра завершается.

 

Рисунок 9. Экран “Поражение”

 

1 - Итоговый счет за игру;

2 - Кнопка для рестарта игры - запуск уровня с такой же музыкой;

3 - Кнопка для перехода на экран “Главное меню”.

 

 

Дизайн и верстка приложения

Зависимости размеров экранов

● mdpi - x1.0

● hdpi - x1.5

● xhdpi - x2.0

● xxhdpi - x3.0

● xxxhdpi - x4.0

 

LibGDX растягивает изображение до нужного размера экрана.

 

*Коэффициент увеличения плотности экранов

Дизайн

● Разработка на 5 разрешений экранов (mdpi, hdpi, xhdpi, xxhdpi, xxxhpi);

● Ориентация экрана - книжная (вертикальная);

● В интерфейсе использовать следующие цветовые схемы:

1. https://color.adobe.com/ru/zen-and-tea-color-theme-337112/

2. https://color.adobe.com/ru/Vitamin-C-color-theme-492199/

 

 

Иконки

● Отрисовка собственных векторных иконок;

● Формат png с альфа-каналом;

● Программа для рисования - Photoshop CS6;

● Размер иконки: 144 px.

 

Музыка

Аудио файл

● Формат mp3;

● Размер файла не должен превышать 15 мб;

● Название аудиофайла может быть на английском языке; Если название аудиофайлов будет на русском языке и библиотека выбранная библиотека не сможет его прочитать и обработать из-за названия, необходимо предусмотреть перевод названия аудиофайла на латиницу.

 

Анализ аудиофайла

● Анализ аудиофайла проводится в отдельном потоке;

● Анализ аудиофайла проводить при помощи библиотеки ТarsosDSP;

● Для получения амплитуд необходимо использовать встроенные средства библиотеки ТarsosDSP, которые включают в себя алгоритмы преобразования Фурье;

● Анализу подвергается не вся информация, а только значения амплитуд в каждой секунде аудиофайла с допустимой постоянной погрешностью в 40-100 миллисекунд;

● После вычисления амплитуд, найти среднеарифметическое значения в каждом диапазоне;

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

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

 

Результат анализа аудио файла

● На выход необходимо получить массив координат X;

● X это координата начала платформы;

● X - целое число int;

● Результат представить в виде одномерного массива.

 

Игровые объекты

Платформа

● Фиксированная высота платформы - 28 dp;

● Фиксированная длина платформы - 92 dp;

● Координата начала платформы - верхний левый угол;

● Платформа имеет вид прямоугольника;

● Координата начала платформы извлекается из массива анализа аудиофайла.

Герой

● Герой имеет вид квадрата;

● Размер героя 50х50 dp;

● Постоянное положение героя от левого края = 25%;

● Герой постоянно движется вперёд;

● Герой может прыгать при нажатии пользователем на экран.

 

Игровая логика

● Прыжок выполняется с использованием вектора ускорение, который представлен в библиотеке LibGDX;

● Герой не может прыгнуть выше игрового поля;

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

● При прыжке на платформу - добавлять одно очко;

● Очки суммируются;

● Если герой не попал на платформу, то пользователь проиграл, игра закончена;

● Если герой успешно отпрыгал все платформы, то пользователь победил.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-04 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: