Music — это современное Android-приложение для генерации уникальной музыки с использованием искусственного интеллекта. Приложение позволяет создавать музыкальные концепции на основе текстовых описаний, выбора жанра и настроения.
Интерфейс приложения доступен для просмотра по ссылкам:
- Темная тема — элегантное оформление с градиентными эффектами
- Material Design 3 — современные компоненты пользовательского интерфейса
- Анимированный интерфейс — плавные переходы между экранами
- Визуализация — анимированная волновая форма для отображения музыки
- Генерация по описанию — создание музыки на основе текстового описания
- 8 музыкальных жанров — Electronic, Hip-Hop, Rock, Jazz, Classical, Ambient, Pop, Lo-fi
- 8 типов настроения — Energetic, Calm, Happy, Melancholic, Romantic, Dark, Epic, Dreamy
- История треков — автоматическое сохранение всех созданных композиций
- Детальная информация — просмотр характеристик каждого трека
- Красивые карточки — уникальные цвета для каждого типа настроения
- OpenRouter API — платформа для доступа к AI моделям
- Meta Llama 3.2 3B Instruct — языковая модель для генерации музыкальных концепций
app/
├── data/
│ ├── model/ # Модели данных
│ ├── api/ # API сервисы и Retrofit
│ └── repository/ # Репозитории по паттерну Repository
├── ui/
│ ├── screens/ # Compose экраны
│ ├── components/ # Переиспользуемые UI компоненты
│ ├── viewmodel/ # ViewModels для управления состоянием
│ └── theme/ # Тема оформления и цветовая палитра
└── MainActivity.kt # Главная активность приложения
Приложение использует следующую цветовую схему:
- Background — градиент от #0f0c29 через #302b63
- Accent Purple — #9d4edd
- Accent Pink — #ff006e
- Accent Blue — #3a86ff
- Accent Green — #06ffa5
- Accent Orange — #fb5607
- Kotlin — основной язык разработки
- Jetpack Compose — современный UI toolkit для Android
- Material 3 — система дизайна от Google
- Retrofit — HTTP клиент для API запросов
- Coroutines & Flow — асинхронное программирование
- ViewModel — управление UI состоянием
- Coil — загрузка и кеширование изображений
- Media3 ExoPlayer — медиаплеер для воспроизведения аудио
- Опишите музыку — введите текстовое описание желаемого трека
- Выберите жанр — доступны варианты: Electronic, Hip-Hop, Rock, Jazz, Classical, Ambient, Pop, Lo-fi
- Выберите настроение — определите эмоциональную окраску: Energetic, Calm, Happy, Melancholic, Romantic, Dark, Epic, Dreamy
- Нажмите "Generate Music" — искусственный интеллект создаст концепцию трека на основе ваших параметров
- Просмотрите историю — все созданные треки автоматически сохраняются в истории
Приложение использует OpenRouter API для генерации музыкальных концепций. API ключ встроен в код приложения:
// data/api/RetrofitInstance.kt
private const val API_KEY = "sk-or-v1-..."Для использования собственного API ключа:
- Зарегистрируйтесь на платформе OpenRouter
- Получите API ключ
- Замените значение константы API_KEY в файле
data/api/RetrofitInstance.kt
Приложение поддерживает следующие музыкальные жанры:
- Electronic — электронная музыка
- Hip-Hop — хип-хоп и рэп
- Rock — рок-музыка
- Jazz — джаз
- Classical — классическая музыка
- Ambient — эмбиент
- Pop — поп-музыка
- Lo-fi — lo-fi hip-hop
Выберите настроение для вашего трека:
- Energetic — энергичное, бодрое
- Calm — спокойное, умиротворенное
- Happy — радостное, позитивное
- Melancholic — меланхоличное, грустное
- Romantic — романтичное, лирическое
- Dark — темное, мрачное
- Epic — эпичное, величественное
- Dreamy — мечтательное, воздушное
- Android Studio Hedgehog или новее
- JDK 17+
- Android SDK 24+
- Устройство или эмулятор с Android 7.0+
git clone [URL_РЕПОЗИТОРИЯ]
cd Music- Запустите Android Studio
- Выберите File → Open
- Укажите папку проекта
- Дождитесь завершения синхронизации Gradle
.\gradlew assembleDebugadb install app\build\outputs\apk\debug\app-debug.apkПриложение использует API для генерации музыкальных концепций на основе:
- Текстового описания от пользователя
- Выбранного жанра
- Выбранного настроения
Все созданные треки сохраняются локально и доступны в разделе истории для повторного прослушивания и просмотра.
Интерфейс включает анимированную волновую форму, которая создает эффект присутствия музыки в приложении.
Статус: В разработке