有時在開發過程中,需要把畫面資訊或是圖片給截錄出來做成報告交差.每次都透過FrameBuffer的記憶體輸出(cat /dev/fb0 > xxx.raw),再將這些資料做處理.
一來一往,花費了不少時間,也搞得目瞅都灰灰了.
在網路看到有人推gsnap這程式小又好用,原始檔只有gsnap.c,重編了一下果然是神物啊.畫面或圖片咻的一下就完成.讓摸魚時間增加了不少.
gsnap的原始檔可以在 https://github.com/wuqingwei/gsnap 下載
gsnap 需要使用到libjpeg , ligpng及 zlib 三個 liberary. github 也說明了相對清楚
X3拔拔用的版本分別為: zlib-1.2.8.tar.gz , jpegsrc.v9d.tar.gz , libpng-1.6.31.tar.xz
1. 重編zlib
./configure CC=arm-linux-gnueabihf-gcc --prefix=/opt/tools/zlib_install
make
make install
2. 重編libjpeg
./configure CC=arm-linux-gnueabihf-gcc --host=arm-linux --prefix=/opt/tools/jpeg_install --enable-shared --enable-static
make
make install
3 重編libpng
./configure --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc --prefix=/opt/tools/png_install
make
make install
4. 重編gsnap
寫個 sh檔
arm-linux-gnueabihf-gcc -g gsnap.c \
-L/opt/tools/zlib_install/lib -L/opt/tools/jpeg_install/lib -L/opt/tools/png_install/lib \
-I/opt/tools/zlib_install/include -I/opt/tools/jpeg_install/include -I/opt/tools/png_install/include \
-lpng -ljpeg -lz -lm -o gsnap
產出 gsnap. 複制至開發板上的/usr/bin下
將libz.so, libjpeg.so.9,libpng16.so 也複制到開發板的/usr/lib下
執行gsnap
完成
留言列表