{"id":16223147,"url":"https://github.com/niek/superview","last_synced_at":"2025-04-10T01:12:46.906Z","repository":{"id":53599424,"uuid":"189356416","full_name":"Niek/superview","owner":"Niek","description":"A small program that takes a 4:3 aspect ratio video file, and transforms it to a 16:9 video using the GoPro SuperView method","archived":false,"fork":false,"pushed_at":"2023-11-02T21:33:26.000Z","size":7360,"stargazers_count":216,"open_issues_count":10,"forks_count":21,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-10T01:12:41.769Z","etag":null,"topics":["ffmpeg","fpv","fpv-drones","golang","gopro","hacktoberfest","quadcopter","scaling","superview"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Niek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["Niek"],"custom":["https://paypal.me/niekvandermaas"]}},"created_at":"2019-05-30T06:13:25.000Z","updated_at":"2025-03-08T01:25:26.000Z","dependencies_parsed_at":"2022-09-11T09:12:33.426Z","dependency_job_id":"eff576d6-6b72-45de-8243-8cd6f0c8b5b4","html_url":"https://github.com/Niek/superview","commit_stats":{"total_commits":64,"total_committers":4,"mean_commits":16.0,"dds":0.328125,"last_synced_commit":"d743e707676f81400e6ab1b5e31acae2f5beb177"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niek%2Fsuperview","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niek%2Fsuperview/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niek%2Fsuperview/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niek%2Fsuperview/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Niek","download_url":"https://codeload.github.com/Niek/superview/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137890,"owners_count":21053775,"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":["ffmpeg","fpv","fpv-drones","golang","gopro","hacktoberfest","quadcopter","scaling","superview"],"created_at":"2024-10-10T12:17:34.019Z","updated_at":"2025-04-10T01:12:46.876Z","avatar_url":"https://github.com/Niek.png","language":"Go","funding_links":["https://github.com/sponsors/Niek","https://paypal.me/niekvandermaas"],"categories":[],"sub_categories":[],"readme":"# Superview\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-4-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\nThis is a small Go program that takes a 4:3 aspect ratio video file, and transforms it to a 16:9 video using the [GoPro SuperView](https://gopro.com/help/articles/question_answer/What-is-SuperView) method. This means that the image is not naively scaled, but a dynamic scaling is applied where the outer areas are stretched more while the center parts stay close to the original aspect rate.\n\nThis is not a 1-1 copy of the GoPro algorithm, but an attempt to reach similar quality of output using the open-source [FFmpeg](https://ffmpeg.org/) encoder.\n\nCredits for the idea go to _Banelle_, who wrote the [initial (Python) implementation](https://intofpv.com/t-using-free-command-line-sorcery-to-fake-superview).\n\nHere is a quick animation showing the scaling, note how the text in the center stays the same:\n\n![alt text](.github/sample.gif \"Sample of the scaling result\")\n\n## Requirements\n\nThis program requires FFmpeg to be installed on your computer. If needed, please install it using one of these ways:\n\n- **Linux**: install from your local package manager, for example: `apt instal ffmpeg`\n- **Windows**: Download from https://www.gyan.dev/ffmpeg/builds/ and extract the `ffmpeg-release-full` 7ZIP file in the same directory as superview\n- **macOS**: Download from https://evermeet.cx/ffmpeg/ and put in the same folder as superview, or install using Homebrew: `brew install ffmpeg`\n\n## Installation\n\nDownload the latest release from the [releases page on GitHub](https://github.com/Niek/superview/releases). There are two versions: a graphical version called `superview-gui` and a command line program called `superview-cli`.\n\n## Usage\n\n#### GUI\nTo run `superview-gui`, simply double-click the icon. Choose an input video file, optionally change some settings and click \"Encode\". The program will ask you where to save the output.\n\n![alt text](.github/sample-gui.png \"Sample of GUI\")\n\n#### CLI\nTo use `superview-cli`, run the program with the `-i` (input file) parameter. Optionally, you can provide a `-o` (output) and `-b` (bitrate) parameter. Full usage instructions:\n\n```\nUsage:\n  superview-cli [OPTIONS]\n\nApplication Options:\n  -i, --input=FILE         The input video filename\n  -o, --output=FILE        The output video filename (default: output.mp4)\n  -e, --encoder=ENCODER    The encoder to use, use -h to see a list. If not specified, it takes the standard encoder of the input file codec\n  -b, --bitrate=BITRATE    The bitrate in bytes/second to encode in. If not specified, take the same bitrate as the input file\n  -s, --squeeze            Squeeze 4:3 video stretched to 16:9 (e.g. Caddx Tarsier 2.7k60)\n\nHelp Options:\n  -h, --help               Show this help message\n```\n\n## Development\n\nIf you want superview from source, run `go build superview-gui.go` or `go build superview-cli.go` depending on which version you'd like to build. See [build.sh](/build.sh) for an example how to cross-compile.\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/naorunaoru\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/3761149?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRoman Kuraev\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-naorunaoru\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/Niek/superview/commits?author=naorunaoru\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/dangr0\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/61669715?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003edangr0\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/Niek/superview/issues?q=author%3Adangr0\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/dga711\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/2995606?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDG\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-dga711\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/Niek/superview/commits?author=dga711\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/tommaier123\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/40432491?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNova_Max\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/Niek/superview/commits?author=tommaier123\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-enable --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniek%2Fsuperview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fniek%2Fsuperview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniek%2Fsuperview/lists"}