国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      處理幀傳輸速率的方法及裝置、計(jì)算機(jī)軟件產(chǎn)品的制作方法

      文檔序號:7658846閱讀:228來源:國知局
      專利名稱:處理幀傳輸速率的方法及裝置、計(jì)算機(jī)軟件產(chǎn)品的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及幀率控制技術(shù),特別是一種處理幀傳輸速率的方法及裝置、計(jì)算機(jī)軟件產(chǎn)品。
      背景技術(shù)
      視頻幀率即每秒處理圖像的幀數(shù),單位為幀/秒,視頻幀率取決于編解碼系統(tǒng)的處理速度,因此在很多場合在進(jìn)行視頻處理時(shí)都需要對視頻幀率進(jìn)行變換,如IP視頻。
      對視頻幀率升高的變化稱之為升幀率處理,反之稱為降幀率處理,如對XGA/SVGA(Extend Graphic Array/Super Video Graphic Array,擴(kuò)展圖形陣列/超級視頻圖形陣列)視頻幀率從5幀/s、8幀/s變換到85幀/s、75幀/s、60幀/s,或者從85幀/s、75幀/s、60幀/s變換到5幀/s、8幀/s。
      利用降幀率處理,可以使得DSP(Digital Signal Process,數(shù)字信號處理)芯片能對低幀率的視頻進(jìn)行編解碼,然后通過IP網(wǎng)絡(luò)轉(zhuǎn)發(fā)給對端設(shè)備,對端設(shè)備對該視頻流解碼后,再通過升幀率處理就可以進(jìn)行本地播放XGA/SVGA視頻了。
      現(xiàn)有技術(shù)中,對升幀率處理主要采用固定的對每幀復(fù)制一定倍數(shù)后輸出的方法,而降幀處理采用固定的從多少幀中抽取一幀的方法實(shí)現(xiàn)。
      如需要將85幀/s的視頻降幀處理成5幀/s的視頻,則對輸入的85幀抽取固定的5幀,為抽取的均勻性考慮,則每17幀抽取一幀;而如需要將5幀/s的視頻升幀處理成85幀/s的視頻,則固定的對每幀復(fù)制17次輸出。
      然而上述的固定間隔抽取的降幀處理方法和每幀復(fù)制固定倍數(shù)的升幀處理方法存在以下缺點(diǎn)由于視頻流輸入接口側(cè)和輸出接口側(cè)使用的是不同的時(shí)鐘源,雖然可以將不同的時(shí)鐘源設(shè)置為相同的頻率,但是還是很可能存在一定的時(shí)鐘偏差。當(dāng)存在時(shí)鐘偏差時(shí),如果按照現(xiàn)有技術(shù)由輸出接口側(cè)定時(shí)從輸入接口側(cè)的視頻流讀取幀,則所提取的幀的內(nèi)容很可能出錯(cuò)。
      例如,如果輸出接口側(cè)讀取幀的速度較慢,則當(dāng)輸出接口側(cè)讀取某一幀的內(nèi)容時(shí),由于其讀取速度慢,在還沒有讀完這一幀的內(nèi)容時(shí)輸入接口側(cè)已經(jīng)發(fā)出了下一幀將本幀的內(nèi)容覆蓋,這樣,輸出接口側(cè)只能讀取到本幀的部分內(nèi)容,還有可能讀取到部分下一幀的內(nèi)容,使得讀取到的幀的內(nèi)容混亂;如果輸出接口側(cè)讀取幀的速度較快,則輸出接口側(cè)在本幀還沒有完整傳輸時(shí)便已經(jīng)結(jié)束了讀取,使得讀取到的幀的內(nèi)容殘缺不全。
      上述的問題也同樣存在于其他類型的幀的處理。

      發(fā)明內(nèi)容
      本發(fā)明的目的在于提供一種處理幀傳輸速率的方法及裝置、計(jì)算機(jī)軟件產(chǎn)品,以實(shí)現(xiàn)簡單有效的幀幀率的降低或升高處理。
      為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種降低幀傳輸速率的裝置,包括多個(gè)幀暫存模塊,用于保存幀數(shù)據(jù);高速幀輸入端口,用于抽取完整的高速幀,存入各所述幀暫存模塊;低速幀輸出端口,用于在幀暫存模塊中存入高速幀后,根據(jù)預(yù)定的低速幀的幀率依序從各幀暫存模塊讀出完整的高速幀并傳輸;所述高速幀輸入端口還用于向被讀出幀的幀暫存模塊中存入完整的新的高速幀。
      上述的降低幀傳輸速率的裝置,其中,所述緩存模塊的容量至少不小于一幀高速幀的數(shù)據(jù)量。
      上述的降低幀傳輸速率的裝置,其中,所述幀暫存模塊的數(shù)量為2個(gè),且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      為了更好的實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種提高幀傳輸速率的裝置,包括多個(gè)幀暫存模塊,用于保存幀數(shù)據(jù);低速幀輸入端口,用于將完整的低速幀依序存入各所述幀暫存模塊;高速幀輸出端口,用于根據(jù)預(yù)定的高速幀的幀率讀取幀暫存模塊中的完整的低速幀并傳輸,并在其他幀暫存模塊中存入新的低速幀后,切換到所述其他幀暫存模塊,根據(jù)預(yù)定的高速幀的幀率讀出完整的低速幀并傳輸。
      上述的提高幀傳輸速率的裝置,其中,所述緩存模塊的容量不小于一幀低速幀的數(shù)據(jù)量。
      上述的提高幀傳輸速率的裝置,其中所述緩存模塊的數(shù)量為2個(gè),且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      為了更好的實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種降低幀傳輸速率的方法,包括設(shè)置至少兩個(gè)與高速幀輸入端口相連的幀暫存模塊;從高速幀輸入端口抽取完整的高速幀分別存入各所述幀暫存模塊;幀暫存模塊中存入高速幀后,低速幀輸出端口根據(jù)預(yù)定的低速幀的幀率依序從各幀暫存模塊讀出完整的高速幀并傳輸;高速幀輸入端口抽取新的高速幀,存入被讀出幀的幀暫存模塊。
      上述的降低幀傳輸速率的方法,其中,所述幀暫存模塊的容量至少不小于一幀高速幀的數(shù)據(jù)量,且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      上述的降低幀傳輸速率的方法,其中,根據(jù)高速幀的幀頭及幀尾信息確定完整的幀的存入和讀取。
      為了更好的實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種提高幀傳輸速率的方法,包括設(shè)置至少兩個(gè)與低速幀輸入端口相連的幀暫存模塊;低速幀輸入端口將完整的低速幀依序存入各所述幀暫存模塊;高速幀輸出端口檢測到幀暫存模塊中存入低速幀后,根據(jù)預(yù)定的高速幀的幀率讀取完整的低速幀并傳輸;高速幀輸出端口檢測到其他幀暫存模塊中存入新的低速幀后,切換到所述的其他幀暫存模塊,根據(jù)預(yù)定的高速幀的幀率讀出完整的低速幀并傳輸。
      上述的提高幀傳輸速率的方法,其中,所述幀暫存模塊的容量至少不小于一幀低速幀的數(shù)據(jù)量,且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      上述的提高幀傳輸速率的方法,其中,根據(jù)低速幀的幀頭及幀尾信息確定完整的幀的存入和讀取。
      為了更好的實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種計(jì)算機(jī)軟件產(chǎn)品,包括若干指令,用于使得計(jì)算機(jī)設(shè)備執(zhí)行上述的方法。
      本發(fā)明在降幀率處理時(shí),沒有限制要抽取的幀,而是利用入口視頻流和出口視頻流之間的幀率,利用出口速度來選擇入口視頻流的幀,實(shí)現(xiàn)了自適應(yīng)動態(tài)調(diào)整;而在升幀率處理時(shí),利用入口速度來決定出口視頻流的復(fù)制倍數(shù),實(shí)現(xiàn)了自適應(yīng)動態(tài)調(diào)整。尤其對于視頻幀來說,充分利用了視頻幀連續(xù)播放的特性對人眼產(chǎn)生的視覺效果,利用本發(fā)明的方法和裝置所處理的視頻幀輸出后對人眼而言沒有任何的區(qū)別。
      本發(fā)明進(jìn)行幀率轉(zhuǎn)換,當(dāng)出口和入口存在頻偏時(shí),不需要進(jìn)行跳幀或重讀幀操作,實(shí)現(xiàn)簡單,而且對人眼來說不存在差別。


      圖1為本發(fā)明的實(shí)施例的視頻幀率處理裝置的結(jié)構(gòu)示意圖;圖2為本發(fā)明的第一實(shí)施例的視頻幀率處理方法的流程示意圖;圖3為本發(fā)明的方法實(shí)際處理時(shí)的示意圖;圖4、5和6分別為降幀處理輸出的出口視頻流的可能的示意圖;圖7、8和9分別為升幀處理輸出的出口視頻流的可能的示意圖。
      具體實(shí)施例方式
      本發(fā)明適用于所有的幀的幀率的處理,但為方便起見,在具體實(shí)施例中是以視頻幀率的處理為例進(jìn)行說明。
      從圖像的連續(xù)播放的特性來看,對于視頻幀率的處理,無需關(guān)心入口視頻流的幀率,只需要在出口輸出的幀滿足連續(xù)不斷流即可,本發(fā)明即基于該特性對視頻幀率進(jìn)行處理,降幀處理時(shí),不限定抽取的幀,注重被抽幀的數(shù)據(jù)完整性,而升幀處理時(shí)不限定重復(fù)的次數(shù),都進(jìn)行自適用動態(tài)調(diào)整。
      為方便理解和描述,下面先對本發(fā)明涉及到的幾個(gè)概念進(jìn)行說明。
      入口視頻流,未經(jīng)視頻幀率處理的視頻流;出口視頻流,經(jīng)過視頻幀率處理后輸出的視頻流。
      &lt;第一實(shí)施例&gt;
      本發(fā)明的第一實(shí)施例以降幀處理為例進(jìn)行說明。對于降幀處理,本發(fā)明裝置和方法中采用“入口速度取決于出口速度”的原則進(jìn)行處理。
      本發(fā)明的第一實(shí)施例的視頻幀率處理裝置如圖1所示,包括視頻幀暫存模塊,包括用于保存視頻幀數(shù)據(jù),且大小均為一幀視頻數(shù)據(jù)的第一視頻幀暫存模塊和第二視頻幀暫存模塊;計(jì)數(shù)模塊,用于記錄視頻幀暫存模塊中的視頻幀數(shù)量;視頻幀寫模塊,用于在計(jì)數(shù)模塊指示視頻幀暫存模塊中的視頻幀數(shù)量少于2個(gè)時(shí),將入口視頻流的當(dāng)前幀完整寫入到視頻幀暫存模塊;視頻幀讀模塊,用于在計(jì)數(shù)器指示視頻幀暫存模塊中暫存有視頻幀時(shí),根據(jù)預(yù)設(shè)的出口視頻流的幀率從第一視頻幀暫存模塊和第二視頻幀暫存模塊交替并完整讀取其中保存的視頻幀。
      該計(jì)數(shù)模塊在視頻幀寫模塊往視頻幀暫存模塊寫入一幀視頻數(shù)據(jù)時(shí)將視頻幀暫存模塊中的視頻幀數(shù)量加1,而在視頻幀讀模塊從視頻幀暫存模塊讀取一幀視頻數(shù)據(jù)時(shí)將視頻幀暫存模塊中的視頻幀數(shù)量減1。
      其中,該第一視頻幀暫存模塊和第二視頻幀暫存模塊為邏輯內(nèi)部的內(nèi)存空間。
      本發(fā)明的第一實(shí)施例的視頻幀率處理方法如圖2所示,包括初始步驟,設(shè)置大小均為一幀視頻數(shù)據(jù)的第一視頻幀暫存模塊和第二視頻幀暫存模塊;計(jì)數(shù)步驟,記錄并更新視頻幀暫存模塊中的視頻幀數(shù)量;視頻幀寫步驟,在計(jì)數(shù)步驟的計(jì)數(shù)結(jié)果小于2時(shí),將入口視頻流的當(dāng)前幀寫入第一視頻幀暫存模塊或第二視頻幀暫存模塊;視頻幀讀步驟,在計(jì)數(shù)步驟的計(jì)數(shù)結(jié)果大于0時(shí),根據(jù)預(yù)設(shè)的出口視頻流的幀率從第一視頻幀暫存模塊和第二視頻幀暫存模塊交替讀取其中保存的視頻幀數(shù)據(jù)。
      視頻幀寫步驟每寫入一視頻幀,則計(jì)數(shù)步驟將原來的視頻幀數(shù)量加1,相應(yīng)的,視頻幀讀步驟每讀出一視頻幀,則計(jì)數(shù)步驟將原來的視頻幀數(shù)量減1。
      下面以視頻幀率從100幀/s變化到20幀/秒的情況(降幀率處理)為例進(jìn)行說明,其中計(jì)數(shù)模塊為一計(jì)數(shù)器。
      如圖3所示,本發(fā)明的第一實(shí)施例的視頻幀率的處理方法具體如下步驟步驟21,視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(假設(shè)為第一幀frame1)寫入到第一視頻幀暫存模塊,并置計(jì)數(shù)器的值為1;步驟22,視頻幀讀模塊判斷出計(jì)數(shù)器值為1,從第一視頻幀暫存模塊讀出frame 1并輸出,同時(shí)讀出frame 1后,計(jì)數(shù)器的值變?yōu)?,這表明視頻幀暫存模塊中的視頻幀數(shù)量少于2個(gè);步驟23,0.01s時(shí)視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(frame 2)寫入到第二視頻幀暫存模塊,并置計(jì)數(shù)器的值為1,0.02s時(shí)視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(frame 3)寫入到第一視頻幀暫存模塊,并置計(jì)數(shù)器的值為2,并暫停寫入視頻幀;步驟24,0.05s時(shí)視頻幀讀模塊從第二視頻幀暫存模塊讀出frame 2并輸出,計(jì)數(shù)器的值變?yōu)?;步驟25,視頻幀寫模塊將入口視頻流的幀frame 6(由于此時(shí)過去了0.05s的時(shí)間,入口視頻流走過了5幀,因此當(dāng)前幀為frame 6)寫入第二視頻幀暫存模塊計(jì)數(shù)器的值變?yōu)?,并暫停寫入視頻幀;步驟26,0.10s時(shí)視頻幀讀模塊從第一視頻幀暫存模塊讀出frame 3并輸出,計(jì)數(shù)器的值變?yōu)?;步驟27,視頻幀寫模塊將入口視頻流的幀frame 11(對于此0.10s的時(shí)間,入口視頻流走過了10幀,因此入口視頻流的當(dāng)前幀為frame 11)寫入第一視頻幀暫存模塊,計(jì)數(shù)器的值變?yōu)?,暫停寫入視頻幀;步驟28,0.15s時(shí)視頻幀讀模塊從第一視頻幀暫存模塊讀出frame 6并輸出,計(jì)數(shù)器的值變?yōu)?;步驟29,視頻幀寫模塊將入口視頻流的幀frame 16(對于此0.15s的時(shí)間,入口視頻流走過了15幀,因此入口視頻流的當(dāng)前幀為frame 16)寫入第二視頻幀暫存模塊,計(jì)數(shù)器的值變?yōu)?,暫停寫入視頻幀;步驟30,0.20s時(shí)視頻幀讀模塊從第二視頻幀暫存模塊讀出frame 11并輸出,計(jì)數(shù)器的值變?yōu)?;步驟31,視頻幀寫模塊依次將入口視頻流的frame 21、frame 26、frame 31寫入視頻幀暫存模塊,而視頻幀讀模塊會將frame 16、frame 21、frame 26...讀取后輸出。
      最后輸出的出口視頻流如圖4所示,在理想的情況下,從出口視頻流的第4幀開始,就對入口視頻流的100幀/s的幀率進(jìn)行了5∶1的壓縮,出口視頻流的幀率為20幀/s。
      當(dāng)然,由于兩邊頻偏的存在,最后輸出的出口視頻流也可能是圖5、圖6所示的情況,然而,圖4、圖5和圖6所示的任何一種情況的視頻流都是絕對均勻連續(xù)的完整幀的輸出,同時(shí)對人眼來說是沒有任何區(qū)別的,不用進(jìn)行跳幀或者重讀幀的操作,很好的解決了頻偏帶來的問題。
      在上述的例子中,視頻幀讀模塊在計(jì)數(shù)器的值不為0時(shí)則啟動讀操作,當(dāng)然也可以設(shè)定一視頻幀讀操作啟動時(shí)刻以實(shí)現(xiàn)不同的視頻幀的選擇及輸出。
      下面以0.04s到0.05s之間的時(shí)刻啟動視頻幀讀操作進(jìn)行說明,其包括如下步驟步驟41,視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(假設(shè)為第一幀frame1)寫入到第一視頻幀暫存模塊,并置計(jì)數(shù)器的值為1;步驟42,視頻幀讀模塊判斷出計(jì)數(shù)器值為1,但此時(shí)沒有達(dá)到預(yù)定的視頻幀讀操作啟動時(shí)刻,則不啟動視頻幀讀操作;步驟43,0.01s時(shí)視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(frame 2)寫入到第二視頻幀暫存模塊,并置計(jì)數(shù)器的值為2后,暫停寫入視頻幀;步驟44,到達(dá)視頻幀讀操作啟動時(shí)刻(0.04s到0.05s之間,假設(shè)為0.045s),視頻幀讀模塊判斷出計(jì)數(shù)器值為2,視頻幀讀模塊從第一視頻幀暫存模塊讀出frame 1并輸出,計(jì)數(shù)器的值變?yōu)?;步驟45,0.05s時(shí)視頻幀寫模塊將入口視頻流的frame 6寫入到第一視頻幀暫存模塊,并置計(jì)數(shù)器的值為2;步驟46,0.095s時(shí)視頻幀讀模塊判斷出計(jì)數(shù)器值為2,視頻幀讀模塊從第二視頻幀暫存模塊讀出frame 2并輸出,計(jì)數(shù)器的值變?yōu)?;步驟45,0.10s時(shí)視頻幀寫模塊將入口視頻流的frame 11寫入到第二視頻幀暫存模塊,并置計(jì)數(shù)器的值為2;步驟46,0.145s時(shí)視頻幀讀模塊判斷出計(jì)數(shù)器值為2,視頻幀讀模塊從第一視頻幀暫存模塊讀出frame 6并輸出,計(jì)數(shù)器的值變?yōu)?;步驟47,視頻幀寫模塊依次將入口視頻流的frame 16、frame 21、frame 26...寫入視頻幀暫存模塊,而視頻幀讀模塊會將frame 11、frame 16、frame 21...讀取后輸出。
      在上述的視頻幀讀操作啟動時(shí)刻為0.045s的情況下,輸出的出口視頻流為frame 1、frame 2、frame 6、frame 11、frame 16、frame 21...;當(dāng)然,通過靈活的設(shè)置視頻幀讀操作啟動時(shí)刻,也可能輸出frame 1、frame2、frame 8、frame 13、frame 18、frame 23...等。
      &lt;第二實(shí)施例&gt;
      本發(fā)明的第二實(shí)施例以升幀處理為例進(jìn)行說明。對于升幀處理,本發(fā)明裝置和方法中采用“出口速度取決于入口速度”的原則進(jìn)行處理。
      本發(fā)明的第二實(shí)施例的視頻幀率處理裝置如圖1所示,包括視頻幀暫存模塊,包括用于保存視頻幀數(shù)據(jù),且大小均為一幀視頻數(shù)據(jù)的第一視頻幀暫存模塊和第二視頻幀暫存模塊;計(jì)數(shù)模塊,用于記錄視頻幀暫存模塊中的視頻幀數(shù)量;視頻幀寫模塊,用于將入口視頻流的視頻幀交替寫入到視頻幀暫存模塊;視頻幀讀模塊,用于在計(jì)數(shù)器指示視頻幀暫存模塊中暫存有視頻幀時(shí),根據(jù)出口視頻流的幀率從第一視頻幀暫存模塊或第二視頻幀暫存模塊讀取其中保存的視頻幀數(shù)據(jù),并在計(jì)數(shù)模塊指示視頻幀暫存模塊中的視頻幀數(shù)量為2時(shí)切換視頻幀暫存模塊。
      本發(fā)明的第二實(shí)施例的視頻幀率處理方法包括初始步驟,設(shè)置大小均為一幀視頻數(shù)據(jù)的第一視頻幀暫存模塊和第二視頻幀暫存模塊;計(jì)數(shù)步驟,記錄并更新視頻幀暫存模塊中的視頻幀數(shù)量;視頻幀寫步驟,將入口視頻流的幀交替寫入到視頻幀暫存模塊;視頻幀讀步驟,在計(jì)數(shù)器指示視頻幀暫存模塊中暫存有視頻幀時(shí),根據(jù)出口視頻流的幀率從第一視頻幀暫存模塊或第二視頻幀暫存模塊讀取其中保存的視頻幀數(shù)據(jù),并在計(jì)數(shù)模塊指示視頻幀暫存模塊中的視頻幀數(shù)量為2時(shí)切換視頻幀暫存模塊。
      下面以視頻幀率從20幀/s變化到100幀/秒的情況(降幀率處理)為例進(jìn)行說明,其中計(jì)數(shù)模塊為一計(jì)數(shù)器。
      結(jié)合圖3所示的應(yīng)用,本發(fā)明的第二實(shí)施例的視頻幀率的處理方法具體如下步驟步驟51,視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(假設(shè)為第一幀frame1)寫入到第一視頻幀暫存模塊,并置計(jì)數(shù)器的值為1;步驟52,計(jì)數(shù)器值為1,由于預(yù)設(shè)出口視頻流的幀率為100幀/s,因此視頻幀讀模塊從第一視頻幀暫存模塊以0.01s一次的速度讀出frame 1并輸出,在每次讀取前均判斷計(jì)數(shù)器的值是否為2;在此,考慮寫讀之間的時(shí)間差為0.0001s,因此視頻幀讀模塊會在0.0001s、0.0101s、0.0201s、0.0301s、0.0401s從第一視頻幀暫存模塊讀出frame 1并輸出;步驟53,0.05s時(shí)視頻幀寫模塊將入口視頻流的當(dāng)前幀數(shù)據(jù)(frame 2)寫入到第二視頻幀暫存模塊,并置計(jì)數(shù)器的值為2;步驟54,視頻幀讀模塊切換到第二視頻幀暫存模塊,并以0.01s一次的速度讀出frame 2并輸出;視頻幀讀模塊會在0.0501s、0.0601s、0.0701s、0.0801s、0.0901s從第一視頻幀暫存模塊讀出frame 2并輸出;步驟55,視頻幀寫模塊將入口視頻流的幀數(shù)據(jù)frame 3、frame 4、frame5......交替寫入到第一視頻幀暫存模塊和第二視頻幀暫存模塊;步驟56,視頻幀讀模塊依次將幀數(shù)據(jù)frame 3、frame 4、frame 5......分別讀取5次并輸出。
      最后輸出的出口視頻流如圖7所示,在理想的情況下,對入口視頻流的20幀/s的幀率進(jìn)行了1∶5的提升,出口視頻流的幀率為100幀/s。
      當(dāng)然,由于兩邊頻偏的存在,最后輸出的出口視頻流也可能是圖8、圖9所示的情況,然而,圖7、圖8和圖9所示的任何一種情況對人眼來說是沒有任何區(qū)別的,不用進(jìn)行跳幀或者重讀幀的操作,很好的解決了頻偏帶來的問題。
      當(dāng)然,在第二實(shí)施例中也可以通過設(shè)置視頻幀讀操作啟動時(shí)刻來選擇輸出的起始點(diǎn),如跳過frame1和frame2,直接從frame3開始復(fù)制輸出。
      應(yīng)該了解的是,為了方便說明,上述實(shí)施例是以20幀/s與100幀/s之間的幀率轉(zhuǎn)換(包括升幀率和降幀率)為例進(jìn)行說明,然而本領(lǐng)域普通技術(shù)人員應(yīng)該知道,上述的實(shí)施例可以應(yīng)用于任何幀率的轉(zhuǎn)換,如85幀/s與5幀/s之間的轉(zhuǎn)換,50幀/s與17幀/s之間的轉(zhuǎn)換。
      同時(shí),應(yīng)該說明的是,在上述的實(shí)施例中,是以2個(gè)視頻幀暫存模塊,且其大小正好為1幀數(shù)據(jù)為例進(jìn)行的說明,本發(fā)明同樣適用于多于2個(gè)視頻幀暫存模塊,此外,幀暫存模塊的大小也可以大于1幀數(shù)據(jù),即確保有足夠的容量存儲數(shù)據(jù)幀。
      通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必須的通用硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但顯然前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(這里所說的計(jì)算機(jī)設(shè)備是一個(gè)廣義的概念,包括但不限于個(gè)人計(jì)算機(jī),服務(wù)器,網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明實(shí)施例所述方法。
      以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
      權(quán)利要求
      1.一種降低幀傳輸速率的裝置,其特征在于,包括多個(gè)幀暫存模塊,用于保存幀數(shù)據(jù);高速幀輸入端口,用于抽取完整的高速幀,存入各所述幀暫存模塊;低速幀輸出端口,用于在幀暫存模塊中存入高速幀后,根據(jù)預(yù)定的低速幀的幀率依序從各幀暫存模塊讀出完整的高速幀并傳輸;所述高速幀輸入端口還用于向被讀出幀的幀暫存模塊中存入完整的新的高速幀。
      2.根據(jù)權(quán)利要求1所述的降低幀傳輸速率的裝置,其特征在于,所述緩存模塊的容量至少不小于一幀高速幀的數(shù)據(jù)量。
      3.根據(jù)權(quán)利要求2所述的降低幀傳輸速率的裝置,其特征在于,所述幀暫存模塊的數(shù)量為2個(gè),且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      4.一種提高幀傳輸速率的裝置,其特征在于,包括多個(gè)幀暫存模塊,用于保存幀數(shù)據(jù);低速幀輸入端口,用于將完整的低速幀依序存入各所述幀暫存模塊;高速幀輸出端口,用于根據(jù)預(yù)定的高速幀的幀率讀取幀暫存模塊中的完整的低速幀并傳輸,并在其他幀暫存模塊中存入新的低速幀后,切換到所述其他幀暫存模塊,根據(jù)預(yù)定的高速幀的幀率讀出完整的低速幀并傳輸。
      5.根據(jù)權(quán)利要求4所述的提高幀傳輸速率的裝置,其特征在于,所述緩存模塊的容量不小于一幀低速幀的數(shù)據(jù)量。
      6.根據(jù)權(quán)利要求4所述的提高幀傳輸速率的裝置,其特征在于,所述緩存模塊的數(shù)量為2個(gè),且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      7.一種降低幀傳輸速率的方法,其特征在于,包括設(shè)置至少兩個(gè)與高速幀輸入端口相連的幀暫存模塊;從高速幀輸入端口抽取完整的高速幀分別存入各所述幀暫存模塊;幀暫存模塊中存入高速幀后,低速幀輸出端口根據(jù)預(yù)定的低速幀的幀率依序從各幀暫存模塊讀出完整的高速幀并傳輸;高速幀輸入端口抽取新的高速幀,存入被讀出幀的幀暫存模塊。
      8.根據(jù)權(quán)利要求7所述的降低幀傳輸速率的方法,其特征在于,所述幀暫存模塊的容量至少不小于一幀高速幀的數(shù)據(jù)量,且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      9.根據(jù)權(quán)利要求7所述的降低幀傳輸速率的方法,其特征在于,根據(jù)高速幀的幀頭及幀尾信息確定完整的幀的存入和讀取。
      10.一種提高幀傳輸速率的方法,其特征在于,包括設(shè)置至少兩個(gè)與低速幀輸入端口相連的幀暫存模塊;低速幀輸入端口將完整的低速幀依序存入各所述幀暫存模塊;高速幀輸出端口檢測到幀暫存模塊中存入低速幀后,根據(jù)預(yù)定的高速幀的幀率讀取完整的低速幀并傳輸;高速幀輸出端口檢測到其他幀暫存模塊中存入新的低速幀后,切換到所述的其他幀暫存模塊,根據(jù)預(yù)定的高速幀的幀率讀出完整的低速幀并傳輸。
      11.根據(jù)權(quán)利要求10所述的提高幀傳輸速率的方法,其特征在于,所述幀暫存模塊的容量至少不小于一幀低速幀的數(shù)據(jù)量,且?guī)瑫捍婺K為邏輯內(nèi)部的內(nèi)存空間。
      12.根據(jù)權(quán)利要求10所述的提高幀傳輸速率的方法,其特征在于,根據(jù)低速幀的幀頭及幀尾信息確定完整的幀的存入和讀取。
      13.一種計(jì)算機(jī)軟件產(chǎn)品,其特征在于,包括若干指令,用于使得計(jì)算機(jī)設(shè)備執(zhí)行如權(quán)利要求7~12所述的方法。
      全文摘要
      本發(fā)明公開了一種處理幀傳輸速率的方法及裝置、計(jì)算機(jī)軟件產(chǎn)品,其中的降低幀傳輸速率的裝置包括多個(gè)幀暫存模塊,用于保存幀數(shù)據(jù);高速幀輸入端口,用于抽取完整的高速幀,存入各所述幀暫存模塊;低速幀輸出端口,用于在幀暫存模塊中存入高速幀后,根據(jù)預(yù)定的低速幀的幀率依序從各幀暫存模塊讀出完整的高速幀并傳輸;所述高速幀輸入端口還用于向被讀出幀的幀暫存模塊中存入完整的新的高速幀。利用本發(fā)明進(jìn)行幀率轉(zhuǎn)換,當(dāng)出口和入口存在頻偏時(shí),不需要進(jìn)行跳幀或重讀幀操作,實(shí)現(xiàn)簡單。
      文檔編號H04N7/26GK101026752SQ20071013599
      公開日2007年8月29日 申請日期2007年3月15日 優(yōu)先權(quán)日2007年3月15日
      發(fā)明者謝梃 申請人:杭州華為三康技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1