Opcje wyświetlania zdjęć na konsoli

12

Kiedy jestem na konsoli (tty, terminal wirtualny, do którego docierasz Ctrl+ Alt+ F1-6, a nie emulator terminala), jakie opcje muszę wyświetlać obrazy, tiff, cokolwiek to nie jest tekst?

Joseph Schliesser
źródło
Masz na myśli terminal wirtualny, a nie emulator terminala? unix.stackexchange.com/questions/4126/…
Graeme
@Graeme: tak, to wszystko.
Joseph Schliesser
patrz także: Gate One
strugee

Odpowiedzi:

9

Możesz użyć biblioteki z AA-Project

wprowadź opis zdjęcia tutaj

Aplikacje:

  • xine-console [wideo]
  • xaos [fraktale / mandelbrod]
  • vlc [wideo]
  • aview [zdjęcia]
  • ... amo

źródło
7

Po pierwsze musisz upewnić się, że bufor ramki jest włączony, absolutnie nie ma możliwości przeglądania obrazów w trybie tekstowym. Po włączeniu bufora ramki możesz używać programu fbido przeglądania obrazów.

Opakowanie: fbi

Przeglądarka obrazów bufora ramek systemu Linux

Jest to przeglądarka obrazów dla urządzeń buforujących ramki systemu Linux. Ma wbudowaną obsługę wielu popularnych formatów plików graficznych. W przypadku nieznanych plików próbuje użyć konwersji z pakietu ImageMagick jako zewnętrznego konwertera. Zawiera także fbgs, PostScript i przeglądarkę plików PDF.

Graeme
źródło
7

