Matching improvements:
- Improved matching for japanese songs by @xnetcat in 513cefa 57482fc d98a517
- Improved song matching for results with merged artists by @xnetcat in ffda0af
- Fixed some errors related to unicode encoding by @xnetcat in 4380cea
- Fixed songs matching when using isrc for searching by @xnetcat in 5cce3b9 488fc0c
- Fixed ambiguous characters detection by @xnetcat in 63f6a41
- Adjusted thresholds, fixed a bug when averaging by @xnetcat in e2591a1
- Fixed artist matching bug by @xnetcat in abc1824
- Improved character transliteration by @xnetcat in a2bb61a
- Other fixes by @xnetcat 61fca66 8d58b5e fe2cdb7 e141737
Bug fixes:
- Fixed recursion error not being raised properly by @xnetcat in 15df07f
- Update Dockerfile to add spotipy by @frgaudet in #1693
- Fixed stream copy for opus by @xnetcat in files 4cea464
New features:
- Added synced lyrics by @xnetcat in ce99b2b (shoutout to @rtcq for his syncedlyrics package)
- Match existing songs by spotify URL instead of name by @Domi250 in #1641
- Added max retries option/added retry logic to internal call by @owahltinez in #1707
- Added new operation to get download urls by @xnetcat in e8cf6dd
- Added option to fetch albums by @xnetcat in 0b13e9b
- Added option to change id3 separator for mp3 files by @xnetcat in a4b54aa
- Added youtube url support, for manual matching and direct downloads by @xnetcat in 88e1d94
Improvements:
- Improved message for already existing files by @xnetcat in 47a0e6a
- Added option to disable bitrate by @xnetcat in 8db3708
- Docs overhault by @Domi250 in #1717
- Added support for python 3.11.1 and above by @xnetcat in 99c77ba
- Added caching for slugify and ratio functions by @xnetcat in 66ac293
- Improved detection of tracks that have been removed from spotify by @xnetcat in 6102ccd
- Improved performance of search function in downloader by not reinitializing audio provider on each search call by @xnetcat in d392a98
- Changed apostrophes with quotation marks by @bolobos in #1723
- Optimized query parsing speed by @xnetcat in 457e5f0
- Deferred song reinit to after output file creation by @xnetcat in d71b754
- Escape / don't parse square brackets in song names by @NicoWeio in #1739
Web UI changes:
- Improved multi client support for web interface by @xnetcat in 566e5ab
- Added option to use output directory for web downloads by @xnetcat in 8f73d76
- Remove sessions directory after shutdown by @xnetcat in ec822e4
API changes:
- Unified matching algorithm for all audio providers by @xnetcat in 016ca95
- Rewritten metadata module, added function to get song metadata from files by @xnetcat in 7d01556
- Don't raise error on empty results list by @xnetcat in 35be8b3
- Migrated matching functions to new module by @xnetcat in e993c92 558ffb4 67bbfa1
- Rewritten downloader init and config management/typing by @xnetcat in fd8f0e8
- Added custom logging level by @xnetcat in 7822812
- Added
__all__
to all modules by @xnetcat in a7d3789 - Changed logging system by @xnetcat in 04018f1
- Rewritten downloader initialization and config management/typing by @xnetcat in fd8f0e8
- Added caching for slugify and ratio functions by @xnetcat in 66ac293
- Rewritten most of the song list class by @xnetcat in c3b1dad
Other changes: