реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Сплэшскрин в Линукс, реально ли вообще?, Сплэшскри работает, но отключается сильно раньше старта приложения
Polaris
сообщение Aug 22 2017, 07:37
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Подскажите, а есть ли возможность показывать при старте системы нормальный сплэшскрин (логотип)?
Проблема заключается в следующем - мне нужно показать картинку с момента старта системы до момента запуска моего приложения, которое стартует под Иксами. Я уже перепробовал кучу всего, в итоге остановился на варианте с логотипом, встроенным в ядро. Он показывается достаточно рано, спустя примерно 2 секунды, висит на экране весь процесс загрузки, но выключается сразу же при старте Иксов, возможно даже, что чуть раньше, при достижении graphical.target. Система у меня достаточно медленная, поэтому Иксы стартуют 3-4 секунды, потом запускается приложение, в итоге минимум 5-6 секунд экран черный, что выглядит реально непрофессионально.
Я знаю, что есть как минимум три возможности запуска логотипа на моей системе (iMX6+Debian или Angström):

1. Включить отображение в U-boot и пропатчить ядро для сохранения картинки, данный метод включается сразу (что некритично в целом), но выключается, думаю, в тот же момент и требует немалых усилий
2. Поддержка логотипа в ядре - то, что я использую в данный момент времени.
3. Скрипт в init.d с отрисовкой через fbi - запускается позднее, чем из ядра, проблема с Иксами не решается, этот метод я уже использовал и отказался от него.

Есть ли какая-то дополнительная возможность обойти инициализацию Иксов и сохранить картинку до момента запуска моего приложения?

Заранее спасибо!
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Aug 23 2017, 03:09
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Конечно возможно. Отдельно в буте и при старте ядра. В ядре делал.
Когда-то делал в ядре 2.6.35 на imx53, но уже не помню деталей.
Вам на какой платформе?
Вот вам где это делается. Я делал аналогично. *.ppm это картинки в таком формате должны быть.
http://elixir.free-electrons.com/linux/lat...vers/video/logo

фрагмент Makefile

obj-$(CONFIG_LOGO) += logo.o
obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
obj-$(CONFIG_LOGO_BLACKFIN_CLUT224) += logo_blackfin_clut224.o
obj-$(CONFIG_LOGO_BLACKFIN_VGA16) += logo_blackfin_vga16.o
obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
obj-$(CONFIG_LOGO_SGI_CLUT224) += logo_sgi_clut224.o
obj-$(CONFIG_LOGO_SUN_CLUT224) += logo_sun_clut224.o
obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o

obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o


В make menuconfig

вам надо разрешить CONFIG_LOGO и CONFIG_LOGO_.... соответствующий вашей картинке.
Go to the top of the page
 
+Quote Post
Polaris
сообщение Aug 23 2017, 06:52
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Цитата(Tarbal @ Aug 23 2017, 05:09) *
Конечно возможно. Отдельно в буте и при старте ядра. В ядре делал.
Когда-то делал в ядре 2.6.35 на imx53, но уже не помню деталей.
Вам на какой платформе?
Вот вам где это делается. Я делал аналогично. *.ppm это картинки в таком формате должны быть.
http://elixir.free-electrons.com/linux/lat...vers/video/logo

фрагмент Makefile

obj-$(CONFIG_LOGO) += logo.o
obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
obj-$(CONFIG_LOGO_BLACKFIN_CLUT224) += logo_blackfin_clut224.o
obj-$(CONFIG_LOGO_BLACKFIN_VGA16) += logo_blackfin_vga16.o
obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
obj-$(CONFIG_LOGO_SGI_CLUT224) += logo_sgi_clut224.o
obj-$(CONFIG_LOGO_SUN_CLUT224) += logo_sun_clut224.o
obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o

obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o


В make menuconfig

вам надо разрешить CONFIG_LOGO и CONFIG_LOGO_.... соответствующий вашей картинке.

Я все это уже сделал давно, все работает, вопрос не в этом, а в дырке между этим лого и стартом самого приложения, после завершения загрузки ядра лого исчезает, а мне нужно еще закрыть старт икс-сервера и, если реально, приложения, этого лого из ядра не делает, в этом и вопрос, что реализация данной задачи не является тривиальной. Есть, конечно, plymouth, но на моей машине он почему-то не работает.
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Aug 23 2017, 23:35
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Понятно. Это уже не сплэш скрин. Полагаю вам надо в конфигурации xorg надо искать. Здесь я мало что могу сказать.
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Sep 28 2017, 02:02
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Вот попалось по теме, но похоже у человека пока не все получилось.
https://devtalk.nvidia.com/default/topic/99...n-at-x-startup/

Добавили фрагмент
Код
    Section "Screen"
        Identifier     "Screen0"
        Device         "Device0"
        Monitor        "Monitor0"
        DefaultDepth    24
        Option         "LogoPath" "/usr/share/images/desktop-base/water.png"
        SubSection     "Display"
            Depth       24
        EndSubSection
    EndSection

в файл:
/etc/X11/xorg.conf
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 14:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01885 секунд с 7
ELECTRONIX ©2004-2016