fate-api-h264-slice: use the heap for nal buffer
authorPeter Ross <pross@xvid.org>
Tue, 20 Nov 2018 14:31:44 +0000 (01:31 +1100)
committerMichael Niedermayer <michael@niedermayer.cc>
Tue, 20 Nov 2018 23:33:38 +0000 (00:33 +0100)
nal buffer is 512 kilobytes

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
tests/api/api-h264-slice-test.c

index c6614da..b893737 100644 (file)
@@ -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);