ターミナルエミュレータで画像を見て映画を見ることはできますか?

ターミナルエミュレータで画像を見て映画を見ることはできますか?

ターミナルエミュレータで画像を見て映画を見ることはできますか?仮想コンソールならフレームバッファを使ってできますが、端末エミュレータはどうですか?

答え1

用語

あなたが望むもの。

たとえば - 端末の背景を変更したいですか?

printf '\033}bp%s\000' \
  'http://hdwalldesktops.com/wp-content/uploads/2014/02/background-backgrounds-high-resolution-abstract-picture-background-wallpaper.jpg'

それは何をしますか?

シミュレーション少しvt100拡張、いくつかの拡張とブリングを追加します。

> Most escapes supported by xterm, rxvt etc. work

> Xterm 256 color escapes work

> Backgrounds (bitmap, scalable/vector, animated gif, videos)

> Transparency

> Bitmap and scalable fonts supported

> Themes for the layout and design

> URL, file path and email address detection and link-handling

> Inline display of link content

> Multiple copy and paste selections and buffer support

> Works in X11

> Works in Wayland

> Works directly in the linux framebuffer (fbcon)

> Can be finger/touch controlled

> Scan scale by UI scaling factors

> Can render using OpenGL or OpenGL-ES2 (not a requirement - just an 
option)

> Can display inlined media content (images, video, documents)

> Can do multiple "tabs"

> Can do splitting into multiple panes

> Block text selection

> Drag and drop of text selections and links

> Can stream media from URLs

> Tab switcher has live thumbnail content

> Single process, multiple windows/terminals support

> Fast (gives urxvt a run for its money)

> Themable visual bell

> Compress backscroll

> Text reflow on resize

> Color palette selection

> More...

上でそれを見ましたか?これをするフレームバッファから。

答え2

マルチ端末エミュレータのサポート6種類のカラーグラフィックからPySixel githubページ、リストは次のとおりです。

  • ログイン
  • タナシン
  • 複数の用語
  • Xタム
  • 12月学期
  • コミット
  • WRQの反映
  • ZSTEM

上記の内容で画像を表示できます。ピーセル、必要な変換を実行できるようです。別のオプションはを使用することですnetpbm。私は次の方法を使ってmltermにJPEG画像を変換して表示して良い結果を得ました。

jpegtopnm image.jpg | pnmquant 256 | ppmtosixel >/dev/tty

結果:

mltermはSixelの写真を表示します。

XTermは現在サポートが16色に制限されていますが、Sixelイメージも表示できます(欠陥があります)。サンプル画像を含むアーカイブをダウンロードできます。ここ、スクリプトが破損しているようですが。 XTermは出力の正確な形式を表示しませんppmtosixel(開始/終了に使用される制御シーケンスをサポートしていません)。それを見つける前に、次のスクリプトを使用してXTermが表示する内容でPySixel出力を修正しました。ppmtosixel

#!/bin/bash

echo -e '\eP0;0;0;q"1;2;400;400'
jpegtopnm "$1" |
  pnmquant 16 |
  ppmtosixel |
  tail -n +2 | 
  head -c -3
echo -e '\x1b\x5c\x0d'
tput cup "$(tput lines)" 0

デフォルトのVT420モードでは画像は表示されません。 VT240、VT241、VT330、またはVT340モードでのみ表示されます。--enable-sixel-graphicsビルドオプションも必要です。 VT340で最高の結果が見つかりました(xterm -ti vt340)。結果は次のとおりです(最初の例はアーカイブの例の非常にクールなトロン画像です)。

ここに画像の説明を入力してください。

答え3

はい、そうです。たとえば、Mplayerは両方をサポートします。アリブ(モノクロ)とリブカカ(カラー)テキスト端末でビデオをレンダリングします。正確には高解像度ではありませんが、下位の「ピクセル」レンダリングと時間的ディザリングにより、有効な解像度が向上し、一般的に何が起こっているのかがわかります。

答え4

Unixの世界では、ターミナルエミュレータはシリアルターミナルをエミュレートし、シリアルラインを介して一度に1つずつ送信されたデータストリームをユーザーに表示します。

モデム時代には通常1秒あたり1000〜2000文字でしたが、アナログハードウェアのみを含めると、今ははるかに高速になります。その後、送信されたバイトを理解することは端末に依存します。通常、文字表示、カーソル移動、画面表示操作に使用されます。一部の端末はグラフィックモードに切り替えることができます。 gnuplotはかなりの数をサポートしていますが、帯域幅が小さすぎてビデオで面白いことをすることはできません。

ただし、エミュレートされたハードウェアを備えた最新のコンピュータでは、ターミナルエミュレータで多くの作業を実行できます。画像の一部を表示するには、「ttyquake」というクエリを使用して画像を検索してください。しかし、HDを切望すれば失望する可能性が高いと申し上げたいと思います。

http://onyx.chattanoogastate.edu/~jack/matrix/insert.jpg

関連情報