基于android平臺(tái)的視頻播放器設(shè)計(jì)文獻(xiàn)綜述_第1頁
基于android平臺(tái)的視頻播放器設(shè)計(jì)文獻(xiàn)綜述_第2頁
基于android平臺(tái)的視頻播放器設(shè)計(jì)文獻(xiàn)綜述_第3頁
基于android平臺(tái)的視頻播放器設(shè)計(jì)文獻(xiàn)綜述_第4頁
基于android平臺(tái)的視頻播放器設(shè)計(jì)文獻(xiàn)綜述_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 理工學(xué)院畢業(yè)設(shè)計(jì)文 獻(xiàn) 綜 述基于android平臺(tái)的視頻播放器設(shè)計(jì)學(xué) 生:徐東學(xué) 號(hào):專 業(yè):電氣工程與其自動(dòng)化班 級(jí):2012.卓越指導(dǎo)教師:曾曉輝、興忠理工學(xué)院自動(dòng)化與電子信息學(xué)院二O一六年三月7 / 13目錄第1章前言11.1設(shè)計(jì)的目的與意義11.2國外發(fā)展現(xiàn)狀11.3 視頻播放器概述2第2章綜述42.1、Android基本知識(shí)42.1.1 android多媒體系統(tǒng)介紹:42.1.2 android平臺(tái)42.1.3 Android的四大組件52.1.4 開發(fā)工具Eclipse62.1.5 開發(fā)語言Java62.2 播放器結(jié)構(gòu)72.2.1 文件列表界面72.2.2 控制菜單72.2.3

2、 Toast模塊82.2.4 小結(jié)8第3章總結(jié)9參考文獻(xiàn)10第1章 前 言1.1設(shè)計(jì)的目的與意義隨著當(dāng)今科學(xué)技術(shù)的發(fā)展,各種各樣的應(yīng)用被安裝到移動(dòng)上,比如視頻,VOD視頻,移動(dòng)上網(wǎng)沖浪,在線閱讀和資料共享等。為了實(shí)現(xiàn)這些應(yīng)用,移動(dòng)的功能變得更聰明且智能,這也表明了移動(dòng)互聯(lián)網(wǎng)到了新時(shí)代。新時(shí)代的到來,需要一個(gè)強(qiáng)大的開發(fā)平臺(tái)來支持,因此,智能手機(jī)操作系統(tǒng)技術(shù)和研究已成為最活躍的領(lǐng)域之一。由于現(xiàn)在Android的開放性,現(xiàn)在的Android系統(tǒng)已經(jīng)應(yīng)用于手機(jī)和平板電腦上,許多的商家已經(jīng)將Android移植到高清播放機(jī)和智能電視設(shè)備上,通過這樣消費(fèi)者會(huì)有更多的機(jī)會(huì)使用已電視作為屏幕的Android系統(tǒng)

3、,這樣就把視頻播放器顯得更為重要了,本課題研究設(shè)計(jì)了一個(gè)基于Android系統(tǒng)的視頻播放器,以APK的形式安裝在Android手機(jī)和平板中,本應(yīng)用從系統(tǒng)的數(shù)據(jù)庫讀取視頻信息,顯示視頻列表,有相應(yīng)的播放界面,查看視頻信息的功能,視頻比例的切換,相應(yīng)的控制菜單,實(shí)現(xiàn)視頻的刪除功能和上一集下一集,以與手勢(shì)控制播放界面的亮度和聲音大小,應(yīng)用操作簡(jiǎn)單功能全面,并且可以播放幾乎是有的視頻格式,讓用戶有良好舒適的體驗(yàn)。Android上面的視頻播放器很多公司和個(gè)人都在開發(fā),并且其中的一些播放器如moboplayer、RockPlayer、realPlayer、VPlayer等受到消費(fèi)者的青睞,但是目前大多數(shù)播

