Видео на электронной книжке. Попытка использовать е-ink reader в качестве второго монитора в linux

Данное сочинение навеяно вот этой публикацией за 2012 год, в которой изложен отличный способ избежать покупки пока единственного существующего в мире usb-монитора на жидких чернилах очень высокой стоимости. Марку, модель и цену озвучивать не буду. Если читать историю ночных экспериментов желания нет, то в конце страницы есть видео с результатом.

image


Сама идея


Мне давно было интересно, как можно попытаться использовать e-ink reader в качестве второго монитора. Чтобы ничего не разбирать, не брать в руки паяльник и не пугать соседей запахом колофонской смолы, пришлось некоторое время порыскать в Интернете в поисках возможных решений. И решение нашлось, хотя и не такое привлекательное, как подключение электронной книги напрямую. И это решение в принципе уже довольно давно известно — это связка программ, позволяющая управлять рабочим столом через брузер.

Суповой набор


1) x11vnc — сервер удаленного рабочего стола
2) apache веб-сербвер
3) tomcat — «контейнер сервлетов с открытым исходным кодом, разрабатываемый Apache Software Foundation. Реализует спецификацию сервлетов и спецификацию JavaServer Pages (JSP) и JavaServer Faces (JSF)». Источник: Википедия
4) guacamole — программа для обеспечения удалённого доступа к рабочему столу с использованием в качестве клиента обычного web-браузера. «Написан на языках Си, Java и JavaScript, и реализует прослойку, позволяющую организовать управление рабочим столом из web-браузера. Для присоединения к рабочему столу в прослойке поддерживаются штатные протоколы VNC, RDP и SSH». Источник: Opennet.
Стоит добавить: в репозитариях есть две программы guacamole-server и guacamole.

Для тех, кто не в теме:
*Все программы устанавливаются на ноутбук, нетбук и т.д.
**На саму элекронную книгу ничего устанавливать не требуется.
*** Данное решение является платформонезависимым. Linux, Windows — не имеет значения.

Как делать, как делалось, что получилось, а что не совсем


1) Установку tomcat можно осуществить с помощью пакетного менеджера вашего дистрибутива или скачать прямо с официального сайта.
Я воспользовался следующим руководством и распаковал архива в /usr/local/share, путь у меня получился такой:
/usr/local/share/apache-tomcat-7.0.82

2) Далее можно настроить файл /usr/local/share/apache-tomcat-7.0.82/conf/server.xml.
At your option! Я не стал ничего менять.

3) /usr/local/share/apache-tomcat-7.0.82/conf/tomcat-users.xml. Сюда можно только добавить пользователя. Я добавил строки, которые мне были предложены в качестве примера на странице с ошибкой авторизации, примерно так (читателю предлгается действовать, опираясь на собственный уровень понимания):

<role rolename="manager-gui"/>
 <user username="user" password="123" roles="tomcat, manager-gui, manager-scrip$
</tomcat-users>

4) Далее идем в /usr/local/share/apache-tomcat-7.0.82/webapps. Сюда нужно добавить файл guacamole.war.

Где его взять?

Ответ: здесь. И здесь же лежит инструкция по обращению с этим файлом. Кратко: его нужно скопировать в директорию /usr/local/share/apache-tomcat-7.0.82/webapps

Важно! Если файл имеет другое название, переименовать в guacamole.war
Важно! guacamole.war должен соответствовать версии guacamole-server.

Помимо сказанного выше я клонировал эту ветку:

clone git://github.com/apache/incubator-guacamole-client.git

5) В этом пункте предлагаю отредактировать файл:
nano /etc/guacamole/user-mapping.xml
На ваше усмотрение. Я просто удалил логин и пароль в первой записи:

<user-mapping>
    <!-- Per-user authentication and config information -->
    <authorize username="" password="">
        <protocol>vnc</protocol>
        <param name="hostname">localhost</param>
        <param name="port">5900</param>
        <param name="password"></param>
    </authorize>

Старт


6) Теперь можно запустить x11vnc
Я запускал так, от обычного пользователя:
x11vnc -notruecolor -forever

Последний флаг, чтобы сервер не останавливался при разрывах связи с клиентом. Порт по умолчанию 5900.

