原创 socket編程原理
socket編程原理 1、問題的引入 1) 普通的I/O操作過程: UNIX系統的I/O命令集,是從Maltics和早期系統中的命令演變出來的,其模式爲打開一讀/寫一關閉(open-write-read-close)。在一
原创 Android Framebuff 分析
本文轉載自http://blog.csdn.net/chychc/article/details/7315786,在這個階段解答了關於Surface的一些困惑,是個挺不錯的文章 Linux Framebuffer用於實現對不同框架顯示
原创 Android UI框架深度解析
UI界面,對於每個應用而言,是它與用戶進行交互的門臉。好的門臉,不只是是要亮麗可人,最好還能秀色可餐過目不忘,甚至還應該有涵養有氣質,彬彬有理溫柔耐心。 對於開發者來說,鍛造這樣的面容,不但需要高超的技藝,也需要有稱手的工具和對得
原创 DRM in Android
DRM in Android DRM,英文全稱爲Digital Rights Management,譯爲數字版權管理。它是目前業界使用非常廣泛的一種數字內容版權保護技術。隨着知識產權保護受重視的程度日益提高,快速攻城略地得And
原创 DRM in Android
DRM in Android DRM,英文全稱爲Digital Rights Management,譯爲數字版權管理。它是目前業界使用非常廣泛的一種數字內容版權保護技術。隨着知識產權保護受重視的程度日益提高,快速攻城略地得Androi
原创 Makefile中命令前的@和-符號
如果make執行的命令前面加了@字符,則不顯示命令本身而只顯示它的結果; Android中會定義某個變量等於@,例如 hide:= @ 通常make執行的命令如果出錯(該命令的退出狀態非0)就立刻終止,不再執行後續命令,但如果命令前面
原创 socket阻塞與非阻塞,同步與異步、I/O模型
socket阻塞與非阻塞,同步與異步 作者:huangguisu 1. 概念理解 在進行網絡編程時,我們常常見到同步(Sync)/異步(Async),阻塞(Block)/非阻塞(Unblock)四種調用方式:
原创 Android4.2 Camera子系統初探,數據流程簡述
Android的Camera應用完成如下三個功能:預覽,拍照和錄像。 以下是Android下UVC的Camera操作流程: 一、打開 首先當打開Camera HAL時;會通過ioctl向uvc驅動申請buffer,並通過mma
原创 相機知識(節選)
1、持續對焦和觸摸對焦的工作原理; 答:首先要了解一下對焦的工作原理。 AF工作原理: 就是通過微距移動鏡頭,sensor採集圖像並傳送給ISP處理,ISP把當前frame的對比度值(FV)記錄下來並保存爲A1,同時按照固定的st
原创 Chrome/Chromium HTML5 video 視頻播放硬件加速
Chromium網站上有個大致的框圖,描述了Chromium的video在各個平臺 - 包括Android - 上是如何使用硬件資源來做視頻編解碼加速的: 而根據Android Kitkat上的Chromium代碼分析,HTML5 vi
原创 堆棧與函數調用
一 C++程序內存分配 1) 在棧上創建。在執行函數時,函數內局部變量的存儲單元都在棧上創建,函數執行結束時這些存儲單元自動被釋放。棧內存分配運算內置於處理器的指令集中,一般使用寄存器來存取,效率很高,但是分配的內存容量有限。 2)
原创 mDNS原理的簡單理解
From: http://www.binkery.com/post/318.html mDNS multicast DNS , 使用5353端口。 在局域網內,你要通過一臺主機和其他主機進行通信,你需要知道對方的ip地址,但是有些
原创 C++函數對象與函數指針不同之處
在C++編程語言中,有很多功能都與C語言相通,比如指針的應用等等。在這裏我們介紹的則是一種類似於函數指針的C++函數對象的相關介紹。C++函數對象不是函數指針。但是,在程序代碼中,它的調用方式與函數指針一樣,後面加個括號就可以了。這是入
原创 爲什麼有時類的析構函數要定義爲protected呢?
在看代碼的過程中,有時會發現析構函數被定義成virtual,有一些沒有定義成virtual但被放置於protected下。網上搜了下了解了原因,下面是較好的解答: 1) http://www.cnblogs.com/kanego/arc
原创 HW Video Acceleration in Chrome/Chromium HTML5 video 視頻播放硬件加速
Introduction Video decode (e.g. YouTube playback) and encode (e.g. video chat applications) are some of the most comp