Страница 1 из 1

Android Screenshot / Ambilight / Arduino

Добавлено: 08 янв 2017 13:37
gfif
Добрый день,
пишу софт под андроид для управления arduino+led лентой. Хочу сделать аналог Ambilight/Kodi+Boblight/etc

Пытаюсь сделать скрин экрана, получить цвет нужных пикселей и передать через serial на arduino. Скрины делаю с помощью screencap -p /filename
Столкнулся со следующими проблемами:
1) скрины отличаются цветами от изображения на экране, как-будто инвертированы. (Например, дефлотовый цвет MenuBar в аднроиде - синий, на скрине красный)
2) скрины делаются медленно 2+ сек. Для нормального "эмбилайта" хотелось бы выжать ~10fps. Посоветуйте решение

Прощу помочь или показать куда копать и что курить! Заранее спасибо за помощь.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 09 янв 2017 10:02
sau
gfif писал(а):Добрый день,
пишу софт под андроид для управления arduino+led лентой. Хочу сделать аналог Ambilight/Kodi+Boblight/etc

Пытаюсь сделать скрин экрана, получить цвет нужных пикселей и передать через serial на arduino. Скрины делаю с помощью screencap -p /filename
Столкнулся со следующими проблемами:
1) скрины отличаются цветами от изображения на экране, как-будто инвертированы. (Например, дефлотовый цвет MenuBar в аднроиде - синий, на скрине красный)
2) скрины делаются медленно 2+ сек. Для нормального "эмбилайта" хотелось бы выжать ~10fps. Посоветуйте решение

Прощу помочь или показать куда копать и что курить! Заранее спасибо за помощь.


Добрый день,
1. Уточните версию ПО, модель приставки.
2. Команду запускаете по ssh ?
3. Различие цветов проявляется на всех скринах во всех меню и приложениях?
4. Скрин куда сохраняете, на флешку и на внутреннюю память, может из-за этого задержка такая?

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 09 янв 2017 23:32
gfif
1. nv 501 wac. Сброка revA-nv501wac-1.0.18-b46
2. В самом Андроид приложении, но через adb shell так же

Код: Выделить всё

Runtime rt = Runtime.getRuntime();
Process ps = rt.exec("/system/bin/screencap -p " + screen);
ps.waitFor();

3.
Различие цветов проявляется на всех скринах во всех меню и приложениях?

Да. Открываю на ТВ картинку залитую синим. Делаю скриншот - красный. Такое впечатление что в screencap не RGB, а BGR. Пока решил именно таким способом - читаю цвет пикселя и меню синий с красным местами.
4. Сохраняю в RAM- чуть быстрее флешки.

Код: Выделить всё

mount -t tmpfs tmpfs /sdcard/tmpfs/screen.png

Тормоза скорее в самом получении/сжатии изображения на экране.
Вариант со скрином заведомо медленный, в идеале нужно что-то вроде:

Код: Выделить всё

int pixel = framebuffer.getPixelColor(x,y);

В интернет видел, что можно через openGL ES делать glReadPixel, но не разобрался/не заработало - тут не специалист. Возможно есть какой-нибудь интерфейс для получения цвета/пикселя/"быстрого" скриншота?

Update: если на экране ТОЛЬКО видео, без меню, прогресс бара и тп, то через screencap скриншот получается черный.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 09:46
sau
В данном случае вам действительно screencap не подойдёт т.к. её скорость не высока для такого применения. Основное назначение это запись скринов для отчёт появляющихся проблем, но проблем с перемешиванием цветов не замечалось.
Проверьте пожалуйста открытие изображения в других приложения для просмотра/редактирования, будет ли там наблюдаться что-то подобное?

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 10:05
gfif
sau писал(а):Проверьте пожалуйста открытие изображения в других приложения для просмотра/редактирования, будет ли там наблюдаться что-то подобное?


Синие изображения открываются нормально, проблема именно с изображения созданными через screencap.
Копирую так:

Код: Выделить всё

adb pull /sdcard/tmpfs/screen.png C:\Users\user\Desktop

Открываю через стандартный просмотр фото.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 10:35
sau
gfif писал(а):Синие изображения открываются нормально, проблема именно с изображения созданными через screencap.

Что-то не понял, можете приложить примеры скринов с описанием? Можно в личку.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 10:46
gfif
sau писал(а):
gfif писал(а):Синие изображения открываются нормально, проблема именно с изображения созданными через screencap.

Что-то не понял, можете приложить примеры скринов с описанием? Можно в личку.


Присоеденил скрин через screencap и фото экрана
Изображение
Изображение

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 10:55
sau
gfif писал(а):
sau писал(а):
gfif писал(а):Синие изображения открываются нормально, проблема именно с изображения созданными через screencap.

Что-то не понял, можете приложить примеры скринов с описанием? Можно в личку.


Присоеденил скрин через screencap и фото экрана
Изображение
Изображение


Просмотреть не удалось, изображения недоступны. Попробуйте ещё раз.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 11:00
gfif
sau писал(а):
gfif писал(а):
sau писал(а):Что-то не понял, можете приложить примеры скринов с описанием? Можно в личку.


Присоеденил скрин через screencap и фото экрана
Изображение
Изображение


Просмотреть не удалось, изображения недоступны. Попробуйте ещё раз.


Оригинал
Изображение

Скрин
Изображение

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 11:35
sau
Вы пишете, что сборка revA-nv501wac-1.0.18-b46, а релиз был revA-nv501wac-1.0.18-b44.
Пробовали ли на релизе и что именно в вашей сборке изменено?

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 11:50
gfif
sau писал(а):Вы пишете, что сборка revA-nv501wac-1.0.18-b46, а релиз был revA-nv501wac-1.0.18-b44.
Пробовали ли на релизе и что именно в вашей сборке изменено?


Обновление revA-nv501wac-1.0.18-b44 от провайдера еще не приходило. Прошивка от Электронного города, сам ничего не менял.

Re: Android Screenshot / Ambilight / Arduino

Добавлено: 10 янв 2017 13:22
sau
gfif писал(а):
sau писал(а):Вы пишете, что сборка revA-nv501wac-1.0.18-b46, а релиз был revA-nv501wac-1.0.18-b44.
Пробовали ли на релизе и что именно в вашей сборке изменено?


Обновление revA-nv501wac-1.0.18-b44 от провайдера еще не приходило. Прошивка от Электронного города, сам ничего не менял.


Попробовал на revA-nv501wac-1.0.18-b46. такой проблемы нет. Попробуйте сбросить настройки приставки.