“實現‘可變碼率’,最大的技術難點是什么?”
錢斌想了想,“是……是‘預測’。我們無法準確地預測,下一幀畫面到底是什么。也就無法提前分配一個合適的碼率。”
林逸點了點頭,“既然無法‘預測未來’,我們為什么不換一種思路——‘回顧過去’?”
“我叫它,‘兩遍編碼法’!”
“第一遍讓編碼器,快速地把所有內容‘看’一遍!但不輸出任何數據,我們只記錄每一幀畫面的‘復雜度日志’!哪里是安靜的文戲,哪里是激烈的打斗,全部記錄下來!”
“第二遍才是真正的編碼!這一次編碼器,手里已經有了一份完整的‘劇本’!它知道,第幾分鐘,會出現爆炸!第幾秒,會有特寫!它可以根據這份‘復雜度日志’,進行全全局碼率分配!”
“它,不再是摸著石頭過河的‘預測者’!”
“它,是手握著標準答案,回頭去做題的……‘先知’!”
“兩遍編碼法”!
這個在后世,被視頻壓縮軟件奉為圭臬的、也最高效的vbr實現方案,呈現在了1989年的中國!
當林逸講解完整個算法的邏輯閉環時。
錢斌和他的“夢之隊”,看著那個閃耀著智慧光芒的算法模型,眼中的迷茫漸漸散去!
原來……還可以這樣?!
……太巧妙了!
“我……我怎么就沒想到……”交大博士耗著頭發喃喃自語。
“都別愣著了!”林逸將眾人從震驚中喚醒,“思路已經給你們了。剩下的,不用我再操心了吧!”
“一個月的時間!‘盤古’編碼器的測試版要跑起來!”
“是!林總!”
“保證完成任務!”
研發團隊像打了雞血一樣,投入到了瘋狂的編程和測試中。
……
解決了“軟件”問題,“硬件”難題又接踵而至。
“可變碼率”,意味著解碼芯片需要處理的,不再是平穩的數據流,而是動態數據。
這對芯片的“緩沖區管理”和“實時運算能力”,遠超了標準peg-1的要求。
ti的dsp芯片,雖然性能強大,但不是專門為vcd解碼而設計的。
在初測中,問題就出現了。
“林總!不行啊!”王建國拿著一份布滿了錯誤代碼的測試報告一臉的凝重。
“一跑,就爆了!芯片的數據緩沖區,根本就扛不住這么大的瞬時數據沖擊!畫面直接就卡死,然后花屏!”