[FFmpeg-cvslog] rtpenc_jpeg: Handle case of picture dimensions not dividing by 8

Andrey Utkin git at videolan.org
Mon Jun 1 12:33:21 CEST 2015


ffmpeg | branch: release/2.2 | Andrey Utkin <andrey.krieger.utkin at gmail.com> | Sat Apr 11 00:54:10 2015 +0300| [1f1686615c20982a68b2d8db3ff109834a260d27] | committer: Reinhard Tartler

rtpenc_jpeg: Handle case of picture dimensions not dividing by 8

This fixes the calculation of the number of needed blocks to make
sure that ALL pixels are represented by the result.

Signed-off-by: Martin Storsjö <martin at martin.st>
(cherry picked from commit 4415d0f3bbaeb287327ef101ae98d727a69d9af1)
Signed-off-by: Reinhard Tartler <siretart at tauware.de>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1f1686615c20982a68b2d8db3ff109834a260d27
---

 libavformat/rtpenc_jpeg.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/rtpenc_jpeg.c b/libavformat/rtpenc_jpeg.c
index 04df658..0ceb091 100644
--- a/libavformat/rtpenc_jpeg.c
+++ b/libavformat/rtpenc_jpeg.c
@@ -40,8 +40,8 @@ void ff_rtp_send_jpeg(AVFormatContext *s1, const uint8_t *buf, int size)
     s->timestamp = s->cur_timestamp;
 
     /* convert video pixel dimensions from pixels to blocks */
-    w = s1->streams[0]->codec->width  >> 3;
-    h = s1->streams[0]->codec->height >> 3;
+    w = (s1->streams[0]->codec->width  + 7) >> 3;
+    h = (s1->streams[0]->codec->height + 7) >> 3;
 
     /* check if pixel format is not the normal 420 case */
     if (s1->streams[0]->codec->pix_fmt == AV_PIX_FMT_YUVJ422P) {



More information about the ffmpeg-cvslog mailing list