Encoder Complexity Optimization for ParamMC modes - use shorter MDFT for signal analysis
The MDFT transform length used to calculate the parameters for paramMC in the Encoder can be shortened by half. This then fits the time resolution of the transient handling. The shorter transform length saves computation complexity in the encoder while preserving quality on the same level.
Computational Complexity savings for all ParamMC bitrates:
format | bitrate | bandwidth | ref | opt | diff |
---|---|---|---|---|---|
MC51 | 48 | fb | 146.208 | 114.645 | -31.563000000000002 |
MC51 | 48 | swb | 106.784 | 87.889 | -18.89500000000001 |
MC51 | 48 | wb | 69.922 | 60.669 | -9.253 |
MC51 | 64 | fb | 147.684 | 116.446 | -31.238 |
MC51 | 64 | swb | 109.53 | 90.632 | -18.897999999999996 |
MC51 | 64 | wb | 71.007 | 61.729 | -9.278000000000006 |
MC51 | 80 | fb | 145.995 | 114.338 | -31.65700000000001 |
MC51 | 80 | swb | 107.018 | 88.125 | -18.893 |
MC51 | 80 | wb | 70.806 | 61.536 | -9.269999999999996 |
MC512 | 48 | fb | 171.705 | 127.967 | -43.738000000000014 |
MC512 | 48 | wb | 78.004 | 65.076 | -12.928000000000011 |
MC512 | 64 | fb | 173.823 | 130.077 | -43.74600000000001 |
MC512 | 64 | wb | 79.648 | 66.72 | -12.927999999999997 |
MC512 | 80 | fb | 171.453 | 127.705 | -43.748000000000005 |
MC512 | 80 | wb | 79.65 | 66.745 | -12.905000000000001 |
MC512 | 96 | fb | 228.63 | 182.003 | -46.62700000000001 |
MC512 | 96 | wb | 114.766 | 100.912 | -13.854 |
MC514 | 128 | fb | 260.581 | 200.512 | -60.06900000000002 |
MC514 | 128 | swb | 194.874 | 158.487 | -36.387 |
MC514 | 128 | wb | 126.042 | 107.97 | -18.072000000000003 |
MC514 | 96 | fb | 255.772 | 195.862 | -59.91 |
MC514 | 96 | swb | 189.731 | 153.373 | -36.358000000000004 |
MC514 | 96 | wb | 123.818 | 105.754 | -18.063999999999993 |
MC71 | 48 | fb | 171.769 | 127.859 | -43.91000000000001 |
MC71 | 48 | swb | 123.156 | 96.824 | -26.332000000000008 |
MC71 | 48 | wb | 78.196 | 65.268 | -12.927999999999997 |
MC71 | 64 | fb | 172.928 | 129.806 | -43.121999999999986 |
MC71 | 64 | swb | 126.214 | 99.965 | -26.248999999999995 |
MC71 | 64 | wb | 79.554 | 66.62 | -12.933999999999997 |
MC71 | 80 | fb | 171.127 | 127.432 | -43.69500000000001 |
MC71 | 80 | swb | 123.693 | 97.406 | -26.286999999999992 |
MC71 | 80 | wb | 79.459 | 66.529 | -12.930000000000007 |
MC71 | 96 | fb | 229.016 | 182.601 | -46.41499999999999 |
MC71 | 96 | swb | 169.86 | 141.719 | -28.14100000000002 |
MC71 | 96 | wb | 114.957 | 101.11 | -13.846999999999994 |
MC714 | 128 | fb | 291.022 | 216.637 | -74.38499999999999 |
MC714 | 128 | swb | 214.533 | 168.949 | -45.583999999999975 |
MC714 | 128 | wb | 136.547 | 113.856 | -22.691000000000003 |
MC714 | 160 | fb | 322.321 | 243.899 | -78.42200000000003 |
MC714 | 160 | swb | 233.755 | 185.661 | -48.093999999999994 |
MC714 | 160 | wb | 152.105 | 128.115 | -23.98999999999998 |
=> biggest savings are observed at 160kbps.
Impact on ROM:
For the shorter transform, a table needs to be added, which increases lib_com TROM by 121 words. PROM is about the same (difference of 2).
Impact on quality:
Quality was evaluated by informal listening and additionally we examined the computed ICC and ICLD values after quantization and compared them to the baseline version without the optimization. Values only differ for less than 3%. Most differences are only by one quantization step and only 0.0002 percent of the examined values differed by two steps. Larger differences were not observed. So, we are quite confident that the same quality is preserved with this optimization.