Re: [FFmpeg-devel] [PATCH 1/2] lavc/dolby_e: fix make checkheaders
2018-06-04 22:52 GMT+08:00 James Almer : > 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=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 >> --- >> 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] =
Re: [FFmpeg-devel] [PATCH 1/2] lavc/dolby_e: fix make checkheaders
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=x86_64-archlinux-gcc-checkheaders > > Signed-off-by: Jun Zhao > --- > 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++) > -
[FFmpeg-devel] [PATCH 1/2] lavc/dolby_e: fix make checkheaders
move the the function init_tables() definitions from header file to .c file to fix make checkheaders. Signed-off-by: Jun Zhao --- 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]; -