SAMBL - Streaming Artist MusicBrainz Lookup

Harmony doesn’t support soundcloud just yet, but it’s getting close.

The update I’m currently working on will automatically disable certain seeders depending on their capabilities to avoid confusion. Though, none currently support soundcloud unfortunately.

3 Likes

Dev Update:

First thing: The new track popup is done!

Features include:

  • Full track aggregation
  • Track artist credit display
  • ISRC display and lookup
  • Track URL and ISRC matching
  • All the links!!!11!! (So many things to click!!!)
  • Really fancy shiny background made of the album cover
  • Full album info display (Finally a way to look up barcodes from the album list)
  • Probably something small that I forgot about

This has taken a while, but being able to see and click on links for track artists is so nice when importing really big albums.

5 Likes

SAMBL Version 2.3.0

Single largest update to SAMBL so far!

  • Refactor all backend components to typescript, and some frontend components
  • Support tags & genres for MusicBrainz artists
    • Information display coming soon, but is for now limited to internal use
    • Will allow a notice for AI artists using the ‘ai’ or ‘ai-generated’ tags
  • Implement MusicBrainz as a full provider for internal usage
  • Add list sorting and completely rework list filtering & searching (Closes #57)
    • Add new Featured Albums filter (Closes #69 (nice))
      • Shows only albums that the artist features on but is not credited as a main artist
  • Add new blue album type to display UPC matches
  • Add full track aggregation
    • Adds new blue track type to display ISRC matches
  • Completely overhaul track popup to display a ton more information
    • Track artist credit display
    • ISRC display and lookup
    • Track URL and ISRC matching
    • All the links!!!11!! (So many things to click!!!)
    • Really fancy shiny background made of the album cover
    • Full album info display (Finally a way to look up barcodes from the album list)
  • Add Apple Music provider (Thanks @SuperSaltyGamer!)
  • Spotify now gets full size album cover art (Thanks @SuperSaltyGamer!)
  • Refactor seeders and add MET as a seeder
    • Seeders now automatically hide for unsupported providers
    • Made A-tisket disabled by default
  • Tweak SAMBL’s edit notes to remove extra blank lines
  • Many many bug fixes
  • CSS tweaks
  • Update dependencies

View full changelog here

3 Likes

ISRC submits seem to have broken with the new release. I get the red text saying “ISRC”, but it’s not clickable.

1 Like

for the past few days, I haven’t been able to do any lookups, it just sticks on “Loading albums…”. tested on Firefox (Android and PC) and Chrome for Android with several of Zylara’s links (Bandcamp, SoundCloud, and Spotify, at least on desktop)

2 Likes

Yeah, I messed up the logic with the album count checking for artists lacking featured albums… don’t know how I didn’t catch this. In any case, it’s already been fixed in dev and a patch is coming soon.

2 Likes

SAMBL 2.3.1 - Hotfix

Closes #86

Full Changelog

3 Likes

Tracked! Album fix buttons are broken · Issue #95 · Lioncat6/SAMBL-React · GitHub

I broke a lot of small things apparently…

(Probably time for unit testing…)

2 Likes
2 Likes

SAMBL will be affected by this in the same way.

2 Likes

SAMBL. Version 2.3.3 is live!

3 Likes

Sorry to be that person, but in the previous version you could paste in an a Spotify artist URL and get the artist directly. That don’t work any more.

2 Likes

Thanks!

1 Like

If you’re having Tidal issues:

SAMBL Version 2.3.4 released!

Changes

  • Update types
    • (api-types)
      • Add parameter url to type SAMBLApiError
      • Add types FindData, ISRCData, and UPCData
    • (provider-types)
      • Make all ExtendedTrackObject fields optional
      • Add field ExtraInfo to ExtendedTrackObject
      • Make current field of PagingData have string as a valid type
      • FullProvider getTrackByISRC and getAlbumByUPC now return AlbumObject[] and TrackObject[]
      • FullProvider formatArtistSearchData now returns an array of any
  • All toasts now log to console
  • Finally refactor find api and the /find page
    • Refactor find api to TS
    • Refactor find page to TSX
    • Update all providers to support new getAlbumByUPC and getTrackByISRC implementations
    • Update APIs that use these functions
      • /api/artistDeepSearch, /api/CompareSingleAlbum
  • AggregatedTrackObject trackNumber fields are now populated by processAlbumData if not present using track indexes
  • /api/lookupArtist now properly expects artist URLs
  • Fix deep searching again
    • I swear, this is like patching out herobrine
  • TrackMenu now prefers Track’s trackNumbers over their index
  • Various other small fixes
    • Mostly fixes caused by this update
  • Added Dockerfile and update next.config.js to support docker

API Changes

  • /api/find now returns a FindData object

Note: SAMBL will be down for a while (~1-2 hours) while the server is updated

2 Likes

SAMBL is now back up!

Upgraded to using komodo as a docker frontend, so I can update SAMBL without having to use the terminal every time

1 Like

Still down.

Cloudflare error

1 Like

Yeah I forgot to enable automatic restarts after crashing. In any case, it should be back up now.

3 Likes

SAMBL Version 2.3.5

  • Fix expected url types for getAlbumUPCs endpoint
  • Update SAMBLApiError (/types/api-types.ts)
    • Add code, request
  • Add options to save sort and filter settings Closes Defualt Sort · Issue #96 · Lioncat6/SAMBL-React · GitHub
  • revamp config menu
  • Fix various issues MusicBrainz Artist with Multiple Spotify URL's · Issue #113 · Lioncat6/SAMBL-React · GitHub
    • Quick fetching should work again
  • (spotify) Add alternative Spotify fetching method
  • (musicbrainz) Fix album art for find page
  • Improve find page
    • Can now find by URL on musicbrainz and using providers without needing a UPC/ISRC
    • Specifies entity types with icons
  • Add type parameter to all object types
  • Add album sharing
    image
    • Adds parameter viewingAlbum to url:
    • https://sambl.lioncat6.com/artist?provider_id=ivycomb&provider=bandcamp&artist_mbid=dc319e11-cbe8-4aac-b43a-bb5c5e6bef9b&viewingAlbum=ivycomb/album/nirvana
    • Album will automatically open on page load
    • Will generate OG properties for that album

https://sambl.lioncat6.com/artist?provider_id=ivycomb&provider=bandcamp&artist_mbid=dc319e11-cbe8-4aac-b43a-bb5c5e6bef9b&viewingAlbum=ivycomb/album/nirvana

API Schema Update

  • New endpoint /api/lookupURL
    • Accepts url
    • Returns URLLookupData:
    export class URLLookupData {
       albums: ExtendedAlbumObject[]
       tracks: ExtendedTrackObject[]
       artists: ArtistObject[]
    } 
    
  • All *Object entities now have parameter type:
export type ObjectType = "partialArtist" | "artist" | "album" | "track"

export class GenericObject {
    provider: ProviderNamespace;
    id: string | null;
    name: string;
    url: string | null;
    type: ObjectType
}

export class ImageObject extends GenericObject {
    imageUrl: string | null;
    imageUrlSmall: string | null;
}

Full Changelog: Comparing v2.3.4..v2.3.5 · Lioncat6/SAMBL-React · GitHub

5 Likes

SAMBL Version 2.5.6

Schema Change:

  • Add genres, copyrights, and labels fields to AlbumObject
export class AlbumObject extends ImageObject {
    provider: ProviderNamespace;
    id: string;
    name: string;
    url: string;
    albumArtists: PartialArtistObject[];
    artistNames: string[];
    releaseDate: string | null;
    trackCount: number | null;
    albumType: string | null;
    upc: string | null;
    albumTracks: TrackObject[];
    labels: string[] | null;
    copyrights: string[] | null;
    genres: string[] | null;
    type: "album";
};

Full Changelog: Comparing v2.3.5...v2.3.6 · Lioncat6/SAMBL-React · GitHub

3 Likes