{"id":19437631,"url":"https://github.com/mganss/cuegen","last_synced_at":"2025-09-05T22:39:31.350Z","repository":{"id":65606261,"uuid":"353776217","full_name":"mganss/CueGen","owner":"mganss","description":"Create Rekordbox cue points from Mixed in Key","archived":false,"fork":false,"pushed_at":"2023-09-12T11:46:15.000Z","size":1530,"stargazers_count":121,"open_issues_count":9,"forks_count":14,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-08-28T20:04:39.928Z","etag":null,"topics":["cue","cuepoints","mik","mixedinkey","rekordbox"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mganss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-04-01T17:26:56.000Z","updated_at":"2025-08-17T17:07:55.000Z","dependencies_parsed_at":"2025-01-02T19:17:37.305Z","dependency_job_id":"58abe266-f502-4171-ac70-6af3d63cc065","html_url":"https://github.com/mganss/CueGen","commit_stats":{"total_commits":50,"total_committers":3,"mean_commits":"16.666666666666668","dds":0.54,"last_synced_commit":"eac34c8c1f007599261f45127095717e0f4abd01"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/mganss/CueGen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FCueGen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FCueGen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FCueGen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FCueGen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mganss","download_url":"https://codeload.github.com/mganss/CueGen/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FCueGen/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273832838,"owners_count":25176268,"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-09-05T02:00:09.113Z","response_time":402,"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":["cue","cuepoints","mik","mixedinkey","rekordbox"],"created_at":"2024-11-10T15:15:18.309Z","updated_at":"2025-09-05T22:39:31.303Z","avatar_url":"https://github.com/mganss.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# \u003cimg src=\"logo.png\" width=\"64\" height=\"64\"\u003e CueGen\n\n[![GitHub release (latest by date)](https://img.shields.io/github/v/release/mganss/CueGen)](https://github.com/mganss/CueGen/releases/latest)\n\nCreate Rekordbox cue points from Mixed in Key cue points or Rekordbox phrases.\n\n## Features\n\n- Create memory cues or hot cues\n- Merge with existing cue points or overwrite\n- Configure minimum distance in bars to existing cue points\n- Configure maximum number of cue points to create\n- Configure colors\n- Assign colors based on energy level, phrase, or cue number\n- Configure cue point names (comments)\n- Set cue points only for specific tracks (based on name or creation date)\n- All generated cue points can be removed\n- Creates a database backup before each run (optional)\n- Snap cue points to beat grid\n- Add a new Rekordbox My Tag \"Energy\" with the track's energy level determined by Mixed in Key\n- Set track color according to Energy level\n- Optionally set intro and/or outro cue points to active loop\n\n## Requirements\n\n- Rekordbox 6\n- Windows or macOS\n- Mixed in Key (phrase cue points work without Mixed in Key)\n\n## Basics\n\nCueGen operates directly on the Rekordbox database, there is no need to import/export tracks to/from XML.\n\nRekordbox needs to be shut down when CueGen runs. All tracks should already have been analyzed by Rekordbox to allow CueGen to snap cue points to the beginning of the bar.\n\nIn Mixed in Key you should have Serato integration checked on the settings page and have exported cue points (Click \"Export cue points for existing files\"). \nSerato integration writes cue points information to ID3 tags within the media files allowing CueGen to read it.\n\n## Usage\n\nCueGen is a console application (open an issue if you're interested in a GUI).\n\n- Grab a .exe from https://github.com/mganss/CueGen/releases\n- Unpack in location of your choice\n- Open a command prompt and run the unpacked .exe with any of the options listed below\n\n```\nUsage: CueGen.Console [OPTION]...\nCreate Rekordbox cue points from MIK cue points.\nVersion 1.0.18.0\nAppend - to option to disable it, e.g. --progress- or -b-.\n\nOptions:\n  -h, --help                 Show this message and exit\n      --dryrun               Do not alter Rekordbox database, only perform a\n                               test run\n      --hc, --hotcues        Create hot cue points instead of memory cue points\n  -m, --merge                Merge with existing cue points (default is enabled)\n  -d, --distance=VALUE       Minimum distance in bars to existing cue points (\n                               default is 4)\n      --colors=VALUE         Comma separated list of hot cue colors, same order\n                               as in Rekordbox, top left is 1 (default is 1, 4,\n                               6, 9, 12, 13, 14, 15)\n  -x, --max=VALUE            Maximum number of cue points to create (default is\n                               8)\n      --comment=VALUE        Comment template, # will be replaced by energy\n                               level (default is \"Energy #\")\n  -g, --glob=VALUE           File glob of track file paths to include, e.g. C:\\\n                               Music\\*.mp3 (default is all in Rekordbox\n                               database)\n  -r, --remove               Remove all cue points created through this program\n  -b, --backup               Create database backup before creating cue points (\n                               default is enabled)\n  -s, --snap                 Snap cue points to nearest bar (default is enabled)\n  -p, --phrase               Create cue points from phrases (default is\n                               disabled)\n      --my, --mytag          Create MyTag with energy level (default is\n                               disabled)\n  -e, --energy               Set track color according to energy level (default\n                               is disabled)\n      --energycolor          Set cue point color according to cue point's\n                               energy level (default is enabled)\n      --phrasecolor          Set cue point color according to cue point's\n                               phrase (default is enabled)\n      --progress             Report progress (default is enabled)\n      --db, --database=VALUE File path to Rekordbox database (default is\n                               autodetect)\n  -v, --verbosity=VALUE      Verbosity level (default is warn, possible values\n                               are off, fatal, error, warn, info, debug, trace)\n  -l, --log=VALUE            File path to write log file to\n  -n, --names=VALUE          Phrase names, comma separated (default are Intro,\n                               Verse,Bridge,Chorus,Outro,Up,Down)\n  -o, --order=VALUE          Phrase group order, comma separated groups of\n                               slash separated phrase names (default is Intro,\n                               Outro,Verse,Chorus,Bridge,Up/Down)\n      --phraselength=VALUE   Minimum length of phrase group in bars (default is\n                               4)\n      --mindate=VALUE        Minimum creation date of tracks (default is any,\n                               format is 2021-12-32T23:31:00, time is optional)\n      --li, --loopintro=VALUE\n                             Length in beats of active loop intro (default is\n                               disabled)\n      --lo, --loopoutro=VALUE\n                             Length in beats of active loop outro (default is\n                               disabled)\n      --of, --offset=VALUE   Number of beats to offset cue points by, may be\n                               negative (default is 0)                               \n```\n\n## Database Backup\n\nCueGen automatically creates a backup of the Rekordbox SQLite database `master.db` in the Rekordbox folder `%AppData%\\Pioneer\\rekordbox`.\nThe backup files will have a datetime suffix, e.g. `master.backup.2021-04-04-13-40-05.db`.\nIf you want to restore one of these backups, replace the `master.db` file with a backup file.\n\n## Mixed in Key cue points\n\nMixed in Key detects up to 8 cue points for each track. Each of the cue points gets assigned an energy level (in addition to the overall track energy level).\nCueGen uses the energy level information to assign a cue point name (such as \"Energy 6\") and color.\n\n## Phrase cue points\n\nCue points can also be created based on phrase information as analyzed by Rekordbox. For example, you can automatically set cue points where the outro starts and\nwhenever a chorus starts.\n\nRekordbox assigns phrases according to a \"mood\" it detects. The mood can be low, mid, or high. For each mood the following phrases exist:\n\n- Low, Mid: Intro, Verse 1-6, Bridge, Chorus, Outro\n- High: Intro 1-2, Up 1-3, Down, Chorus 1-2, Outro 1-2\n\nCueGen creates cue points whenever a new phrase group starts. A phrase group is a sequence of consecutive phrases that start with the same name but may have different numbers\n(such as \"Verse 1, Verse 2, Verse 3\"). Additionally, you can combine phrase groups: For example, if you combine Down and Outro into a phrase group a cue point will be\ncreated at the start of a sequence of phrases labeled Down or Outro.\n\n## Cue point selection\n\nIf the number of cue points that would be generated though either Mixed in Key or phrases exceeds the maximum number of available cue point slots, \ncue points are created alternatingly at the start and end (first, last, second, next to last, etc).\n\n## Colors\n\nThere are different types of colors in Rekordbox for memory cues and hot cues. \nMemory cues can have one of 8 eight different colors: Pink, Red, Orange, Yellow, Green, Aqua, Blue, and Purple.\n\nHot cues can technically have any color from a 64 color palette, of which only 16 are surfaced in Rekordbox.\n\nMixed in Key cue points are by default assigned a color according to their energy level. For memory cue points purple is Energy 1 and pink is Energy 8.\nHot cues get similar colors picked from the 16 colors palette.\n\nPhrase cue points by default get a color that is similar to the phrase group in Rekordbox (intro is red, chorus is green, etc).\n\nThrough the `--colors` command line option you can choose the palette of 8 colors that are used to map energy level, phrase, or cue point number.\n\n## My Tag Energy\n\nAlthough you can't manually create new My Tag categories through Rekordbox, its database schema allows for additional ones. \nCueGen can generate an Energy My Tag category from the energy level detected by Mixed in Key.\n\nUnfortunately, it currently seems impossible to use this additional My Tag as a filter.\n\n## Active Loops\n\nCueGen can create active loops of configurable length for the first and last cue points.\n\n## Thanks\n\n- The [Deep Symmetry](https://github.com/Deep-Symmetry) project for information about Rekordbox analysis files \n- https://github.com/Holzhaus/serato-tags for information about Serato ID3 tags\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmganss%2Fcuegen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmganss%2Fcuegen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmganss%2Fcuegen/lists"}