Опції для показу зображень, коли на консолі


12

Коли я перебуваю на консолі (tty, віртуальний термінал, до якого ви досягаєте Ctrl+ Alt+ F1-6, а не емулятор терміналу), які параметри я маю для перегляду зображень, тифф, що б це не був текст?


Ви маєте на увазі віртуальний термінал на відміну від емулятора терміналу? unix.stackexchange.com/questions/4126/…
Graeme

@Graeme: так, це все.
Джозеф Шліссер

дивіться також: Ворота
Перші

Відповіді:


9

Ви можете використовувати бібліотеку від AA-Project

введіть тут опис зображення

Заявки:

  • xine-console [відео]
  • xaos [фрактали / мандельброд]
  • vlc [відео]
  • перегляд [фотографії]
  • ... амо

7

Спочатку ви повинні переконатися, що фреймбуфер увімкнено, що немає абсолютно ніякого способу перегляду зображень у текстовому режимі. Після увімкнення кадру кадрів ви можете використовувати програму fbiдля перегляду зображень.

Пакет: fbi

Переглядач зображень буферного кадру Linux

Це програма перегляду зображень для буферних пристроїв Linux фрейму. Він має вбудовану підтримку для ряду поширених форматів файлів зображень. Для невідомих файлів він намагається використовувати перетворення з пакету ImageMagick як зовнішній конвертер. Він також включає fbgs, поштовий скрипт та переглядач PDF.


7