4、放器功能多樣繁復(fù),占用存大,嵌入過多的廣告使用戶沒有良好的用戶體驗(yàn),所以有必要開發(fā)出一款功能全面,操作簡(jiǎn)單,并且具有較強(qiáng)解碼能力的視頻播放器。1.2國外發(fā)展現(xiàn)狀A(yù)ndroid是一種真正意義上的開放型的并且不依賴于設(shè)備的移動(dòng)設(shè)備綜合平臺(tái),他包括操作系統(tǒng),中間件和應(yīng)用的主要部分。伴隨開放的架構(gòu)和優(yōu)秀的研發(fā)環(huán)境,使Android的手持設(shè)備得到充分利用,他能提供有吸引力的移動(dòng)應(yīng)用,并且沒有任何以前的塊移動(dòng)的獨(dú)家產(chǎn)業(yè)創(chuàng)新的障礙。Android有豐富的圖形系統(tǒng),這使得它易于開發(fā)多媒體應(yīng)用和網(wǎng)絡(luò)瀏覽器的工具。自Android問世以來,全球開發(fā)者已經(jīng)做出了超過100萬個(gè)應(yīng)用,國外出現(xiàn)了許多不錯(cuò)的視頻播放器。M

5、oboPlayer,是由四葉草信息技術(shù)開發(fā)的,MoboPlayer需要在Android1.6或更高的版本上運(yùn)行,MoboPlayer可以兼容更多的視頻格式,并且努力實(shí)現(xiàn)任何視頻格式都可以直接放在手機(jī)上播放。VPlayer,最初由個(gè)人制作,后來組成團(tuán)隊(duì),叫做“做一下”。VPlayer是一款很較為流行的視頻播放器,根據(jù)VPlayer的官方說明,其下載量已經(jīng)超過了百萬級(jí),VPlayer的特點(diǎn)是支持多數(shù)格式的視頻,啟動(dòng)后直接進(jìn)入視頻文件夾,就可是對(duì)視頻進(jìn)行播放,使用方便等。RockPlayer,是由的ChangeTec.h公司開發(fā),RockPlayer是一款比較高效能的視頻播放器,能支持多數(shù)的視頻格式

6、,具有個(gè)性化的UI布局和設(shè)計(jì),可以和其云端的服務(wù)相配合,用戶之間可以分享視頻。RealPlayer,和PC上的RealPlayer是一樣的,andriod上的RealPlayer也是由RealNetworks公司研究開發(fā)的,能同時(shí)播放音樂,視頻,照片,但是解碼能力不是很全面。1.3 視頻播放器概述本次設(shè)計(jì)基于Java語言進(jìn)行嵌入式播放器開發(fā),系統(tǒng)簡(jiǎn)單并且占用空間小,但功能齊全。實(shí)現(xiàn)目標(biāo):1.從手機(jī)數(shù)據(jù)庫獲取所有視頻信息。2.播放mkv,flv,MP4,RMVB等常見格式的視頻。3.實(shí)現(xiàn)刪除視頻文件的功能 。4.實(shí)現(xiàn)手勢(shì)刷新功能 。5.實(shí)現(xiàn)播放界面全屏播放的功能。6.播放/暫停,上一集,下一集,

7、手勢(shì)實(shí)現(xiàn)音量/亮度的調(diào)節(jié)。正如我國資深嵌入式系統(tǒng)專家緒榜院士的預(yù)言,“未來十年將會(huì)產(chǎn)生頭大小、具有超過一億次運(yùn)算能力的嵌入式智能芯片”,將為我們提供無限的創(chuàng)造空間。總之“嵌入式微控制器或者說單片機(jī)就好像是一個(gè)黑洞,會(huì)把當(dāng)今很多技術(shù)和成果吸引進(jìn)來。中國應(yīng)當(dāng)注意發(fā)展智力密集型產(chǎn)業(yè)”。 嵌入式播放器的發(fā)展,也會(huì)使影音播放更加的方便、適用和簡(jiǎn)單,有很大的發(fā)展趨勢(shì)。第2章 綜述Android智能手機(jī)和平板在市場(chǎng)上的應(yīng)用已經(jīng)越來越廣泛,包括辦公軟件、影視音頻軟件、游戲軟件、具體功能軟件等諸多應(yīng)用領(lǐng)域。本文就Android系統(tǒng)上的一款媒體播放器應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行討論。Android是一個(gè)開源的系統(tǒng),它

8、底層是基于Linux的操作系統(tǒng)。本論文的媒體播放器采用了Android開源系統(tǒng)技術(shù),利用Java語言和Eclipse編輯工具對(duì)播放器進(jìn)行編寫。同時(shí)給出了詳細(xì)的系統(tǒng)設(shè)計(jì)過程、部分界面圖與主要功能運(yùn)行流程圖,該播放器集播放、暫停、前進(jìn)、后退、音量調(diào)節(jié)、亮度調(diào)節(jié)、上下選集等功能于一體,在Android系統(tǒng)中能獨(dú)立運(yùn)行。 2.1、Android基本知識(shí)2.1.1 android多媒體系統(tǒng)介紹:(1)多媒體應(yīng)用角度方面有兩個(gè)容:輸入輸出環(huán)節(jié)(音頻、視頻純數(shù)據(jù)流的輸入輸出系統(tǒng))中間處理環(huán)節(jié)(文件格式處理環(huán)節(jié)和編解碼環(huán)節(jié))(2)android的多媒體核心:Open CoreOpen Core是一個(gè)

