{"id":22293645,"url":"https://github.com/xi/infinity-player","last_synced_at":"2025-07-29T00:31:16.056Z","repository":{"id":150048273,"uuid":"107715028","full_name":"xi/infinity-player","owner":"xi","description":"infinite jukebox clone using librosa","archived":false,"fork":false,"pushed_at":"2025-03-10T08:22:56.000Z","size":50,"stargazers_count":16,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-05T05:25:03.300Z","etag":null,"topics":["audio","librosa","numpy"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-20T18:52:55.000Z","updated_at":"2025-03-29T19:37:13.000Z","dependencies_parsed_at":"2025-03-10T09:28:15.948Z","dependency_job_id":"5aba527d-1301-4b14-b27d-0bd98ae4d990","html_url":"https://github.com/xi/infinity-player","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/xi/infinity-player","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xi%2Finfinity-player","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xi%2Finfinity-player/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xi%2Finfinity-player/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xi%2Finfinity-player/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xi","download_url":"https://codeload.github.com/xi/infinity-player/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xi%2Finfinity-player/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267610263,"owners_count":24115430,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio","librosa","numpy"],"created_at":"2024-12-03T17:30:10.240Z","updated_at":"2025-07-29T00:31:15.980Z","avatar_url":"https://github.com/xi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# infinity player\n\nAn infinite jukebox clone using librosa.\n\nThis program attempts to recreate the wonderful *Infinite Jukebox* on the\ncommand line in python.  It plays the song beat by beat and may jump to similar\nbeats at any time. This way, the song can play infinitly.\n\nThe process is devided into two steps: Analysing the audio and playing it.\nAnalysing takes some time, so the result is saved next to the audiofile.\n\n## Quickstart\n\n    pip install -r requirements.txt\n    python player.py \u003cfilename\u003e\n\n## Open Tasks\n\nAny help would be appreciated\n\n-   **Improve audio analysis.** I don't really know what *MFCC* or a\n    *Constant-Q chromagram* is. The current implementation works ok-ish, but\n    there can probably be big improvements.\n\n-   **Improve beat selection.** I guess a lot more is possible, e.g. to prevent\n    the song from looping through the same part again and again.\n\n## Prior Art\n\n-   Of course, the now defunct original [Infinite\n    Jukebox](http://labs.echonest.com/Uploader/)\n-   A functional fork called [Eternal Jukebox](https://eternalbox.floriegl.tech/jukebox_index.html)\n    ([code](https://github.com/floriegl/EternalJukebox)). It uses the\n    [audio-analysis](https://developer.spotify.com/web-api/get-audio-analysis/)\n    endpoint at spotify\n-   [Remixatron](https://github.com/drensin/Remixatron), a similar project to\n    this one.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxi%2Finfinity-player","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxi%2Finfinity-player","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxi%2Finfinity-player/lists"}