Багато зображень пофарбовані, тому ви можете використовувати libcaca в програму перегляду ASCII зображення ( cacaview) і зображення в текстовий конвертер ( img2iso).

  • Для перегляду зображень використовуйте браузер зображень ASCII :

    cacaview /usr/share/pixmaps/*.*
    
  • Перетворення зображень у текстові кольорові файли:

    img2txt -W 150 penguins_mating.png > penguins_mating.txt
    
  • Перегляд фільмів і відео в текстовій консолі:

    mplayer -vo caca https://upload.wikimedia.org/wikipedia/commons/4/41/Big_Buck_Bunny_medium.ogv
    

    Переважно ця опція не потрібна, -vo cacaякщо ви переглядаєте своє відео в текстовому середовищі (термінал із ssh-з'єднанням, віртуальний термінал тощо). За замовчуванням ви отримаєте небарвний текст (тобто -vo aa), але колір може бути кращим.

Для Fedora та Ubuntu пакет caca-utilsмає бути встановлено.

Прочитайте тут для отримання додаткової інформації.

введіть тут опис зображення


2

mplayerмає драйвер фреймбуфера (2 версії, якщо одна не працює). Використовуйте

mplayer -vo fbdev [or fbdev2] <filename>

Для зображень fbiта fimроботи. Що б ще не впоралося з цими двома, ви, ймовірно, можете перетворити зображення на льоту ( imagemagickпрацює як магія), тож у вас все охоплене.


1

Можна використовувати пристрій фреймбуфера . Механізм framebuffer - це той, який використовується для відображення Tux під час завантаження.

Існує також лібкака, яка використовується для відображення зображень мистецтва ASCII.


Чи можете ви додати трохи детальніше? Як можна було б користуватися цими інструментами?
тердон

Це дуже залежить від вашого обладнання та ваших потреб. Ви повинні надати більше деталей у своєму запитанні та дати контекст.
lgeorget

Не моє запитання. Я вказую, що відповідаючи на запитання, слід включати деталі, як це зробити. Ви просто даєте два посилання на зовнішні джерела, чого ми намагаємось уникати. Ідея полягає в тому, що відповіді на сайтах SE є самостійними.
тердон

Звичайно, але існує не один спосіб використання цих інструментів. І в питанні не так багато контексту, тому ...
lgeorget

0

ffmpeg може показати будь-який повноекранний формат зображення:

ffmpeg -i image.ext -s $(< /sys/class/graphics/fb0/virtual_size tr , x) \
       -vcodec rawvideo -f image2 -pix_fmt bgra -y /dev/fb0 &>/dev/null && read


0

Сьогодні є бібліотека на сьогодні SVGAlib . Він безпосередньо обробляє відеокарту з драйверами простору користувачів (імпортовані переважно з X).

Він не має драйверів для більшості поточних відеокарт, але

  • він має вихідний драйвер VESA (тобто по суті, він може обробляти вихід з драйверами BIOS)
  • він має драйвери fbdev (він обробляє /dev/fb0як відеокарту, таким чином, по суті, він використовує драйвери ядра).

Існує багато програмних засобів, що використовують SVGALib, наприклад mplayer (для відеовиходу) та відповідають на ваше запитання, переглядач зображень xzgv .

Хоча вам доведеться компілювати їх з джерела, оскільки розробники дистрибутивів Linux думають приблизно з десятиліття, що X (з безперервними приємними, ніколи не виконаними обіцянками, такими як kgi, ggi та сьогодні wayland) - це майбутнє.


0

Ця відповідь обмежена нативними консолями Linux, увімкнено буфер кадру. Цей варіант дасть вам повне вирішення реальних зображень і реальне відео (НЕ ASCII-арт) без X11або waylandабо mir.

Станом на 2018 рік, debian пропонує пакет, fimякий включає в себе переглядач зображень fimта перегляд документів fimgs. Бо fimgsроздільна здатність за замовчуванням - 96x96, що, ймовірно, ви вважаєте неадекватним. Я вважаю, що викликати це з опцією -r 256x256достатньо. Ці дві програми мають бути "модернізованими" версіями інших програм, які також доступні в debian fbiта fbgs. Особливе розчарування у старшій програмі fbgsполягає в тому, що вона відображається повільно і видасть цілий pdf-файл, перш ніж відобразити навіть одну сторінку, тому, якщо у вас є багатосторінковий документ, ви будете довго чекати.

Існує декілька програм, не характерних для роботи фреймбуфера, які мають підтримку тонкої кадри. w3mВеб - браузер буде відображати зображення , коли підтримка пакет w3m-imgвстановлений. Переглядач fehзображень працює в буферній рамці консолі, як і vlcу відео.

Все це дуже добре і добре, але для того, щоб використовувати будь-який із цих варіантів, спочатку потрібно налаштувати речі.

Хороша новина полягає в тому, що майже всі сучасні дистрибутиви Linux постачають ядра з наявним фреймбуфером. Що зазвичай не робиться - це налаштування цього буфера кадру для фактичного використання. Для цього, якщо ви використовуєте grubзавантажувач, вам потрібно буде переконатися, що у вашому файлі існує наступне /etc/default/grub(ваш конкретний номер роздільної здатності може бути іншим):

  GRUB_GFXMODE=1024x768
  GRUB_GFXPAYLOAD_LINUX=1024x768

І вам потрібно буде переконатися, що коментується наступний рядок:

  #GRUB_TERMINAL=console

Після цього вам потрібно буде оновити grub, запустивши його, update-grubі потрібно буде перезавантажитись, щоб зміни вступили в силу.

Вам може знадобитися додати свого користувача до videoгрупи дозволів:

  usermod -a -G video <user_name>

Деякі програми можуть вимагати спеціального доступу. Відповідно до моїх записок, це так fbi, але я бачу, що в моїй системі це не так fim. Піди розберися. У будь-якому випадку командою для цього є:

  setcap 'cap_sys_tty_config+ep' /usr/bin/fbi

Програма, яку я не можу порекомендувати, і у якої були лише проблеми, є fbterm. Він продовжував возитися зі своїми колірними схемами для emacs, mc, lessта інших програм, і я пам'ятаю , що він не буде грати добре буде tmux.

Важлива примітка щодо використання vlcв консолі framebuffer: я виявив, що іноді, таким чином, що я не зміг надійно відтворити, vlcзаморозити і не випустити фреймбуфер, не маючи «alt-sysrq» -відключення машини для перезавантаження. Іноді це траплялося при спробі переходу на інші віртуальні консолі; іноді, коли експериментують з тим, які vlcкоманди натискання клавіш спрацювали б. Вас попередили


є також термінологія терміна емулятора, яку можна запустити на консолі framebuffer ( terminology --nowm). включена утиліта tycatможе вставляти зображення.
кіхотично

Це той, хто з людей «просвітницького» робочого столу? Я оцінив це, можливо, рік тому, і тоді він був баггі, але якщо ви можете за це поручитися, чудово!
користувач1404316

я тільки почав дивитися на це і не можу підтвердити відсутність помилок, вибачте. вона працює в основному-добре в одній системі (intel gpu), не працює в іншій (власний драйвер nvidia, неперевірений, але, ймовірно, працює під nouveau). встановити XKB_DEFAULT_{LAYOUT,VARIANT,OPTIONS}змінні env для макетів xkb (хоча, здається, AltGr не працює правильно atm).
кіхотично

-6

Жоден. Для відображення зображень вам потрібен якийсь сервер дисплеїв. Інтерфейси для зображень надають Xserver, Mir, Wayland тощо. getty призначений для імітації текстових терміналів і не має можливості відображення зображень.


2
Я не погоджуюся. Як би Tux відображався під час завантаження? commons.wikimedia.org/wiki/File:KNOPPIX_booting.png ;-)
lgeorget

Framebuffer. Без увімкнення буферизації кадрів це неможливо зробити, варто було б це згадати. Але, вони також згадували, що перебувають на реальному терміналі. Забувши, що вони не на реальному терміналі, на справжніх терміналах (vt1000) чи подібних, я впевнений, що це неможливо.
Livinglifeback

Багато справжні термінали мають можливість малювати графіку. Можливість графіки була продажною точкою у 1980-х. І gettyнічого не наслідує.
JdeBP
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.