28 декабря 2013

[Конкурс] Android TV Stick: решаем возникающие проблемы

Наверняка, многие из вас слышали, читали, или же имеют на руках такие устройства на Android, которые именуют как приставка (или TV Stick), а выглядят они почти как стандартная флешка, только размером чуть больше. В обзорах часто рассказывают про стандартные манипуляции с перечислением технических характеристик, достоинствах/недостатках. Я же хочу рассказать о сценариях использования, о решении некоторых проблем, которые могут возникать.

UG007

 

Раз уж Вы сюда зашли, то наверняка являетесь подготовленным пользователем, сумели получить рут-права и знаете для чего Вам это устройство нужно. Ниже не будет развёрнутых разъяснений что такое и с чем едят — конкретно стараться писать буду только по делу.

Методы управления

Очень часто в обзорах ограничиваются подсоединением проводной мышки или клавиатуры, показывают как это всё работает. Это замечательно, но в домашних условиях использование проводной мышки или клавиатуры, находясь вдали от телевизора, выглядит надуманным. Да, есть возможность использования беспроводной (тех, что идут со специальным приёмником, а не Bluetooth) мышки и клавиатуры, но нужно помнить, что при использовании Wi-Fi может возникнуть интерференция (физики, поправьте меня) и, как следствие, плохой сигнал интернета, либо курсор на экране будет дёргаться. Зачастую, смена канала Wi-Fi (в настройках роутера) или смена канала на беспроводном устройстве (есть специальная кнопка, как правило, на мышке снизу) проблему не решают. Решение проблемы — вынести приёмник на расстояние от нашей Android приставки. Для этого, как нельзя лучше подойдёт USB Hub с дополнительным питанием, что позволит нам решить сразу несколько вопросов: нехватка USB портов, нехватка питания, которая может возникать при подключении энергоёмких устройств по типу жёстких дисков, а так же исключает возможность возникновения интерференции.

Итак, если проблема с сигналом решена, то она не исключает ряд других проблем, которые наверняка возникнут, если мы хотим комфортно пользоваться нашей медиа приставкой на Android. Мышку мы починили, но согласитесь, что лёжа на диване водить ей не очень удобно, даже если мышка предназначена для любых поверхностей, и меха в том числе. Для этого существуют специальные аэромыши, которые работают от встроенного в них гироскопа. Есть даже такие, в которые встроены клавиатуры. Пересмотрев множество вариантов, я нашёл логичное и наиболее подходящее в домашних условиях решение — iPazzPort KP-810-16.

ipazzport

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

Совсем никому не нравится, что изначально при подключении любой клавиатуры к Android устройству мы сталкиваемся с рядом неприятностей: вводятся только латинские буквы и символы, наэкранная клавиатура никуда не исчезает. Эти недуги в той или иной степени можно решить методом установки того или иного дополнительного ПО, которое иногда может давать сбои, или же работать так, как нам не очень хотелось бы. Ниже хочу представить вам совершенно радикальный метод без установки дополнительного софта, позволяющий настроить клавиатуру именно так, как нам хочется, а не так, в каком виде нам предоставляет Google или кто-либо ещё.

Итак, сперва установим на нашу Android приставку программу Root Explorer (находим самостоятельно на Google Play Market). Найдем два файла, не забываем предварительно их скопировать в безопасное место и все корректировки проводить уже оттуда.

  • Generic.kl по адресу /system/usr/keylayout
  • Generic.kcm по адресу /system/usr/keychars

