History

avfilter/af_surround: cache constant rdft_size inside loops

Paul B Mahol committed 3 years ago

Commit 09cd89d1 parent 4fd729a1 file · +12 −6Browse files

Unified · Split

libavfilter/af_surround.c+12−6
@@ -747,6 +747,7 @@ static void filter_stereo(AVFilterContext *ctx) · 746 unmodified lines
747747 const float *srcl = (const float *)s->input->extended_data[0];
748748 const float *srcr = (const float *)s->input->extended_data[1];
749749 const int output_lfe = s->output_lfe && s->create_lfe;
750+ const int rdft_size = s->rdft_size;
750751 const int lfe_mode = s->lfe_mode;
751752 const float highcut = s->highcut;
752753 const float lowcut = s->lowcut;
@@ -761,7 +762,7 @@ static void filter_stereo(AVFilterContext *ctx) · 8 unmodified lines
761762 float *xpos = s->x_pos;
762763 float *ypos = s->y_pos;
763764
764− for (int n = 0; n < s->rdft_size; n++) {
765+ for (int n = 0; n < rdft_size; n++) {
765766 float l_re = srcl[2 * n], r_re = srcr[2 * n];
766767 float l_im = srcl[2 * n + 1], r_im = srcr[2 * n + 1];
767768 float c_phase = atan2f(l_im + r_im, l_re + r_re);
@@ -801,6 +802,7 @@ static void filter_2_1(AVFilterContext *ctx) · 33 unmodified lines
801802 const float *srcl = (const float *)s->input->extended_data[0];
802803 const float *srcr = (const float *)s->input->extended_data[1];
803804 const float *srclfe = (const float *)s->input->extended_data[2];
805+ const int rdft_size = s->rdft_size;
804806 const float angle = s->angle;
805807 const float focus = s->focus;
806808 float *magtotal = s->mag_total;
@@ -813,7 +815,7 @@ static void filter_2_1(AVFilterContext *ctx) · 6 unmodified lines
813815 float *xpos = s->x_pos;
814816 float *ypos = s->y_pos;
815817
816− for (int n = 0; n < s->rdft_size; n++) {
818+ for (int n = 0; n < rdft_size; n++) {
817819 float l_re = srcl[2 * n], r_re = srcr[2 * n];
818820 float l_im = srcl[2 * n + 1], r_im = srcr[2 * n + 1];
819821 float lfe_re = srclfe[2 * n], lfe_im = srclfe[2 * n + 1];
@@ -858,6 +860,7 @@ static void filter_surround(AVFilterContext *ctx) · 38 unmodified lines
858860 const float *srcr = (const float *)s->input->extended_data[1];
859861 const float *srcc = (const float *)s->input->extended_data[2];
860862 const int output_lfe = s->output_lfe && s->create_lfe;
863+ const int rdft_size = s->rdft_size;
861864 const int lfe_mode = s->lfe_mode;
862865 const float highcut = s->highcut;
863866 const float lowcut = s->lowcut;
@@ -872,7 +875,7 @@ static void filter_surround(AVFilterContext *ctx) · 8 unmodified lines
872875 float *xpos = s->x_pos;
873876 float *ypos = s->y_pos;
874877
875− for (int n = 0; n < s->rdft_size; n++) {
878+ for (int n = 0; n < rdft_size; n++) {
876879 float l_re = srcl[2 * n], r_re = srcr[2 * n];
877880 float l_im = srcl[2 * n + 1], r_im = srcr[2 * n + 1];
878881 float c_re = srcc[2 * n], c_im = srcc[2 * n + 1];
@@ -910,6 +913,7 @@ static void filter_surround(AVFilterContext *ctx) · 31 unmodified lines
910913 static void filter_5_0_side(AVFilterContext *ctx)
911914 {
912915 AudioSurroundContext *s = ctx->priv;
916+ const int rdft_size = s->rdft_size;
913917 float *srcl, *srcr, *srcc, *srcsl, *srcsr;
914918 int n;
915919
@@ -919,7 +923,7 @@ static void filter_5_0_side(AVFilterContext *ctx) · 3 unmodified lines
919923 srcsl = (float *)s->input->extended_data[3];
920924 srcsr = (float *)s->input->extended_data[4];
921925
922− for (n = 0; n < s->rdft_size; n++) {
926+ for (n = 0; n < rdft_size; n++) {
923927 float fl_re = srcl[2 * n], fr_re = srcr[2 * n];
924928 float fl_im = srcl[2 * n + 1], fr_im = srcr[2 * n + 1];
925929 float c_re = srcc[2 * n], c_im = srcc[2 * n + 1];
@@ -967,6 +971,7 @@ static void filter_5_0_side(AVFilterContext *ctx) · 41 unmodified lines
967971 static void filter_5_1_side(AVFilterContext *ctx)
968972 {
969973 AudioSurroundContext *s = ctx->priv;
974+ const int rdft_size = s->rdft_size;
970975 float *srcl, *srcr, *srcc, *srclfe, *srcsl, *srcsr;
971976 int n;
972977
@@ -977,7 +982,7 @@ static void filter_5_1_side(AVFilterContext *ctx) · 4 unmodified lines
977982 srcsl = (float *)s->input->extended_data[4];
978983 srcsr = (float *)s->input->extended_data[5];
979984
980− for (n = 0; n < s->rdft_size; n++) {
985+ for (n = 0; n < rdft_size; n++) {
981986 float fl_re = srcl[2 * n], fr_re = srcr[2 * n];
982987 float fl_im = srcl[2 * n + 1], fr_im = srcr[2 * n + 1];
983988 float c_re = srcc[2 * n], c_im = srcc[2 * n + 1];
@@ -1026,6 +1031,7 @@ static void filter_5_1_side(AVFilterContext *ctx) · 42 unmodified lines
10261031 static void filter_5_1_back(AVFilterContext *ctx)
10271032 {
10281033 AudioSurroundContext *s = ctx->priv;
1034+ const int rdft_size = s->rdft_size;
10291035 float *srcl, *srcr, *srcc, *srclfe, *srcbl, *srcbr;
10301036 int n;
10311037
@@ -1036,7 +1042,7 @@ static void filter_5_1_back(AVFilterContext *ctx) · 4 unmodified lines
10361042 srcbl = (float *)s->input->extended_data[4];
10371043 srcbr = (float *)s->input->extended_data[5];
10381044
1039− for (n = 0; n < s->rdft_size; n++) {
1045+ for (n = 0; n < rdft_size; n++) {
10401046 float fl_re = srcl[2 * n], fr_re = srcr[2 * n];
10411047 float fl_im = srcl[2 * n + 1], fr_im = srcr[2 * n + 1];
10421048 float c_re = srcc[2 * n], c_im = srcc[2 * n + 1];

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t