[FFmpeg-cvslog] deshake: move angles from stack to heap.

Michael Niedermayer git at videolan.org
Tue Oct 4 18:40:45 CEST 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Oct  4 18:32:36 2011 +0200| [b0f270fdeff35d9084330cc6c2644654f77c2cea] | committer: Michael Niedermayer

deshake: move angles from stack to heap.
Fixes Ticket530

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b0f270fdeff35d9084330cc6c2644654f77c2cea
---

 libavfilter/vf_deshake.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/libavfilter/vf_deshake.c b/libavfilter/vf_deshake.c
index d010389..45730ba 100644
--- a/libavfilter/vf_deshake.c
+++ b/libavfilter/vf_deshake.c
@@ -251,7 +251,7 @@ static void find_motion(DeshakeContext *deshake, uint8_t *src1, uint8_t *src2,
     int contrast;
 
     int pos;
-    double angles[1200];
+    double *angles= av_malloc(sizeof(double)*width*height/(16*deshake->blocksize));
     double totalangles = 0;
 
     int center_x = 0, center_y = 0;
@@ -327,6 +327,7 @@ static void find_motion(DeshakeContext *deshake, uint8_t *src1, uint8_t *src2,
     t->angle = av_clipf(t->angle, -0.1, 0.1);
 
     //av_log(NULL, AV_LOG_ERROR, "%d x %d\n", avg->x, avg->y);
+    av_free(angles);
 }
 
 static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)



More information about the ffmpeg-cvslog mailing list