Эти файлы мы взяли для образца, которые в последствии и отредактируем встроенным в программу Root Explorer редактором текстовых файлов. Первый файл считывает кейкод (keycode) нажатой клавиши, а второй файл выводит действие для нажатой клавиши в сочетании с другими клавишами, если они нажаты одновременно. Например, если мы просто нажмём клавишу «F», то она будет обработана и на экране будет выведено «f». Если клавиша «F» будет нажата совместно с клавишей «Shift» или «Caps Lock», то на экране мы увидим «F». Вот на этом моменте и открывается вся сущность работы клавиатуры с Android устройствами. Отредактируем этот файл «под себя» и получим идеальную клавиатуру. Итак, берём полноразмерную клавиатуру от ПК для удобства, подсоединяем её к нашему устройству, открываем встроенным редактором текстов файл Generic.kcm и начинаем творить чудеса. Важно помнить, что все строчки, начинающиеся с символа «#» являются комментариями. Все русские символы система понимает, но только в шестнадцатиричном коде. Таблицу Unicode легко найти в интернете и подсмотреть там какому коду соответствует тот или иной символ, главное не забывать ставить перед кодом комбинацию «\u». Теперь осталось решить, как реализовать смену раскладки клавиатуры. Для себя я решил это очень просто: клавишей «Caps Lock». Понимаю, что воспринять это тяжеловато, поэтому покажу пример на букве «S»:


key S {
label:                              ‘S’
base:                               ‘s’
shift:                                ‘S’
alt:                                ‘\u00df’
capslock:                        ‘\u044B’
shift+capslock:              ‘\u042B’
}

То есть, при просто нажатии на букву «S» будет выводится «s». При нажатии на клавишу «S» и клавишу «Shift» будет выводится «S». При активном «Caps Lock» будет выводится «ы». При активном «Caps Lock» и нажатой клавише «Shift» на экран будет выводиться «Ы». Для примера, вот так будет реализована русская буква «Ю»:


key PERIOD {
label: ‘.’
base: ‘.’
shift: ‘>’
capslock: ‘\u044E’
shift+capslock: ‘\u042E’
}

Вот так будет реализована русская буква «Х»:


