| From 2c6b3f357331e203ad87214984661c40704aceb7 Mon Sep 17 00:00:00 2001 |
| From: Rainer Hochecker <fernetmenta@online.de> |
| Date: Sat, 26 Jan 2019 19:48:35 +0100 |
| Subject: [PATCH] avcodec/vaapi_h264: skip decode if pic has no slices |
| |
| This fixes / workarounds https://bugs.freedesktop.org/show_bug.cgi?id=105368. |
| It was hit frequently when watching h264 channels received via DVB-X. |
| Corresponding kodi bug: https://github.com/xbmc/xbmc/issues/15704 |
| |
| Downloaded from Kodi ffmpeg repo: |
| https://github.com/xbmc/FFmpeg/commit/2c6b3f357331e203ad87214984661c40704aceb7 |
| |
| Patch was sent upstream: |
| http://ffmpeg.org/pipermail/ffmpeg-devel/2019-March/240863.html |
| |
| Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> |
| --- |
| libavcodec/vaapi_h264.c | 5 +++++ |
| 1 file changed, 5 insertions(+) |
| |
| diff --git a/libavcodec/vaapi_h264.c b/libavcodec/vaapi_h264.c |
| index dd2a6571604..e521a05c4ff 100644 |
| --- a/libavcodec/vaapi_h264.c |
| +++ b/libavcodec/vaapi_h264.c |
| @@ -314,6 +314,11 @@ static int vaapi_h264_end_frame(AVCodecContext *avctx) |
| H264SliceContext *sl = &h->slice_ctx[0]; |
| int ret; |
| |
| + if (pic->nb_slices == 0) { |
| + ret = AVERROR_INVALIDDATA; |
| + goto finish; |
| + } |
| + |
| ret = ff_vaapi_decode_issue(avctx, pic); |
| if (ret < 0) |
| goto finish; |