Android多媒體開(kāi)發(fā)技術(shù)實(shí)戰(zhàn)詳解

出版時(shí)間:2012-8  出版社:電子工業(yè)出版社  作者:熊斌  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

內(nèi) 容 簡(jiǎn) 介
在本書(shū)的內(nèi)容中,詳細(xì)講解了Android多媒體開(kāi)發(fā)技術(shù)的基本知識(shí)。本書(shū)內(nèi)容新穎、知識(shí)全面、講解詳細(xì),全書(shū)分為17個(gè)章節(jié),第1章講解了Android系統(tǒng)的基本知識(shí);第2章講解了Android開(kāi)發(fā)之前所要做的工作;第3章講解了深入底層的基本知識(shí);第4章講解了多媒體框架的基本知識(shí);第5章講解了音頻系統(tǒng)框架的基本知識(shí);第6章講解了視頻系統(tǒng)框架的基本知識(shí);第7章講解了Camera照相機(jī)系統(tǒng)的基本知識(shí);第8章講解了振動(dòng)器系統(tǒng)和警報(bào)系統(tǒng)的基本知識(shí);第9章講解了平面世界的基本知識(shí);第10章講解了二維動(dòng)畫(huà)應(yīng)用的基本知識(shí);第11章講解了渲染二維圖像的基本知識(shí);第12章講解了OpenGL
ES的基本知識(shí);第13章講解了OpenGL
ES進(jìn)階方面的基本知識(shí);第14章講解了音頻開(kāi)發(fā)的基本知識(shí);第15章講解了視頻開(kāi)發(fā)應(yīng)用的基本知識(shí);第16章講解了開(kāi)發(fā)一個(gè)屏保系統(tǒng)的具體過(guò)程;第17章講解了開(kāi)發(fā)一個(gè)音樂(lè)播放器的基本過(guò)程。本書(shū)定位于Android程序開(kāi)發(fā)的不同用戶(hù),即可以作初學(xué)者的參考資料,也可以作為向此領(lǐng)域發(fā)展的程序員的參考書(shū)。

書(shū)籍目錄