key LEFT_BRACKET {
label: ‘[‘
base: ‘[‘
shift: ‘{‘
capslock: ‘\u0445’
shift+capslock: ‘\u0425’
}

Также вы можете добавить свои уникальные комбинации и сочетания клавиш для вашей клавиатуры. В этом вам могут помочь стандартные клавиши: ctrl, alt, meta (клавиша Windows), capslock. При переназначении клавиши «2» на русский лад имеет смысл запрограммировать её вот так:


key 2 {
label: ‘2’
base: ‘2’
shift: ‘@’
alt: ‘\u00B2’
ctrl: ‘\u2161’
lshift+capslock: ‘\u00AB’
rshift+capslock: ‘\u00BB’
}

Левый Shift кавычки открывает, а правый Shift кавычки закрывает. Правые и левые варианты клавиш возможны и для ctrl, alt, meta, для этого нужно спереди добавлять «r» или «l» соответственно.
Команда fallback может быть назначена для стандартных команд Android. Подсмотрев в редактируемом файле можно выявить существующие команды: SEARCH (кнопка поиска), HOME (домой), MENU (меню), BACK (назад), APP_SWITCH (список недавних приложений), MEDIA_PLAY (воспроизвести) и др. комбинации.
Вот теперь, после того как мы всё отредактировали, нужно запихнуть обратно измененные файлы в те папки, откуда мы их брали. Но не торопимся этого делать, дабы не сломать чего-нибудь и иметь возможность всегда откатиться назад. Все устройства имеют свой VID (Vendor ID) и PID (Product ID) коды (код производителя и код продукта соответственно). Поэтому переименуем наши файлы в Vendor_XXXX_Product_YYYY.kl и Vendor_XXXX_Product_YYYY.kcm, где XXXX и YYYY это наши VID и PID коды соответственно. Подсмотреть их можно будет подключив наше устройство к компьютеру на Windows. Для этого в диспетчере устройств нужно найти нашу клавиатуру, выбрать сведения и в выпадающем списке выбрать «ИД устройства».

PID

Вот тут можно и прочитать, что для рассматриваемой нами клавиатуры код VID: 062A и код PID: 4101 . Итак, переименовали файлы, теперь их раскидываем по соответствующим папкам обратно: /system/usr/keylayout и /system/usr/keychars,  выставляем разрешения у файлов точно такие же, как у соседних. Отключаем и подключаем наше устройство к Android приставке и наслаждаемся! Русский язык теперь поддерживается на уровне системы!

Теперь вернёмся к тому, как запрограммировать клавиши для управления телевизором: для этого ставим друг напротив друга устройства:

face_face

Зажимаем клавишу Set, потом нажимаем клавишу, которую хотим запрограммировать, а после нажимаем на «родном» пульте от телевизора нужную нам клавишу. Если всё выполнено верно, то диод на пульте быстро моргнёт три раза. Далее возможно перевести программируемый пульт в режим AV (оранжевый светодиод) и повторить описанные выше действия и назначить другую команду для режима AV.

Игры

Настоятельно рекомендую для игр использовать джойстик от Sony PlayStation 3 DualShock Sixaxis. О детальной настройке джойстика можно прочитать в обзоре на этом сайте:

https://android.mobile-review.com/market/16319/

Добавлю лишь то, что с момента написания статьи программа существенно изменилась: появился русский язык, а также появились профили для приложений, которые активируются при запуске той или иной игры/эмулятора. Теперь не нужно менять профили для игр с тач управлением вручную, программа всё сделает за Вас.

Да, теперь выставляем метод ввода «Sixaxis Controller» на постоянной основе. Это нужно сделать для того, чтобы программа функционировала нормально всегда, и чтобы больше никогда не возвращаться к этому, а также для того, чтобы убрать ненавистную наэкранную клавиатуру при наборе текста, ибо мы её уже запрограммировали и она распознается правильно на системном уровне. Ещё один момент почему я рекомендую использовать именно этот джойстик и именно это клавиатуру-аэромышь: эти два устройства имеют разъём Mini USB. Джойстик может подзаряжаться только от какого-либо устройства, от сети он не заряжается, не знаю почему. Так что, советую поискать подобный сворачивающийся кабель и подвесить его на хаб на постоянной основе: развернул, когда необходимо подзарядить клавиатуру или джойстик и свернул провод когда он не нужен, чтобы «глаза не мозолил»:

usb_mini_usb

Интернет

Что бы ни писали производители данных ТВ приставок, Wi-Fi работает из рук вон плохо, либо требует каких-то «костылей». То скорость мала, то возникают проблемы, описанные в начале статьи, то перегрев устройства. И, если стабильность и скорость сигнала можно каким-то образом победить (поставить роутер в метре от устройства, прикрутить внешнюю антенну к нашей приставке), то возможный перегрев при просмотре тяжеловесных HD фильмов онлайн избежать вряд ли удастся. Для всего этого, чтобы побороть недуги, существует радикальный метод: провести Ethernet. Думаю, не нужно объяснять в чём преимущество сигнала по кабелю над сигналом по Wi-Fi. Чтобы это реализовать, существуют вот такие специальные сетевые карты с выходом на USB:

usb_ethernet

Нужно обратить внимание, что универсального средства подбора таких устройств нет. Нужно просто прийти в ближайший розничный магазин компьютерной техники и перепробовать все. Выбрать нужно наиболее подходящий по скорости и цене. Потому как много подводных камней: то вообще не заработает (отсутствуют драйвера), то скорость будет на уровне 6,5 Мегабит, нужно просто пробовать, а при неудаче сдавать устройства обратно, благо законы России позволяют беспрепятственно менять бытовую технику в течение двух недель с момента покупки. Стоит обращать внимание, чтобы в описании девайса было High Speed, а не Full Speed — это сузит круг поиска подходящей сетевой карты. И да, не забываем в настройках отключить Wi-Fi и активировать Ethernet.

shot_000034

Если всё сделано правильно, то скорость интернета заметно поправиться, что можно проверить программой Speed Test, а при наличии прямых рук провод можно легко спрятать под плинтус и так вывести до самого роутера.

Мультимедиа

Естественно, у нас приставка, а стало быть её прямое предназначение — выполнять функцию медиа комбайна. К сожалению, производители устройств снова не позаботились о нашем с вами приятном времяпрепровождении, поэтому всё приходится делать самому. Начнём с радио. Самая лучшая на мой взгляд программа — TuneIn Radio Pro. Позволяет находить радиостанции по жанрам, показывает радиоэфир, подгружает обложки известных песен, позволяет вести запись. Возможно установить при запуске программы воспроизведение нужной радиостанции, возможно выбрать качество потока. В последних версиях так же появилась ссылка на Google Music, если вы вдруг захотели приобрести понравившуюся вам композицию. Да что там рассказывать, лучше сами попробуйте и оцените!

shot_000035

shot_000037

Теперь поговорим о телевидении. Естественно, что раз уж это ТВ приставка, то без телевидения тут никак не обойтись. Существует специализированная программа IPTV на Google Play Market. Существуют как платная, так и бесплатная версии. Основное отличие в них — возможность повторного автоматического переподключения к каналу при разрыве связи в платной версии. Проигрывается очень хорошо как обычные, так и HD телеканалы. В настройках так же можно выбирать какой плеер будет использован по умолчанию из списка, либо можно указать «выбирается системой», тогда в этом случае в каждый раз при запуске программа будет спрашивать каким плеером открыть тот или иной канал.

shot_000026

Говоря о телевидении тут опять же встаёт вопрос о качестве и стабильности сигнала. И снова предпочтение отдается проводному соединению, особенно если это касается HD-телеканалов. Так же преимущество IPTV над спутниковым телевидением в нашем случае очевидно: малый размер устройства («свисток» легко прячется за телевизором), никаких тарелок, один пульт управления. А самое главное — это возможность смотреть разные телеканалы одновременно без дополнительной платы. Единственное ограничение, которое может возникнуть, так это ширина канала, которую предоставляет Вам ваш провайдер. Как правило, это 100 мегабит теоретически. Ну, тут я немного лукавлю. Ещё зависит от Вашего роутера, справится ли он с такой нагрузкой. На практике выяснилось, что просмотр одновременно четырёх разных телеканалов SD качества дешёвый роутер выдержал. Если говорить о большем числе потоков, то такой сценарий я вижу очень маловероятным. Возвращаясь к нашей программе, то тут мы можем видеть два стандартных типа отображения: сетка или список. В первом случае отображаются только пиктограммы телеканалов, а во втором под названием канала отображается ещё и информация о том, что сейчас идёт и сколько примерно передачи уже прошло, синяя полоска говорит об этом:

shot_000023

shot_000024

Чтобы посмотреть телепрограмму в случае со списком нужно нажать на стрелочку справа, а случае с сеткой нужно осуществить долгое нажатие на выбранный телеканал и выбрать соответствующий пункт. Если телевидение будет основной составляющей использования данного устройства, то есть возможность выбрать автоматического открытия программы IPTV после загрузки устройства, такая настройка присутствует.

Теперь хочу рассказать о ещё одном моменте. О просмотре видео с локальных серверов. Наверняка, многие из интернет-провайдеров имеют свои локальные сервера, где хранится большое количество медиа контента. И, если с компьютера на базе Windows потреблять контент довольно просто, то о том, как это сделать на Android устройстве там не пишут. Часто предлагают для Windows устройство нажать «Пуск → Выполнить» и вставить туда предлагаемый адрес, после чего откроется сетевая папка и уже оттуда можно что-то просматривать. В лучшем случае при заходе с устройств Android на такой подобный локальный сайт нам будет предложено скачать файл. Естественно, такой вариант нас не устраивает. Это нужно и место свободное всегда иметь на устройстве, да и времени займёт прилично «пока качается», если речь идёт о HD видео. А ведь нам с вами ждать не хочется совсем, хочется сразу смотреть, и такой выход есть! Да, сразу хочу оговорится: законность просмотра и нахождения содержащегося контента на локальных ресурсах оставим за рамками данного обзора, и я не призываю вас заниматься тем, что может противоречить российским законам. Уверен, что наверняка там может находится вполне легальный контент, на который не распространяется авторское право, либо срок действия его уже давно истёк. Именно о таком контенте и пойдёт дальше речь. Итак, рассмотрим случай на примере моего провайдера. Допустим, я хочу посмотреть новые серии сериала South Park. При попытке посмотреть онлайн мне будет предложено ввести ссылку \\10.0.11.20\video\_Южный парк (South Park)\. Разумеется, при попытке вставить нечто подобное в строку адреса браузера Android ничего не выйдет. Но, не отчаиваемся. Для этого нам понадобится файловый менеджер Total Commander, а так же LAN plugin к нему. Всё это бесплатно можно найти на Google Play Market. После установки программ заходим в Total Commander, выбираем «LAN (общий доступ Windows)».

shot_000027

Кликаем на зелёный плюсик <Новый сервер>. Нам будет предложено ввести имя сервера, вводим любое:

shot_000029

Теперь в строке имя сервера вводим 10.0.11.20\video\_Южный парк (South Park)\. Обратите внимание, что два обратных слеша тут вводить не нужно! Снимаем галочку с «Защищать Мастером паролей» и нажимаем OK:

shot_000031

И вуаля! Мы попадаем в нужную нам папку! Теперь можно смотреть все файлы так, как будто они у Вас находятся на каком-нибудь съёмном носителе:

shot_000033

Теперь пара слов о выборе видеоплеера. Тут каждый волен выбирать сам то, что ему больше по душе. Но лично я рекомендовал бы Вам использовать Archos Video Player. Всё дело в том, что подавляющее большинство приставок на Android изготовлены на чипах Rockchip. Это либо RK3066, либо RK3188. Первый их них менее мощный. Методом многих проб и ошибок я для себя выяснил, что при просмотре FullHD видео без заиканий и зависаний справился только плеер от Archos. У него полная поддержка аппаратного декодирования видео чипов от компании Rockchip. И там, где MX Player не справлялся, этот вёл себя вполне достойно. Особенно это касается просмотра HD телеканалов. Возможно, улучшенная версия RK3188 благодаря дополнительному гигабайту памяти и двум ядрам ведёт себя более достойно, но я свой выбор сделал. Если Вам не понравится, то как минимум попробовать стоит.

Выводы

Из всего вышеизложенного может сложится впечатление, что то, что нам предлагают купить китайские производители — сырой продукт. В какой-то степени это так, слишком много предстоит «допиливать самому», тратя на это время и средства. Но я старался охватить проблемы и дать ответы на возникающие вопросы, специально не рассказывая о том как работает стандартный браузер или приложение YouTube. Не рассказал про работу Skype. Но, честно признаюсь, тесно этот вопрос не изучал. Из чтения форумов пришёл к выводу, что работает программа вполне себе неплохо, но, как и в случае с сетевой картой, камеру придётся подбирать «методом тыка», ибо не всякая заработает, но шанс найти рабочую весьма велик. Как правило, потребители таких устройств понимают для чего они это покупают, это своего рода хобби что ли. И, если всё делать правильно, как описано выше, то можно создать вполне себе работоспособную медиа станцию из обычного телевизора. Преимущества над тем, что нам предлагают производители телевизоров (Smart TV) или поставщики цифровых (спутниковое телевидение, IPTV приставки от интернет-провайдера) услуг вполне очевидны:

  • возможность хоть ежегодно недорого обновлять «железную составляющую» телевизора;
  • полноценный Android планшет с широчайшими возможностями;
  • один пульт;
  • габариты.

Что ж, раз уж вы всё же решились на покупку подобного устройства, то, надеюсь, эта статья поможет вам избежать множества проблем и лишних трат времени и средств, а в остальном мы получаем шикарный телевизор под управлением Android.

Читайте также

7 комментариев на «“[Конкурс] Android TV Stick: решаем возникающие проблемы”»

  1. j-tonnz:

    Спасибо за статью, очень познавательно!) Сам хочу приобрести что-нибудь подобное, интересно покопаться.

  2. Alexandr Noskov:

    В статье подняты конкретные проблемы и решение их. Это будет очень полезно для тех, кто ещё только задумывается о покупке такого девайса.

  3. Tolya:

    отличная статья! С наступающим!

  4. Rustam Pron:

    Довольно интересно и содержательно. Спасибо.

  5. Ign:

    Только для просмотра медиа по сети лучше использовать dlna, а не самба. И «тупить» меньше будет при просмотре фильмов и быстрее те же фотки листать…

  6. юрий:

    Скажите пожалуйста а можно ли использовать аэромышь iPazzPort KP-810-16.для смарт телевизора,если можно то как.Спасибо.