国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

數(shù)字電視視頻服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)

發(fā)布時(shí)間:2010-8-30 15:13    發(fā)布者:techshare
數(shù)字電視是從電視節(jié)目錄制、播出到發(fā)射、接收全部采用數(shù)字編碼與數(shù)字傳輸技術(shù)的新一代電視。它具有可實(shí)現(xiàn)雙向交互業(yè)務(wù)、抗干擾能力強(qiáng)、頻率資源利用率高等優(yōu)點(diǎn)。  

視頻服務(wù)器是數(shù)字電視的關(guān)鍵技術(shù)之一。視頻服務(wù)器類型可分為基于通用計(jì)算機(jī)的服務(wù)器、基于高級(jí)工作站的服務(wù)器、基于專用硬件平臺(tái)的服務(wù)器、分布式層次結(jié)構(gòu)服務(wù)器等 幾類。分布式視頻服務(wù)器結(jié)構(gòu)對(duì)每個(gè)播出服務(wù)器的性能要求不是很高,因此,可以將大量廉價(jià)的服務(wù)器結(jié)合起來(lái),通過(guò)合理的控制和調(diào)度達(dá)到一個(gè)高性能服務(wù)器的功能。本文討論了一種分布式視頻服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)。

1 分布式視頻服務(wù)器的設(shè)計(jì)

1.1 數(shù)字電視視頻服務(wù)器網(wǎng)絡(luò)結(jié)構(gòu)

本文設(shè)計(jì)的分布式視頻服務(wù)器網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。它可以完成從播出計(jì)劃、節(jié)目存儲(chǔ)、播出管理、碼流復(fù)接等一系列工作。   


  
圖1 數(shù)字電視視頻服務(wù)器網(wǎng)絡(luò)結(jié)構(gòu)圖  

1.2 分布式視頻服務(wù)器的功能構(gòu)成
  
節(jié)目單服務(wù)器的功能是生成電子節(jié)目單。它提供人機(jī)交互功能,可以根據(jù)播出計(jì)劃生成電子節(jié)目單,并可對(duì)已有的電子節(jié)目單進(jìn)行編輯、查詢等操作。此外它還可以對(duì)每一個(gè)節(jié)目提供附加信息,如節(jié)目簡(jiǎn)介等。當(dāng)電子節(jié)目單發(fā)生變化時(shí)通知節(jié)目單代理服務(wù)器。  

鏈表,例如根據(jù)節(jié)目是否重播,是否在多個(gè)視頻服務(wù)器上播放相同的節(jié)目等。節(jié)目單代理服務(wù)器根據(jù)更新的節(jié)目單生成相應(yīng)的PSI/SI各種表復(fù)接到TS流中播發(fā)出去。由節(jié)目單數(shù)據(jù)庫(kù)形成播出系統(tǒng)的基本指令是數(shù)字電視特有的系統(tǒng)流程,是網(wǎng)絡(luò)化播出的基礎(chǔ),它使流媒體高效連續(xù)的自動(dòng)化播出得以實(shí)現(xiàn)。  

播出服務(wù)器根據(jù)節(jié)目單代理服務(wù)器提供的播放列表維護(hù)節(jié)目的播放狀態(tài),實(shí)現(xiàn)自動(dòng)播出。播出服務(wù)器一般由多個(gè)服務(wù)器組成,由節(jié)目單代理服務(wù)器調(diào)度。節(jié)目單代理服務(wù)器和播出服務(wù)器通過(guò)底層套接字通信。節(jié)目單代理服務(wù)器向播出服務(wù)器發(fā)送消息,然后播出服務(wù)器解釋該消息以便決定要執(zhí)行什么操作,如在特定的時(shí)間播出特定的節(jié)目。節(jié)目播控是數(shù)字電視節(jié)目平臺(tái)播控系統(tǒng)中重要的組成部分,它的正確、穩(wěn)定、高效運(yùn)行是節(jié)目播出,安全、優(yōu)質(zhì)的保證。整個(gè)節(jié)目播出過(guò)程為自動(dòng)播出無(wú)須人工干預(yù),但可以通過(guò)客戶端對(duì)播出過(guò)程進(jìn)行調(diào)整。  

2 視頻服務(wù)器實(shí)現(xiàn)的關(guān)鍵問(wèn)題   

