All Projects β†’ jD91mZM2 β†’ Termplay

jD91mZM2 / Termplay

Licence: mit
GitLab: https://gitlab.com/jD91mZM2/termplay

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Termplay

Youtube Local
browser-based client for watching Youtube anonymously and with greater page performance
Stars: ✭ 112 (-77.6%)
Mutual labels:  watch, youtube-dl, youtube
Paint
Ruby gem for ANSI terminal colors 🎨︎ VERY FAST
Stars: ✭ 317 (-36.6%)
Mutual labels:  terminal, ansi
Enigma Bbs
ENiGMAΒ½ BBS Software
Stars: ✭ 294 (-41.2%)
Mutual labels:  terminal, ansi
Hues
Colored terminal text made easy for Python and happiness.
Stars: ✭ 345 (-31%)
Mutual labels:  terminal, ansi
spongebob-cli
Watch classic spongebob from the terminal!
Stars: ✭ 179 (-64.2%)
Mutual labels:  youtube, youtube-dl
Youtube Audio Stream
youtube audio stream
Stars: ✭ 276 (-44.8%)
Mutual labels:  audio, youtube
Youtube Downloader
πŸ‘ A much faster alternative to youtube-dl built for PHP applications. Working as of 2021-02-27
Stars: ✭ 474 (-5.2%)
Mutual labels:  youtube-dl, youtube
mpv-youtube-download
A userscript for MPV that allows you to download youtube audio and video with one key press πŸ’Ύ
Stars: ✭ 16 (-96.8%)
Mutual labels:  youtube, youtube-dl
Mordant
Full-featured text styling for Kotlin command-line applications
Stars: ✭ 382 (-23.6%)
Mutual labels:  terminal, ansi
Netflix To Srt
Rip, extract and convert subtitles to .srt closed captions from .xml/dfxp/ttml and .vtt/WebVTT (e.g. Netflix, YouTube)
Stars: ✭ 387 (-22.6%)
Mutual labels:  youtube-dl, youtube
Auto Editor
Auto-Editor: Effort free video editing!
Stars: ✭ 382 (-23.6%)
Mutual labels:  audio, youtube-dl
ypc
Convert text/spotify/deezer albums/playlists to youtube urls and audio/video files.
Stars: ✭ 17 (-96.6%)
Mutual labels:  youtube, youtube-dl
SharpGrabber
Download from YouTube, Vimeo, PornHub, HLS (M3U8 files) with .NET and JavaScript, Library and desktop app for downloading high quality media
Stars: ✭ 138 (-72.4%)
Mutual labels:  youtube, youtube-dl
Chalk
πŸ– Terminal string styling done right
Stars: ✭ 17,566 (+3413.2%)
Mutual labels:  terminal, ansi
Pantheon
The fastest YouTube downloader.
Stars: ✭ 32 (-93.6%)
Mutual labels:  youtube, youtube-dl
Youtube Dl Android
πŸ“¦πŸ“¦Video downloader for Android - Download videos from Youtube, Facebook, Twitter, Instagram, Dailymotion, Vimeo and more than 1000 other sites
Stars: ✭ 322 (-35.6%)
Mutual labels:  youtube-dl, youtube
Pulsemixer
CLI and curses mixer for PulseAudio
Stars: ✭ 441 (-11.8%)
Mutual labels:  terminal, audio
ytqck.github.io
YouTube quick ⚑ Search and Download Music for Free.
Stars: ✭ 18 (-96.4%)
Mutual labels:  youtube, youtube-dl
podpodge
Convert YouTube playlists to audio-only RSS feeds for podcast apps to consume.
Stars: ✭ 32 (-93.6%)
Mutual labels:  youtube, youtube-dl
Youtube Music
YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
Stars: ✭ 376 (-24.8%)
Mutual labels:  youtube-dl, youtube

termplay

Name by the awesome @tbodt

Are you a terminal fanboy like me?
Sure, but do you ever watch YouTube? In your terminal?


termplay is the tool to convert images to ANSI sequences.
But it also supports playing videos...
Written in the systems language Rust, it has some solid performance.

  • Multiple modes
    • Sixels: Only supported by a few terminals, like xterm.
    • Unicode halfblock: This is the same as TrueColor below, but uses unicode half-blocks for smaller pixels.
    • TrueColor: Any RGB color, supported by most terminals.
    • 256 color: The closest representation of a color that can be fit within 1 byte. Use this if nothing else works.
  • Flexible
    • Change framerate, size and more using command line switches
  • Adapting size
    • Automatically scales the image to fit your terminal

Termplay also allows you to control the media, such as zoom in or pause the video.

  • Mouse Scroll / +/-: Zoom
  • Mouse Drag / W/A/S/D: Pan
  • Space: Play/Pause
  • Left/Right: Seek
  • Up/Down: Volume
  • q / Ctrl+C: Quit

Example image
(Landscape image from pexels.com)

Using

Image

termplay 2.0.0
jD91mZM2 <[email protected]>
Play images/videos in your terminal

USAGE:
    termplay [FLAGS] [OPTIONS] <path>

FLAGS:
        --help       Prints help information
    -q, --quiet      Ignores all the nice TUI things for simple image viewing
    -V, --version    Prints version information

OPTIONS:
    -c, --converter <converter>    Decides how the image should be displayed [default: halfblock]  [possible values:
                                   color256, halfblock, sixel, truecolor]
    -h, --height <height>          Sets the height (defaults to the terminal size, or 24)
    -r, --rate <rate>              Sets the framerate [default: 24]
        --ratio <ratio>            Sets the terminal font ratio (only takes effect with some converters)
    -w, --width <width>            Sets the width (defaults to the terminal size, or 80)

ARGS:
    <path>    Specifies the path to the image/video to play

Compiling

Compile time requirements

Rust v1.25 or more is required. See your Rust version with

rustc --version

Update rust with

rustup update stable

Compiling!

Other than that, this project is hosted on crates.io.
So to install you just need to run

cargo install termplay --features bin

(Note: The --features part is a hack because binaries don't allow specifying separate dependencies)

Features

Almost all dependencies are optional and can be disabled!

Default features:

  • termion: This is what enables the rich image viewer. Disabling this will disable almost everything.
  • gst: Video support, requires gstreamer
  • sixel: Support for sixels, requires libsixel

To disable default features, run

cargo install termplay --no-default-features --features "bin,..."

where ... is a comma separated list of features you want to keep.

Nix

Termplay is available with the default features on Nix!

nix-env -iA nixpkgs.termplay

Arch Linux

If you just want to get this running on Arch Linux with the default features, you can use the
AUR Package (unofficial)

Debian / Ubuntu

Example:

sudo apt install libopenal-dev libsndfile1-dev libsixel-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev
cargo install termplay --features bin
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].