]> git.sesse.net Git - ffmpeg/commitdiff
examples/muxing: add missing error checks
authorStefano Sabatini <stefasab@gmail.com>
Mon, 15 Oct 2012 13:33:58 +0000 (15:33 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Mon, 15 Oct 2012 13:35:50 +0000 (15:35 +0200)
doc/examples/muxing.c

index 6daeb9e7ca26ab97c6d65f7625596b1499d3c702..c6b0294b37e36199613fd11c9cbba6228c5853f4 100644 (file)
@@ -115,6 +115,10 @@ static void open_audio(AVFormatContext *oc, AVCodec *codec, AVStream *st)
     samples = av_malloc(audio_input_frame_size *
                         av_get_bytes_per_sample(c->sample_fmt) *
                         c->channels);
+    if (!samples) {
+        fprintf(stderr, "Could not allocate audio samples buffer\n");
+        exit(1);
+    }
 }
 
 /* Prepare a 16 bit dummy audio frame of 'frame_size' samples and
@@ -139,7 +143,7 @@ static void write_audio_frame(AVFormatContext *oc, AVStream *st)
     AVCodecContext *c;
     AVPacket pkt = { 0 }; // data and size must be 0;
     AVFrame *frame = avcodec_alloc_frame();
-    int got_packet;
+    int got_packet, ret;
 
     av_init_packet(&pkt);
     c = st->codec;
@@ -152,7 +156,12 @@ static void write_audio_frame(AVFormatContext *oc, AVStream *st)
                              av_get_bytes_per_sample(c->sample_fmt) *
                              c->channels, 1);
 
-    avcodec_encode_audio2(c, &pkt, frame, &got_packet);
+    ret = avcodec_encode_audio2(c, &pkt, frame, &got_packet);
+    if (ret < 0) {
+        fprintf(stderr, "Error encoding audio frame\n");
+        exit(1);
+    }
+
     if (!got_packet)
         return;