{"id":20408292,"url":"https://github.com/kai-kj/terminalmediaviewer","last_synced_at":"2025-04-12T15:21:50.457Z","repository":{"id":157247767,"uuid":"260611663","full_name":"kai-kj/TerminalMediaViewer","owner":"kai-kj","description":"An utf-8/truecolor image and video viewer for the terminal","archived":false,"fork":false,"pushed_at":"2020-09-26T22:18:28.000Z","size":35985,"stargazers_count":110,"open_issues_count":4,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-05T11:35:06.726Z","etag":null,"topics":["c","image","linux","macos","terminal","terminal-app","terminal-graphics","video","videos","youtube"],"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/kai-kj.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}},"created_at":"2020-05-02T04:13:15.000Z","updated_at":"2025-02-22T15:53:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"ccd8543a-0e9e-4881-8466-6605a330e6eb","html_url":"https://github.com/kai-kj/TerminalMediaViewer","commit_stats":null,"previous_names":["kai-kj/terminalmediaviewer","kal39/terminalmediaviewer"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kai-kj%2FTerminalMediaViewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kai-kj%2FTerminalMediaViewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kai-kj%2FTerminalMediaViewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kai-kj%2FTerminalMediaViewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kai-kj","download_url":"https://codeload.github.com/kai-kj/TerminalMediaViewer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248586326,"owners_count":21129019,"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":["c","image","linux","macos","terminal","terminal-app","terminal-graphics","video","videos","youtube"],"created_at":"2024-11-15T05:29:44.212Z","updated_at":"2025-04-12T15:21:50.430Z","avatar_url":"https://github.com/kai-kj.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\t\u003ch1 align=\"center\"\u003e\u003cb\u003eTerminal Media Viewer\u003c/b\u003e\u003c/h1\u003e\n\t\u003cp align=\"center\"\u003e\u003cb\u003eView images and videos without leaving the console\u003c/b\u003e\u003c/p\u003e\n\t\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"https://img.shields.io/github/license/kal39/TerminalMediaViewer\"\u003e\n\t\u003cimg src=\"https://img.shields.io/github/repo-size/kal39/TerminalMediaViewer\"\u003e\n\t\u003cimg src=\"https://img.shields.io/github/languages/top/kal39/TerminalMediaViewer\"\u003e\n\t\u003cbr\u003e\n\t\u003cimg src=\"https://img.shields.io/github/issues/kal39/TerminalMediaViewer\"\u003e\n\t\u003cimg src=\"https://img.shields.io/github/v/release/kal39/TerminalMediaViewer?sort=semver\"\u003e\n\t\u003c/p\u003e\n\t\u003cbr\u003e\n\t\u003ch3 align=\"center\"\u003e \u003e\u003e\u003e Improved version at \u003ca href=\"https://github.com/kal39/ptmv/\"\u003ePyTerminalMediaViewer\u003c/a\u003e \u003c\u003c\u003c \u003c/h3\u003e\n\t\u003cbr\u003e\n\u003c/p\u003e\n\n----\n\n### Features\n\n* View **images** form any terminal\n* Watch **videos** from any terminal\n* Watch **youtube** videos from any terminal (`-y`, `--youtube`)\n* Play videos at **any fps** (`-f`, `--fps`, `-F`, `--origfps`)\n* **Resize** images / videos (`-w`, `-h`, `--width`, `--height`)\n* Easy to use\n\n----\n\n### Examples\n\n**Viewing an image**\n\n\u003cimg src=\"assets/iGif.gif\" width=\"80%\"\u003e\n\n**Watching a video**\n\n\u003cimg src=\"assets/vGif.gif\" width=\"80%\"\u003e\n\n----\n\n### Requirements\n\n* A terminal that supports **truecolor** ([list](https://gist.github.com/XVilka/8346728)) and **utf-8** (most terminals should support utf-8).\n* [ffmpeg](https://github.com/FFmpeg/FFmpeg) (only for videos)\n* [youtube-dl](https://github.com/ytdl-org/youtube-dl) (only for youtube videos)\n\n----\n\n### Usage\n\n**tmv [`OPTIONS...`] `[INPUT FILE / URL]`**\n\n* **`INPUT`**  \n\tFile to display/play\n\n* **`OPTIONS...`**  \n\t* `-y`. `--youtube`  \n\t\tView youtube videos\n\t* `-h`, `--height`  \n\t\tSet height (setting both `width` and `height` will ignore original aspect ratio)\n\t* `-w`, `--width`  \n\t\tSet width (setting both `width` and `height` will ignore original aspect ratio)\n\t* `-f`, `--fps`  \n\t\tSet fps (default 15 fps)\n\t* `-F`, `--origfps`  \n\t\tUse original fps from video (default 15 fps)\n\t* `-s`, `--no-sound`   \n\t\tDisable sound\n\t* `-i`, `--no-info`   \n\t\tDisable progress bar for videos\n\t* `-?`, `--help `  \n\t\tDisplay help\n\t* `-V`  \n\t\tDisplay version\n\n----\n\n### Installation\n\n#### Linux\n\n**Instructions:**\n1. Install dependencies.  \n\t* `libavcodec-dev`\n\t* `libavformat-dev`\n\t* `libavfilter-dev`\n\t* `libavdevice-dev`\n\n\tIn addition, to watch videos install:\n\t* `ffmpeg`\n\t* `youtube-dl`\n2. Clone the repository and run make.\n\t```\n\tgit clone https://github.com/kal39/TerminalMediaViewer.git\n\tcd TerminalMediaViewer\n\tmake\n\t```\n\tTo install tmv to `/usr/local/bin` you can run `make install` (needs sudo privileges).  \n\tTo uninstall run `make uninstall` (needs sudo privileges).\n\n#### MacOS\n\n**Requirements:**\n* `homebrew`\n* `iterm2`\n\n**Instructions:**  \n1. Install dependencies\n\t```\n\tbrew install argp-standalone\n\t```\n\tIn addition, to watch videos:\n\t```\n\tbrew install ffmpeg\n\tbrew install youtube-dl\n\t```\n2. Clone the repository and run make.\n\t```\n\tgit clone https://github.com/kal39/TerminalMediaViewer.git\n\tcd TerminalMediaViewer\n\tmake\n\t```\n\tTo install tmv to `/usr/local/bin` you can run `make install` (needs sudo privileges).  \n\tTo uninstall run `make uninstall` (needs sudo privileges).\n\n\u003e **Only works on iTerm2.**\n\n\u003e There are some performance issues. Depending on the video encoding, your mileage may vary.\n\n----\n\n### Releases\n\n* **[`v0.1.1`](https://github.com/kal39/TerminalMediaViewer/releases/tag/v0.1.1) Youtube Support**  \n\tTerminalMediaViewer can now play videos directly from youtube.  \n\tTo play videos from youtube, use the `-y` option.\n\n\t* Improved memory usage\n\t* Cursor is now hidden during videos\n\t* Supports spaces in video filenames\n\t* **Play videos directly from youtube**\n\t* Check if ffmpeg and YouTube exist before playing videos\n\t* Better error and debug messages\n\n* **[`v0.1`](https://github.com/kal39/TerminalMediaViewer/releases/tag/v0.1) Initial release**  \n\tInitial release of tmv.  \n\tIt is in a very early state so bugs are expected.\n\n\t* View images\n\t* Watch videos (with sound)\n\t* Resize images / videos\n\n----\n\n### Contributing\nAny contributions are greatly appreciated.\n\n----\n\n**kal39**(https://github.com/kal39) - kal390983@gmail.com  \nDistributed under the MIT license. See `LICENSE` for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkai-kj%2Fterminalmediaviewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkai-kj%2Fterminalmediaviewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkai-kj%2Fterminalmediaviewer/lists"}