motofan logo
46 страниц V « < 42 43 44 45 46 >        
> 

Софт для ZN5 и прочих MotoMAGX: MGX и PEP, Разработка, портирование и обсуждение нативного софта

EXL
сообщение 26.8.2011, 12:34 Закрепленное сообщение!


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Мануал: Компиляция приложений для MotoMAGX OS, создание пакетов

Прикрепленное изображение

Для портирования и сборки приложений для нашей платформы в первую очередь нам нужны:

1. Компьютер с Linux OS. Или Windows OS с установленным Virtual BOX/VMware Player, в крайнем случае под виндой можно воспользоваться AndLinux'ом или Cygwin'ом.
2. SDK & Toolchains для MotoMagX + Исходники программ/приложений.
3. Программист/Разработчик или начинающий программист (1 шт.).

Я рассмотрю наиболее приемлемый многим начинающим разработчикам способ, с использованием популярного дистрибутива Ubuntu 11 (Linux OS) в виртуальной машине VMware Player в Windows OS. Те пользователи, у которых стоит Linux OS на компе, могут скачать SDK & Toolchains | Зеркало | Зеркало | Зеркало и сразу перескочить на пункт #4.

Итак, начнём:

1. Загрузка необходимых для разработки инструментов и файлов:

1.1. Скачиваем ISO-образ диска Ubuntu 11. Я качал себе в городской сетке, пошарьтесь в своих тоже, может найдёте. На всякий случай, ссылка: [Download | Скачать] на скачивание с официального сайта: http://www.ubuntu.com Там вы можете выбрать любую конфигурацию под свой компьютер (amd/i386) и т.д.

1.2. Скачиваем VMware Player - Скачать можно с официального сайта: [Download | Скачать] или тут: [Mirror | Зеркало]