Wiele obrazów jest kolorowych, dlatego możesz użyć przeglądarki obrazów ASCII libcaca ( cacaview) i konwertera obrazu na tekst ( img2iso).

  • Aby przeglądać obrazy, użyj przeglądarki obrazów ASCII :

    cacaview /usr/share/pixmaps/*.*
    
  • Konwertuj obrazy na kolorowe pliki tekstowe:

    img2txt -W 150 penguins_mating.png > penguins_mating.txt
    
  • Wyświetl filmy i wideo w konsoli tekstowej:

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

    W większości przypadków nie potrzebujesz tej opcji, -vo cacajeśli oglądasz wideo w środowisku tekstowym (terminal z połączeniem ssh, terminal wirtualny itp.). Domyślnie otrzymasz niezakolorowany tekst wyjściowy (tj. -vo aa), Ale kolor może być lepszy.

W przypadku Fedory i Ubuntu pakiet caca-utilsmusi zostać zainstalowany.

Przeczytaj tutaj, aby uzyskać więcej informacji.

wprowadź opis zdjęcia tutaj

erik
źródło
2

mplayerma sterownik bufora ramki (2 wersje, jeśli jedna nie działa). Posługiwać się

mplayer -vo fbdev [or fbdev2] <filename>

Do zdjęć fbii fimpracy. Cokolwiek innego ci dwaj nie poradzą, prawdopodobnie możesz przekonwertować na obrazy w locie ( imagemagickdziała jak magia), więc masz wszystko pod kontrolą.

orion
źródło
1

Możesz użyć urządzenia buforującego ramki . Mechanizm bufora ramki służy do wyświetlania Tux podczas uruchamiania.

Istnieje również libcaca używana do wyświetlania obrazów ASCII-art.

lgeorget
źródło
Czy możesz dodać więcej szczegółów? W jaki sposób można korzystać z tych narzędzi?
terdon
Zależy to bardzo od twojego sprzętu i twoich potrzeb. Powinieneś podać więcej szczegółów w swoim pytaniu i podać kontekst.
lgeorget
Nie moje pytanie. Zwracam uwagę, że odpowiadając na pytanie, powinieneś podać szczegółowe informacje, jak to zrobić. Podajesz tylko dwa linki do źródeł zewnętrznych, czego staramy się unikać. Chodzi o to, że odpowiedzi na stronach SE są samodzielne.
terdon
Oczywiście, ale nie ma tylko jednego sposobu korzystania z tych narzędzi. I w pytaniu nie ma zbyt dużego kontekstu, więc ...
lgeorget
0

ffmpeg może wyświetlać na pełnym ekranie dowolny format obrazu:

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

MetNP
źródło
0

Dzisiaj jest biblioteka o nazwie SVGAlib . Bezpośrednio obsługuje kartę graficzną ze sterownikami przestrzeni użytkownika (importowanymi głównie z X).

Nie ma sterowników do większości obecnych kart graficznych, ale

  • ma sterownik wyjściowy VESA (tzn. zasadniczo może obsłużyć wyjście ze sterownikami BIOS)
  • ma sterowniki fbdev (obsługuje /dev/fb0jako kartę graficzną, dlatego zasadniczo używa sterowników jądra).

Istnieje wiele programów używających SVGALib, na przykład mplayer (do wyjścia wideo) i odpowiadający na twoje pytanie, przeglądarka obrazów xzgv .

Chociaż będziesz musiał je skompilować ze źródła, ponieważ wszyscy programiści dystrybucji Linuksa myślą mniej więcej od dekady, że X (z ciągłymi ładnymi, niespełnionymi obietnicami, takimi jak kgi, ggi i dzisiejsza droga) są przyszłością.

peterh - Przywróć Monikę
źródło
0

Ta odpowiedź jest ograniczona do rodzimych konsol Linux z włączonym buforem ramek. Opcja ta daje pełne obrazy rozdzielczości realne i prawdziwe wideo (nie ASCII-art) bez X11lub waylandlub mir.

Począwszy od 2018 roku, debian oferuje pakiet fimzawierający przeglądarkę obrazów fimi przeglądarkę dokumentów fimgs. Dla fimgsrozdzielczość domyślna to 96x96, która prawdopodobnie okaże się niewystarczające. Uważam, że wywołanie go z opcją -r 256x256jest wystarczające. Te dwa programy mają być „zmodernizowanymi” wersjami innych programów dostępnych również w Debianie fbii fbgs. Szczególnym rozczarowaniem ze starszego programu fbgsjest to, że renderuje on powoli i renderuje cały plik pdf przed wyświetleniem nawet jednej strony, więc jeśli masz dokument wielostronicowy, będziesz długo czekać.

Istnieje kilka programów, które nie są specyficzne dla działania bufora ramki, które mają doskonałą obsługę bufora ramki. Przeglądarka w3minternetowa wyświetli obrazy po w3m-imgzainstalowaniu pakietu wsparcia . Przeglądarka fehobrazów działa w konsoli bufora klatek, podobnie jak w vlcprzypadku wideo.

Wszystko to jest bardzo dobrze i dobrze, ale aby skorzystać z którejkolwiek z tych opcji, musisz najpierw skonfigurować ustawienia.

Dobrą wiadomością jest to, że prawie wszystkie współczesne dystrybucje linuksa dostarczają jądra z dostępnym buforem ramki. To, czego się zwykle nie robi, to konfiguracja bufora ramki, który ma być rzeczywiście używany. W tym celu, jeśli używasz programu grubładującego, musisz upewnić się, że w pliku znajdują się następujące elementy /etc/default/grub(Twój konkretny numer rozdzielczości może być inny):

  GRUB_GFXMODE=1024x768
  GRUB_GFXPAYLOAD_LINUX=1024x768

Musisz upewnić się, że następujący wiersz jest skomentowany:

  #GRUB_TERMINAL=console

Następnie musisz zaktualizować GRUB- update-gruba, uruchamiając go i będziesz musiał zrestartować komputer, aby zmiany odniosły skutek.

Może być również konieczne dodanie użytkownika do videogrupy uprawnień:

  usermod -a -G video <user_name>

Niektóre programy mogą wymagać specjalnego dostępu. Zgodnie z moimi notatkami tak jest fbi, ale widzę, że w moim systemie tak nie jest fim. Domyśl. W każdym razie polecenie to:

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

Program, którego nie mogę polecić i który miał tylko problemy, to fbterm. Trzymane aprowizacji z moich schematy kolorów emacs, mc, lessi innych programów, a ja przypominam, że nie będzie grać ładnie tmux.

Ważna uwaga na temat używania vlcw konsoli bufora ramki: stwierdziłem, że czasami, w sposób, w jaki nie byłem w stanie wiarygodnie się odtworzyć, vlczawieszałem się i nie zwalniałem bufora ramki, z wyjątkiem „alt-sysrq” - ponownego uruchomienia komputera. Czasami zdarzało się to przy próbie przejścia na inną konsolę wirtualną; czasami podczas eksperymentowania z działającymi vlcpoleceniami klawiszy. Zostałeś ostrzeżony.

użytkownik1404316
źródło
istnieje także terminologia emulatora, którą można uruchomić na konsoli bufora ramki ( terminology --nowm). dołączone narzędzie tycatmoże osadzać obrazy.
donkiszotyczny
Czy to ten pochodzący z pulpitu „oświecenia”? Oceniłem to może rok temu i wtedy było to błędne, ale jeśli możesz za to ręczyć, świetnie!
użytkownik1404316,
właśnie zacząłem na to patrzeć i nie mogę potwierdzić braku błędów, przepraszam. działa głównie w porządku na jednym systemie (Intel GPU), nie działa na innym (zastrzeżony sterownik NVIDIA, niesprawdzony, ale prawdopodobnie działa pod nouveau). ustaw XKB_DEFAULT_{LAYOUT,VARIANT,OPTIONS}zmienne env dla układów xkb (choć AltGr wydaje się nie działać poprawnie w atm).
donkiszotyczny
-6

Żaden. Potrzebujesz jakiegoś serwera wyświetlania, aby wyświetlać obrazy. Xserver, mir, wayland lub podobne zapewniają interfejsy dla obrazów. getty został zaprojektowany do emulacji terminali tekstowych i nie ma możliwości wyświetlania obrazów.

Livinglifeback
źródło
2
Nie zgadzam się. Jak będzie wyświetlany Tux w czasie trwania programu? commons.wikimedia.org/wiki/File:KNOPPIX_booting.png ;-)
lgeorget
Bufor ramki. Nie można tego zrobić bez włączenia buforowania ramek, należy o tym wspomnieć. Ale wspominali również, że są na prawdziwym terminalu. Zapominając, że nie są na prawdziwym terminalu, na prawdziwym terminalu (vt1000) lub podobnym, jestem całkiem pewien, że to niemożliwe.
Livinglifeback
Wiele prawdziwych terminali ma możliwość rysowania grafiki. Możliwości graficzne były punktem sprzedaży w latach 80. I gettyniczego nie naśladuje.
JdeBP,