music source and client for subsonic

test fixture setup for navidrome
This commit is contained in:
austinried
2025-11-01 22:24:59 +09:00
parent 9f05ebb201
commit 3408a3988e
18 changed files with 1556 additions and 8 deletions

View File

@@ -0,0 +1,17 @@
import 'models.dart';
abstract class MusicSource {
Future<void> ping();
Stream<Iterable<SourceAlbum>> allAlbums();
Stream<Iterable<SourceArtist>> allArtists();
Stream<Iterable<SourcePlaylist>> allPlaylists();
Stream<Iterable<SourceSong>> allSongs();
Stream<Iterable<SourcePlaylistSong>> allPlaylistSongs();
Uri streamUri(String songId);
Uri downloadUri(String songId);
Uri coverArtUri(String coverArtId, {bool thumbnail = true});
Future<Uri?> artistArtUri(String artistId, {bool thumbnail = true});
}