Show HN: Termplay: Play videos in your terminal
github.com
github.com
Sixels aren't widely supported, and the implementations I tried were lacking in stability, but they offer some interesting possibilities, like embedding images into your text browser (and not with a hack like w3m uses), or playing Battle for Wesnoth inside your terminal [ https://github.com/saitoha/libsixel ]
$ CACA_DRIVER=ncurses mplayer -quiet -vo caca video.avi
Here's the Silicon Valley intro in glorious ASCII: http://i.imgur.com/YKP6nfP.pngI had some audio sync issues with mplayer, and it sounds like termplay avoids that. I'm also not sure if there's a way to use true colour with mplayer.
$ mpv --vo tct https://www.youtube.com/watch\?v\=PA4InNa0NSQ
[1]: https://mpv.io/manual/master/#video-output-drivers-tctHere's a screenshot demonstrating this issue, when converting a GIF to text in a terminal:
https://monosnap.com/file/HwrGbSHEwxWlTQCCeXyd9qcFxwL38V.png
On the left, the original image. In the center, a ratio-perserved resized render in a terminal On the left, a pixel-ratio aware resized render.
EDIT: Done :) https://github.com/legolord208/termplay/commit/2263a5c5e385c...
I think that playing YouTube in the terminal today is just a fun idea because the videos look so goofy. But like people say... Sixel... Everything is apparently possible!
Someday, somebody will make the whole YouTube platform.
Example screenshot from Konsole: https://imgur.com/a/D98Kl (showing https://en.wikipedia.org/wiki/xterm)
The rendering is really buggy. Images glitch away all the time, possibly until w3m issues a redraw event, but it kinda sorta works.
Some day, I'll have to dig into either the w3m source or the Konsole source and figure out which ANSI escapes are being used for that. (If someone has a link to a spec or sth, that'd be much appreciated.)
Others have also told me about Sixels, so I'll probably add support for that at least.
Try it out with one of the terminals listed in https://github.com/saitoha/libsixel#terminal-requirements