量化中max_bits重複計算之優化

在量化的時候發現max_bits重複計算了4次。

 

提到外部②的位置,每個Frame只需要計算一次就可以了,不必重複計算。

 

 

max_bits = mean_bits / config.wave.channels; -----

/*  */

    for( gr=2; gr--; )

    {

        for( ch=config.wave.channels; ch--; )

        {

            cod_info = (gr_info *)&(side_info->gr[gr].ch[ch]);    

           

/* calculation of number of available bit( per granule )

 * 計算每個顆粒可用的bit, 量化成0的部分則不編碼進去.

 * 在一個Frame中重複計算了4, 可以提到for外面去

 */

            //max_bits = mean_bits / config.wave.channels; ---- ① 

   

    . . . . . .

 

}

}

41.5M的PCM信號 原本消耗53s, 經優化消耗爲51s,

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章