diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-02-14 13:35:45 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-02-14 13:35:45 +0100 |
commit | 60b46a00c62db3e366322f99d261480cd213bfa5 (patch) | |
tree | a3e8cb0ad9d920b6162332fd07cd5356191de38a /libavcodec | |
parent | 5cbd7ce016adec2beafe49be931ff445f3decdaf (diff) | |
parent | 73e8fab31dc19c4371499e612856accbc00b2820 (diff) | |
download | ffmpeg-60b46a00c62db3e366322f99d261480cd213bfa5.tar.gz |
Merge commit '73e8fab31dc19c4371499e612856accbc00b2820'
* commit '73e8fab31dc19c4371499e612856accbc00b2820':
h264: print values in case of error
Conflicts:
libavcodec/h264.c
libavcodec/h264_ps.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/h264.c | 24 | ||||
-rw-r--r-- | libavcodec/h264_parser.c | 9 | ||||
-rw-r--r-- | libavcodec/h264_ps.c | 9 |
3 files changed, 22 insertions, 20 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c index fabb0463fe..9f04174241 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1507,7 +1507,8 @@ int ff_h264_decode_extradata(H264Context *h, const uint8_t *buf, int size) h->is_avc = 1; if (size < 7) { - av_log(avctx, AV_LOG_ERROR, "avcC too short\n"); + av_log(avctx, AV_LOG_ERROR, + "avcC %d too short\n", size); return AVERROR_INVALIDDATA; } /* sps and pps in the avcC always have length coded with 2 bytes, @@ -1820,7 +1821,7 @@ static int decode_update_thread_context(AVCodecContext *dst, ret = ff_h264_alloc_tables(h); if (ret < 0) { - av_log(dst, AV_LOG_ERROR, "Could not allocate memory for h264\n"); + av_log(dst, AV_LOG_ERROR, "Could not allocate memory\n"); return ret; } ret = context_init(h); @@ -3143,7 +3144,7 @@ static int h264_set_parameter_from_sps(H264Context *h) ff_dsputil_init(&h->dsp, h->avctx); ff_videodsp_init(&h->vdsp, h->sps.bit_depth_luma); } else { - av_log(h->avctx, AV_LOG_ERROR, "Unsupported bit depth: %d\n", + av_log(h->avctx, AV_LOG_ERROR, "Unsupported bit depth %d\n", h->sps.bit_depth_luma); return AVERROR_INVALIDDATA; } @@ -3227,7 +3228,7 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback) break; default: av_log(h->avctx, AV_LOG_ERROR, - "Unsupported bit depth: %d\n", h->sps.bit_depth_luma); + "Unsupported bit depth %d\n", h->sps.bit_depth_luma); return AVERROR_INVALIDDATA; } } @@ -3300,8 +3301,7 @@ static int h264_slice_header_init(H264Context *h, int reinit) init_scan_tables(h); ret = ff_h264_alloc_tables(h); if (ret < 0) { - av_log(h->avctx, AV_LOG_ERROR, - "Could not allocate memory for h264\n"); + av_log(h->avctx, AV_LOG_ERROR, "Could not allocate memory\n"); return ret; } @@ -3311,7 +3311,7 @@ static int h264_slice_header_init(H264Context *h, int reinit) max_slices = FFMIN(MAX_THREADS, h->mb_height); else max_slices = MAX_THREADS; - av_log(h->avctx, AV_LOG_WARNING, "too many threads/slices (%d)," + av_log(h->avctx, AV_LOG_WARNING, "too many threads/slices %d," " reducing to %d\n", nb_slices, max_slices); nb_slices = max_slices; } @@ -3474,7 +3474,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0) slice_type = get_ue_golomb_31(&h->gb); if (slice_type > 9) { av_log(h->avctx, AV_LOG_ERROR, - "slice type too large (%d) at %d %d\n", + "slice type %d too large at %d %d\n", slice_type, h->mb_x, h->mb_y); return AVERROR_INVALIDDATA; } @@ -3499,7 +3499,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0) pps_id = get_ue_golomb(&h->gb); if (pps_id >= MAX_PPS_COUNT) { - av_log(h->avctx, AV_LOG_ERROR, "pps_id %d out of range\n", pps_id); + av_log(h->avctx, AV_LOG_ERROR, "pps_id %u out of range\n", pps_id); return AVERROR_INVALIDDATA; } if (!h0->pps_buffers[pps_id]) { @@ -3674,7 +3674,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0) return AVERROR_INVALIDDATA; } else if (!h0->cur_pic_ptr) { av_log(h->avctx, AV_LOG_ERROR, - "unset cur_pic_ptr on %d. slice\n", + "unset cur_pic_ptr on slice %d\n", h0->current_slice + 1); return AVERROR_INVALIDDATA; } @@ -3974,7 +3974,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0) if (h->slice_type_nos != AV_PICTURE_TYPE_I && h->pps.cabac) { tmp = get_ue_golomb_31(&h->gb); if (tmp > 2) { - av_log(h->avctx, AV_LOG_ERROR, "cabac_init_idc overflow\n"); + av_log(h->avctx, AV_LOG_ERROR, "cabac_init_idc %u overflow\n", tmp); return AVERROR_INVALIDDATA; } h->cabac_init_idc = tmp; @@ -4573,7 +4573,7 @@ static int decode_slice(struct AVCodecContext *avctx, void *arg) av_log(h->avctx, AV_LOG_DEBUG, "bytestream overread %td\n", h->cabac.bytestream_end - h->cabac.bytestream); if (ret < 0 || h->cabac.bytestream > h->cabac.bytestream_end + 4) { av_log(h->avctx, AV_LOG_ERROR, - "error while decoding MB %d %d, bytestream (%td)\n", + "error while decoding MB %d %d, bytestream %td\n", h->mb_x, h->mb_y, h->cabac.bytestream_end - h->cabac.bytestream); er_add_slice(h, h->resync_mb_x, h->resync_mb_y, h->mb_x, diff --git a/libavcodec/h264_parser.c b/libavcodec/h264_parser.c index 0c426ddabc..3784e22de7 100644 --- a/libavcodec/h264_parser.c +++ b/libavcodec/h264_parser.c @@ -151,7 +151,8 @@ static int scan_mmco_reset(AVCodecParserContext *s) break; if (index >= h->ref_count[list]) { - av_log(h->avctx, AV_LOG_ERROR, "reference count overflow\n"); + av_log(h->avctx, AV_LOG_ERROR, + "reference count %d overflow\n", index); return AVERROR_INVALIDDATA; } } @@ -292,18 +293,18 @@ static inline int parse_nal_units(AVCodecParserContext *s, pps_id = get_ue_golomb(&h->gb); if (pps_id >= MAX_PPS_COUNT) { av_log(h->avctx, AV_LOG_ERROR, - "pps_id out of range\n"); + "pps_id %u out of range\n", pps_id); return -1; } if (!h->pps_buffers[pps_id]) { av_log(h->avctx, AV_LOG_ERROR, - "non-existing PPS referenced\n"); + "non-existing PPS %u referenced\n", pps_id); return -1; } h->pps = *h->pps_buffers[pps_id]; if (!h->sps_buffers[h->pps.sps_id]) { av_log(h->avctx, AV_LOG_ERROR, - "non-existing SPS referenced\n"); + "non-existing SPS %u referenced\n", h->pps.sps_id); return -1; } h->sps = *h->sps_buffers[h->pps.sps_id]; diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c index 04b29041c2..ee931e1b54 100644 --- a/libavcodec/h264_ps.c +++ b/libavcodec/h264_ps.c @@ -340,7 +340,7 @@ int ff_h264_decode_seq_parameter_set(H264Context *h) sps_id = get_ue_golomb_31(&h->gb); if (sps_id >= MAX_SPS_COUNT) { - av_log(h->avctx, AV_LOG_ERROR, "sps_id (%d) out of range\n", sps_id); + av_log(h->avctx, AV_LOG_ERROR, "sps_id %u out of range\n", sps_id); return AVERROR_INVALIDDATA; } sps = av_mallocz(sizeof(SPS)); @@ -441,7 +441,8 @@ int ff_h264_decode_seq_parameter_set(H264Context *h) sps->ref_frame_count = FFMAX(2, sps->ref_frame_count); if (sps->ref_frame_count > MAX_PICTURE_COUNT - 2 || sps->ref_frame_count > 16U) { - av_log(h->avctx, AV_LOG_ERROR, "too many reference frames\n"); + av_log(h->avctx, AV_LOG_ERROR, + "too many reference frames %d\n", sps->ref_frame_count); goto fail; } sps->gaps_in_frame_num_allowed_flag = get_bits1(&h->gb); @@ -601,7 +602,7 @@ int ff_h264_decode_picture_parameter_set(H264Context *h, int bit_length) int bits_left; if (pps_id >= MAX_PPS_COUNT) { - av_log(h->avctx, AV_LOG_ERROR, "pps_id (%d) out of range\n", pps_id); + av_log(h->avctx, AV_LOG_ERROR, "pps_id %u out of range\n", pps_id); return AVERROR_INVALIDDATA; } @@ -611,7 +612,7 @@ int ff_h264_decode_picture_parameter_set(H264Context *h, int bit_length) pps->sps_id = get_ue_golomb_31(&h->gb); if ((unsigned)pps->sps_id >= MAX_SPS_COUNT || h->sps_buffers[pps->sps_id] == NULL) { - av_log(h->avctx, AV_LOG_ERROR, "sps_id out of range\n"); + av_log(h->avctx, AV_LOG_ERROR, "sps_id %u out of range\n", pps->sps_id); goto fail; } sps = h->sps_buffers[pps->sps_id]; |