第1章 歡迎進(jìn)入Android世界1
1.1 最近幾年的幾件大事1
1.2 來(lái)到智能手機(jī)世界2
1.2.1 何謂智能手機(jī)2
1.2.2 百家爭(zhēng)鳴2
1.3 搭建Android應(yīng)用開(kāi)發(fā)環(huán)境3
1.3.1 安裝Android SDK的系統(tǒng)要求3
1.3.2 安裝JDK、Eclipse、Android
SDK4
1.3.3 設(shè)置Android SDK Home13
1.3.4 驗(yàn)證理論14
1.3.5 創(chuàng)建Android虛擬設(shè)備15
第2章 準(zhǔn)備工作18
2.1 簡(jiǎn)析Android安裝文件18
2.1.1 Android SDK目錄結(jié)構(gòu)18
2.1.2 android.jar及內(nèi)部結(jié)構(gòu)19
2.1.3 閱讀SDK文檔需要技巧20
2.1.4 不簡(jiǎn)單的SDK工具22
2.2 系統(tǒng)實(shí)例23
2.3 Android系統(tǒng)架構(gòu)剖析26
2.3.1 Android體系結(jié)構(gòu)介紹26
2.3.2 Android應(yīng)用工程文件組成29
2.3.3 應(yīng)用程序的生命周期31
第3章 深入底層34
3.1 為什么要深入底層34
3.2 搭建Linux開(kāi)發(fā)環(huán)境34
3.2.1 在Linux下安裝Android34
3.2.2 設(shè)置環(huán)境變量35
3.2.3 安裝編譯工具36
3.3 獲取Android源碼36
3.4 分析并編譯Android源碼38
3.4.1 Android源碼的結(jié)構(gòu)38
3.4.2 編譯Android源碼44
3.4.3 運(yùn)行Android源碼45
3.4.4 選擇編譯方法46
3.5 運(yùn)行模擬器不是昨日重現(xiàn)50
3.5.1 在Linux環(huán)境下運(yùn)行模擬器的
方法50
3.5.2 模擬器輔助工具——adb51
3.6 Android的啟動(dòng)過(guò)程52
3.6.1 Init初始化進(jìn)程52
3.6.2 ServiceManager進(jìn)程54
3.6.3 Zygote進(jìn)程54
3.6.4 SystemService進(jìn)程57
3.7 進(jìn)程之間需要溝通59
3.8 多核通信60
3.8.1 內(nèi)存共享61
3.8.2 過(guò)程調(diào)用69
第4章 多媒體框架73
4.1 框架學(xué)習(xí)路線(xiàn)圖73
4.2 Android多媒體系統(tǒng)介紹73
4.3 OpenMax框架75
4.3.1 分析OpenMax框架構(gòu)成76
4.3.2 實(shí)現(xiàn)OpenMax IL接口80
4.4 OpenCore框架88
4.4.1 OpenCore層次結(jié)構(gòu)88
4.4.2 OpenCore代碼結(jié)構(gòu)89
4.4.3 OpenCore編譯結(jié)構(gòu)90
4.4.4 OpenCore OSCL94
4.4.5 實(shí)現(xiàn)OpenCore中的OpenMax
部分95
4.4.6 OpenCore擴(kuò)展107
4.5 StageFright框架是后來(lái)者113
4.5.1 StageFright代碼結(jié)構(gòu)113
4.5.2 StageFright實(shí)現(xiàn)OpenMax
接口114
4.5.3 Video Buffer傳輸流程117
第5章 音頻系統(tǒng)框架122
5.1 音頻系統(tǒng)結(jié)構(gòu)122
5.2 分析音頻系統(tǒng)的層次123
5.2.1 層次說(shuō)明124
5.2.2 Media庫(kù)中的Audio框架124
5.2.3 本地代碼127
5.2.4 JNI代碼130
5.2.5 Java代碼131
5.3 硬件抽象層131
5.4 分析編碼/解碼過(guò)程133
5.4.1 AMR編碼133
5.4.2 AMR解碼137
5.4.3 解碼MP3141
第6章 視頻系統(tǒng)框架143
6.1 視頻系統(tǒng)結(jié)構(gòu)143
6.2 分析Overlay抽象層145
6.2.1 Overlay系統(tǒng)硬件抽象層的
接口145
6.2.2 實(shí)現(xiàn)Overlay系統(tǒng)抽象層147
6.2.3 實(shí)現(xiàn)接口148
6.3 實(shí)現(xiàn)Overlay框架149
第7章 Camera(照相機(jī))系統(tǒng)152
7.1 Camera系統(tǒng)結(jié)構(gòu)152
7.2 分析Camera接口和驅(qū)動(dòng)155
7.2.1 Camera驅(qū)動(dòng)接口155
7.2.2 硬件抽象層162
7.3 實(shí)現(xiàn)Camera硬件抽象層166
7.3.1 Java程序部分166
7.3.2 Camera的Java本地調(diào)用
部分167
7.3.3 Camera的本地庫(kù)libui.so168
7.3.4 Camera服務(wù)
libcameraservice.so169
第8章 振動(dòng)器系統(tǒng)和警報(bào)器系統(tǒng)174
8.1 振動(dòng)器系統(tǒng)174
8.1.1 硬件抽象層175
8.1.2 JNI框架部分177
8.1.3 實(shí)現(xiàn)硬件抽象層178
8.2 Alarm警報(bào)器系統(tǒng)179
8.2.1 Alarm系統(tǒng)結(jié)構(gòu)179
8.2.2 模擬器環(huán)境的具體實(shí)現(xiàn)182
第9章 平面世界183
9.1 強(qiáng)大的Graphics類(lèi)183
9.2 用Color類(lèi)設(shè)置文本顏色183
9.3 用Paint類(lèi)繪制圖像185
9.4 Canvas類(lèi)188
9.5 Rect類(lèi)191
9.6 NinePatch類(lèi)195
9.7 Matrix類(lèi)195
9.8 Bitmap類(lèi)199
9.8.1 Bitmap類(lèi)的功能200
9.8.2 Bitmap類(lèi)應(yīng)用實(shí)例201
9.9 BitmapFactory類(lèi)207
9.10 Typeface類(lèi)210
9.11 Shader類(lèi)210
第10章 二維動(dòng)畫(huà)應(yīng)用214
10.1 Drawable類(lèi)214
10.1.1 認(rèn)識(shí)Drawable類(lèi)214
10.1.2 Drawable實(shí)現(xiàn)動(dòng)畫(huà)效果215
10.2 實(shí)現(xiàn)Tween Animation效果216
10.2.1 Tween動(dòng)畫(huà)基礎(chǔ)216
10.2.2 定義動(dòng)畫(huà)效果221
10.2.3 用實(shí)例來(lái)體驗(yàn)Tween動(dòng)畫(huà)
應(yīng)用(一)222
10.2.4 用實(shí)例來(lái)體驗(yàn)Tween動(dòng)畫(huà)
應(yīng)用(二)224
10.3 實(shí)現(xiàn)Frame Animation效果225
10.3.1 Frame動(dòng)畫(huà)基礎(chǔ)225
10.3.2 Frame動(dòng)畫(huà)應(yīng)用實(shí)例226
10.4 播放GIF動(dòng)畫(huà)228
10.5 實(shí)現(xiàn)EditText動(dòng)畫(huà)特效230
10.6 Property Animation231
第11章 渲染二維圖像233
11.1 SurfaceFlinger渲染233
11.1.1 SurfaceFinger基礎(chǔ)233
11.1.2 Surface和Canvas234
11.1.3 Surface渲染235
11.2 Skia渲染238
11.2.1 Skia基礎(chǔ)238
11.2.2 Skia介紹239
11.2.3 Skia中的類(lèi)241
11.2.4 Skia的最大用處是繪圖247
11.2.5 Skia的其他功能251
第12章 OpenGL ES來(lái)了253
12.1 認(rèn)識(shí)OpenGL ES253
12.1.1 使用點(diǎn)線(xiàn)法繪制三角形254
12.1.2 使用索引法繪制三角形259
12.1.3 使用頂點(diǎn)法繪制三角形264
12.2 時(shí)光的影子266
12.2.1 正交投影266
12.2.2 透視投影267
12.2.3 實(shí)現(xiàn)投影效果267
12.3 體驗(yàn)陽(yáng)光的魅力271
12.3.1 何謂光照271
12.3.2 實(shí)現(xiàn)定位光效果273
12.3.3 開(kāi)啟/關(guān)閉光照279
12.4 高深莫測(cè)的紋理映射284
12.4.1 實(shí)現(xiàn)地月模型效果284
12.4.2 實(shí)現(xiàn)三角形紋理貼圖效果292
12.4.3 實(shí)現(xiàn)紋理拉伸效果296
第13章 OpenGL ES進(jìn)階301
13.1 繪制三維圖形301
13.1.1 繪制圓柱體301
13.1.2 繪制圓環(huán)309
13.1.3 繪制拋物面313
13.1.4 繪制螺旋面效果316
13.2 坐標(biāo)變換320
13.2.1 縮放變換處理320
13.2.2 平移變換處理325
13.3 混合與透明327
13.3.1 相關(guān)基本知識(shí)328
13.3.2 實(shí)現(xiàn)混合效果329
13.4 攝像機(jī)和霧特效333
13.4.1 攝像機(jī)333
13.4.2 霧特效334
13.4.3 親眼看一看霧特效和攝像機(jī)
效果334
第14章 音頻開(kāi)發(fā)應(yīng)用345
14.1 實(shí)現(xiàn)音頻功能的接口類(lèi)345
14.2 AudioManager控制鈴聲346
14.2.1 AudioManager中介346
14.2.2 親手試一試——設(shè)置短信提示
鈴聲349
14.2.3 調(diào)節(jié)手機(jī)音量的大小352
14.3 錄音處理356
14.3.1 使用MediaRecorder接口錄制
音頻356
14.3.2 使用AudioRecord錄制
音頻359
14.3.3 使用AudioRecord接口
錄音364
14.3.4 繼續(xù)使用AudioRecord錄制
音頻364
14.4 插放音頻367
14.4.1 使用AudioTrack播放音頻367
14.4.2 使用MediaPlayer播放音頻370
14.4.3 不能沒(méi)有SoundPool384
14.4.4 使用Ringtone播放鈴聲386
14.4.5 使用JetPla

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   (1)定向光 我們?nèi)粘K?jiàn)的光源有很多,比如太陽(yáng)、燈泡、燃燒著的蠟燭等。像太陽(yáng)這種從無(wú)窮遠(yuǎn)處發(fā)射的幾乎平行的光被稱(chēng)為定向光。定向光對(duì)應(yīng)的是光源在無(wú)窮遠(yuǎn)處的光,定向光在空間中的所有位置方向都是相同的。 在OpenGL ES中通過(guò)方法glLightfv(int light,int pname,float[]params,int offset)來(lái)設(shè)定定向光,此方法中各個(gè)參數(shù)的具體說(shuō)明如下所示。 light:該參數(shù)設(shè)置為OpenGL ES中的燈,用GL_LIGHT0到GL_LIGHT7分別表示8盞燈。 如果該參數(shù)設(shè)置為GL_LIGHT0,則表示方法glLightfv()中其余的設(shè)置都是針對(duì)GL_LIGHT0,即0號(hào)燈進(jìn)行設(shè)置的。 pname:被設(shè)置的光源屬性是由pname定義的,它指定了一個(gè)命名參數(shù),在設(shè)置定向光時(shí)應(yīng)該設(shè)置成GL_POSITION。 params:此參數(shù)是一個(gè)float數(shù)組,該數(shù)組由4部分組成,前3個(gè)值組成表示定向光方向的向量,光的方向?yàn)閺南蛄奎c(diǎn)處向原點(diǎn)處照射,比如{0,1,0,0}表示沿Y軸負(fù)方向的光,最后的0表示此光源發(fā)出的光是定向光。 (2)定位光 在自然世界中定向光與定位光是截然不同的,這就像太陽(yáng)與燃燒的蠟燭之間的區(qū)別。但是,在OpenGL ES中實(shí)現(xiàn)定向光與定位光的方法十分相似。 在OpenGL ES中通過(guò)方法glLightfv(int light,int pname,float[]params,int offset)來(lái)設(shè)置定位光,其參數(shù)含義和上面介紹的定向光中的9lLightfv()方法類(lèi)似,僅僅是params參數(shù)略有不同,其他參數(shù)基本都相同。 在定向光中,參數(shù)params中的最后一個(gè)值被設(shè)置為0;而在定位光中,這個(gè)值被設(shè)置為1。 在定向光中,參數(shù)params中的前3個(gè)值被設(shè)置為光源的向量坐標(biāo);而在定位光中,這3個(gè)值被設(shè)置為光源的位置。 在定向光中,光的方向?yàn)榻o定的坐標(biāo)點(diǎn)與原點(diǎn)之間的向量,所以params中的坐標(biāo)不能設(shè)置為(0,0,0);而在定位光中,給出的是光源的坐標(biāo)位置,所以params的前3個(gè)參數(shù)可以設(shè)置為(0,0,0)。 在定位光方法glLightfb()中,其余參數(shù)的設(shè)置方法與上面介紹的定向光方法glLightfv()相同,在此不再贅述。 2.光源顏色 顏色是光源的一種重要屬性,在OpenGL ES中允許把與顏色相關(guān)的3個(gè)不同參數(shù)GL_AMBIENT、GL_DIFFUSE和GL_SPECULAR與任何特定的光源相關(guān)聯(lián)。 (1)GL_AMBIENT環(huán)境光 Ambient的意思是環(huán)境光,表示一個(gè)特定的光源在場(chǎng)景中所添加的環(huán)境光的RGBA強(qiáng)度。在默認(rèn)情況下是不存在環(huán)境光的,因?yàn)镚L_AMBIENT的默認(rèn)值是(0.0,0.0,0.0,1.0)。 在OpenGL ES中通過(guò)方法glLightfv(int light,int pname,float[]params,int offset)來(lái)設(shè)置光源的環(huán)境光,對(duì)各個(gè)參數(shù)的具體說(shuō)明如下所示。

