新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 實現離屏視頻幀合成與分解的可移植可擴展解決方案

        實現離屏視頻幀合成與分解的可移植可擴展解決方案

        作者: 時間:2014-03-18 來源:網絡 收藏

        3.0 實現

        離屏幀合成器/分解器功能可以有多種實現方式:

        3.1 使用獨立于平臺的算法

        這種方法采用可以在CPU上運行的通用算法。雖然這種實現具有很好的可移植性,但會導致CPU負擔過重。這是因為幀的合成/分解過程通常包含以下一些操作:

        ●縮放或重新調整視頻幀尺寸(放大或縮小)

        ●輸入視頻幀在輸出幀中的定位

        ●輸入幀的剪切

        ●輸出幀的剪切

        ●輸入通道的Alpha混合

        ●輸入/輸出幀的旋轉

        在幀速率為30fps的視頻流情況下,這些操作必須以1/30s即33.33ms的幀周期執行。如果幀的像素分辨率更高,比如720p、1080p,那么處理這些幀將成為CPU很重的負擔。CPU負擔的加重將導致不良的用戶界面,因為I/O互動少了。如果處理器不能在如此短的幀周期內處理完一幀,那么在幀合成過程中有可能發生丟幀現象。

        3.2 使用特殊平臺

        一些嵌入式處理器提供特殊平臺的硬件實現,它們實際上是用硬件方式實現的多相過濾器,可以針對不同縮放比例提供可編程的過濾系數。

        為了在應用程序中發揮這種特殊平臺功能,CPU芯片供應商將提供定制的設備驅動程序。我們可以通過設備驅動程序使用這種縮放器來實現合成功能。應用程序可以利用不同的輸入/輸出剪切參數一次調整一個輸入幀并合成到輸出幀中。一旦縮放器調整好了一個輸入幀的大小并將它放到輸入幀中,它就會向CPU內核發出中斷信號。

        針對將N個輸入幀合成到一個輸出幀的應用而言,它必須在一個幀周期內完成N次尺寸調整操作。這些縮放器非常高效,可以在可接受的時間限制內完成縮放處理。合成幀的輸出幀速率取決于單次縮放操作所占用的時間。

        如果是N到1的合成、并且輸入/輸出幀具有相同的像素分辨率,那么

        N代表輸入數量

        T代表一次縮放操作所花的時間

        如果合成中的輸入/輸出幀具有不同的像素分辨率,那么:

        Tn代表將第n個輸入通道的幀縮放后放到輸出通道所花的時間。其中n:0->N

        上述公式同樣可以應用于具有一個輸入和N個輸出通道的分解器。

        雖然使用這種方法可以提供高效的解決方案,但它不具有可移植性。這些硬件功能對嵌入式處理器來說是特定的。要么不同的嵌入式處理器不一定有這些功能,要么是以不同的方式實現,具有不同的功能清單。

        控制這些定制硬件的設備驅動程序提供的接口和功能在每種嵌入式處理器上是不同的。而且一般來說,像旋轉、Alpha混合等功能無法用這種縮放器硬件來實現。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 武山县| 阿荣旗| 铅山县| 长垣县| 西乌珠穆沁旗| 祁阳县| 左权县| 双江| 光泽县| 昆明市| 太仓市| 鱼台县| 乐至县| 呈贡县| 资阳市| 横山县| 洱源县| 邮箱| 中超| 岐山县| 盖州市| 克拉玛依市| 永和县| 离岛区| 沅陵县| 休宁县| 于田县| 谷城县| 山西省| 合川市| 桐城市| 普格县| 沈阳市| 遂平县| 佛学| 庄河市| 化州市| 宜良县| 班戈县| 雅安市| 南雄市|