国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
基于rtsp的手機(jī)視頻點(diǎn)播實(shí)現(xiàn)和研究

http://blog.csdn.net/lius1984/archive/2009/04/28/4131393.aspx

前言: 隨著3G的到來,帶寬大了流量費(fèi)便宜了,手機(jī)電視等多媒體應(yīng)用必將有很大發(fā)展, 本人總結(jié)以往經(jīng)驗(yàn),跟大家討論一下如何建立一個(gè)手機(jī)視頻點(diǎn)播的方案,最后給出了一個(gè)初步的客戶端實(shí)現(xiàn)效果。歡迎大家討論。

  先說架構(gòu),出于便于管理和擴(kuò)展,帶寬限制和多用戶并發(fā)的考慮,商用方案都會(huì)采用流媒體服務(wù)器+WEB服務(wù)器+中轉(zhuǎn)服務(wù)器+手機(jī)客戶端的方案,其中

流媒體服務(wù)器(streaming server)負(fù)責(zé)采集視頻源并壓縮編碼并隨時(shí)等待來自客戶端的rtsp連接請(qǐng)求; 
WEB服務(wù)器(web server)便于發(fā)布和管理視頻信息;
中轉(zhuǎn)服務(wù)器(transmission server)是可選的,用于把來自client的RTSP請(qǐng)求轉(zhuǎn)發(fā)給server,并把服務(wù)器端的實(shí)時(shí)流轉(zhuǎn)給client,這樣的好處是在相同帶寬下支持更多的用戶同時(shí)觀看;
手機(jī)客戶端(client)可以用手機(jī)內(nèi)置的播放器(如nokia上的realplayer)或者自己開發(fā)的獨(dú)立播放器,前者的好處是降低用戶使用門檻,便于大規(guī)模應(yīng)用;后者方便擴(kuò)展和定制,滿足更多的功能。
streaming server是整個(gè)方案的核心,目前主流的流媒體服務(wù)器解決方案如下:

helix  server :借助Real公司的強(qiáng)大實(shí)力,這是目前最流行的方案,  可以支持所有音視頻格式,性能穩(wěn)定,是唯一可以橫跨 Windows Mac 及 Linux, Solaris ,HP/UX 使用者流媒體服務(wù)的平臺(tái),支持在手機(jī)自帶播放器播放。helix server免費(fèi)的版本只支持1M流量,企業(yè)版很貴。當(dāng)然你要破解就是另外一回事了:)
darwin server: 這是apple公司推出的開源的流媒體解決方案,支持格式?jīng)]helix那么多,但由于是開源的免費(fèi)的,對(duì)于開發(fā)者有很大的開發(fā)空間。
live555 media server:性能穩(wěn)定,但支持格式比較少(只有mp3,amr,aac,mpeg4 es等幾種流),很少獨(dú)立使用而一般作為系統(tǒng)的一部分。
Windows Media Server:僅限微軟平臺(tái),就不考慮了。
手機(jī)端框架流程如下:

 

 

   手機(jī)客戶端與服務(wù)器端的傳輸協(xié)議目前有HTTP,RTSP兩種,早期的手機(jī)電視多用的HTTP,HTTP的優(yōu)點(diǎn)有不用特殊的服務(wù)器軟件,有IIS即可,不用考慮防火墻NAT,但HTTP不支持實(shí)時(shí)流,也會(huì)浪費(fèi)帶寬; RTSP則是當(dāng)前流媒體傳輸?shù)闹髁鳂?biāo)準(zhǔn),連微軟都拋棄了MMS而轉(zhuǎn)而支持RTSP, RTSP可以支持客戶端暫?;胤磐V沟炔僮?,基本不用考慮音視頻同步問題(因?yàn)橐纛l視頻分別從不同RTP PORT讀入緩沖)。值得說明的是,RTSP成功后,就開始RTP傳輸,分為RTP OVER TCP和RTP OVER UDP,前者保證每個(gè)數(shù)據(jù)包都能收到,如果沒收到就重傳,而且不用考慮防火墻NAT;后者只保證盡最大努力的傳輸,不會(huì)重傳丟幀,實(shí)時(shí)性好,要解決防火墻NAT問題。如果對(duì)幀率要求比較高的手機(jī)電視,推薦采用UDP傳輸,因?yàn)檠舆t較大的重傳數(shù)據(jù)對(duì)用戶是沒有意義的,寧可丟棄。

  我在網(wǎng)絡(luò)部分采用強(qiáng)大的開源庫(kù)live555實(shí)現(xiàn)RTSP/RTP協(xié)議,其性能穩(wěn)定而且支持大多數(shù)音視頻格式的傳輸。(當(dāng)然ffmpeg也實(shí)現(xiàn)了網(wǎng)絡(luò)傳輸部分,經(jīng)過改動(dòng)后也能用)對(duì)live555經(jīng)過裁剪后移植到symbian和windows mobile,這部分工作在symbian真機(jī)調(diào)試比較費(fèi)時(shí)。


  視頻解碼部分當(dāng)然還是采用ffmpeg,移植了mpeg4 sp/h.264解碼器,在沒有任何優(yōu)化的情況下可支持32K,CIF,5-10fps的效果,對(duì)于一般的流媒體應(yīng)用足夠了。以后還要經(jīng)過算法和匯編優(yōu)化。解碼后還需要經(jīng)過yuv2rgb和scale,需要注意的是ffmpeg的解碼有消隱區(qū)的說法,即qcif的圖像其linesize不是176而是192,如果你發(fā)現(xiàn)解碼后圖像呈綠色,需用img_convert()轉(zhuǎn)一下(目的格式也是PIX_FMT_YUV420P)。symbian上用DSA直接寫屏就行。windows mobile上可以用sdl.

 音頻解碼主要包括AAC,AMRNB,AMRWB。AAC和AMRNB是gprs和edge帶寬支持的音頻(aac效果比amrnb好),AMRWB是3G后的音頻格式。在ffmpeg 0.5 release中已經(jīng)支持amrnb/wb的fixed point解碼,很強(qiáng)大。

 
  在symbian和windows mobile真機(jī)均測(cè)試通過,6122c真機(jī)和Windows mobile5.0模擬器上效果如下:

 

            

  

        

 


演示視頻地址為rtsp://v.starv.tv/later.3gp,視頻為mpeg4 sp,音頻為amrwb。目前只能看到圖像,音頻還沒加。


注意做流媒體應(yīng)用接入點(diǎn)一般是cmnet,cmwap只用來瀏覽網(wǎng)頁(yè)之類的低數(shù)據(jù)量應(yīng)用。


程序還在進(jìn)一步完善中,有興趣的可以跟我一起交流, lius1984@gmail.com

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
秒懂流媒體協(xié)議 RTMP 與 RTSP
以色列SURF三網(wǎng)融合的多媒體增值業(yè)務(wù)平臺(tái)
移動(dòng)流媒體業(yè)務(wù)的技術(shù)與標(biāo)準(zhǔn)
關(guān)于視頻的一些概念 | SamirChen
一個(gè)RtspServer的設(shè)計(jì)與實(shí)現(xiàn)和RTSP2.0簡(jiǎn)介
Babosa的專欄
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服