diff options
author | Shreesh Adiga <16567adigashreesh@gmail.com> | 2020-11-01 16:43:31 +0530 |
---|---|---|
committer | Avi Halachmi (:avih) <avihpit@yahoo.com> | 2020-11-07 18:51:49 +0200 |
commit | 19913921eb9ee4c35de230c62c46d1591cf3326e (patch) | |
tree | 432ddcb28063d6150ca85b7e4e6e0cd77c11c600 /video/out/win32/droptarget.h | |
parent | dfa5ae2ad61cba4fab850a41779ce95332c27935 (diff) | |
download | mpv-19913921eb9ee4c35de230c62c46d1591cf3326e.tar.bz2 mpv-19913921eb9ee4c35de230c62c46d1591cf3326e.tar.xz |
video/out/vo_sixel.c: Implement sixel as a output device
Based on the implementation of ffmpeg's sixel backend output written
by Hayaki Saito
https://github.com/saitoha/FFmpeg-SIXEL/blob/sixel/libavdevice/sixel.c
Sixel is a protocol to display graphics in a terminal. This commit
adds support to play videos on a sixel enabled terminal using libsixel.
With --vo=sixel, the output will be in sixel format.
The input frame will be scaled to the user specified resolution
(--vo-sixel-width and --vo-sixel-height) using swscaler and then
encoded using libsixel and output to the terminal. This method
requires high cpu and there are high frame drops for 720p and
higher resolution videos and might require using lesser colors and
have drop in quality. Docs have all the supported options listed
to fine tune the output quality.
TODO: A few parameters of libsixel such as the sixel_encode_policy
and the SIXEL_XTERM16 variables are hardcoded, might want to
expose them as command line options. Also the initialization
resolution is not automatic and if the user doesn't specify the
dimensions, it picks 320x240 as the default resolution which is not
optimal. So need to automatically pick the best fit resolution for
the current open terminal window size.
Diffstat (limited to 'video/out/win32/droptarget.h')
0 files changed, 0 insertions, 0 deletions