視頻服務(wù)器涉及的技術(shù)很多,如流調(diào)度、磁盤I/O、磁盤存儲(chǔ)、VCR功能實(shí)現(xiàn)等。本文重點(diǎn)從磁盤和文件調(diào)度與節(jié)目流調(diào)度策略兩個(gè)方面討論提高數(shù)字電視視頻服務(wù)器的整體性能的技術(shù)。  

2.1視頻服務(wù)器的磁盤和文件調(diào)度   

數(shù)字電視視頻服務(wù)器與普通操作系統(tǒng)的磁盤調(diào)度不同,需采用帶有在規(guī)定時(shí)間限制內(nèi)完成的實(shí)時(shí)調(diào)度算法。適合流媒體的調(diào)度算法有EDF、RM、DSr等。LMD(Least Missed Deadline)算法是對(duì)服務(wù)超時(shí)限數(shù)作為優(yōu)化對(duì)象的實(shí)時(shí)調(diào)度算法。本文采用一種稱為貪婪LMD的調(diào)度算法GLMD。GLMD算法的核心為:(1)精確地計(jì)算服務(wù)每一個(gè)請(qǐng)求的時(shí)間,提高優(yōu)化結(jié)果的可信度;(2)尋找服務(wù)超時(shí)限數(shù)最小的服務(wù)隊(duì)列為最佳隊(duì)列;(3)在滿足服務(wù)時(shí)限的請(qǐng)求時(shí),利用SCAN算法服務(wù)處在其移動(dòng)路線上的請(qǐng)求。  

設(shè)原服務(wù)隊(duì)列為?鄢q,新加入的服務(wù)請(qǐng)求為?鄢r,best_Deadline為原最佳服務(wù)隊(duì)列超時(shí)限數(shù),new_Deadline為插入新請(qǐng)求后服務(wù)隊(duì)列超時(shí)限數(shù),best_time為原最佳服務(wù)隊(duì)列總服務(wù)時(shí)間,new_time為插入新請(qǐng)求后服務(wù)隊(duì)列總服務(wù)時(shí)間,具體的GLMD算法如下所示:   

