Message ID | 1528121894-29944-1-git-send-email-mypopydev@gmail.com |
---|---|
State | Accepted |
Commit | 4030d3d3f4951c3df63e8231df90621eb75bb832 |
Headers | show |
On 6/4/2018 11:18 AM, Jun Zhao wrote: > move the the function init_tables() definitions from header file > to .c file to fix make checkheaders. What compile flags are you using? checkheaders seems to work just fine on a normal build. http://fate.ffmpeg.org/report.cgi?time=20180604121434&slot=x86_64-archlinux-gcc-checkheaders > > Signed-off-by: Jun Zhao <mypopydev@gmail.com> > --- > libavcodec/dolby_e.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++ > libavcodec/dolby_e.h | 86 --------------------------------------------------- > 2 files changed, 87 insertions(+), 86 deletions(-) > > diff --git a/libavcodec/dolby_e.c b/libavcodec/dolby_e.c > index 91a00ce..429612e 100644 > --- a/libavcodec/dolby_e.c > +++ b/libavcodec/dolby_e.c > @@ -681,6 +681,93 @@ static av_cold int dolby_e_close(AVCodecContext *avctx) > return 0; > } > > + > +static av_cold void init_tables(void) > +{ > + int i, j; > + > + for (i = 1; i < 17; i++) > + mantissa_tab1[i][0] = 1.0f / (1 << i - 1); > + > + for (i = 2; i < 16; i++) { > + mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); > + mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); > + mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); > + } > + > + mantissa_tab1[i][1] = 0.5f / (1 << 15); > + mantissa_tab1[i][2] = 0.75f / (1 << 15); > + mantissa_tab1[i][3] = 0.875f / (1 << 15); > + > + for (i = 1; i < 17; i++) { > + mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; > + mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; > + mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; > + for (j = 1; j < 4; j++) > + mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); > + } > + > + mantissa_tab3[1][3] = 0.6875f; > + > + for (i = 0; i < 25; i++) { > + exponent_tab[i * 2 ] = 1.0f / (1 << i); > + exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); > + } > + > + for (i = 1; i < 1024; i++) > + gain_tab[i] = exp2f((i - 960) / 64.0f); > + > + // short 1 > + ff_kbd_window_init(window, 3.0f, 128); > + for (i = 0; i < 128; i++) > + window[128 + i] = window[127 - i]; > + > + // start > + for (i = 0; i < 192; i++) > + window[256 + i] = start_window[i]; > + > + // short 2 > + for (i = 0; i < 192; i++) > + window[448 + i] = short_window2[i]; > + for (i = 0; i < 64; i++) > + window[640 + i] = window[63 - i]; > + > + // short 3 > + for (i = 0; i < 64; i++) > + window[704 + i] = short_window3[i]; > + for (i = 0; i < 192; i++) > + window[768 + i] = window[64 + i]; > + > + // bridge > + for (i = 0; i < 128; i++) > + window[960 + i] = window[i]; > + for (i = 0; i < 64; i++) > + window[1088 + i] = 1.0f; > + > + // long > + ff_kbd_window_init(window + 1408, 3.0f, 256); > + for (i = 0; i < 640; i++) > + window[1664 + i] = 1.0f; > + for (i = 0; i < 256; i++) > + window[2304 + i] = window[1152 + i] = window[1663 - i]; > + > + // reverse start > + for (i = 0; i < 192; i++) > + window[2560 + i] = window[447 - i]; > + > + // reverse short 2 > + for (i = 0; i < 256; i++) > + window[2752 + i] = window[703 - i]; > + > + // reverse short 3 > + for (i = 0; i < 256; i++) > + window[3008 + i] = window[959 - i]; > + > + // reverse bridge > + for (i = 0; i < 448; i++) > + window[3264 + i] = window[1407 - i]; > +} > + > static av_cold int dolby_e_init(AVCodecContext *avctx) > { > static AVOnce init_once = AV_ONCE_INIT; > diff --git a/libavcodec/dolby_e.h b/libavcodec/dolby_e.h > index 0390233..ae04bf6 100644 > --- a/libavcodec/dolby_e.h > +++ b/libavcodec/dolby_e.h > @@ -644,90 +644,4 @@ static float gain_tab[1024]; > > DECLARE_ALIGNED(32, static float, window)[3712]; > > -static av_cold void init_tables(void) > -{ > - int i, j; > - > - for (i = 1; i < 17; i++) > - mantissa_tab1[i][0] = 1.0f / (1 << i - 1); > - > - for (i = 2; i < 16; i++) { > - mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); > - mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); > - mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); > - } > - > - mantissa_tab1[i][1] = 0.5f / (1 << 15); > - mantissa_tab1[i][2] = 0.75f / (1 << 15); > - mantissa_tab1[i][3] = 0.875f / (1 << 15); > - > - for (i = 1; i < 17; i++) { > - mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; > - mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; > - mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; > - for (j = 1; j < 4; j++) > - mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); > - } > - > - mantissa_tab3[1][3] = 0.6875f; > - > - for (i = 0; i < 25; i++) { > - exponent_tab[i * 2 ] = 1.0f / (1 << i); > - exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); > - } > - > - for (i = 1; i < 1024; i++) > - gain_tab[i] = exp2f((i - 960) / 64.0f); > - > - // short 1 > - ff_kbd_window_init(window, 3.0f, 128); > - for (i = 0; i < 128; i++) > - window[128 + i] = window[127 - i]; > - > - // start > - for (i = 0; i < 192; i++) > - window[256 + i] = start_window[i]; > - > - // short 2 > - for (i = 0; i < 192; i++) > - window[448 + i] = short_window2[i]; > - for (i = 0; i < 64; i++) > - window[640 + i] = window[63 - i]; > - > - // short 3 > - for (i = 0; i < 64; i++) > - window[704 + i] = short_window3[i]; > - for (i = 0; i < 192; i++) > - window[768 + i] = window[64 + i]; > - > - // bridge > - for (i = 0; i < 128; i++) > - window[960 + i] = window[i]; > - for (i = 0; i < 64; i++) > - window[1088 + i] = 1.0f; > - > - // long > - ff_kbd_window_init(window + 1408, 3.0f, 256); > - for (i = 0; i < 640; i++) > - window[1664 + i] = 1.0f; > - for (i = 0; i < 256; i++) > - window[2304 + i] = window[1152 + i] = window[1663 - i]; > - > - // reverse start > - for (i = 0; i < 192; i++) > - window[2560 + i] = window[447 - i]; > - > - // reverse short 2 > - for (i = 0; i < 256; i++) > - window[2752 + i] = window[703 - i]; > - > - // reverse short 3 > - for (i = 0; i < 256; i++) > - window[3008 + i] = window[959 - i]; > - > - // reverse bridge > - for (i = 0; i < 448; i++) > - window[3264 + i] = window[1407 - i]; > -} > - > #endif >
2018-06-04 22:52 GMT+08:00 James Almer <jamrial@gmail.com>: > On 6/4/2018 11:18 AM, Jun Zhao wrote: >> move the the function init_tables() definitions from header file >> to .c file to fix make checkheaders. > > What compile flags are you using? checkheaders seems to work just fine > on a normal build. > http://fate.ffmpeg.org/report.cgi?time=20180604121434&slot=x86_64-archlinux-gcc-checkheaders > > I guess I give an inaccurate commit message, more accurate commits message is "fix make checkheaders warning", will update the commit message >> >> Signed-off-by: Jun Zhao <mypopydev@gmail.com> >> --- >> libavcodec/dolby_e.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++ >> libavcodec/dolby_e.h | 86 --------------------------------------------------- >> 2 files changed, 87 insertions(+), 86 deletions(-) >> >> diff --git a/libavcodec/dolby_e.c b/libavcodec/dolby_e.c >> index 91a00ce..429612e 100644 >> --- a/libavcodec/dolby_e.c >> +++ b/libavcodec/dolby_e.c >> @@ -681,6 +681,93 @@ static av_cold int dolby_e_close(AVCodecContext *avctx) >> return 0; >> } >> >> + >> +static av_cold void init_tables(void) >> +{ >> + int i, j; >> + >> + for (i = 1; i < 17; i++) >> + mantissa_tab1[i][0] = 1.0f / (1 << i - 1); >> + >> + for (i = 2; i < 16; i++) { >> + mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); >> + mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); >> + mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); >> + } >> + >> + mantissa_tab1[i][1] = 0.5f / (1 << 15); >> + mantissa_tab1[i][2] = 0.75f / (1 << 15); >> + mantissa_tab1[i][3] = 0.875f / (1 << 15); >> + >> + for (i = 1; i < 17; i++) { >> + mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; >> + mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; >> + mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; >> + for (j = 1; j < 4; j++) >> + mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); >> + } >> + >> + mantissa_tab3[1][3] = 0.6875f; >> + >> + for (i = 0; i < 25; i++) { >> + exponent_tab[i * 2 ] = 1.0f / (1 << i); >> + exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); >> + } >> + >> + for (i = 1; i < 1024; i++) >> + gain_tab[i] = exp2f((i - 960) / 64.0f); >> + >> + // short 1 >> + ff_kbd_window_init(window, 3.0f, 128); >> + for (i = 0; i < 128; i++) >> + window[128 + i] = window[127 - i]; >> + >> + // start >> + for (i = 0; i < 192; i++) >> + window[256 + i] = start_window[i]; >> + >> + // short 2 >> + for (i = 0; i < 192; i++) >> + window[448 + i] = short_window2[i]; >> + for (i = 0; i < 64; i++) >> + window[640 + i] = window[63 - i]; >> + >> + // short 3 >> + for (i = 0; i < 64; i++) >> + window[704 + i] = short_window3[i]; >> + for (i = 0; i < 192; i++) >> + window[768 + i] = window[64 + i]; >> + >> + // bridge >> + for (i = 0; i < 128; i++) >> + window[960 + i] = window[i]; >> + for (i = 0; i < 64; i++) >> + window[1088 + i] = 1.0f; >> + >> + // long >> + ff_kbd_window_init(window + 1408, 3.0f, 256); >> + for (i = 0; i < 640; i++) >> + window[1664 + i] = 1.0f; >> + for (i = 0; i < 256; i++) >> + window[2304 + i] = window[1152 + i] = window[1663 - i]; >> + >> + // reverse start >> + for (i = 0; i < 192; i++) >> + window[2560 + i] = window[447 - i]; >> + >> + // reverse short 2 >> + for (i = 0; i < 256; i++) >> + window[2752 + i] = window[703 - i]; >> + >> + // reverse short 3 >> + for (i = 0; i < 256; i++) >> + window[3008 + i] = window[959 - i]; >> + >> + // reverse bridge >> + for (i = 0; i < 448; i++) >> + window[3264 + i] = window[1407 - i]; >> +} >> + >> static av_cold int dolby_e_init(AVCodecContext *avctx) >> { >> static AVOnce init_once = AV_ONCE_INIT; >> diff --git a/libavcodec/dolby_e.h b/libavcodec/dolby_e.h >> index 0390233..ae04bf6 100644 >> --- a/libavcodec/dolby_e.h >> +++ b/libavcodec/dolby_e.h >> @@ -644,90 +644,4 @@ static float gain_tab[1024]; >> >> DECLARE_ALIGNED(32, static float, window)[3712]; >> >> -static av_cold void init_tables(void) >> -{ >> - int i, j; >> - >> - for (i = 1; i < 17; i++) >> - mantissa_tab1[i][0] = 1.0f / (1 << i - 1); >> - >> - for (i = 2; i < 16; i++) { >> - mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); >> - mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); >> - mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); >> - } >> - >> - mantissa_tab1[i][1] = 0.5f / (1 << 15); >> - mantissa_tab1[i][2] = 0.75f / (1 << 15); >> - mantissa_tab1[i][3] = 0.875f / (1 << 15); >> - >> - for (i = 1; i < 17; i++) { >> - mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; >> - mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; >> - mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; >> - for (j = 1; j < 4; j++) >> - mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); >> - } >> - >> - mantissa_tab3[1][3] = 0.6875f; >> - >> - for (i = 0; i < 25; i++) { >> - exponent_tab[i * 2 ] = 1.0f / (1 << i); >> - exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); >> - } >> - >> - for (i = 1; i < 1024; i++) >> - gain_tab[i] = exp2f((i - 960) / 64.0f); >> - >> - // short 1 >> - ff_kbd_window_init(window, 3.0f, 128); >> - for (i = 0; i < 128; i++) >> - window[128 + i] = window[127 - i]; >> - >> - // start >> - for (i = 0; i < 192; i++) >> - window[256 + i] = start_window[i]; >> - >> - // short 2 >> - for (i = 0; i < 192; i++) >> - window[448 + i] = short_window2[i]; >> - for (i = 0; i < 64; i++) >> - window[640 + i] = window[63 - i]; >> - >> - // short 3 >> - for (i = 0; i < 64; i++) >> - window[704 + i] = short_window3[i]; >> - for (i = 0; i < 192; i++) >> - window[768 + i] = window[64 + i]; >> - >> - // bridge >> - for (i = 0; i < 128; i++) >> - window[960 + i] = window[i]; >> - for (i = 0; i < 64; i++) >> - window[1088 + i] = 1.0f; >> - >> - // long >> - ff_kbd_window_init(window + 1408, 3.0f, 256); >> - for (i = 0; i < 640; i++) >> - window[1664 + i] = 1.0f; >> - for (i = 0; i < 256; i++) >> - window[2304 + i] = window[1152 + i] = window[1663 - i]; >> - >> - // reverse start >> - for (i = 0; i < 192; i++) >> - window[2560 + i] = window[447 - i]; >> - >> - // reverse short 2 >> - for (i = 0; i < 256; i++) >> - window[2752 + i] = window[703 - i]; >> - >> - // reverse short 3 >> - for (i = 0; i < 256; i++) >> - window[3008 + i] = window[959 - i]; >> - >> - // reverse bridge >> - for (i = 0; i < 448; i++) >> - window[3264 + i] = window[1407 - i]; >> -} >> - >> #endif >> > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
diff --git a/libavcodec/dolby_e.c b/libavcodec/dolby_e.c index 91a00ce..429612e 100644 --- a/libavcodec/dolby_e.c +++ b/libavcodec/dolby_e.c @@ -681,6 +681,93 @@ static av_cold int dolby_e_close(AVCodecContext *avctx) return 0; } + +static av_cold void init_tables(void) +{ + int i, j; + + for (i = 1; i < 17; i++) + mantissa_tab1[i][0] = 1.0f / (1 << i - 1); + + for (i = 2; i < 16; i++) { + mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); + mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); + mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); + } + + mantissa_tab1[i][1] = 0.5f / (1 << 15); + mantissa_tab1[i][2] = 0.75f / (1 << 15); + mantissa_tab1[i][3] = 0.875f / (1 << 15); + + for (i = 1; i < 17; i++) { + mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; + mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; + mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; + for (j = 1; j < 4; j++) + mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); + } + + mantissa_tab3[1][3] = 0.6875f; + + for (i = 0; i < 25; i++) { + exponent_tab[i * 2 ] = 1.0f / (1 << i); + exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); + } + + for (i = 1; i < 1024; i++) + gain_tab[i] = exp2f((i - 960) / 64.0f); + + // short 1 + ff_kbd_window_init(window, 3.0f, 128); + for (i = 0; i < 128; i++) + window[128 + i] = window[127 - i]; + + // start + for (i = 0; i < 192; i++) + window[256 + i] = start_window[i]; + + // short 2 + for (i = 0; i < 192; i++) + window[448 + i] = short_window2[i]; + for (i = 0; i < 64; i++) + window[640 + i] = window[63 - i]; + + // short 3 + for (i = 0; i < 64; i++) + window[704 + i] = short_window3[i]; + for (i = 0; i < 192; i++) + window[768 + i] = window[64 + i]; + + // bridge + for (i = 0; i < 128; i++) + window[960 + i] = window[i]; + for (i = 0; i < 64; i++) + window[1088 + i] = 1.0f; + + // long + ff_kbd_window_init(window + 1408, 3.0f, 256); + for (i = 0; i < 640; i++) + window[1664 + i] = 1.0f; + for (i = 0; i < 256; i++) + window[2304 + i] = window[1152 + i] = window[1663 - i]; + + // reverse start + for (i = 0; i < 192; i++) + window[2560 + i] = window[447 - i]; + + // reverse short 2 + for (i = 0; i < 256; i++) + window[2752 + i] = window[703 - i]; + + // reverse short 3 + for (i = 0; i < 256; i++) + window[3008 + i] = window[959 - i]; + + // reverse bridge + for (i = 0; i < 448; i++) + window[3264 + i] = window[1407 - i]; +} + static av_cold int dolby_e_init(AVCodecContext *avctx) { static AVOnce init_once = AV_ONCE_INIT; diff --git a/libavcodec/dolby_e.h b/libavcodec/dolby_e.h index 0390233..ae04bf6 100644 --- a/libavcodec/dolby_e.h +++ b/libavcodec/dolby_e.h @@ -644,90 +644,4 @@ static float gain_tab[1024]; DECLARE_ALIGNED(32, static float, window)[3712]; -static av_cold void init_tables(void) -{ - int i, j; - - for (i = 1; i < 17; i++) - mantissa_tab1[i][0] = 1.0f / (1 << i - 1); - - for (i = 2; i < 16; i++) { - mantissa_tab1[i][1] = 1.0f / ((1 << i) - 1); - mantissa_tab1[i][2] = 0.5f / ((1 << i) - 1); - mantissa_tab1[i][3] = 0.25f / ((1 << i) - 1); - } - - mantissa_tab1[i][1] = 0.5f / (1 << 15); - mantissa_tab1[i][2] = 0.75f / (1 << 15); - mantissa_tab1[i][3] = 0.875f / (1 << 15); - - for (i = 1; i < 17; i++) { - mantissa_tab2[i][1] = mantissa_tab1[i][0] * 0.5f; - mantissa_tab2[i][2] = mantissa_tab1[i][0] * 0.75f; - mantissa_tab2[i][3] = mantissa_tab1[i][0] * 0.875f; - for (j = 1; j < 4; j++) - mantissa_tab3[i][j] = 1.0f / (1 << i) + 1.0f / (1 << j) - 1.0f / (1 << i + j); - } - - mantissa_tab3[1][3] = 0.6875f; - - for (i = 0; i < 25; i++) { - exponent_tab[i * 2 ] = 1.0f / (1 << i); - exponent_tab[i * 2 + 1] = M_SQRT1_2 / (1 << i); - } - - for (i = 1; i < 1024; i++) - gain_tab[i] = exp2f((i - 960) / 64.0f); - - // short 1 - ff_kbd_window_init(window, 3.0f, 128); - for (i = 0; i < 128; i++) - window[128 + i] = window[127 - i]; - - // start - for (i = 0; i < 192; i++) - window[256 + i] = start_window[i]; - - // short 2 - for (i = 0; i < 192; i++) - window[448 + i] = short_window2[i]; - for (i = 0; i < 64; i++) - window[640 + i] = window[63 - i]; - - // short 3 - for (i = 0; i < 64; i++) - window[704 + i] = short_window3[i]; - for (i = 0; i < 192; i++) - window[768 + i] = window[64 + i]; - - // bridge - for (i = 0; i < 128; i++) - window[960 + i] = window[i]; - for (i = 0; i < 64; i++) - window[1088 + i] = 1.0f; - - // long - ff_kbd_window_init(window + 1408, 3.0f, 256); - for (i = 0; i < 640; i++) - window[1664 + i] = 1.0f; - for (i = 0; i < 256; i++) - window[2304 + i] = window[1152 + i] = window[1663 - i]; - - // reverse start - for (i = 0; i < 192; i++) - window[2560 + i] = window[447 - i]; - - // reverse short 2 - for (i = 0; i < 256; i++) - window[2752 + i] = window[703 - i]; - - // reverse short 3 - for (i = 0; i < 256; i++) - window[3008 + i] = window[959 - i]; - - // reverse bridge - for (i = 0; i < 448; i++) - window[3264 + i] = window[1407 - i]; -} - #endif
move the the function init_tables() definitions from header file to .c file to fix make checkheaders. Signed-off-by: Jun Zhao <mypopydev@gmail.com> --- libavcodec/dolby_e.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++ libavcodec/dolby_e.h | 86 --------------------------------------------------- 2 files changed, 87 insertions(+), 86 deletions(-)