[Ffmpeg-devel] [PATCH] mjpeg decoder, mplayer mf://*.jpg
Reimar Döffinger
Reimar.Doeffinger
Thu Jul 21 19:10:41 CEST 2005
Hi,
On Thu, Jul 21, 2005 at 01:03:08PM +0200, Michael Niedermayer wrote:
> well, it doesnt seem optimal, either the resting should happen after "case
> SOI:" or where you put it, but not both
Hey, you are right. This is getting boring, can't you just be wrong
sometimes *g*
Well, I suggest the attached patch instead, it set restart_count to 0
every time restart_interval is set. Does that look better to you?
Greetings,
Reimar D?ffinger
-------------- next part --------------
Index: libavcodec/mjpeg.c
===================================================================
RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/mjpeg.c,v
retrieving revision 1.111
diff -u -r1.111 mjpeg.c
--- libavcodec/mjpeg.c 17 Jul 2005 12:56:56 -0000 1.111
+++ libavcodec/mjpeg.c 21 Jul 2005 17:07:58 -0000
@@ -882,6 +882,7 @@
{
MJpegDecodeContext *s = avctx->priv_data;
MpegEncContext s2;
+ memset(s, 0, sizeof(MJpegDecodeContext));
s->avctx = avctx;
@@ -1573,6 +1574,7 @@
if (get_bits(&s->gb, 16) != 4)
return -1;
s->restart_interval = get_bits(&s->gb, 16);
+ s->restart_count = 0;
dprintf("restart interval: %d\n", s->restart_interval);
return 0;
@@ -1892,6 +1894,7 @@
switch(start_code) {
case SOI:
s->restart_interval = 0;
+ s->restart_count = 0;
/* nothing to do on SOI */
break;
case DQT:
@@ -2000,6 +2003,7 @@
read_header:
/* reset on every SOI */
s->restart_interval = 0;
+ s->restart_count = 0;
s->mjpb_skiptosod = 0;
init_get_bits(&hgb, buf_ptr, /*buf_size*/(buf_end - buf_ptr)*8);
More information about the ffmpeg-devel
mailing list