Курсовой проект: Аудиоплеер для Aurora SDK (Sailfish Silica)
1. Цель
Разработка мобильного приложения на Aurora SDK для загрузки, хранения и воспроизведения аудиофайлов с удобным интерфейсом.
2. Технологии
- QML (Sailfish Silica) - UI
- C++/Qt - бизнес-логика и медиатека
- Qt Multimedia - воспроизведение аудио и чтение метаданных
- QSettings + JSON - локальное хранение состояния и списка треков
3. Реализованный функционал
3.1 Импорт и управление аудиофайлами
- Сканирование локальных папок
MusicиDownloads - Поддержка форматов
MP3иWAV - Чтение метаданных:
title,artist,duration - Обновление медиатеки через меню
Rescan files
3.2 Медиатека
- Список треков на главном экране
- Сортировка по названию и исполнителю
- Отображение длительности треков
3.3 Воспроизведение
- Play / Pause / Stop
- Переключение Previous / Next
- Перемотка трека через слайдер
- Отображение текущего прогресса и длительности
3.4 UI (Silica)
- Экран медиатеки:
qml/pages/LibraryPage.qml - Экран плеера:
qml/pages/PlayerPage.qml - Cover для фонового режима:
qml/cover/CoverPage.qml
3.5 Фоновый режим
- Воспроизведение продолжается при сворачивании
- Управление из cover (Play/Pause, Next)
4. Архитектура
- UI-слой (QML): экраны, списки, элементы управления
- Логика (C++):
-
TrackLibraryModel- сканирование, метаданные, сортировка, хранение списка -
AudioController- управление воспроизведением
-
- Модуль аудио:
QMediaPlayer(Qt Multimedia) - Хранилище:
- список треков в JSON (
AppDataLocation/tracks.json) - последний трек и позиция в
QSettings
- список треков в JSON (
5. Структура проекта
harbour-coursework.pro
src/
main.cpp
tracklibrarymodel.h/.cpp
audiocontroller.h/.cpp
qml/
harbour-coursework.qml
pages/LibraryPage.qml
pages/PlayerPage.qml
cover/CoverPage.qml
README.md
6. Сборка (в Aurora/Sailfish SDK)
- Открыть проект
harbour-coursework.proв Sailfish/Aurora IDE. - Выбрать целевой kit устройства/эмулятора.
- Выполнить сборку и запуск.