MSTAR平臺:開機二階段的廣告是在MSrv_Advert_Player.cpp中。
圖標的顯示實現在supernova/projects/tvos/main/main.cpp中。
DFB-DirectFB是一個專門針對Linux圖形庫設計的圖形加速中間層。因爲在開機第二階段,安卓系統還沒跑起來,所以藉助於DFB來顯示圖像。
對外接口:主要是給上層應用使用的:
- IDirectFBInputDevice: 輸入設備
- IDirectFBScreen: 屏幕
- IDirectFBSurface: 繪圖表面
- IDirectFBPalette: 調色板
- IDirectFBFont: 字體
- IDirectFBImageProvider : 圖片
- IDirectFBVideoProvider: 視頻
- IDirectFBWindow : 窗口
- DirectFBEventBuffer: 事件緩衝
IDirectFBSurface *time_surface, *volume_surface;
創建字庫接口,加載字庫:
Dfb->CreateFont(dfb, “/system/fonts/Roboto-Regular.ttf”, &fontdesc, &fixedfont);
設置填充顏色:
Volume_surface->SetColor()
除了可設置RGB,還可以設置透明度。
畫矩形:
Volume_surface->FillRectangle()
創建圖像解碼接口:
Volume_ surface->CreateImageProvider()
顯示字符串:
Volume_ surface->DrawString()
把主surface的內容顯示到屏幕上:
Volume_ surface->Flip()
需要注意的是,在開始創建的時候,需要保存一下當前的狀態,存到old_volume_dlc裏邊。
在顯示完畢之後,release時需要將狀態恢復回去。
volume_layer->SetConfiguration(volume_layer, &old_volume_dlc)