2009-10-29 119 views
3

我在評估工具包(Zoom OMAP35x Torpedo Development Kit)上運行Embedded Linux。董事會有一個液晶顯示屏,我希望能夠把屏幕截圖轉換成GIF或PNG。我可以通過執行以下操作來獲取原始數據:「cp/dev/fb0 screen.raw」,但我很難將圖像轉換爲gif或png格式。拍攝嵌入式Linux Framebuffer的屏幕截圖

我玩過從ImageMagick轉換(例如:「convert -depth 8 -size 240x320 rgb:./ screen.raw -swap 0,2 -separate -combine screen.png」),但一直無法獲得一張看起來不錯的圖像。

有沒有人知道我可以嘗試的任何其他工具?還是有人有使用ImageMagick的提示?

+0

「嵌入式Linux」是一個非常具體的內核版本/配置,還是Linux上運行在Embedded上的通用名稱?相關:http://unix.stackexchange.com/questions/25063/capturing-area-of-the-screen-without-a-desktop-environment – 2015-10-29 09:19:58

回答

5

看看fbgrab,這是一個應用程序(它將幀緩衝區內容保存爲png)。

+1

我試過fbgrab,但它不支持「低端位深度」。對於我的設備,位深度是8. :(但是,我看了一下 - http://www.sfires.net/fbshot/。fbgrab基於fbshot,它支持8位深度。fbshot工作得很好。 – waffleman 2009-12-28 12:36:57

+0

鏈接不起作用 – 2016-04-29 08:48:27

0

用ImageMagick直接做它可能是不可能的/容易的。

Linux內核4.2的文檔https://github.com/torvalds/linux/blob/v4.2/Documentation/fb/api.txt#45說:

像素存儲在內存中的依賴於硬件的格式。應用程序需要 以瞭解像素存儲格式,以便按照硬件預期的格式將圖像數據寫入 幀緩衝存儲器。

格式由幀緩衝區類型和視覺描述。一些視覺效果需要附加信息,其存儲在可變屏幕信息bits_per_pixel,灰度,紅色,綠色,藍色和透射場中。

視覺效果描述瞭如何對顏色信息進行編碼和拼裝,從而創建出巨型像素 。類型描述macropixels如何存儲在內存中。支持以下類型和視覺效果。

下面列出了一些視覺效果和類型,但是這些描述不足以讓我立即瞭解確切的格式。

但它似乎可能不是ImageMagick直接理解的格式,或者至少您必須找出使用的格式來決定ImageMagick選項。