原创 Android 圖形系統剖析

  Android 中的圖形系統採用 Client/Server 架構。Server (即SurfaceFlinger) 主要由 C++ 代碼編寫而

原创 C/C++/C#面試題精選(5)

問題(21):C#是一門託管語言,那麼是不是說明只要用C#,就能保證不會出現內存泄露和其他資源泄漏?如果不是,在哪些情況下可能會出現泄漏? 答案:C#不能保證沒有資源泄漏。比如如下幾種情況可能會造成資源泄漏:(1) 調用Nativecod

原创 stagefright框架(三)-選擇Video Decoder

  在《Stagefright (1) – Video Playback的流程》中,我們並沒有詳述Stagefright是如何根據影片檔的類型來

原创 ubuntu 創建/刪除用戶及修改密碼

  以root帳戶登錄, 創建新用戶: 運行:$ sudo adduser tete 正在添加用戶"tete"... 正在添加新組"tete" (1002)... 正在添加新用戶"tete" (1002) 到組"tete"... 創建主目

原创 Android Display System --- Surface Flinger

Android Display System --- Surface Flinger      SurfaceFlinger 是Android multimedia 的一個部分,在Android 的實現中它是一個service ,提供

原创 Android GDI之SurfaceFlinger

  Android GDI之SurfaceFlinger SurfaceFinger按英文翻譯過來就是Surface投遞者。SufaceFlinge

原创 stagefright框架(二)- 和OpenMAX的運作

 Stagefright的編解碼功能是利用OpenMAX框架,而且用的還是OpenCORE之OMX的實作,我們來看一下Stagefright和OMX

原创 Android-StageFright之數據流的封裝和AwesomePlayer流程

                                                                          

原创 stagefright框架(一)Video Playback的流程

  在Android上,預設的多媒體框架(multimedia framework)是OpenCORE。OpenCORE的優點是兼顧了跨平臺的移植性

原创 droid GDI 之SurfaceFlinger之動態結構示意圖

  SurfaceFlinger對象建立過程示意   1 SurfaceSession的建立     客戶端請求建立Surface時,首先在要與Su

原创 嵌入式程序員面試問題集錦

 預處理器(Preprocessor)   1 . 用預處理指令#define 聲明一個常數,用以表明1年中有多少秒(忽略閏年問題) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL   我

原创 Android 基本空間劃分

    Google給了我們一張系統架構圖,在這張圖上我們可以看到Android的大體框架組成。     從上圖可以看到:Android Appli

原创 智能指針和弱引用

  智能 指針 和弱引用 在android 中可以廣泛看到的template<typename T> class Sp 句柄類實際上是android 爲實現垃圾回收機制的智能指針。智能指針是c++ 中的一個概念,因爲c++ 本身不具備垃圾

原创 stagefright框架(六)-Audio Playback的流程

 到目前為止,我們都只著重在video處理的部分,對於audio卻隻字未提。這篇文章將會開始audio處理的流程。Stagefright中關於aud

原创 An overview of Stagefright player

   There is a new playback engine implemented by Google comes with Android