{"id":27761057,"url":"https://github.com/tsoding/binviz","last_synced_at":"2025-04-29T12:22:54.045Z","repository":{"id":201010476,"uuid":"706747391","full_name":"tsoding/binviz","owner":"tsoding","description":"Binary Visualization based on Christopher Domas talk: https://www.youtube.com/watch?v=4bM3Gut1hIk","archived":false,"fork":false,"pushed_at":"2023-10-18T15:02:35.000Z","size":937,"stargazers_count":21,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-10-19T15:59:38.271Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/tsoding.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}},"created_at":"2023-10-18T14:39:18.000Z","updated_at":"2023-10-19T15:43:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"1b99fc6d-6b69-4c6c-be3a-4db182eff89c","html_url":"https://github.com/tsoding/binviz","commit_stats":null,"previous_names":["tsoding/binviz"],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fbinviz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fbinviz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fbinviz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fbinviz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tsoding","download_url":"https://codeload.github.com/tsoding/binviz/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251499516,"owners_count":21599110,"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","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":[],"created_at":"2025-04-29T12:22:53.330Z","updated_at":"2025-04-29T12:22:54.034Z","avatar_url":"https://github.com/tsoding.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Binary Visualization\n\nBinary Visualization based on Christopher Domas talk: https://www.youtube.com/watch?v=4bM3Gut1hIk\n\n## Main Idea\n\n- Scan the pairs of bytes of a file with a sliding window. (`AA BB CC DD ...` -\u003e `(AA, BB) (BB, CC) (CC, DD) ...`);\n- Interpret the pairs of bytes as coordinates on a 256x256 2D plain;\n- Place a dot for each pair on the plain;\n- The more frequent the dot, the brighter it is;\n- Different patterns emerge depending on the type of the data of the file.\n\n## Demo\n\n### x86_64 ELF executables\n\n![xkbprint](./demos/exec/xkbprint.binviz.png)\n![xournal](./demos/exec/xournal.binviz.png)\n![x-terminal-emulator](./demos/exec/x-terminal-emulator.binviz.png)\n\n### RGBA32 Raw Images\n\n![forsen1](./demos/imgs/forsen1.png.raw.binviz.png)\n![jebaited](./demos/imgs/jebaited.png.raw.binviz.png)\n![kkoooooona](./demos/imgs/kkoooooona.png.raw.binviz.png)\n\n### Ogg Files with Chiptune\n\n![1.ogg](./demos/oggs/1.ogg.binviz.png)\n![2.ogg](./demos/oggs/2.ogg.binviz.png)\n![3.ogg](./demos/oggs/3.ogg.binviz.png)\n\n### Wav Files with Chiptune\n\n![1.wav](./demos/wavs/1.wav.binviz.png)\n![2.wav](./demos/wavs/2.wav.binviz.png)\n![3.wav](./demos/wavs/3.wav.binviz.png)\n\n## Quick Start\n\n```console\n$ cc -o nob nob.c\n$ ./nob binviz ./nob.c\n$ feh ./nob.c.binviz.png\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsoding%2Fbinviz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsoding%2Fbinviz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsoding%2Fbinviz/lists"}