手機電視(DVB-H)軟件接收器

圖13完整MPE-FEC機制運作與單純RS解碼的平均執行時間
由圖13可知整個MPE-FEC機制的運作時間大多花費在RS譯碼上,因此本研究進一步將RS譯碼使用C/C++并且使用RS內部不同的譯碼算法透過Java的JNI(JavaNativeInterface)呼叫在Windows上執行完整的MPE-FEC機制,其執行解果如圖14所呈現。

圖14Java與C/C++以及不同算法在Windows上的平均執行時間
雖然就執行時間上來看,使用C/C++并采用BM算法的譯碼時間較短,但對于表5所擷取到的Delta-T時間(1250毫秒)而言,仍無法達到DVB-H接收端的實時播放。因此,再進一步測試在Linux系統上不同算法的C/C++語言執行時間并與Windows的執行時間匯整而得到圖15。

圖15不同操作系統下,C/C++使用不同算法的執行時間
在Linux操作系統上執行完整的MPE-FEC機制運作后所得到的平均執行時間均小于在Windows上的執行時間。此外,使用BM算法在Linux與Windows上的執行時間更相差約略2.5秒,并且已能符合DVB-H接收端實時播放的時間要求。
最后在Windows將測試檔案加入錯誤后,再透過本研究所設計的軟件系統進行糾錯之后所得的數據存成檔案再進行播放。
6、結論
本研究利用純軟件的方式來仿真實作DVB-HMPE-FEC糾錯機制,并確實能修復還原添加于測試檔案中的錯誤,雖然于Windows操作系統上的數據處理時間已超過實時播放的時間要求,但在Linux上采用BM算法的RS譯碼測試實驗結果,卻已符合實時播放的限制條件。因此,以系統的執行時間及實時播放的角度來看,對于往后的軟件設計實作,在Linux上實現,或許會比在Windows上更為理想。
評論