7) Запуск guacamole-server. Не знаю, как это осуществляется в других дистрибутивах, в Calculate Linux это делается так:
/etc/init.d/guacd start
Если все удачно, то получаем такой вывод:
guacd | * Starting guacd…
guacd |guacd[9345]: INFO: Guacamole proxy daemon (guacd) version 0.9.9 started

8) Запускаем tomcat:
/usr/local/share/apache-tomcat-7.0.82/bin/startup.sh
Выключается так:
/usr/local/share/apache-tomcat-7.0.82/bin/shutdown.sh

Если все удачно, то вывод имеем:

/usr/local/share/apache-tomcat-7.0.82/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/share/apache-tomcat-7.0.82
Using CATALINA_HOME:   /usr/local/share/apache-tomcat-7.0.82
Using CATALINA_TMPDIR: /usr/local/share/apache-tomcat-7.0.82/temp
Using JRE_HOME:        /etc/java-config-2/current-system-vm
Using CLASSPATH:       /usr/local/share/apache-tomcat-7.0.82/bin/bootstrap.jar:/usr/local/share/apache-tomcat-7.0.82/bin/tomcat-juli.jar
Tomcat started.

9) Набираем в браузере http://you_ip:8080/guacamole/
Если видим приглашение к вводу логина и пароля, то можно смело заходить. Но лучше со стороннего устройства, ибо есть вероятность схватить рекурсию.

10) Далее предполагается у читателя наличие электронной книги c WiFi-модулем и браузером, имеющим поддержку JavaScript, так как в guacamole используется либимый всеми Аjax, который и организует работу нашего псевдовторого дисплея. Для неспециалистов по веб-технологиям добавлю: способность Ajax автоматически с некоторым интервалом обновлять содержимое страницы выступает в роли основной технологии эмуляции второго монитора. Итак, В квартире автора нашлись две книжки: Sony PRS-T2 и PocketPro 612.
Оба устройства оказались пригоды для подключения к рабочему столу нетбука.

Результат на видео:

Что не получилось?


На PocketPro браузер периодически вполне предсказуемо падает. На Sony происходит разрыв соединения. Проблема частично решается автоматическим переподключением.

Заключение


В целом результат приемлем для чтения, просмотра чего-нибудь в браузере, набора текста (если совсем неспешно) и некоторых несложных операций на псевдоудаленной машине, но есть над чем подумать… ну и на прощание: «спасибо, что купили у нас телевизор и читаете эту инструкцию» (С) хоку из телепередачи «Городок».

Update


Время отклика при наборе текста: (нашел еще один ридер у родственников)

На всякий случай: нетбук и ридер подкючены по WiFi через маршрутизатор.

И велосипед стал трехколёсным


Чтобы было еще интересней, — при запуске x11vnc можно добавить флаг -shared,
тогда можно подключиться к компьютеру с нескольких устройств, включая смартфон.
Теперь возможно основной экран не задействовать совсем, перемещение курсора и все
действия мышью можно выполнять, поглядывая на экран смартфона.

image