9、多媒體的框架,從宏觀上來看,它主要包含了兩大方面的容:PVPlayer:提供媒體播放器的功能,完成各種音頻(Audio)、視頻(Video)流的回放(Playback)功能PVAuthor:提供媒體流記錄的功能,完成各種音頻(Audio)、視頻(Video)流的以與靜態(tài)圖像捕獲功能PVPlayer和PVAuthor以SDK的形式提供給開發(fā)者,可以在這個(gè)SDK之上構(gòu)建多種應(yīng)用程序和服務(wù)。在移動(dòng)終端中常常使用的多媒體應(yīng)用程序,例如媒體播放器、照相機(jī)、錄像機(jī)、錄音機(jī)等等。2.1.2 android平臺(tái)Android是一種以Linux為基礎(chǔ)的開放源碼操作系統(tǒng),主要使用于便攜設(shè)備。Android操作系統(tǒng)

10、最初由Andy Rubin開發(fā),最初主要支持手機(jī)。2005年由Google收購注資,并組建開放手機(jī)聯(lián)盟開發(fā)改良,逐漸擴(kuò)展到平板電腦與其他領(lǐng)域上。Android的主要競(jìng)爭(zhēng)對(duì)手是蘋果公司的iOS以與RIM的Blackberry OS。2011年第一季度,Android在全球的市場(chǎng)份額首次超過塞班系統(tǒng),躍居全球第一。 2011年11月數(shù)據(jù),Android占據(jù)全球智能手機(jī)操作系統(tǒng)市場(chǎng)52.5%的份額,中國市場(chǎng)占有率為58%。 2013年的第四季度,Android平臺(tái)手機(jī)的全球市場(chǎng)份額已經(jīng)達(dá)到78.1%。在2014年Google I/O開發(fā)者大會(huì)上Google宣布過去30天里有10億臺(tái)活躍的安

11、卓設(shè)備,相較于2013年6月則是5.38億。Android手機(jī)為何如此受青睞,主要是因?yàn)閍ndroid的一些功能在吸引著大眾。第一,智能虛擬鍵盤;第二,使用Widget實(shí)現(xiàn)桌面?zhèn)€性化;第三,用在線文件夾瀏覽在線數(shù)據(jù);第四,視頻錄制和分享;第五,圖片上傳;第六,更快、更兼容的瀏覽器;第七,Voice Search語音搜索;第八,立體聲藍(lán)牙和免提;第九,強(qiáng)大的GPS技術(shù);第十,android 系統(tǒng)硬件檢測(cè)。2.1.3 Android的四大組件 1. Activity  顧名思義,Activity就是活動(dòng)。應(yīng)用程序必須至少包含一個(gè)Activity。Activity提供了

12、一個(gè)虛擬的用戶接口,每一個(gè)Activity都有一個(gè)默認(rèn)的窗口可以用來顯示用戶界面,一般情況下,它是全屏的窗口。例如,影音播放軟件的每個(gè)用戶界面就是Activity。 2. Service  Service與Activity的主要區(qū)別在于,Service是在后臺(tái)活動(dòng)的,它沒有用戶界面。典型的應(yīng)用場(chǎng)景是,用戶選擇了一個(gè)播放列表開始播放后,離開了該用戶界面(Activity),如果仍然希望視頻不會(huì)暫停,就可以用Service去調(diào)用播放器,而不是在Activity中調(diào)用播放器。 3. Broadcast Receiver 在Android中,Broad

13、castReceiver 用于異步接收廣播Intent,每一個(gè)行為都可以抽象為一個(gè)Intent??梢院?jiǎn)單地把Intent理解為一個(gè)包含了數(shù)據(jù)的消息。Intent可以用于啟動(dòng)一個(gè)Act-ivity或者Service,可以用于進(jìn)程間的通信。事實(shí)上,應(yīng)用程序的啟動(dòng)也是通過Intent實(shí)現(xiàn)的。 4. Content providers Android平臺(tái)置了一套SQLite數(shù)據(jù)儲(chǔ)存機(jī)制,并包含一系列管理SQLite Database的相關(guān)方法。在應(yīng)用程序中,可以通過Content prov-iders訪問數(shù)據(jù)庫。每個(gè)Content provi

