[android]android命令列截圖

大搜車-自娛發表於2012-08-27
步驟一:
adb pull /dev/graphics/fb0 fb0
android的adb命令,按照Linux所有資訊檔案化的特點提取螢幕資料,即fb0檔案
步驟二:
python rgb565torgb888.py <fb0 >fb0.888
提取到的fb0檔案是16位的,考慮到第三步的轉換無法處理16位的資料檔案,所以依賴一個python檔案把它轉換為888即24位的RGB檔案
步驟三:
convert -depth 8 -size 320x480 RGB:fb0.888 fb0.png
Linux下運用convert命令進行轉換


python rgb565torgb888.py 原始碼如下
import sys  

while 1:
colour = sys.stdin.read(2)
if not colour:
break
colour = ord(colour[1]) << 8 | ord(colour[0])

r = (colour & 0xF800) >> 11
g = (colour & 0x07E0) >> 5
b = (colour & 0x001F) >> 0

r *= 8
g *= 4
b *= 8

sys.stdout.write(chr(r))
sys.stdout.write(chr(g))
sys.stdout.write(chr(b))

相關文章