Попытка поиграть в 3D игру 1994 года для Sega.


Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама
Комментарии 42
  • 0

    e-ink, вероятно?

    • 0
      Спасибо. Даже не могу объяснить свою ошибку.
      видимо, link где-то глубоко укоренился.
    • +1
      Не появились ли с 2012 года в продаже USB мониторы с приемлемой ценой? Или цимус в чернилах?
      • +1
        Искал недавно, пару неделель назад. Ничего нет пока или я не нашел.
        • 0
          Гугл «usb monitor» сходу предложил E1649FWU за 120 уе на Амазоне. Не там не чернила, они дают серьезное преимущество в контексте задачи?
          • 0
            Есть некоторый набор задач, который удобно выполнять именно под ink.
            Мониторы не на чернилах — другая тема, неважно usb или нет.
            • 0
              Смог придумать три задачи: низкое потребление при работе ноутбука от аккумулятора, работа при ярком свете Солнца, экономия глаз при чтении длинных статей с экрана. Не для меня, но возможны. Поделитесь по возможности, какие задачи вы имели в виду?
              • 0
                Чтение, книг, статей, почты, написание комментариев, составление писем. Спектр работы широкий. Почти все, что связано с текстом и неспешным выполнением задачи. Но важно помнить, что это вспомогательный монитор.
                • 0
                  То есть, практически вся основная работа с текстом — и читать, и писать. В таком случае, можно предположить, почему спрос на рынке оказался не настолько высоким, чтобы породить предложение — задержка с отображением вводимого. Одно дело — отрисовка дежурных графиков или неспешное перелистывание страниц. Другое — децисекунды между нажатием на клавиши и отображением введенного на экране плюс задержки при постоянном переключении окон. Слепая печать в хорошем темпе без мгновенного подтверждения раздражает, по опыту работы на медленных компах. Удобней будет делать на основном мониторе.
                  • 0
                    В целом правда за вами. По собственному опыту, в свое время наловчился набирать которкие письма, запросы к поисковику и еще некоторые вещи на читалке. Набирать в Word вряд ли, хотя если при наборе больше человек смотрит на клавиатуру, а не на экран, то может быть, и не критично.
                    Будут за скунду сразу целые слова появляться, а не отдельные буквы.
                  • 0

                    Все, что не сверстано специально под маленький дисплей, будет выглядеть ужасно. Комфортно будет читать художественную литературу, вот собственно и все.

                  • 0

                    Моя читалка на ярком солнце "выгорает"

                • 0
                  Как вариант но где купить не знаю.
              • 0
                USB не видел, а вот с HDMI есть:
                DASUNG Paperlike Pro (2-е поколение):
                — 13.3'' E-Ink Carta
                — 1600*1200
                — HDMI
                — встроенная ножка-подставка, плюс отдельная подставка типа мониторной
                — поддержка Windows / Mac / Linux Ubuntu; Surface / iPhone / iPad
                — от $799
                Подробнее: www.indiegogo.com/projects/e-ink-monitor-with-hdmi-paperlike-pro#
              • +1

                буханка-троллейбус.jpg ?


                Цимес электронных чернил — не потреблять энергии в статическом состоянии, анимированное изображение на таком дисплее выглядит уныло.

                • +1
                  Да. И не стоит, имхо, с читалки смотреть видео. Demo есть demo.
                  • 0
                    Напрасно так, здесь был интересен эксперимент, нежели практическое применение. Так как повторить сходу будет немного сложно.
                    • 0

                      В интернетах есть описание менее вычурного велосипеда с Pocketbook и VNC.

                      • 0
                        Ну тут знатный велосипед, да. Но результат есть
                        • 0

                          Есть и бескостыльный вариант: берём Onyx, ставим любой клиент RDP с маркета официальным способом.

                          • 0

                            По костыльности оба варианта одинаковы. Разница, откуда взять VNC — из маркета или из исходников — не принципиальна. Главное, что добавляется костыль стандартной формы, и только 1. Бескостыльный вариант — это если с одной стороны — дисплей, а с другой — VGA/HDMI.
                            А так, основное (и единственное) преимущество читалки — малое энергопотребление — не используется. Постоянное соединение с WiFi батарею высадит за час.

                            • 0
                              Я думаю самый безкостыльный вариант (для Linux-а) был-бы такой:
                              1) Берем драйвер E-Ink дисплея и компилируем его под наше ядро на PC, при этом «на выход» конфигурируя на USB(если есть) или что-нибудь близкое типа SPI.
                              2) Заворачиваем этот «выход» в физический USB.
                              3) На читалке вместо родного драйвера пишем проксю которая командочки из USB кидает напрямую в контроллер (т.к. команды идут от PC-шного драйвера, то даже никаких преобразований не надо).

                              И все. Но сложно это все.
                              • 0

                                Все проще ;)
                                На PC — драйвер типа DisplayLink (но без DisplayLink ;) ), редиректящий видео в USB.
                                На читалке — программа, преобразующая команды из USB в команды eink драйвера.
                                Тот, кто так умеет — тому это не нужно.

                      • 0

                        А у меня возник вопрос какой у электронных чернил ресурс по смене состояния. В смысле не испортит ли воспроизведение видео дисплей существенно быстрее чем штатное использование?

                        • 0
                          Вопрос хороший. Не знаю. На многих е-книгах есть достаточно сложные программы — игры с высокой скоростью вывода графики — на PocketPro есть игра «Змейка», в ней очень высокая скорость движения. Почти на всех ридерах есть программа для рисования на экране, которая также демонстрирует высокую скорость ответа. На Sony можно увеличивать масштаб иозображения двумя пальцами (как на телефоне), это тоже очень быстро просиходит.
                      • 0
                        В общем, есть некоторое поле для творчества.
                        • 0
                          Интересно, а с Виндами eBook можно использовать в качестве второго монитора? Обычно мне второй монитор не нужен, поэтому у меня два компа и два монитора по одному на каждый, и еще ТВ можно как монитор использовать, но он в другой комнате на стенке висит. Когда отлаживал игрового бота с игрой в полноэкранном режиме, подумал о втором мониторе, но поленился делать физические перестановки устройств, а вот знал бы, как с книжкой сделать — то сделал бы. В моем случае видео было не нужно, подошел бы вывод текстовых сообщений.
                          • 0
                            Интересно, а с Виндами eBook можно использовать в качестве второго монитора?

                            Так как под Windows есть vnc-сервер и apache-tomcat, то ответ — да, можно.
                            А поскольку guacamole фактически — это набор скриптов JS — то решение кроссплатформенное.

                          • 0
                            Статья отличная, спасибо. У меня пару ремарок, что мне не хватило в ней (не воспринимайте как критику, это просто ИМХО). Видео надо было на весь экран запустить, чтобы было видно как и что происходит. Не очень понятно по статье для чего какие пакеты ставим, я с этим не сталкивался. Как я понял трансляция идёт через веб.

                            Я автор той статьи из заголовка, и пробовал на соньке 505 гнать видео. Но частота обновления у неё совсем поганенькая. Раз в секунду примерно…
                            • +1
                              Все достаточно прозрачно. У наст есть аякс, который поддерживается почти всеми браузерами. Это важно для читалки. И есть на сервере x11vnc, который предоставляет удаленный доступ.
                              Клиент -читалка — отправляет запрос, его принимает веб-сервер — в данном случае apache-tomcat и условно говоря отдает фоновой программе (daemon-у) guacd, т.е. guacamole-serv — тот в свою очередь передает данные на x11vnc.
                              Сейчас нарисую схему, для большей наглядности.

                              P.S.
                              Половина этого сообщения набрана на PocketPro, потом она разрядилась.

                              • 0
                                В случае с данной схемой накладных расходов много + переполнение буфера у ридера, если он принимает много пакетов от сервера.
                                Но в конечном счете, многое зависит именно от самого устройства и тут уже имхо играет роль все разрешение экрана, проц, скорость взамодействия экрана ридера и буфера. Я не спец по этому вопросу.
                              • 0
                                Автор, статью внимательно не читал, просто видео глянул, и возможно на этих устройствах такого добиться в принципе не реально, просто хочу показать как должноможет выглядеть видео на e-ink когда все сделано правильно: www.youtube.com/watch?v=_KyJACCUXkE
                                • 0

                                  Несколько лет назад хотел сделать подобное, но методом перепрошивки читалки в специализированное устройство для показа картинки, присланной с компа. К сожалению, дальше покупки читалки тогда дело не пошло (лень стало разбираться с её устройством), а тут вот сделали, круто.

                                  • 0
                                    А почему не развернули видео на весь экран?
                                    • 0
                                      Хочу заметить, что при наличии e-ink читалки с Андроидом на борту, спектр возможных применений существенно расширяется. Я, например, давно использую такую в качестве дисплея автономного измерительного комплекса. И это, кстати, оказывается существенно дешевле, чем городить собственный e-ink огород сходного размера…
                                    • 0
                                      Вот у меня другой вопрос ко всем, кто интересуется темой: как решить проблему с мышью?
                                      Теоретически движения курсора синхронизированы, независимо от того, где происходит движение — на клиенте или сервере. Однако, на дисплее ридера движения курсора невидно. Определять позицию по нажатию правой кнопки как-то не очень удобно. Есть вариант подключить compiz и оставлять след при движении, но все это полумера.
                                    • 0
                                      И последнее. Попытка поиграть еще в одну старенькую 3D игру через сайт с DoS-боксом:

                                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.