void sbull_request(request_queue * q,request * r)
{
best_Deadline=+∞;
new_time=+∞;
while(1)  
{for(i=0;i add_queue( * r,i); / * 把請(qǐng)求插入隊(duì)列i的位置 * /  
int new_Deadline=compute_Deadline( * q);/ * 計(jì)算當(dāng)前  
/ * 超限數(shù)Deadline * /  
if(new_Deadline {best_queue= * q;/ * 當(dāng)小于原服務(wù)超時(shí)限數(shù),該服務(wù) * /  best_Deadline=new_Deadline;}/ * 隊(duì)列為最佳服務(wù)隊(duì)列 * /  
if(new_Deadline==best_Deadline)  
{new_time=compute_time( * q);/ * 計(jì)算當(dāng)前總服務(wù)時(shí)間 * /  
if(new_ time {best_queue= * q;/ * 當(dāng)小于原服務(wù)時(shí)間,該服務(wù)隊(duì)列 * /  
best_Deadline=new_Deadline;}/ * 為最佳服務(wù)隊(duì)列 * /
} } } }   

函數(shù)compute_Deadline( * q)主要計(jì)算當(dāng)前隊(duì)列是否有請(qǐng)求超時(shí)限以及有多少個(gè)請(qǐng)求超時(shí)限。函數(shù) compute_time( * q)主要計(jì)算磁頭尋道延時(shí)、磁盤旋轉(zhuǎn)延時(shí)、數(shù)據(jù)傳輸延時(shí)、總線傳輸延時(shí)和命令處理延時(shí)五部分。總線傳輸延時(shí)和命令處理延時(shí)大小相對(duì)穩(wěn)定;數(shù)據(jù)傳輸延時(shí)由磁盤讀取帶寬和數(shù)據(jù)大小決定;磁頭尋道模型有加速、勻速、減速和定位四個(gè)階段,其中加速和減速的加速度恒定。當(dāng)磁頭尋道的距離d為1~4個(gè)磁道時(shí),僅有定位階段;當(dāng)磁頭尋道的距離d(磁道數(shù))為4400時(shí),磁頭尋道有加速、勻速、減速和定位四個(gè)階段。磁頭尋道延時(shí)計(jì)算公式如下:   

  

磁盤旋轉(zhuǎn)延時(shí)為旋轉(zhuǎn)等待時(shí)間,可取其數(shù)據(jù)期望值,即磁盤旋轉(zhuǎn)一周所需時(shí)間的一半。  


  在Windows平臺(tái)實(shí)現(xiàn)時(shí),有二種途徑:(1)寫一個(gè)lower filter掛在disk.sys下,GLMD算法在lower filter中實(shí)現(xiàn)。(2)直接改寫DISK.SYS,其中DISK.SYS的源代碼可以由Microsoft的DDK(Windows Driver Development Kit)得到。在Unix平臺(tái)實(shí)現(xiàn)時(shí),磁盤設(shè)備屬于區(qū)塊設(shè)備, GLMD算法主要改寫區(qū)塊設(shè)備request等相關(guān)函數(shù),磁盤設(shè)備的驅(qū)動(dòng)程序在drivers/ide/下,區(qū)塊設(shè)備的驅(qū)動(dòng)程序的request方法定義在linux/blkdev.h中。  

為了檢驗(yàn)GLMD算法的效果,找到單個(gè)服務(wù)器吞吐量上限(調(diào)度條件),本文做了大量實(shí)驗(yàn),實(shí)驗(yàn)數(shù)據(jù)如表1所示。   

表1 GLMD算法實(shí)驗(yàn)數(shù)據(jù)  



播出節(jié)目為同一個(gè)節(jié)目,平均帶寬為4.2MB,每一路節(jié)目為該節(jié)目的一個(gè)備份,所得結(jié)果為12h和24h檢測(cè)到的超時(shí)限次數(shù)。服務(wù)器硬件配置為:PⅢ Xeon 800/512MB內(nèi)存/SCSI硬盤/100MB自適應(yīng)網(wǎng)卡。  

2.2 節(jié)目流調(diào)度策略  

MPEG碼流不是碼率恒定的。本文實(shí)現(xiàn)的視頻服務(wù)器采用內(nèi)存緩沖平滑策略:每次磁盤訪問(wèn)連續(xù)讀取相對(duì)大數(shù)據(jù)量的數(shù)據(jù),數(shù)據(jù)首先緩存于內(nèi)存中,平滑MPEG碼流的突發(fā)碼流,并減少磁盤訪問(wèn)次數(shù)。在實(shí)際處理時(shí),針對(duì)不同的視頻流碼率和當(dāng)前總輸出緩沖區(qū)的情況,對(duì)每一個(gè)視頻流確定一個(gè)讀取文件的輸入緩沖區(qū)。總輸出碼率與所有數(shù)據(jù)文件的總碼率有關(guān)。  

2.2.1 視頻流文件讀取   

實(shí)驗(yàn)表明,通過(guò)讀取大的請(qǐng)求(64KB),一次讀取磁盤上的若干數(shù)據(jù)塊,繞過(guò)文件系統(tǒng)作緩存可以使處理器開銷減小一個(gè)數(shù)量級(jí),從以前的每字節(jié)兩個(gè)機(jī)器指令減少到每字節(jié)0.2個(gè)機(jī)器指令。對(duì)于所有大于8KB的請(qǐng)求,無(wú)緩沖的順序讀取達(dá)到了磁盤傳輸率的極限,并且磁盤控制器的預(yù)取機(jī)制起到了流水線的并行作用,使驅(qū)動(dòng)器讀操作可以達(dá)到內(nèi)部傳輸率的極限。經(jīng)過(guò)實(shí)驗(yàn),本文選擇了每隔0.3s進(jìn)行連續(xù)文件訪問(wèn),每次I/O操作讀取數(shù)據(jù)為64KB的讀取方式。  

2.2.2 輸入緩沖區(qū)   

輸入緩沖區(qū)操作根據(jù)2個(gè)閾值進(jìn)行,即大于A%為滿,小于B%為空。A、B這兩個(gè)閾值的選擇很重要。每次進(jìn)行輸入緩沖區(qū)操作前,檢測(cè)輸入緩沖區(qū)的狀態(tài)。當(dāng)緩沖區(qū)快滿時(shí),暫停并等待下一次進(jìn)行輸入緩沖區(qū)操作;同樣,每次完成輸入緩沖區(qū)操作后,檢測(cè)輸入緩沖區(qū)的狀態(tài)。當(dāng)緩沖區(qū)快空時(shí),重復(fù)輸入緩沖區(qū)操作,防止緩沖區(qū)出現(xiàn)下溢,處理更多的傳輸流分組。具體操作如下。   

(1)輸入緩沖區(qū)操作

while(!EndOfFile){  
每隔0.3s處理如下操作
if(緩沖區(qū)的狀態(tài)<A%){
do{進(jìn)行緩沖區(qū)操作} until (緩沖區(qū)的狀態(tài)>B%)  
}
}

(2)參數(shù)選擇

輸入緩沖區(qū)參數(shù)選擇:A=65,B=35,主要依賴于表2實(shí)驗(yàn)數(shù)據(jù)。   


  
表2 輸入緩沖區(qū)參數(shù)實(shí)驗(yàn)數(shù)據(jù)  

(3)輸入緩沖區(qū)操作舉例
  
當(dāng)三個(gè)輸入流的緩沖區(qū)占用情況分別為圖2所示的50%、71%、32%時(shí),若此時(shí)正處于0.3s輸入緩沖區(qū)操作周期,對(duì)于流A和C進(jìn)行輸入緩沖區(qū)操作,對(duì)于流B暫停并等待下一次進(jìn)行輸入緩沖區(qū)操作;若此時(shí)剛完成輸入緩沖區(qū)操作,則對(duì)于流A和B暫停并等待下一次輸入緩沖區(qū)操作,對(duì)于流C重復(fù)輸入緩沖區(qū)操作,如圖2所示。   


  
圖2 輸入緩沖區(qū)操作舉例  

2.2.3 輸出緩沖區(qū)   

MPEG傳輸流的時(shí)間信息保存在PCR中,MPEG節(jié)目流音視頻的時(shí)間信息保存在視頻、音頻流中攜帶的PTS、DTS中。所以視頻服務(wù)器需要進(jìn)行計(jì)算得到輸出碼流中每一路節(jié)目的分碼率,并根據(jù)每一路節(jié)目的分碼率進(jìn)行輸出緩沖區(qū)操作,把每一路節(jié)目的輸入緩沖區(qū)的數(shù)據(jù)加上時(shí)間信息(PCR)發(fā)送到輸出緩沖區(qū)。    


  
由于視頻服務(wù)器的輸出速率基本恒定,所以視頻服務(wù)器還需要根據(jù)傳輸速率與每一路節(jié)目的分碼率總和的差向輸出緩沖區(qū)加入空的數(shù)據(jù)包。這樣輸出緩沖區(qū)就可以按照恒定的傳輸速率發(fā)送數(shù)據(jù)。  

本文提出的數(shù)字電視視頻服務(wù)器設(shè)計(jì)方案已成功應(yīng)用于遼寧鞍山數(shù)字電視系統(tǒng)中,收到了良好的經(jīng)濟(jì)和社會(huì)效益。該設(shè)計(jì)也可以推廣應(yīng)用到分布式視頻服務(wù)器、視頻點(diǎn)播服務(wù)器(VOD)、準(zhǔn)視頻點(diǎn)播服務(wù)器(NVOD)中。這樣對(duì)每個(gè)視頻服務(wù)器的性能要求不是很高,可以將大量廉價(jià)的服務(wù)器結(jié)合起來(lái),通過(guò)合理的控制和調(diào)度,完成一個(gè)高性能數(shù)字電視視頻服務(wù)器集群的功能。
本文地址:http://m.qingdxww.cn/thread-24518-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級(jí)模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一级黄色毛片| 色婷婷一区二区三区四区成人网| 日韩精品亚洲精品485页| 亚洲产国偷v产偷v自拍涩爱| 网红刘婷hd国产高清| 在线播放欧美| 久久亚洲国产精品亚洲| 桃花论坛POWERED2019| 午夜性a一级毛片| 亚洲精品福利网站| 日日天天干| 婷婷麻豆| 国产 亚洲 中文字幕 在线| 女人精69xxxxx舒心| 欧美亚洲激情视频| 日日拍夜夜操| 亚洲成人免费看| proburn中文破解版下载| 看看妇女的B免费看| 一本道高清码v京东热| 亚洲福利国产| 日韩黄色在线视频| 天天干天天狠| 2021国产精品一卡2卡三卡4卡| 黑色丝袜在线观看| 亚洲XXX午休国产熟女屁| 亚洲资源在线视频| 天天看天天射天天视频| 午夜第九达达兔鲁鲁| 广西美女色炮150p图| 亚洲精品97福利在线| 热99在线观看| 色播五月激情五月| 亚洲精品欧美综合| 极品 女神校花 露脸91| 亚洲另类国产综合在线| 亚洲欧美国产精品久久久| 色综合色狠狠天天久久婷婷基地| 四虎午夜影院| 67194成网页发布在线观看| 日本久久中文字幕|