編輯推薦

《Android移動(dòng)開(kāi)發(fā)技術(shù)叢書(shū):Android多媒體開(kāi)發(fā)技術(shù)實(shí)戰(zhàn)詳解》定位于Android程序開(kāi)發(fā)的不同用戶(hù),即可以作初學(xué)者的參考資料,也可以作為向此領(lǐng)域發(fā)展的程序員的參考書(shū)。

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    Android多媒體開(kāi)發(fā)技術(shù)實(shí)戰(zhàn)詳解 PDF格式下載


用戶(hù)評(píng)論 (總計(jì)6條)

 
 

  •   講解得很全面,涉及到很多多媒體的知識(shí)。
  •   前天早上下單,下午就送來(lái)了,還沒(méi)來(lái)得及看
  •   苛求頂起擁有愛(ài)得起感覺(jué)無(wú)可替代
  •   幾章源碼剖析講講原理,不搞那塊兒定制熟悉熟悉也就,繪制和多媒體講的太普通,沒(méi)得看
  •   整書(shū)全在貼代碼,沒(méi)有流程講解,真的覺(jué)得不如去看代碼。
  •   很好的書(shū),講解細(xì)致,我正好需要學(xué)習(xí)OpenGL ES方面的知識(shí),這正是我所需要的。翻了幾頁(yè),發(fā)現(xiàn)作者點(diǎn)功底不錯(cuò),發(fā)貨速度快
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7