14、der都定義了一系列的方法用于訪問它對(duì)應(yīng)的數(shù)據(jù)庫。應(yīng)用程序在新建數(shù)據(jù)庫時(shí)也可以定義相應(yīng)的Con-tent provider用于向其他應(yīng)用程序共享數(shù)據(jù)。一般情況下,應(yīng)用程序不直接調(diào)用Content provider定義的函數(shù),而是通過Content Resolver間接調(diào)用。這樣設(shè)計(jì)的好處是一個(gè)Content Resolver可以訪問任何的Content provider,統(tǒng)一了接口。2.1.4 開發(fā)工具Eclipse Eclipse的基礎(chǔ)是富客戶機(jī)平臺(tái)(Rich Client Platform,即RCP)。 RCP包括下列組

15、件: 核心平臺(tái)(Eclipse,運(yùn)行插件)標(biāo)準(zhǔn)集束框架(OSGi : Open Service Gateway initiative)可移植構(gòu)件工具包(SWT : Eclipse's Standard Widget Toolkit) JFace(文件緩沖,文本處理,文本編輯器) Eclipse采用的技術(shù)是IBM公司開發(fā)的SWT,這是一種基于Java的窗口組件,類似Java本身提供的AWT和Swing窗口組件:不過IBM聲稱SWT比其他Java窗口組件更有效率。Eclipse的用戶界面還使用了GUI中間層JFace,從而簡(jiǎn)化了基于SWT的應(yīng)用程序的構(gòu)建。Eclipse的設(shè)計(jì)思想

16、是:一切皆插件。Eclipse核心很小,其他所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基于核包括:圖形API(SWT/JFace),Java開發(fā)環(huán)境插件(JDT),插件開發(fā)環(huán)境(PDE)等。Eclipse的插件機(jī)制是輕型軟件組件化架構(gòu)。在富客戶機(jī)平臺(tái)上,Eclipse使用插件來提供所有的附加功能,例如支持Java以外的其他語言。已有的分離的插件已經(jīng)能夠支持C/C+(CDT)、Perl、Ruby、Python、telnet和數(shù)據(jù)庫開發(fā)。插件架構(gòu)能夠支持將任意的擴(kuò)展加入到現(xiàn)有環(huán)境中,例如配置管理,而決不僅僅限于支持各種編程語言。2.1.5 開發(fā)語言JavaJava是一種計(jì)算

17、機(jī)編程語言,擁有跨平臺(tái)、面向?qū)ο?、泛型編程的特性,廣泛應(yīng)用于企業(yè)級(jí)Web應(yīng)用開發(fā)和移動(dòng)應(yīng)用開發(fā)。Java編程語言的風(fēng)格十分接近C+語言。繼承了C+語言面向?qū)ο蠹夹g(shù)的核心,Java舍棄了C+語言中容易引起錯(cuò)誤的指針,改以引用取代,同時(shí)移除原C+與原來運(yùn)算符重載,也移除多重繼承特性,改用接口取代,增加垃圾回收器功能。Java不同于一般的編譯語言和直譯語言。它首先將源代碼編譯成字節(jié)碼,然后依賴各種不同平臺(tái)上的虛擬機(jī)來解釋執(zhí)行字節(jié)碼,從而實(shí)現(xiàn)了“一次編寫,到處運(yùn)行”的跨平臺(tái)特性。在早期JVM中,這在一定程度上降低了Java程序的運(yùn)行效率。但在J2SE1.4.2發(fā)布后,Java的運(yùn)行速度有了大幅提升。2

18、.2 播放器結(jié)構(gòu)Android為應(yīng)用開發(fā)者提供功能豐富的SDK,可以讓開發(fā)者通過SDK實(shí)現(xiàn)千變?nèi)f化的應(yīng)用。一個(gè)Android應(yīng)用從文件結(jié)構(gòu)組成上通常由資源文件和源碼文件組成,資源文件主要包括字符串,布局,圖片,音頻等組成,源碼文件主要包括Java文件和C語言的JNI文件。Android應(yīng)用如果從源碼邏輯上可以分為四大組件,一個(gè)應(yīng)用會(huì)由四大組件或者其中幾個(gè)組成,四大組件分別是Activity ,BroadcastReceiver, Service和Content Provider。一個(gè)Android應(yīng)用從文件組成上就可以看出大概的結(jié)構(gòu),主要由源碼文件、布局文件和資源文件組成。2.2.1 文件列表

