Exibir imagem sobre SSH, sem X

10

Existe alguma maneira de exibir uma imagem sobre SSH? Não há necessidade de boa qualidade, só preciso de uma idéia do que está nas imagens. Principalmente, esses são arquivos de ícone para sites e outros. Às vezes, posso simplesmente encaminhar o X pelo SSH e usá-lo, displaymas às vezes não posso. Eu não me importo de trabalhar em um não-X tty para aplicativos como fbi.

Eu tentei, jp2amas a maioria das imagens está no formato .png e é complicado converter cada uma para verificar o que está nelas. Além disso, usando apenas os caracteres ASCII, a exibição é muito, muito limitada. Talvez se pudesse usar caracteres UTF-8 arbitrários, isso poderia ser melhor.

Eu tentei, fbimas ele reclama ioctl VT_GETSTATE: Invalid argument (not a linux console?)mesmo quando estou usando SSH através de um tty não gráfico. Eu tentei a -T 2opção que não gera erros, mas não vejo a imagem. Suspeito que a imagem esteja sendo 'exibida' no tty2 do servidor, o que não tenho como ver (não consegui chvt 2acessá -la apesar de ter acesso root).

Eu tentei links, w3ce outros navegadores de console, mas o melhor que obtive deles é ver o arquivo de imagem exibido como se fosse executado cat.

Eu tentei mplayeras opções de saída do console, mas elas suportam apenas vídeo, pois na verdade são codecs de vídeo.

Eu tentei zgvno entanto, como um usuário normal, reclama you must be the owner of the current console to run zgve como root apenas trava, sem saída.

dotancohen
fonte

Respostas:

9

Tente 'img2txt'. Para o Ubuntu, pode ser encontrado no pacote 'caca-utils'.

'caca-utils' também parece estar disponível como rpm.

Kride
fonte
Eu nunca ouvi falar disso antes, mas parece perfeito. 1
Hennes
Funciona incrivelmente bem. Mas ainda não consigo entender as imagens, lol.
Camilo Martin
No programa do terminal, reduza o tamanho da fonte para algo como 1x1 antes de visualizar a imagem e redimensione o programa do terminal para o tamanho máximo.
LawrenceC
Isso é melhor do que praticamente todas as soluções que li, considerando que é fácil de instalar e funciona com ssh.
Sridhar Sarnobat 03/09/19
2

A maneira de exibir uma 'imagem' com uma tela de texto é via aalib .

Isso usará caracteres ASCII para renderizar uma imagem e, se você tiver uma área de texto grande o suficiente (tipo de resolução), poderá reconhecer o que está sendo mostrado.

Você executaria a conversão para ASCII-art / movies no lado remoto do link SSH.

Link: aalib demo no youtube .

Além disso, usando apenas os caracteres ASCII, a exibição é muito, muito limitada.

Sim. O que significa que, a menos que você tenha um terminal grande para jogar , dificilmente reconhecerá imagens. Se você pode usar um terminal grande em uma tela de alta densidade (com letras nítidas, mesmo quando você usa uma fonte minúscula), é utilizável.

Hennes
fonte
Obrigado. Para usar o aalib, é preciso instalar (no Ubuntu) aalib1e executá-lo com asciiview file.jpg. Esse último comando levou um tempo para descobrir.
dotancohen
3
Revisitando isso um ano depois, agora para usar, asciiviewé preciso instalar o aviewpacote.
dotancohen
1

não tão rápido quanto o conceito de exibição ascii (mas de qualidade total):

 localComp$ ssh remoteCompIp 'cat image.jpg | ssh localCompIp fim -i' 

fim também funciona para arquivos pdf e para arquivos wav / mp3 / mp4 fim -ipodem ser substituídos por

mplayer -vo fbdev2 -cache 16384 -.

MetNP
fonte
2
O que é fim e existe um link para fim? Por favor, expanda.
Suspeito #
1
@suspectus, na verdade seria melhor se o fbi puder fazer isso, porque parece uma ferramenta mais simples e rápida ... mas eu estava procurando pelo visualizador de imagens framebuffer que pode exibir a imagem do pipe (stdin) e o fim aparece em [ manpages.ubuntu .com / manpages / quantal / man1 / fim.1.html] Manpage do ubuntu, há também [ aur.archlinux.org/packages/fim] (aur) para o archlinux. mas existe talvez em algum lugar melhor ferramenta para este fim
MetNP