diff options
author | Paul B Mahol <onemda@gmail.com> | 2021-09-05 11:36:50 +0200 |
---|---|---|
committer | Paul B Mahol <onemda@gmail.com> | 2021-09-05 11:44:50 +0200 |
commit | 036d94da43d09d3e9c312b7c3f6707212de804df (patch) | |
tree | 83e85809da7aff15b9a444a1066c2b39b83228c6 /libavcodec/mlpenc.c | |
parent | 589cd58c858bb6b5c03cfcdb55cb8aa8acedefd7 (diff) |
avcodec/mlpenc: stop returning packets with no data
Diffstat (limited to 'libavcodec/mlpenc.c')
-rw-r--r-- | libavcodec/mlpenc.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/libavcodec/mlpenc.c b/libavcodec/mlpenc.c index 50662de09c..7db28f518a 100644 --- a/libavcodec/mlpenc.c +++ b/libavcodec/mlpenc.c @@ -1178,8 +1178,8 @@ static void write_frame_headers(MLPEncodeContext *ctx, uint8_t *frame_header, } /** Writes an entire access unit to the bitstream. */ -static unsigned int write_access_unit(MLPEncodeContext *ctx, uint8_t *buf, - int buf_size, int restart_frame) +static int write_access_unit(MLPEncodeContext *ctx, uint8_t *buf, + int buf_size, int restart_frame) { uint16_t substream_data_len[MAX_SUBSTREAMS]; uint8_t *buf1, *buf0 = buf; @@ -2183,7 +2183,7 @@ static int mlp_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet) { MLPEncodeContext *ctx = avctx->priv_data; - unsigned int bytes_written = 0; + int bytes_written = 0; int restart_frame, ret; uint8_t *data; @@ -2316,8 +2316,14 @@ no_data_left: } if (!frame) avctx->frame_number++; - avpkt->size = bytes_written; - *got_packet = 1; + + if (bytes_written > 0) { + avpkt->size = bytes_written; + *got_packet = 1; + } else { + *got_packet = 0; + } + return 0; } |