[FFmpeg-cvslog] avcodec/proresenc_aw : fix interlace encoding for unsafe height
Martin Vignali
git at videolan.org
Sat Mar 9 21:49:16 EET 2019
ffmpeg | branch: master | Martin Vignali <martin.vignali at gmail.com> | Fri Mar 8 00:06:01 2019 +0100| [26cf50404d1a965e88c379b4c88a5c4d7fa9f6ed] | committer: Martin Vignali
avcodec/proresenc_aw : fix interlace encoding for unsafe height
fix the call of the unsafe version of slice encoding in interlace mode
fix padding line count in sub image with fill in interlace mode
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=26cf50404d1a965e88c379b4c88a5c4d7fa9f6ed
---
libavcodec/proresenc_anatoliy.c | 4 ++--
tests/ref/vsynth/vsynth3-prores_444_int | 8 ++++----
tests/ref/vsynth/vsynth3-prores_int | 8 ++++----
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c
index 5914445b52..0fc79fc1de 100644
--- a/libavcodec/proresenc_anatoliy.c
+++ b/libavcodec/proresenc_anatoliy.c
@@ -485,7 +485,7 @@ static inline void subimage_with_fill_template(uint16_t *src, unsigned x, unsign
} else {
src_stride = stride; /* 2 lines stride */
src += y * src_stride + x;
- box_height = FFMIN(height - y * 2, dst_height);
+ box_height = FFMIN(height/2 - y, dst_height);
if (!is_top_field)
src += stride >> 1;
}
@@ -671,7 +671,7 @@ static int prores_encode_picture(AVCodecContext *avctx, const AVFrame *pic,
picture_height = avctx->height / 2;
}
mb_height = (picture_height + 15) >> 4;
- unsafe_mb_height_limit = mb_height * 2;
+ unsafe_mb_height_limit = mb_height;
}
for (i = av_log2(DEFAULT_SLICE_MB_WIDTH); i >= 0; --i) {
diff --git a/tests/ref/vsynth/vsynth3-prores_444_int b/tests/ref/vsynth/vsynth3-prores_444_int
index ec9dda8965..36760adf9a 100644
--- a/tests/ref/vsynth/vsynth3-prores_444_int
+++ b/tests/ref/vsynth/vsynth3-prores_444_int
@@ -1,4 +1,4 @@
-4928501bad7c46a277eab54440f2a794 *tests/data/fate/vsynth3-prores_444_int.mov
-230539 tests/data/fate/vsynth3-prores_444_int.mov
-7acff20947af998d5a6e6f85ff24a6d2 *tests/data/fate/vsynth3-prores_444_int.out.rawvideo
-stddev: 3.27 PSNR: 37.82 MAXDIFF: 42 bytes: 86700/ 86700
+270045a731d4cb6ba253880021c87a63 *tests/data/fate/vsynth3-prores_444_int.mov
+184397 tests/data/fate/vsynth3-prores_444_int.mov
+a8852aa2841c2ce5f2aa86176ceda4ef *tests/data/fate/vsynth3-prores_444_int.out.rawvideo
+stddev: 3.24 PSNR: 37.91 MAXDIFF: 41 bytes: 86700/ 86700
diff --git a/tests/ref/vsynth/vsynth3-prores_int b/tests/ref/vsynth/vsynth3-prores_int
index 0208a2d15a..53dcfbd14d 100644
--- a/tests/ref/vsynth/vsynth3-prores_int
+++ b/tests/ref/vsynth/vsynth3-prores_int
@@ -1,4 +1,4 @@
-8bd60c3d149977dd25e21adcf57d76fa *tests/data/fate/vsynth3-prores_int.mov
-148325 tests/data/fate/vsynth3-prores_int.mov
-628a667a0de678239f05a6e5497c4601 *tests/data/fate/vsynth3-prores_int.out.rawvideo
-stddev: 3.06 PSNR: 38.40 MAXDIFF: 29 bytes: 86700/ 86700
+ee1f14b23eb9dee4d59b021d4ec041bf *tests/data/fate/vsynth3-prores_int.mov
+120484 tests/data/fate/vsynth3-prores_int.mov
+e5859ba47a99f9e53c1ddcaa68a8f8f8 *tests/data/fate/vsynth3-prores_int.out.rawvideo
+stddev: 2.92 PSNR: 38.81 MAXDIFF: 29 bytes: 86700/ 86700
More information about the ffmpeg-cvslog
mailing list