-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Caching + New Search Algorithm + Update Liked Songs #126
base: main
Are you sure you want to change the base?
Conversation
…y track link, including caching search results in a JSON file."
… and `search` commands; modified `search_songs` method in `ytmusic.py` to use new `get_best_fit_song_id_v2`
… and modified YTMusicTransfer class to use path variable for lookup.json file
…rithm, and refactored code in controllers, main, spotify, and ytmusic modules.
…normalization, modified scoring logic, and added extended search functionality."
…or text normalization, modified logic for caching and searching YouTube Music IDs.
…th a new one in lookup.json and made minor changes to controllers.py and main.py
…e song matching logic, added new variables and conditions, and modified scoring system.
In |
…default (All can be removed and re-added via --reset flag)
Hi man, I appreciate the effort, but this MR is way too big. The key in open source is to do incremental changes, not huge refactors doing everything at once In addition it would be great if you could point out what problems with the existing lib you are trying to fix (esp. regarding song matching) |
Understood! I appreciate your response. Here is what I faced and trying to fix:
You're correct, this all should've been incremental changes and not huge refactors, I'll keep that in mind next time. If you want, I can remove/revert any changes that doesn't seem important. I've added tests for new features. Lessons learned! |
Description:
--use-cached
flag to create or use the cache.fix-match
command, which allows you to replace a bad match with a preferred video ID. This works only if you use the--use-cached
flag to ensure consistency in fetching that ID.cache-clear
command, which removes the lookup file.--extended-search
flag. You can adjust the confidence level (optional) (e.g.--confidence 0.6
) for better match quality (range 0-1).--search-albums
flag. It’s slower as it searches through all albums but has a higher probability of yielding good matches.--enable-fallback
optional flag can be used to fall back to the default search algorithm if no matches are found within the specified confidence level. It ensures that at least something is returned from YouTube Music, even if it’s not a perfect match.search
option can be used to search a Spotify's Youtube Music equivalent, all the same arguments as above can be used (i.e.--extended-search
,--search-albums
, etc.) to individually check matches or simply add a single song to lookup file using--use-cached
flag.Testing: