Ambilight через HDMI. Часть 2 – настройка HyperCon.
Всем привет!
Ленту мы уже подключили, теперь осталась калибровочка. Сегодня я расскажу:
– как откалибровать получаемую (через граббер) картинку;
– как установить Hypercon;
– как настроить Hypercon;
– как откалибровать цвет.
*Текст – картинка.
Но для начала немного вернёмся к прошлому посту.
Были и мусор, и более полезные советы. Что из этого хотелось бы отметить:
1. Это не подсветка для ПК. У ПК всё в разы проще. Как сделать? Открываете Youtube, пишите “ambilight для ПК” и всё. Готово! Изич! Вам понадобятся Arduino Nano и лента с чипом WS281 (фото ниже: три контакта, шесть ножек, по три блока на отрезок). Софт на выбор: либо AmbiBox, либо Prismatik.
2. Да, есть более простые варианты сборки, без ардуинки, на ПИ зеро и т.д. и т.п. Но мне попался такой (который описан в первом посте). Как собрать проще?
Пожалуйста: @UmnikOne уже описал сей способ в этом посте, советую к прочтению.
3. “Дешевле будет купить ТВ”. Ну.. Самый дешёвый ТВ Филипс с Амбилайт – 50к рублей, пожалуйста.
4. “Но ведь есть готовые варианты”. Когда я только начинал собирать (случилось это всё не за один вечер), проект, который только ленивый не закинул в коммент, был ещё на кикстартере. А вариант для 4к вообще находился в разработке.
Ещё здесь? Налили чаёк? Ну тогда пошла жара =D
Позже нам понадобятся: Putty, WinSC (либо Total Commander) и HyperCon.jar.
Сеть на Raspberry Pi3
Во время настройки я рекомендую использовать LAN, так как он стабильный и можно не переживать, что сетка отвалится. Настройки сети происходят во вкладке Settings (интерфейс интуитивно понятный, так что найдёте) =)
Выписываем IP-шник от RPi3, он нам ещё пригодится.
Установка HyperCon
С помощью Java запускаем HyperCon.jar.
– Во вкладке SSH выбираем ось, которую мы поставили на Малинку;
– вписываем IP;
– порт 22;
– логин и пароль (для openelec: root / openelec);
– нажимаем Connect.
После успешного коннекта, нажимаем Inst./Upd. Hyperion.
В консоли ХайперКона будет видно когда закончится установка.
Корректируем настройки и чекаем получаемое видео
В корне SD-карточки лежит config.txt туда необходимо дописать пару строк, что бы поддать жару на USB.
Запускаем Putty. Подключаемся к малинке через SSH по порту 22.
Логин и пароль (от openelec): root / openelec
Проверяем подключенные девайсы:
lsusb
ls /dev/video*
Включаем HDMI-устройство и смотрим, что к нам приходит. Для этого в путти вбиваем команду:
LD_LIBRARY_PATH=/storage/hyperion/bin /storage/hyperion/bin/hyperion-v4l2 /storage/.config/hyperion.config.json –crop-top 0 –crop-left 0 –crop-bottom 0 –crop-right 0 –size-decimator 8 –frame-decimator 2 –screenshot
Скриншот смотрим через winSCP или TC.
Если есть чёрные отступы, то вбиваем эту команду и смотрим скрин повторно:
LD_LIBRARY_PATH=/storage/hyperion/bin /storage/hyperion/bin/hyperion-v4l2 /storage/.config/hyperion.config.json –crop-top 40 –crop-left 50 –crop-bottom 0 –crop-right 30 –size-decimator 8 –frame-decimator 2 –screenshot
Это особенность дешёвый китайских грабберов. К примеру: на UTV007 отступы были, а вот на STK1160 их не было.
Если вторую команду использовать пришлось, то обратите внимание: изменились параметры
crop-top, crop-left, crop-right – их нужно будет внести в HyperCon.
Настройка HyperCon
Вкладка Hardware:
– Имя не меняем;
– Type: Adalight;
– Output: /dev/ttyUSB0;
– Baudrate: 500000;
– RGB byte order: если при тестировании у нас перепутались цвета, то выбираем подходящий для нас пункт.
Далее идёт настройка светодиодов и их полей захвата.
Первые четыре галки отмечают светодиоды в углах;
Далее количество светодиодов по горизонтали, слева и справа;
Bottom Gap – отмечает промежуток в ленте (обычно там ножка у ТВ);
Ниже отмечаем где у нас находится первые светодиод (начало ленты).
Настройка площади захватываемого поля и наложение друг на друга.
Вкладка Grabber:
Первую галку вырубаем, вторую врубаем.
Настройки остаются такими же как на скрине. Видео стандарт должен быть таким же, какой установлен на HDMI to AV конверторе.
*Если в пункте “Корректируем настройки и чекаем получаемое видео” Вам пришлось смещать видео, то вносим эти настройки в соответствующие строки Corp… .
Вкладка External:
Всё как на скрине.
Вкладка SSH:
Подключаемся к Малинке.
– В самом низу окна нажимаем Create Hyperion Configuration;
– Local Config Path – выбираем только что сохранённый файл (так надёжней);
– Send Config;
– Stop, Start.
После старта, лента должна приблизительно выдавать цвета с экрана.
Могут путаться местами красный, зелёный и синий, как это исправить я описал выше. После исправление сохраняем конфиг, заливаем его, Stop, Start и проверяем.
Калибровка цвета
Вкладка Process:
Началось самое интересно – калибровочка =D
Smoothing – плавность переливания цветов. Частоту советую оставить 30, а вот с временем можете поиграться.
Далее качаем архив с цветами. Если стенка за ТВ у вас цветная, то аккуратно закрепляем пару белых листов А4, так “честнее” будет цвет.
Сразу ставим галочку Send Continuous – это позволит обновлять настройки в реальном времени.
1. Whitelevel
– Открываем на весь экран белый фон;
– Корректирую КЗС ползунки, так что бы получился белый свет из светодиодов.
2. Gamma correction
– Далее перебираем задники с градацией серого;
– Корректируем значения, пока не получится более плавный переход света от белого к чёрному (выключенному).
3. Корректировка каждого канала отдельно
– Листаем red FF0000, green 00FF00, blue 0000FF, cyan 00FFFF, magenta FF00FF, yellow FFFF00;
– Корректируем значения красного, зелёного, синего каналов.
*Возможно понадобится чутка подкорректировать гамму
4. Дополнительные настройки
Luminance gain – яркость, чем выше показатель, тем больше белого;
Saturation gain – насыщенность цветов;
Backlight – лента будет светится, даже если экран чёрный. Чем выше показатель, тем ярче будет светить. Можно сделать его совсем небольшим, что бы в тёмных сцена не сидеть совсем в темноте.
Temperature – позволяет сделать цвета более тёплыми или холодными. По-тыкайте настройки своего монитора, что бы увидеть как это работает.
Всё что собрали аккуратно складываем в коробочку:
*Скорей всего в будущем переделаю её, сделаю более компактной
Итог (к сожалению, мобилка не передаёт всю яркость происходящего):
Спасибо за прочтение и критику. Я постарался разжевать всё, но исключено, что я что-то да пропустил.