1.3. Скачиваем SDK & Toolchains для MotoMagX. [Download | Скачать] - полная версия, включающая в себя 2 тулчейна SDL (От испанцев) + QT (От Ant-On'a) а также python, bennugd, boost и множество различных библиотек. Инструкция по установке есть внутри или ниже можно прочитать подробно.
Тем, кто хочет разрабатывать приложения на SDL, можно скачать небольшой тулчейн для сборки приложений: [Download | Скачать] [Mirror | Зеркало]

2. Мануалы по установке VMware, Ubuntu и SDK & Toolchains в картинках:*
* - картинки открывать лучше всего в новом окне, нажав колёсико мышки. После открытия воспользуйтесь масштабированием, например, в стандартном просмоторщике картинок.

2.1. Установка программы VMware для самых маленьких.
2.2. Установка Linux OS в программу VMware, на примере Ubuntu 11.
2.3. Установка дополнительных инструментов (VMware-tools) в Ubuntu 11. Необходимо для перемещения файлов между Ubuntu в виртуальной машине и виндой.

2.1.:    2.2.:    2.3.:

Прикрепленное изображение Прикрепленное изображение Прикрепленное изображение

3. Мануалы по установке, текстом.

3.1. Установка VMware-tools для Ubuntu 11.
3.1.1. Стартуем Ubuntu 11, вверху нажимаем "Virtual Machine", затем "Install VMware Tools...
3.1.2. Ждём загрузки инструментов (нужно подключение к интернету!), затем снова вверху нажимаем "Virtual Machine" -> "Install VMware Tools...
3.1.3. С открывшегося диска копируем архив в формате *.tar.gz например в /home/user (user - ваше имя при установке Ubuntu), распаковываем его.
3.1.4. Запускаем терминал и выполняем в нём следующее:
Код

cd /home/user/vmware-tools-distrib
sudo ./vmware-install.pl

После команды sudo надо ввести пароль, который мы указывали при установке Ubuntu.
3.1.5. Умный скрипт сам предложит вам вводить нужные значения (в квадратных скобках), вводите их.
3.1.6. После успешной установки инструментов, перезагрузите компьютер.
3.1.7. Данные инструменты помогут с лёгкостью переносить файлы из Windows в Linux Ubuntu, просто копируя их или перенося из окна в окно, как вы это делали в Windows. Кроме того, появится множество разрешений для экрана системы.

3.2. Общие папки между системами для обмена файлами.
3.2.1. Стартуем Ubuntu 11, вверху нажимаем "Virtual Machine", затем "Virtual Machine Settings"
3.2.2. Переходим на вкладку "Options", выбираем "Shared Folders"
3.2.3. Переключатель "Folder sharing" ставим в положение "Always enabled", нажимаем кнопку "Add".
3.2.4. На компьютере выбираем любую папку, добавляем её, жмём ОК.
3.2.5. Теперь в Ubunte, в папке /mnt/hgfs видим добавленную нами папку из Windows.

4. Установка SDK & Toolchains.

4.1. Скачиваем архив тулчейна (*.tar.gz), перемещаем его в папку /home/user (user - ник при установке Ubuntu).
4.2. Выполняем команды, новая строка - Enter, вместо user естественно пишем своё имя, после команды sudo потребуется ввести пароль, который мы указывали при установке Ubuntu.
Код

sudo mkdir /mmc
sudo chown user -R /opt
sudo chown user -R /home
sudo chown user -R /mmc
sudo ln -s -d /opt/toolchains/motomagx/arm-eabi -t /
mkdir /opt/toolchains
mkdir /home/z6
mkdir /mmc/mmca1
tar -C /opt/toolchains -xzvf /home/user/motomagx-toolchains_12_08_2011.tar.gz
cp /opt/toolchains/motomagx/setenv-z6.sh /home/z6
cp /opt/toolchains/motomagx/setenv-z6-2.sh /home/z6

4.3. Обратите внимание на имя скаченного вами архива с тулчейном! Именно его нужно вводить в восьмой строке кода, приведённого выше!
4.4. Установленный тулчейн:
Прикрепленное изображение

5. Запуск окружения, компиляция программ и helloworld'a.

5.1. Чтобы запустить окружение для компиляции под MotoMagx, достаточно выполнить в терминале следующее:
Код

cd /home/z6
. setenv-z6.sh

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

5.2. HelloWorld.
5.2.1. Создаём пустой файл с именем hello.c в папке /home/z6 (Правой клавишей по пустому месту, "Create Document" -> "Empty File")
5.2.2. Редактируем его содержимое следующим образом, сохраняем:
Код

// Hello World for Motorola Magx!

#include <stdio.h>

int main(void)
{
    printf ("Hello Moto!!!\n");
    return 0;
}

5.2.3. Компилируем:
Код

cd /home/z6
arm-linux-gnueabi-gcc hello.c -o hello

5.2.4. Полученный исполнительный файл "hello" кидаем на телефон и запускаем через телнет!
Код

Mobilinux(TM) 4.1
Welcome 2 Motorola ZN5!
[root@Symbiosis ~]
#> /mmc/mmca1/hello
Hello Moto!!!


5.3. Работа с утилитой Make* и SDL библиотекой.
* - Утилита Make позволяет компилировать достаточно сложные проекты. Подробнее тут: http://ru.wikipedia.org/wiki/Make
5.3.1. Скачиваем следующие исходники, распаковываем в папку /home/z6:
Прикрепленный файл ballgame_src.tar.gz   ( 34 килобайт ) Кол-во скачиваний: 21669

5.3.2. Запускаем терминал и окружение для компиляции, переходим в папку с проектом, выполняем команду make:
Код

cd /home/z6/ballgame_src
make

После выполнения команды будет выполнена компиляция проекта и создан mgx пакет. Для очистки проекта от объектного кода и бинарников, следует выполнить make clean. Для создание mgx пакета - команду make mgx.
5.3.3. Теперь можно кинуть пакет на карту памяти и попробовать запустить. (Для SDL приложений вам потребуется установленные SDL-библиотеки!)
5.3.4. Структура простейшего Makefile для компиляции HelloWorld'a:
Код

# MakeFile for HelloWorld
# Motorola MotoMAGX

CC = arm-linux-gnueabi-gcc  
STRIP = arm-linux-gnueabi-strip
  
CFLAGS = # Необходимые флаги
LDFLAGS = # Необходимые флаги
OPTIMIZATION = -march=armv6j -mtune=arm1136jf-s -mfpu=vfp -O2 # Оптимизация под процессор

INCLUDE = $(CFLAGS) $(OPTIMIZATION) -I/dir # Путь к нужным хэдэрам.
LIBS = $(LDFLAGS) -L/dir # Путь к нужным либам

BIN = hello # Бинарник

all:
    $(CC) -c hello.c -o hello.o $(INCLUDE)
    $(CC) -o $(BIN) hello.o $(LIBS)
    $(STRIP) $(BIN)
clean:
    rm -f ./*.o $(BIN)

Если положить данный Makefile рядом с hello.c, и выполнить make, получим исполнительный файл.
5.3.5. Замена строк, для портирования SDL проектов:
Код

CC:=gcc ---> CC:=arm-linux-gnueabi-gcc
cc=gcc ---> CC=arm-linux-gnueabi-gcc
cxx=g++ ---> CXX=arm-linux-gnueabi-g++
ld=ld ---> LD=arm-linux-gnueabi-ld
ar=ar ---> AR=arm-linux-gnueabi-ar
as=as---> AS=arm-linux-gnueabi-as
oc=oc ---> OC=arm-linux-gnueabi-objcopy
ranlib=ranlib ---> RANLIB=arm-linux-gnueabi-ranlib
strip=strip ---> STRIP=arm-linux-gnueabi-strip
В INCLUDE или CFLAGS добавляем `sdl-config --cflags`
В LIBS или LDFLAGS добавляем `sdl-config --libs` -lнеобходимая_библиотека


5.4. Работа с утилитой configure* и SDL библиотекой.
* - Скрипт configure создаёт Makefile и позволяет компилировать сложные проекты, состоящие из множества файлов. Подробнее тут: http://en.wikipedia.org/wiki/Configure_script
5.4.1. Пример работы. Скачиваем исходники, распаковываем в папку /home/z6:
Прикрепленный файл PTC-demos.tar.gz   ( 33.29 килобайт ) Кол-во скачиваний: 21785

5.4.2. Выполняем следующее:
Код

cd /home/z6/PTC-demos
./configure --host=arm-linux-gnueabi
make

После этих команд у нас появятся исполнительные файлы Fire и Tunnel. Копируем их в корень карточки телефона.
5.4.3. Запускаем через телнет следующим образом:
Код

export LD_LIBRARY_PATH=/mmc/mmca1/games/lib:$LD_LIBRARY_PATH
chmod +x /mmc/mmca1/Fire
/mmc/mmca1/Fire

5.4.4. Для установки файлов в нужную директорию используется prefix и команда make install:
Код

mkdir /home/z6/test
cd /home/z6/PTC-demos
./configure --host=arm-linux-gnueabi --prefix=/home/z6/test
make
make install

После этого нужные нам файлы будут в папке /home/z6/test.
5.4.5. Для чистки объектного кода и бинарников используется команда make clean, для удаления сконфигурированных Makefile'ов используется команда make distclean (полная очистка).

5.5. Деббагер "Segmentation fault"
5.5.1. Качаем gdb и распаковываем архив на карту памяти, в папку /mmc/mmca1/games
Исполнительные файлы должны быть собраны с префиксом '-g' и не должны быть пострипаные
5.5.2. Выполняем (gdb):
Код

ulimit -c unlimited
./<bin_app>
Segmentation fault (core dumped)
файл <core> будет создан
../bin/gdb ./<bin_app> <core>

5.5.3 Выполняем (strace):
Код

../bin/strace ./<bin_app>


5.6. Скрипт запуска для SDL приложений:
Код

#!/bin/sh
mypath=${0%/*}
LIBDIR1=/ezxlocal/download/mystuff/games/lib
LIBDIR2=/mmc/mmca1/games/lib
LIBDIR3=$mypath/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$LIBDIR1:$LIBDIR2:$LIBDIR3
export HOME=$mypath
export SDL_QT_INVERT_ROTATION=1
cd $mypath
sleep 1

exec $mypath/<bin_app>

5.6.1. Если нужен вывод лога в файл, заменяем последнюю строку в скрипте на
Код
exec $mypath/bin_app >$mypath/stdout.txt 2>$mypath/stderr.txt


5.7. HelloWorld с использованием GUI и функций телефона.
5.7.1. Скачиваем архив, распаковываем в /home/z6:
Прикрепленный файл Helloworld_GUI.tar.gz   ( 80.01 килобайт ) Кол-во скачиваний: 21974

5.7.2. Выполняем:
Код

cd /home/z6/папка с нужным проектом
make PLATFORM=EZX-ZN5

или просто make
5.7.3. Кидаем исполнительные файлы на телефон и пробуем запустить, должно получиться что-то типа этого:
Прикрепленное изображение

5.8. Собираем MgxBox.
5.8.1. Скачиваем архив, распаковываем в /home/z6:
Прикрепленный файл MgxBox.tar.gz   ( 5.23 мегабайт ) Кол-во скачиваний: 23233

5.8.2. Выполняем:
Код

cd /home/z6/MgxBox/MgxBox_GUI_ru
make PLATFORM=EZX-ZN5
cd /home/z6/MgxBox/p7zip_9.20.1
make all2
make install
cp -r /mmc/mmca1/p7zip/lib/p7zip /home/z6/MgxBox/Release/app/p7zip

5.8.3. Кидаем папку /home/z6/MgxBox/Release на телефон и пробуем запустить бинарник в папке Release/app, если всё нормально, должно получиться что-то типа этого:
Прикрепленное изображение

6. Создание пакетов вручную.

6.1. Создание MGX пакета:
6.1.1. Создаём папку, помещаем в нее необходимые файлы (дата файлы приложения, исполнительные файлы, скрипт запуска, иконку).
6.1.2. Создаём в папке файл "Имя папки".cfg, редактируем его содержимое следующим образом:
Код

Name = Test
Exec = run.sh
Icon = icon.png
Author = Ant-ON
Version = 1.0
Comment = Port for ZN5 by EXL

Где, Name - имя программы, Exec - запускаемый файл, Icon - иконка, Author - Автор программы, Version - Версия программы, Comment - Комментарий.
6.1.3. Запаковываем папку в любой удобный вам архив (RAR, TAR, GZ, 7Z, ZIP), и переименовываем в "имя программы".mgx

6.2. Создание PEP пакета:
6.2.1. Создаём папку с именем "app", помещаем в нее необходимые файлы (дата файлы приложения, исполнительные файлы, скрипт запуска).
6.2.2. Создаём рядом с папкой файл "description.ini", редактируем его содержимое следующим образом:
Код

[Actions]
Silent=0
InstallApp = 1  
AddAppToMenu = 1

[InstallApp]
Name = Jump n Blob
Exec = run.sh
InstallPath = ../../mmc/mmca1/.Programs/jump_n_blob/
AppLockable = 1
Author = http://www.2d-retroperspectives.org | Philipp. Port by -=Strelok=-, EXL (c) MotoFan.Ru 08.01.2010
Version = 0.1
Daemon = 1
BigIcon= icon.png
AniIcon= icon.png
Icon= icon.png

[AddAppToMenu]
ParentFolder= root

Где, Name - имя программы, Exec - запускаемый файл, Icon | AniIcon | BigIcon - иконка, Author - Автор программы, Version - Версия программы, InstallPath - Путь установки.
6.2.3. Создаём иконку, рядом с папкой "app" и "description.ini".
6.2.4. Запаковываем иконку, папку "app" и "description.ini" в архив формата TAR, затем сжимаем его в GZ переименовываем в "имя программы".pep

7. Полезные ссылки, документация, наши проекты.

7.1. Исходники, сайты с исходниками. Множество интересных проектов есть на code.google.com и sf.net
7.1.1. Исходники проектов, базирующихся на SDL:
libsdl.org/games
libsdl.org/demos
http://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,46
http://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,46
7.1.2. Исходники проектов, базирующихся на QT:
http://www.elsix.org/index.php?w=browse - В основном там под Sharp Zaurus, но идеи создания приложений и сорцы найти можно.

7.2. Документация, темы для прочтения:
Пробуем портировать игры и проги сами
Разработка софта под MOTOMAGX, начну небольшой HOWTO
Компиляция нативных приложений под E6/A1200, Создание окружения для компиляции
SDL библиотека
http://plg.lrn.ru/wiki/Заглавная_Страница
http://plg.lrn.ru/doc/sdl/index.html
http://doc.qt.nokia.com

7.3. Проекты:
http://code.google.com/p/open-mgx/ - исходники программ от Ant-On'a
http://code.google.com/p/sdl-magx/ - библиотека SDL HW для MotoMAgx от Ant-On'a
http://code.google.com/p/zmessanger/ - нативная аська, автор Ant-On
http://sourceforge.net/projects/qte2console/ - qte2console от DoomChisel
http://code.google.com/p/motocakerteam/ - исходники программ от испанцев MotoCakerTeam
http://code.google.com/p/zsoft/

8. Мануалы данной темы:

Если кто не может запустить ZN5Encoder в Magic box - пост #290
Нативные заставки на основе портированных мной и Neomoto демок! - пост #291
Мануал по установке Tmake в тулчейн, и правки созданного им MakeFile - пост #484
Изучение разделяемых библиотек (so) - пост #1440
Эмуляция нажатия клавиш на Motorola ZN5 - пост #1684


© EXL for MotoFan.Ru 27.08.2011
Прикрепленный файл ballgame_src.tar.gz   ( 34 килобайт ) Кол-во скачиваний: 21669
Прикрепленный файл PTC-demos.tar.gz   ( 33.29 килобайт ) Кол-во скачиваний: 21785
Прикрепленный файл Helloworld_GUI.tar.gz   ( 80.01 килобайт ) Кол-во скачиваний: 21974
Прикрепленный файл MgxBox.tar.gz   ( 5.23 мегабайт ) Кол-во скачиваний: 23233
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 27.11.2021, 23:01


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ 26.11.2021, 8:45)
* MagxScreenshot.zip ( 59.02 килобайт )

Вот время при 740 МГц:
Код
# /home/zgrab.sh
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   png 9   |   png 8   |   png 7   |   png 6   |   png 5   |   png 4   |   png 3   |   png 2   |   png 1   |   png 0   |    bmp    |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 3.70s  | 0m 1.86s  | 0m 0.50s  | 0m 0.33s  | 0m 0.20s  | 0m 0.16s  | 0m 0.15s  | 0m 0.13s  | 0m 0.12s  | 0m 0.08s  | 0m 0.04s  |
| 0m 3.67s  | 0m 1.84s  | 0m 0.49s  | 0m 0.31s  | 0m 0.18s  | 0m 0.14s  | 0m 0.15s  | 0m 0.13s  | 0m 0.12s  | 0m 0.08s  | 0m 0.05s  |
| 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.03s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 3.62s  | 0m 1.89s  | 0m 0.49s  | 0m 0.35s  | 0m 0.20s  | 0m 0.16s  | 0m 0.15s  | 0m 0.13s  | 0m 0.12s  | 0m 0.09s  | 0m 0.06s  |
| 0m 3.60s  | 0m 1.88s  | 0m 0.48s  | 0m 0.34s  | 0m 0.20s  | 0m 0.14s  | 0m 0.15s  | 0m 0.12s  | 0m 0.11s  | 0m 0.08s  | 0m 0.03s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.02s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 3.71s  | 0m 1.81s  | 0m 0.51s  | 0m 0.33s  | 0m 0.21s  | 0m 0.18s  | 0m 0.17s  | 0m 0.14s  | 0m 0.12s  | 0m 0.08s  | 0m 0.04s  |
| 0m 3.68s  | 0m 1.80s  | 0m 0.49s  | 0m 0.33s  | 0m 0.20s  | 0m 0.17s  | 0m 0.15s  | 0m 0.12s  | 0m 0.12s  | 0m 0.08s  | 0m 0.03s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 3.53s  | 0m 1.91s  | 0m 0.49s  | 0m 0.33s  | 0m 0.20s  | 0m 0.16s  | 0m 0.15s  | 0m 0.13s  | 0m 0.13s  | 0m 0.09s  | 0m 0.04s  |
| 0m 3.51s  | 0m 1.89s  | 0m 0.48s  | 0m 0.33s  | 0m 0.20s  | 0m 0.15s  | 0m 0.15s  | 0m 0.12s  | 0m 0.13s  | 0m 0.08s  | 0m 0.05s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 3.56s  | 0m 1.82s  | 0m 0.51s  | 0m 0.35s  | 0m 0.20s  | 0m 0.16s  | 0m 0.16s  | 0m 0.13s  | 0m 0.13s  | 0m 0.08s  | 0m 0.04s  |
| 0m 3.53s  | 0m 1.81s  | 0m 0.51s  | 0m 0.34s  | 0m 0.19s  | 0m 0.14s  | 0m 0.16s  | 0m 0.12s  | 0m 0.13s  | 0m 0.07s  | 0m 0.03s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   48935   |   49618   |   51391   |   51892   |   53704   |   55475   |   60188   |   63897   |   66641   |  231154   |  230454   |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+

+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|  jpg 00   |  jpg 10   |  jpg 20   |  jpg 30   |  jpg 40   |  jpg 50   |  jpg 60   |  jpg 70   |  jpg 80   |  jpg 90   |  jpg 100  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.05s  |
| 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.03s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.06s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.02s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.05s  |
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.03s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.05s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.05s  | 0m 0.06s  |
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.05s  |
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  |
| 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.05s  |
| 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  | 0m 0.04s  | 0m 0.04s  | 0m 0.04s  | 0m 0.05s  |
| 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   2497    |   4165    |   5923    |   7510    |   8790    |   9916    |   11142   |   13161   |   16178   |   23035   |   65946   |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+

и при 133 МГц:
Код
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   png 9   |   png 8   |   png 7   |   png 6   |   png 5   |   png 4   |   png 3   |   png 2   |   png 1   |   png 0   |    bmp    |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 18.78s | 0m 9.68s  | 0m 2.61s  | 0m 1.79s  | 0m 1.09s  | 0m 0.88s  | 0m 0.84s  | 0m 0.70s  | 0m 0.65s  | 0m 0.45s  | 0m 0.20s  |
| 0m 17.52s | 0m 8.94s  | 0m 2.42s  | 0m 1.64s  | 0m 0.97s  | 0m 0.79s  | 0m 0.75s  | 0m 0.59s  | 0m 0.60s  | 0m 0.35s  | 0m 0.18s  |
| 0m 0.01s  | 0m 0.02s  | 0m 0.01s  | 0m 0.04s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  | 0m 0.04s  | 0m 0.01s  | 0m 0.03s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 18.72s | 0m 10.15s | 0m 2.68s  | 0m 1.80s  | 0m 1.06s  | 0m 0.91s  | 0m 0.87s  | 0m 0.69s  | 0m 0.63s  | 0m 0.39s  | 0m 0.20s  |
| 0m 17.43s | 0m 8.98s  | 0m 2.45s  | 0m 1.64s  | 0m 0.97s  | 0m 0.79s  | 0m 0.75s  | 0m 0.61s  | 0m 0.58s  | 0m 0.35s  | 0m 0.19s  |
| 0m 0.04s  | 0m 0.02s  | 0m 0.02s  | 0m 0.03s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 18.63s | 0m 9.63s  | 0m 2.59s  | 0m 1.79s  | 0m 1.07s  | 0m 0.88s  | 0m 0.83s  | 0m 0.61s  | 0m 0.63s  | 0m 0.36s  | 0m 0.28s  |
| 0m 17.43s | 0m 8.92s  | 0m 2.40s  | 0m 1.65s  | 0m 0.98s  | 0m 0.78s  | 0m 0.74s  | 0m 0.60s  | 0m 0.58s  | 0m 0.35s  | 0m 0.17s  |
| 0m 0.01s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.01s  | 0m 0.04s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 18.88s | 0m 9.63s  | 0m 2.58s  | 0m 1.77s  | 0m 1.06s  | 0m 0.88s  | 0m 0.83s  | 0m 0.67s  | 0m 0.68s  | 0m 0.40s  | 0m 0.20s  |
| 0m 17.55s | 0m 8.98s  | 0m 2.41s  | 0m 1.66s  | 0m 0.96s  | 0m 0.78s  | 0m 0.74s  | 0m 0.62s  | 0m 0.58s  | 0m 0.32s  | 0m 0.18s  |
| 0m 0.01s  | 0m 0.00s  | 0m 0.02s  | 0m 0.02s  | 0m 0.03s  | 0m 0.03s  | 0m 0.02s  | 0m 0.01s  | 0m 0.02s  | 0m 0.05s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 18.81s | 0m 9.71s  | 0m 2.63s  | 0m 1.79s  | 0m 1.07s  | 0m 0.88s  | 0m 0.86s  | 0m 0.67s  | 0m 0.67s  | 0m 0.36s  | 0m 0.20s  |
| 0m 17.48s | 0m 9.04s  | 0m 2.45s  | 0m 1.68s  | 0m 0.96s  | 0m 0.77s  | 0m 0.75s  | 0m 0.62s  | 0m 0.58s  | 0m 0.35s  | 0m 0.18s  |
| 0m 0.00s  | 0m 0.03s  | 0m 0.00s  | 0m 0.00s  | 0m 0.03s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.02s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   48954   |   49577   |   51364   |   51888   |   53504   |   55253   |   60051   |   63829   |   66474   |  231154   |  230454   |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+

+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|  jpg 00   |  jpg 10   |  jpg 20   |  jpg 30   |  jpg 40   |  jpg 50   |  jpg 60   |  jpg 70   |  jpg 80   |  jpg 90   |  jpg 100  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.22s  | 0m 0.19s  | 0m 0.20s  | 0m 0.20s  | 0m 0.20s  | 0m 0.28s  | 0m 0.21s  | 0m 0.21s  | 0m 0.26s  | 0m 0.25s  | 0m 0.35s  |
| 0m 0.19s  | 0m 0.18s  | 0m 0.18s  | 0m 0.19s  | 0m 0.18s  | 0m 0.20s  | 0m 0.19s  | 0m 0.20s  | 0m 0.21s  | 0m 0.21s  | 0m 0.27s  |
| 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.01s  | 0m 0.03s  | 0m 0.01s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.20s  | 0m 0.26s  | 0m 0.20s  | 0m 0.28s  | 0m 0.20s  | 0m 0.20s  | 0m 0.28s  | 0m 0.21s  | 0m 0.21s  | 0m 0.23s  | 0m 0.31s  |
| 0m 0.18s  | 0m 0.19s  | 0m 0.20s  | 0m 0.21s  | 0m 0.19s  | 0m 0.19s  | 0m 0.22s  | 0m 0.20s  | 0m 0.20s  | 0m 0.21s  | 0m 0.28s  |
| 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.19s  | 0m 0.22s  | 0m 0.20s  | 0m 0.20s  | 0m 0.25s  | 0m 0.20s  | 0m 0.20s  | 0m 0.29s  | 0m 0.24s  | 0m 0.22s  | 0m 0.30s  |
| 0m 0.18s  | 0m 0.19s  | 0m 0.19s  | 0m 0.20s  | 0m 0.19s  | 0m 0.19s  | 0m 0.19s  | 0m 0.22s  | 0m 0.22s  | 0m 0.20s  | 0m 0.27s  |
| 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.02s  | 0m 0.00s  | 0m 0.00s  | 0m 0.02s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.25s  | 0m 0.19s  | 0m 0.28s  | 0m 0.20s  | 0m 0.20s  | 0m 0.25s  | 0m 0.20s  | 0m 0.21s  | 0m 0.24s  | 0m 0.28s  | 0m 0.31s  |
| 0m 0.21s  | 0m 0.18s  | 0m 0.19s  | 0m 0.19s  | 0m 0.18s  | 0m 0.19s  | 0m 0.19s  | 0m 0.20s  | 0m 0.22s  | 0m 0.23s  | 0m 0.26s  |
| 0m 0.00s  | 0m 0.01s  | 0m 0.02s  | 0m 0.01s  | 0m 0.02s  | 0m 0.02s  | 0m 0.02s  | 0m 0.01s  | 0m 0.00s  | 0m 0.01s  | 0m 0.02s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
| 0m 0.20s  | 0m 0.19s  | 0m 0.20s  | 0m 0.25s  | 0m 0.20s  | 0m 0.24s  | 0m 0.26s  | 0m 0.21s  | 0m 0.21s  | 0m 0.23s  | 0m 0.27s  |
| 0m 0.18s  | 0m 0.19s  | 0m 0.19s  | 0m 0.20s  | 0m 0.19s  | 0m 0.20s  | 0m 0.21s  | 0m 0.21s  | 0m 0.20s  | 0m 0.21s  | 0m 0.26s  |
| 0m 0.02s  | 0m 0.00s  | 0m 0.01s  | 0m 0.01s  | 0m 0.01s  | 0m 0.01s  | 0m 0.00s  | 0m 0.00s  | 0m 0.02s  | 0m 0.01s  | 0m 0.01s  |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+
|   2498    |   4168    |   5920    |   7474    |   8798    |   9923    |   11143   |   13175   |   16191   |   23211   |   65671   |
+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+-----------+

Сохраняется в /tmp, то есть в оперативку.

Добавлено позже (28.11.2021, 3:36):
Цитата(EXL @ 26.11.2021, 8:45)
* Как видно, время снятия скриншота с повышением уровня компрессии возрастает, но не особо быстро.

И всёравно bmp выигрывает по задержкам (создание+передача) при любом уровне зжатия png. smile.gif
Цитата(EXL @ Вчера, 17:25)
* Кстати, вот отличия в качестве картинки на 16-bit'ах (RGB565) и 18-bit'ах (RGB666). Лично я эту разницу немного вижу.

Та канешно видна разница между 65536 и 262144 цветами. blind.gif
Цитата(Unreal_man @ 26.11.2021, 20:01)
* Пнг скриншоты на телефоне это зло, у нас просмотрщик кривой по части открытия пнг. Лучше джипег.

Как оказалось он и з bmp ориентацыю теряет...


Добавлено позже (28.11.2021, 3:40):
EXL, уточни отличие dgrab от zgrab. clapping.gif


Добавлено позже (28.11.2021, 3:49):
Вот модельку подготовил кстати:
Прикрепленное изображение
Прикрепленный файл zgrab_test.zip   ( 931 байт ) Кол-во скачиваний: 14
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 28.11.2021, 7:03


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Цитата(VINRARUS @ Сегодня, 6:01)
* EXL, уточни отличие dgrab от zgrab.

Единственное отличие в том, что в случае dgrab захват скриншота через Qt происходит другим способом без нарушения фокуса (менюшки не закрываются и т. д.).

Цитата(VINRARUS @ Сегодня, 6:01)
* Вот модельку подготовил кстати:

Посмотри вот ещё, наковырял более качественные рендеры без мыла на клавиатуре. Может быть из них чего сможешь выбрать.

Прикреплённые файлы:
Прикрепленный файл zn5_renders.zip   ( 1.67 мегабайт ) Кол-во скачиваний: 10
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 28.11.2021, 12:34


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



EXL, fbgrab слать картинку на stdout не умеет? Шобы без копирований и повторного чтения обойтись. dribble.gif
Цитата(EXL @ Сегодня, 10:03)
* Посмотри вот ещё, наковырял более качественные рендеры без мыла на клавиатуре. Может быть из них чего сможешь выбрать.

Пасибо, то мыло из МРТ было.

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 28.11.2021, 13:06


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, Сделал возможность вывода на stdout в утилитах fbgrab, pgrab и jgrab, но ты уверен что так будет быстрее? Проверь обязательно, говорят мол pipe'ы медленные и использовать их нежелательно.

Код
./fbgrab /dev/fb/0 stdout > screenshot.bmp
./jgrab /dev/fb/0 stdout 100 > screenshot.jpeg
./pgrab /dev/fb/0 stdout 9 > screenshot.png

Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 59.66 килобайт ) Кол-во скачиваний: 14
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 28.11.2021, 16:01


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ Сегодня, 16:06)
* но ты уверен что так будет быстрее?

Да, ведь иначе оно пишет в память картинку полностью, а потом токо читает её передавая по сети.
Может я и не умею натив писать, но принцыпы роботы железа понимаю. smile.gif
Цитата(EXL @ Сегодня, 16:06)
* Проверь обязательно, говорят мол pipe'ы медленные и использовать их нежелательно.

Как и ожыдалось разница есть — около 30%!

Сообщение отредактировал VINRARUS - 28.11.2021, 16:05
Прикрепленное изображение Прикрепленное изображение
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 28.11.2021, 18:40


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, Отлично! Сделай мне пожалуйста ещё дамп /dev/fb/0 при запущенной игре которая использует SDL HW, это там где искажения были. Буду изучать что там в итоге получается. Для этого используй утилиту fbdump:

Код
./fbdump /dev/fb/0 16.raw 16
./fbdump /dev/fb/0 24.raw 24

И эти *.raw файлики скинь сюда.

Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 65.41 килобайт ) Кол-во скачиваний: 10
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 28.11.2021, 20:13


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



EXL, на
Прикрепленный файл raw.zip   ( 143.95 килобайт ) Кол-во скачиваний: 14
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 29.11.2021, 14:56


Гуру
******

Группа: Разработчики
Сообщений: 1 240
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 400



Примерчик мотороловской реализации по jpeg, может пригодится кому.
https://sourceforge.net/projects/motorola-i...%5D.gz/download
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 29.11.2021, 14:59


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, кажись разобрался. В данном случае видеодрайвер переводит дисплей в режим 16 bpp (RGB565) из нативного для ZN5 18bpp BGR666 (а точнее походу 24bpp BGRA6666). Кстати если приложение которое использует SDL HW словит сегфолт или убьётся, дисплей ведь обратно в нужный режим не вернётся, я прав? На экране будет каша из цветов и увеличенной искажённой картинки. Я помню такие приколы на ZN5.

В общем пробуй, интересно, заработает ли. Утилита та же, fbdump:

Код
./fbdump /dev/fb/0 screenshot1.bmp 16 -bmp
./fbdump /dev/fb/0 stdout 16 -bmp > screenshot2.bmp

Кстати заметь что BMP-файлик стал ровно в 1.5 раза меньше. Как раз из-за глубины цвета.

А dgrab и zgrab, которые работают через Qt, тоже снимают картинку с искажением на запущенном приложении, которое юзает SDL HW?

Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 66.76 килобайт ) Кол-во скачиваний: 14
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 29.11.2021, 18:56


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



fill.sa,
Кстати там в архиве пример есть, я попробовал его собрать, он сегфолтился (почему-то там смешаны Q-классы и Z-классы). Интересно что у них в примере помимо ванильного Qt испольузется EZX API в виде ZLineEdit и остальных. А значит этот i9 весьма похож на EZX и MotoMAGX. Немного поправил и в итоге такое получилось:

Прикрепленное изображение Прикрепленное изображение

Не совсем понимаю суть приложения. Похоже в JPEG-изображение в EXIF куда-то записывается какой-то там Audio Link, фиг знает что это такое. Может тогда в плеере показывается картинка при выборе трека или что-то типа того. Если положить какой-нибудь JPEG-файл по путям /tmp/test.jpg и /tmp/nail.jpg, оно на них реагирует.

В общем, кому интересно поковырять это, выкладываю адаптированные исходники и саму программу.

Прикреплённые файлы:
Прикрепленный файл jpeg_example_i9.tar.gz   ( 667.54 килобайт ) Кол-во скачиваний: 15
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 29.11.2021, 19:07


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ Сегодня, 17:59)
* Кстати если приложение которое использует SDL HW словит сегфолт или убьётся, дисплей ведь обратно в нужный режим не вернётся, я прав? На экране будет каша из цветов и увеличенной искажённой картинки. Я помню такие приколы на ZN5.

И я помню. not_i.gif
Цитата(EXL @ Сегодня, 17:59)
* А dgrab и zgrab, которые работают через Qt, тоже снимают картинку с искажением на запущенном приложении, которое юзает SDL HW?

Да. sad.gif
Цитата(EXL @ Сегодня, 17:59)
* В общем пробуй, интересно, заработает ли. Утилита та же, fbdump:

Почти вышло, токо кусок картинки переехал:

Добавлено позже (29.11.2021, 22:11):
Цитата(VINRARUS @ Сегодня, 22:07)
* токо кусок картинки переехал

А не, это XnView выделывается вроде.

Добавлено позже (29.11.2021, 22:17):
Gwenview и Krita нормально отображает. smile.gif
Прикрепленный файл screenshot1.bmp   ( 150.06 килобайт ) Кол-во скачиваний: 20
Прикрепленный файл screenshot2.bmp   ( 150.06 килобайт ) Кол-во скачиваний: 21
Прикрепленный файл screenshot3.bmp   ( 150.06 килобайт ) Кол-во скачиваний: 19
Прикрепленный файл screenshot4.bmp   ( 150.06 килобайт ) Кол-во скачиваний: 16
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 29.11.2021, 19:33


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Цитата(VINRARUS @ Сегодня, 2:07)
* А не, это XnView выделывается вроде.

Да, похоже что с 16-битным BMP подобные сложности откуда-то лезут. В одних программах норм открывается, в других с глюками, в третьих вообще не открывается (вроде Firefox). Видимо я как-то криво его генерирую наверное или ещё что-то. Очень лень разбираться в этом заголовке BMP, там и так не было изменение битности тривиальным, поэтому вот вариант когда из RAW сохраняется проверенный 24-битный BMP, команда снятия осталась прежней. Вот только размер файла будет как и на оригинальных скриншотах теперь.

Цитата(VINRARUS @ Сегодня, 2:07)
* Gwenview и Krita нормально отображает. smile.gif

GIMP отображает со смещением про которое ты говоришь, а Firefox и вовсе не отображает такие BMP'шки.

ps.gif Кстати, на ZN5 команда cat /proc/fb даёт какой-нибудь выхлоп? Если да, давай его сюда.

Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 66.84 килобайт ) Кол-во скачиваний: 14
Прикрепленный файл screenshot_24_bpp_from_16_bpp_raw.bmp   ( 225.05 килобайт ) Кол-во скачиваний: 21
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 29.11.2021, 19:43


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ Сегодня, 22:33)
* cat /proc/fb

Код
# cat /proc/fb
0 DISP3 BG
1 DISP3 BG


Добавлено позже (29.11.2021, 23:02):
Цитата(EXL @ Сегодня, 22:33)
* Очень лень разбираться в этом заголовке BMP, там и так не было изменение битности тривиальным, поэтому вот вариант когда из RAW сохраняется проверенный 24-битный BMP, команда снятия осталась прежней. Вот только размер файла будет как и на оригинальных скриншотах теперь.

Так нармально. smile.gif
Прикрепленный файл screenshot1.bmp   ( 225.05 килобайт ) Кол-во скачиваний: 15
Прикрепленный файл screenshot2.bmp   ( 225.05 килобайт ) Кол-во скачиваний: 14
Прикрепленный файл screenshot3.bmp   ( 225.05 килобайт ) Кол-во скачиваний: 16
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 30.11.2021, 8:27


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, Отлично. Вроде бы все кейсы снятия скриншотов на ZN5 теперь покрыты. Финальный штрих: на всякий случай сделал возможность сохранения и 16-битного BMP. Теперь у fbdump такие команды:

Код
./fbdump /dev/fb/0 screenshot.bmp 16 -bmp16
./fbdump /dev/fb/0 screenshot.bmp 16 -bmp24

Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 67.29 килобайт ) Кол-во скачиваний: 16
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 3.12.2021, 21:56


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Вроде вполне реально получается. king.gif

Прикрепленное изображение Прикрепленное изображение
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 3.12.2021, 22:52


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, thumbsup.gif
А я скоро эмулятор допилю, тоже к нему подобное удалённое управление попытаюсь сделать, правда через VNC.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 4.12.2021, 6:14


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Интересно шо
Код
pushkey "0x0017" i s

имитирует нажтие кнопки "нотка", которой в ZN5 физически нет.patsak.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Воха
сообщение 4.12.2021, 8:32


Сектант Xiaomi
*******

Группа: Контент-менеджеры
Сообщений: 1 904
Регистрация: 24.8.2007
Из: Дніпро 🇺🇦
Пользователь №: 145 492
Модель телефона: Redmi 9T ,Lenovo TB350XU
Прошивка: Android 12-13


Настроение:
Норм



Рейтинг: 445.5



На любой кнопочной пальцетыкалке так можно. Даже больше скажу, ты можешь изменить расскладку на своё усмотрение, например, в пальцетыкалках на P2k платформе, раскладка тыкалок забита в seem, и с помощью опкодов, прямо с пальцетыкалки, ты можешь вывести на физические тыкалки любые тыкалки, которых нет в этой модели, но есть в любых других pardon.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 4.12.2021, 10:27


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(Воха @ Сегодня, 11:32)
* на P2k платформе, раскладка тыкалок забита в seem

У меня L7 с повреждёнными 4 кнопками, на нём я переназначил их на второстепенные рабочие... лет 10 назад. wink.gif
Цитата(Воха @ Сегодня, 11:32)
* Даже больше скажу, ты можешь изменить расскладку на своё усмотрение

Подскажы, как это сделать на ZN5? dribble.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 4.12.2021, 10:54


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Цитата(VINRARUS @ Сегодня, 13:14)
* имитирует нажтие кнопки "нотка", которой в ZN5 физически нет.patsak.gif

То есть он реагирует на "нажатие" этой кнопки, запускает плеер и т. д? Да, некоторые кнопки имеются в драйвере но не в железе, но интересно не это, а то что прошивка на них реагирует.

Цитата(Воха @ Сегодня, 15:32)
* На любой кнопочной пальцетыкалке так можно. Даже больше скажу, ты можешь изменить расскладку на своё усмотрение, например, в пальцетыкалках на P2k платформе, раскладка тыкалок забита в seem, и с помощью опкодов, прямо с пальцетыкалки, ты можешь вывести на физические тыкалки любые тыкалки, которых нет в этой модели, но есть в любых других

Да, помню, было такое и программы специальные для переназначения были. Вот только то, как "удалённо" нажимать клавиши на клавиатуре наверное так никто и не раскопал на P2K. Хотя тот же MPT номер помнится мне набирал и как минимум на красную и зелёные трубки нажимать умел.

Цитата(VINRARUS @ Сегодня, 17:27)
* Подскажы, как это сделать на ZN5? dribble.gif

Думаю что делать подобное нужно через ядерный драйвер: drivers/char/mot_keyb.c, там есть какие-то раскладки. Сейчас подобную задачу хочется решить на ROKR E2 у Unreal_man, у которого нет джойстика. Переназначить действия джойстика, например, на цифры 2/4/6/8/5 или же подобное удалённое управление как у ZN5 организовать. Но увы не так просто это. Там почему-то нет дополнительных устройств keypadI и keypadB, только keypad0 который постоянно busy, клавиатура там немного по-другому организована. А вот на ещё более древнем E680 (и E680i) моя утилитка pushkey внезапно работает, только keypadI => keypad1 и keypadB => keypad2 переназначить пришлось. Похоже что на ROKR E2 без пересборки ядра не обойтись.

А на более поздних MotoMAGX (E8, EM30, VE66, EM35 и др.) кажется система аналогичная в P2K, там грузятся какие-то bin-файлы раскладок, которые можно поправить как SEEM'ы.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 4.12.2021, 11:34


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ Сегодня, 13:54)
* То есть он реагирует на "нажатие" этой кнопки, запускает плеер и т. д? Да, некоторые кнопки имеются в драйвере но не в железе, но интересно не это, а то что прошивка на них реагирует.

Муз. библиотека стартует, а не сам плеер.
Так само и боковая кнопка подтверждения срабатывает, которая в Z6 под качелькой, а в ZN5 отсутствует:
Код
pushkey "0x0023" i s

Цитата(EXL @ Сегодня, 13:54)
* "удалённо" нажимать клавиши на клавиатуре наверное так никто и не раскопал на P2K.

Разве? pardon.gif Не помню.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 4.12.2021, 12:18


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Цитата(VINRARUS @ Сегодня, 18:34)
* Так само и боковая кнопка подтверждения срабатывает, которая в Z6 под качелькой, а в ZN5 отсутствует:

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

Цитата(VINRARUS @ Сегодня, 18:34)
* Разве? pardon.gif Не помню.

Я тоже не помню, чтобы такое было на P2K. Вот скриншотилку медленную до жути и через модем работающую помню.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Воха
сообщение 4.12.2021, 14:17


Сектант Xiaomi
*******

Группа: Контент-менеджеры
Сообщений: 1 904
Регистрация: 24.8.2007
Из: Дніпро 🇺🇦
Пользователь №: 145 492
Модель телефона: Redmi 9T ,Lenovo TB350XU
Прошивка: Android 12-13


Настроение:
Норм



Рейтинг: 445.5



Цитата(VINRARUS @ Сегодня, 12:27)
* У меня L7 с повреждёнными 4 кнопками, на нём я переназначил их на второстепенные рабочие...

В таких случаях, как раз на Z3, на скорую руку, так сказать, выручал корелет - по комбинации 0*, кажется, все верхние кнопки слайдера дублировались на цифровую, при повторном нажатии - обратно.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 5.12.2021, 11:33


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Интересно шо если в диспетчере файлов кнопки галереи не светятся и не реагируют на нажатие
(хотя в каких то прошывках по моему шото по другому было), то через консольную эмуляцыю нажатия отрабатывают, и даже удалять и слать не картинки можна теми кнопками. dribble.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 5.12.2021, 13:14


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, Event'ы напрямую в "pipeline" драйвера вставляются поэтому им побоку все ограничения и режимы прошивки smile.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 9.12.2021, 20:50


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



EXL, а накладывать /dev/fb/0 на /dev/fb/1 сильно сложно?
А то силами css (opacity: 0.25) не красиво выходит: из за отсутствия прозрачности у картинок приходится одну делать частично видимой, а полувидимый чорный фон очень затемняет то шо под ним — иначе не видно видоискателя и инфы, а рядом 2 варианта глупо выглядит.

Сообщение отредактировал VINRARUS - 9.12.2021, 20:57
Прикрепленное изображение Прикрепленное изображение Прикрепленное изображение
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 12.12.2021, 3:41


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



Цитата(VINRARUS @ 10.12.2021, 3:50)
* EXL, а накладывать /dev/fb/0 на /dev/fb/1 сильно сложно?

Дай мне оригинальные дампы fb0 и fb1 во время работы камеры. И под какой формат изображения сделать? BMP?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 12.12.2021, 7:58


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(EXL @ Сегодня, 6:41)
* И под какой формат изображения сделать? BMP?

BMP мне кажется легче всего будет сделать, так как в ньом можа просто 00 заменить на соответствующие биты картинки камеры. А JPG не знаю просто ли обьеденить. smile.gif
Прикрепленный файл raw.zip   ( 126.42 килобайт ) Кол-во скачиваний: 27
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
EXL
сообщение 14.12.2021, 6:11


Rock The Microphone
********

Группа: Администраторы
Сообщений: 3 140
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652

Рейтинг: 4654



VINRARUS, Вот так посмотри:

Код
./ograb screenshot1.bmp
./ograb stdout > screenshot2.bmp


Прикреплённые файлы:
Прикрепленный файл MagxScreenshot.zip   ( 74.44 килобайт ) Кол-во скачиваний: 22
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 14.12.2021, 21:09


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



EXL, отличненько! И задержки почти не поменялися.
Прикрепленное изображение
Теперь можна фоткать удалённо.yesyes.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 2.1.2022, 12:59


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Вот. У кого нет ZN5 можна просто в DEMO версию потыкать, а у кого есть — тыкать в run.sh с телефона.
Прикрепленное изображение

Добавлено позже (2.1.2022, 17:33):
Ой, я тут глянул на наш busybox, а в ньом httpd глючный, вот в версии 1.1 поновее. pardon.gif

Добавлено позже (3.1.2022, 6:36):
Ой, я тут увидел шо таймаут не сбрасывался при смене формата, а накладался каждый раз. glare.gif В версии 1.2 поправил.

Добавлено позже (2.1.2022, 17:55):
Менюшка настроек вываливается если потереть логотип Motorola.
Настройки НЕ сохраняются и сбрасываются если обновить страницу.
По стандарту настроено так:
позицыя — 0°,
формат — bmp,
интервал обновления — 0.2 с,
скин — №1.




Добавлено позже (2.1.2022, 18:11):
Там можна и мышкой тыкать по кнопках, и прям с ПК клавы управлять (в логоменю есть кнопка з подказками).
Также есть эмуляцыя удержания кнопки 2с через комбинацыю с Ctrl, или вечного удержания через Shift (удержание сбрасывается через Esc или любую другую привязаную кнопку). эта механика продублирована для мышки в логоменю.

Быстро запустить камеру или быстро сфоткать можна пробелом (правда без режыма камеры вы до фотографирования ничего не увидите).
Кнопка . в обычном режыме работает как эмуляцыя нежного нажатия физической кнопки камеры, а в режыме камеры 1е нажатие — фокус, а 2е — фотографирование. Шобы сбросить фоrус можна нажать другую кнопку или Esc.
Ещо комбинацыя Ctrl. эмулирует сильное нажатие кнопки камеры, но без слабого толку мало.


Добавлено позже (2.1.2022, 18:15):
А, ну и так как Ctrl+PageUp и Ctrl+PageDaun невозможно нажать, то выключение и вызов VR фунцыи через Shift. wink.gif

Сообщение отредактировал VINRARUS - 3.1.2022, 3:42
Прикрепленный файл Web_driver_ZN5_1.0.zip   ( 469.17 килобайт ) Кол-во скачиваний: 12
Прикрепленный файл Web_driver_ZN5_1.1.zip   ( 1.06 мегабайт ) Кол-во скачиваний: 10
Прикрепленный файл Web_driver_ZN5_1.2.zip   ( 1.06 мегабайт ) Кол-во скачиваний: 11
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Unreal_man
сообщение 2.1.2022, 15:21


Гуру
******

Группа: Разработчики
Сообщений: 732
Регистрация: 16.12.2009
Из: Другого Края Земли
Пользователь №: 211 211
Модель телефона: Motorola Moto Z Play


Настроение:
:-I



Рейтинг: 607



VINRARUS,
1. Поклацал, но так и не понял как сфотать. При обновлении в браузере не видно изображения в камере. Так же не понял где меню как у тебя на скрине, как переворачивать, зажимать. А так все клавиши работают. Отличная работа.

2. Самостоятельно не обновляется. Сфотать удалось, но т.к. не обновляется, то ничего не понятно что я сфотал. Если обновить вручную, то слетает 90 градусов ориентация. Браузеры опера и хром, винда 10.

3. CamMem непонятно что делает. Просто экран в браузере становится черным. Ты б инструкцию подробную оставил к каждой функции, а то я вон видишь половину не понял, да и не знал что в лого жать надо.

4. На кнопки скринов я понажимал, а где их искать? И сделались ли они вообще?

5. Как это вообще работает? А если я хочу отключить эту утилиту, то поможет только перезагрузка?

Сообщение отредактировал Unreal_man - 2.1.2022, 15:22
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 2.1.2022, 15:34


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(Unreal_man @ Сегодня, 18:21)
* 1. Поклацал, но так и не понял как сфотать.

Проще всего — пробелом.
Цитата(Unreal_man @ Сегодня, 18:21)
* 2. Самостоятельно не обновляется. Сфотать удалось, но т.к. не обновляется, то ничего не понятно что я сфотал.

Режым Camera Mode?
Цитата(Unreal_man @ Сегодня, 18:21)
* 3. CamMem непонятно что делает.

Напряму картинка з камеры без оболочек.
Цитата(Unreal_man @ Сегодня, 18:21)
* 4. На кнопки скринов я понажимал, а где их искать? И сделались ли они вообще?

То время обновления скрина фелефона (точнее таймаут между получением скринов). smile.gif Сохранять просто через ПКМ, если нада словить динамическое событие — используй кнопку Pause. К стати, её полезно использовать для временного прекращения "стриминга" с телефона, разгружая его ЦП и сеть (ну и браузер с ОС под ним).
Цитата(Unreal_man @ Сегодня, 18:21)
* 5. Как это вообще работает?

Через httpd.
Цитата(Unreal_man @ Сегодня, 18:21)
* А если я хочу отключить эту утилиту, то поможет только перезагрузка?

Ну это самое простое решение. Позже подготовлю пакет для интеграцыи в ZiniMOD (там есть для этого простой способ).

Сообщение отредактировал VINRARUS - 2.1.2022, 15:36
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Unreal_man
сообщение 2.1.2022, 15:40


Гуру
******

Группа: Разработчики
Сообщений: 732
Регистрация: 16.12.2009
Из: Другого Края Земли
Пользователь №: 211 211
Модель телефона: Motorola Moto Z Play


Настроение:
:-I



Рейтинг: 607



Цитата(VINRARUS @ Сегодня, 18:34)
* Цитата(Unreal_man @ Сегодня, 18:21)
2. Самостоятельно не обновляется. Сфотать удалось, но т.к. не обновляется, то ничего не понятно что я сфотал.

Режым Camera Mode?

Нет. В принципе не работает автообновление. Нигде.


Цитата(VINRARUS @ Сегодня, 18:34)
* Цитата(Unreal_man @ Сегодня, 18:21)
4. На кнопки скринов я понажимал, а где их искать? И сделались ли они вообще?

То время обновления скрина фелефона (точнее таймаут между получением скринов). Сохранять просто через ПКМ, если нада словить динамическое событие — используй кнопку Pause. К стати, её полезно использовать для временного прекращения "стриминга" с телефона, разгружая его ЦП и сеть (ну и браузер с ОС под ним).

Ок. понял.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 2.1.2022, 15:49


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(Unreal_man @ Сегодня, 18:40)
* Нет. В принципе не работает автообновление. Нигде.

Ээээ, точно версия 1.1?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Unreal_man
сообщение 2.1.2022, 15:52


Гуру
******

Группа: Разработчики
Сообщений: 732
Регистрация: 16.12.2009
Из: Другого Края Земли
Пользователь №: 211 211
Модель телефона: Motorola Moto Z Play


Настроение:
:-I



Рейтинг: 607



Цитата(VINRARUS @ Сегодня, 18:49)
* Ээээ, точно версия 1.1?

1.0
всё правильно. Я глянул - новое сообщение, а у мф есть тема что он одну и ту же загрузку дублирует, вот я и ткнул неглядя. Ща перепроверю.
...
Да, отлично! Всё работает.

Сообщение отредактировал Unreal_man - 2.1.2022, 15:55
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 3.1.2022, 0:24


Гуру
******

Группа: Разработчики
Сообщений: 1 240
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 400



Цитата(VINRARUS @ Вчера, 13:59)
* Ой, я тут глянул на наш busybox, а в ньом httpd глючный, вот в версии 1.1 поновее.

Это ты про какой, про родной? Родной весьма древний, версия 1.0, поэтому чему удивляться.
Я давно тебе предлагал на новый бузи перейти, а ты чет как всегда незахотел.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 3.1.2022, 1:33


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(fill.sa @ Сегодня, 3:24)
* Это ты про какой, про родной? Родной весьма древний, версия 1.0, поэтому чему удивляться.

Ну когда старому можна просто картинку стримить, а новому подавай ещо и HTML обьортку — можна и удивиться. blink.gif
Цитата(fill.sa @ Сегодня, 3:24)
* Я давно тебе предлагал на новый бузи перейти, а ты чет как всегда незахотел.

И забить на старый софт? no2.gif Токо глупец на это пойдёт.

Не, я понимаю шо современные Linux дистрибутивы давно страдают этой ересью, по этому никогда им не заменить Windows, где обратной совместимости уделяют внимание. nono.gif

Добавлено позже (3.1.2022, 6:36):
Ой, я тут попробовал без телефона запустить — не красиво.
Вот сделал красивую демку для запуска в браузере (работает без телефона).
А ещо благодаря ей увидел шо таймаут не сбрасывался при смене формата, а накладался каждый раз. glare.gif В версии 1.2 поправил.
evil_2.gif НЕНАВИЖУ javascript!!!! evil_2.gif
Прикрепленный файл 1.2_demo.zip   ( 686.68 килобайт ) Кол-во скачиваний: 37
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 3.1.2022, 3:41


Гуру
******

Группа: Разработчики
Сообщений: 1 240
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 400



Цитата(VINRARUS @ Сегодня, 2:33)
* И забить на старый софт? Токо глупец на это пойдёт.
Не, я понимаю шо современные Linux дистрибутивы давно страдают этой ересью, по этому никогда им не заменить Windows, где обратной совместимости уделяют внимание. nono.gif

Что? где? зачем?
Это ты сейчас про что? А то как-то смешал в кучу все сразу.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 3.1.2022, 3:52


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
youtu.be/A_yQLYLiSGQ



Рейтинг: 1211



Цитата(fill.sa @ Сегодня, 6:41)
* Это ты сейчас про что? А то как-то смешал в кучу все сразу.

Про софт написаный ДО дропа обратной совместимости. huh1.gif
Или ты весь софт существующий для зины обещаеш переписать или хотя б протестить? blind.gif

Новее не значит лучше, часто в новых версиях утилит исправляют баги которые раньше использовались как фичи, иногда просто меняют ключи или результат работы без адекватных причин (хотелки автора утилиты не есть адекватной причиной). thumbdown.gif

В дистрибутивах при обновлении хоть проверку по версиях пакеты проходят, и при нарушении совместимости версий обновление невозможно. А ты с бухты-барахты махнул шашкой и решыл шо новый Busybox будет также работать чем 17 летней давности. Нет не будет, и ты это знаеш, когда заменял /bin/busubox на новый. wink.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Софт для ZN5 и прочих MotoMAGX: MGX и PEP, Разработка, портирование и обсуждение нативного софта · Motorola ZINE ZN5, ZN5 T-Mobile · Forum
 

46 страниц V « < 42 43 44 45 46 >
Ответ в темуСоздание новой темы
8 чел. читают эту тему (гостей: 8, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 14.6.2025, 5:49

Форум живёт: