{"id":16573364,"url":"https://github.com/zoomoid/waveman2","last_synced_at":"2025-08-08T08:50:02.530Z","repository":{"id":47455591,"uuid":"510509679","full_name":"zoomoid/waveman2","owner":"zoomoid","description":"waveman2 is the successor of waveman, rewritten in Golang and made more consistent, extensible, and also more testable","archived":false,"fork":false,"pushed_at":"2024-01-10T10:21:21.000Z","size":283,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-05T15:23:58.564Z","etag":null,"topics":["cli","golang","mp3","svg"],"latest_commit_sha":null,"homepage":"","language":"Go","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/zoomoid.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":"2022-07-04T21:39:29.000Z","updated_at":"2024-03-05T08:50:36.000Z","dependencies_parsed_at":"2023-12-19T17:16:26.057Z","dependency_job_id":"9603820d-004a-4ef0-8028-22a4a8ecccc5","html_url":"https://github.com/zoomoid/waveman2","commit_stats":{"total_commits":96,"total_committers":1,"mean_commits":96.0,"dds":0.0,"last_synced_commit":"d57a7aaf1d4877a4f9cc840f094457b02ecf898c"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/zoomoid/waveman2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoomoid%2Fwaveman2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoomoid%2Fwaveman2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoomoid%2Fwaveman2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoomoid%2Fwaveman2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zoomoid","download_url":"https://codeload.github.com/zoomoid/waveman2/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoomoid%2Fwaveman2/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269392509,"owners_count":24409754,"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-08-08T02:00:09.200Z","response_time":72,"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":["cli","golang","mp3","svg"],"created_at":"2024-10-11T21:41:59.450Z","updated_at":"2025-08-08T08:50:02.482Z","avatar_url":"https://github.com/zoomoid.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# waveman2\n\n![zoomoid - Morgendämmerung waveform](hack/Morgend%C3%A4mmerung.svg)\n\n`waveman2` is the Golang successor the first waveman, built to convert audio files\n(later, only mp3), into cool-looking, more abstract audio waveforms, by reducing\nthe samples to a smaller-sized slice and rendering out SVGs.\n\nSee \u003chttps://github.com/zoomoid/wave-man\u003e for the original project written in\nPython. Be warned, decoding is slow, even though the audio file is resampled to\n16 times lower sampling rate before processing, and the project depends on\nseveral utilities to decode mp3 files and convert them to PCM before\ntranformation.\n\n`waveman2` is designed to be both extensible with other painters than the default\nones, and also to be imported into any other Golang project as a dependency.\nThis way, you can easily realize the original idea of waveman to be combined\nwith a web server that processes audio files sent to the server with a set of\ndefaults and/or user-defined properties, without having to implement web server\nfunctionality in the waveman codebase itself.\n\nSee [./docs](./docs/) for the command manual.\n\n## Building\n\nYou can build the project from source by cloning the repository and then running\n\n```bash\n# Downloads all the go dependencies needed to build\n$ go get -d -v ./...\n# Builds a binary named \"waveman\" in the local directory\n$ go build -o waveman\n# Run waveman locally\n$ ./waveman\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoomoid%2Fwaveman2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzoomoid%2Fwaveman2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoomoid%2Fwaveman2/lists"}