beetbox / beetbox/beets

Using PHash Hashing Scheme to seamlessly identify user media

Open
#1,651 5 comments 0 reactions 0 assignees View on GitHub
discussion
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

Im new to _beets_, I really liked the idea and it works great. But if someone has a huge unorganized library then it becomes a pain to answer questions and he may just give up. And human intervention may not be 100% correct, I ended up submitting a lot of incorrect choices while trying to import my music database.

My thoughts are aligned with a hashing scheme. The client will calculate hash of a particular file and send it across to server which is a repository of **{HASH -> METADATA}** key value. Client will get the most accurate result possible, and can then organize the media in an appropriate way. This thing works brilliantly in DC software (Linux DC++, ApexDC++, etc). Also shazam uses a similar technique to identify music.

Contributor guide

Open the contributing guide

Research direction

No file, test, or entry point is named. Start by mapping beets' music import flow and how it currently handles user questions, then investigate the proposed client-side hash and server-side HASH-to-METADATA repository. Done would require a defined hashing scheme, service boundary, metadata behavior, and an implementation plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.