aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Sabatini <stefasab@gmail.com>2012-10-15 15:33:58 +0200
committerStefano Sabatini <stefasab@gmail.com>2012-10-15 15:35:50 +0200
commit6133149e0c70f570291c9b685a0be38fde58efe1 (patch)
tree556a97deef630ca905ec755d2015422c522ffc88
parente56b3a5ebb124b6788f713dda83d77a1d639ec24 (diff)
downloadffmpeg-6133149e0c70f570291c9b685a0be38fde58efe1.tar.gz
examples/muxing: add missing error checks
-rw-r--r--doc/examples/muxing.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/doc/examples/muxing.c b/doc/examples/muxing.c
index 6daeb9e7ca..c6b0294b37 100644
--- a/doc/examples/muxing.c
+++ b/doc/examples/muxing.c
@@ -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;