LINUX.ORG.RU

Отправить картинку во фреймбуффер

 


0

1

Привет, хочу при загрузке устройства после поднятия модуля фреймбуфера выводить на экранчике картинку, если делать просто cat file.raw > /dev/fb0 то картинка отображается очень коряво, подскажите какие инструменты для работы с фреймбуффером есть и какие требования есть к файлу отправляемому во фреймбуффер? Я так понимаю что это должен быть raw/bmp?

★★★★★

это должен быть raw с глубиной цвета и разрешением соответствующим fb

exception13 ★★★★★ ()

В своё время я запускал fbi file.jpg, убирал информацию о картинке, на соседнем терминале запускал sleep 1 && cat /dev/fb0 > picture.raw и быстро переключался обратно.

Сейчас решил исследовать это дело, поднял vesafb 800x600x32, смотрю:

# echo $(( $(wc -c </dev/fb0) / 800 / 600 ))
8

8 байт на пиксель? Похоже на RGBA. Небольшой гуглинг по словам «imagemagick rgba:/dev/fb0» показывает, что это на самом деле BGRA, и даёт вот такой результат: http://rghost.ru/43047588.view

Увеличивать картинку нужно либо до ширины экрана, либо на весь экран, либо как-то заполнять остаток места на экране.

AITap ★★★★★ ()

Привет, хочу при загрузке устройства после поднятия модуля фреймбуфера выводить на экранчике картинку, если делать просто cat file.raw > /dev/fb0 то картинка отображается очень коряво...


А почему бы не написать на С простенькую программку по инициализации буфера и передачу в него данных из какого-либо файла? Там ведь всё очень просто...

velikS ()
Ответ на: комментарий от splinter

я не программист...

Cтоп! Разве я не с вами несколько дней назад обсуждал неопределённости со сжатием ядра? Вы тогда, вроде, раскопали в исходниках mkimage, что он не работает с lzo... Может я что путаю.
А по теме: я лет 8 назад писал простую прогу, которая принимает как аргумент имя бмп файла, инициализирует буффер и выводит картинку на него. Было довольно просто. К сожалению, исходников у меня не осталось. А вот пару лет назад пришлось выводить на дисплей текстовое сообщение об ошибке из инит-процесса, если невозможно запустить программу на Qt. Вот тут я инициализацию буфера, шрифты и функции вывода текста тупо слизал с tslib. У tslib есть фишка вывода текста, прорисовки крестиков для калибрации тачскрина. Они эту функцию реализовали через фреймбуфер. К сожалению, вывода графики у них нет.

velikS ()
Ответ на: комментарий от velikS

Да со мной, но я больше люблю рассматривать код, чем его создавать :-)

splinter ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.