19、界面播放視頻前需要先確定播放的是哪個(gè)視頻,所以文件列表界面應(yīng)該是進(jìn)入應(yīng)用的第一個(gè)界面,主要顯示了可播放的視頻文件列表,為了用戶有良好的體驗(yàn),在每個(gè)視頻標(biāo)題下顯示文件的大小,并在右方顯示視頻的時(shí)長(zhǎng),并具有“更多”按鈕。為使用戶易于操作,易于記憶,文件列表界面采用線性布局(LinearLayout)。在布局代碼中TextView為文本顯示視頻的標(biāo)題、視頻的大小、視頻的時(shí)長(zhǎng)。播放列表為一個(gè)listview,文件列表與目錄結(jié)構(gòu)最適合使用listview去顯示,listview的每一項(xiàng)由兩部分組成,分別為圖標(biāo)和文件名,通過自定義的adapter將圖標(biāo)和文件名顯示出來。圖標(biāo)是視頻的縮略圖,文件名就只獲取當(dāng)

20、前列表中的文件,獲取相應(yīng)文件名顯示出來。2.2.2 控制菜單控制菜單是用戶最常用的界面,應(yīng)該做到顯示簡(jiǎn)潔,操作方便??刂撇藛未篌w上可以分為兩部分,上面是進(jìn)度條,包括當(dāng)前時(shí)間和總時(shí)間所示,用戶可以在這里方便的看到當(dāng)前進(jìn)度信息,當(dāng)視頻播放結(jié)束后彈出上下選集。 除了控制菜單,視頻窗口和字幕都需要顯示在這個(gè)界面的,由于視頻是全屏的,所以字幕和控制菜單都顯示在視頻之上,有疊加的現(xiàn)象,所以這種情況就適合使用幀布局(FrameLayout),首先是一個(gè)全屏尺寸的VideoView,用來顯示視頻容,VideoView在最低層;然后是一個(gè)線性布局(LinearLayout),用來顯示字幕容,位置默認(rèn)在最下方;最

21、后是一個(gè)線性布局(LinearLayout),里面用來顯示控制菜單,在最上層顯示??刂撇藛问谴怪狈较虻木€性布局,顯示進(jìn)度條,包括當(dāng)前時(shí)間和總時(shí)間。進(jìn)度條是水平方向的線性布局,從左到右依次是當(dāng)前時(shí)間,文本,進(jìn)度條,總時(shí)間文本。當(dāng)用戶拖動(dòng)進(jìn)度條時(shí),當(dāng)前時(shí)間應(yīng)該按比例跳轉(zhuǎn)。2.2.3 Toast模塊此Toast模塊是基于android系統(tǒng)的Toast控件封裝,Toast是一種短暫的提示框,并不需要用戶交互,也不會(huì)將焦點(diǎn)移過來,因此可以適合大多數(shù)的場(chǎng)景,向用戶進(jìn)行信息提示。進(jìn)入應(yīng)用后,Toast模塊就己經(jīng)完成初始化,創(chuàng)建Toast對(duì)象,設(shè)置顯示時(shí)間,當(dāng)需要信息提示時(shí)只需要將提示信息文本發(fā)送給Toast模塊并使能,Toast模塊就會(huì)顯示提示信息并自動(dòng)消失。 2.2.4 小結(jié)本設(shè)計(jì)了控制菜單、功能菜單和其他主要用戶界面模塊的界面、功能和布局方式??刂撇藛沃饕獙?shí)現(xiàn)了視頻播放的控制,功能菜單讓用戶可以使用更多的視頻效果,Toast等其他模塊讓應(yīng)用更豐富,用戶體驗(yàn)更好。第3章 總結(jié)通過對(duì)Android手機(jī)平臺(tái)的視頻播放器開發(fā)前的學(xué)習(xí),使我對(duì)Android視頻播放器系統(tǒng)的整體設(shè)計(jì)有一個(gè)深入的了解,對(duì)整個(gè)流程也會(huì)有一個(gè)清晰的認(rèn)識(shí)。開發(fā)Android視頻播放器,要抓住開發(fā)的核心部分,視頻播放器大體由播放主界面、播放列表組成。這兩個(gè)個(gè)模塊完成,視頻

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論