From 3fc7b69496fd586a609f9c8a2f1ed17e46bf5fff Mon Sep 17 00:00:00 2001 From: Peter Ross Date: Wed, 21 Nov 2018 01:31:44 +1100 Subject: [PATCH] fate-api-h264-slice: use the heap for nal buffer nal buffer is 512 kilobytes Signed-off-by: Michael Niedermayer --- tests/api/api-h264-slice-test.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/api/api-h264-slice-test.c b/tests/api/api-h264-slice-test.c index c6614da34d..b893737bca 100644 --- a/tests/api/api-h264-slice-test.c +++ b/tests/api/api-h264-slice-test.c @@ -117,9 +117,9 @@ int main(int argc, char **argv) unsigned int threads; AVPacket *pkt; FILE *file = NULL; - char nal[MAX_SLICES * UINT16_MAX + AV_INPUT_BUFFER_PADDING_SIZE]; + char * nal = NULL; int nals = 0, ret = 0; - char *p = nal; + char *p; if (argc < 4) { fprintf(stderr, "Usage: %s \n", argv[0]); @@ -139,6 +139,11 @@ int main(int argc, char **argv) return -1; } + nal = av_malloc(MAX_SLICES * UINT16_MAX + AV_INPUT_BUFFER_PADDING_SIZE); + if (!nal) + goto err; + p = nal; + if (!(codec = avcodec_find_decoder(AV_CODEC_ID_H264))) { fprintf(stderr, "Codec not found\n"); ret = -1; @@ -223,6 +228,8 @@ int main(int argc, char **argv) ret = decode(c, frame, NULL); err: + if (nal) + av_free(nal); if (file) fclose(file); av_frame_free(&frame);