diff options
author | Peter Ross <pross@xvid.org> | 2018-11-21 01:31:44 +1100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2018-11-21 00:33:38 +0100 |
commit | 3fc7b69496fd586a609f9c8a2f1ed17e46bf5fff (patch) | |
tree | c3e696bab7bf0e5c863b62a5260316c3467f2272 /tests/api | |
parent | 7cda7d217cd0e9eaa38cc0d5dbbb6204b92fce97 (diff) | |
download | ffmpeg-3fc7b69496fd586a609f9c8a2f1ed17e46bf5fff.tar.gz |
fate-api-h264-slice: use the heap for nal buffer
nal buffer is 512 kilobytes
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'tests/api')
-rw-r--r-- | tests/api/api-h264-slice-test.c | 11 |
1 files 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 <threads> <input file> <output file>\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); |