aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKostya Shishkov <kostya.shishkov@gmail.com>2006-09-07 04:08:34 +0000
committerKostya Shishkov <kostya.shishkov@gmail.com>2006-09-07 04:08:34 +0000
commit7ff0b84f0e4844a9452c5c59aeb28edb2caefc45 (patch)
tree2794ea42f7dc8b6786f576555b6d5856430f1cd2
parent096bc417ae9b5bf35631d48fbc798020aac08aee (diff)
downloadffmpeg-7ff0b84f0e4844a9452c5c59aeb28edb2caefc45.tar.gz
Handle the rest of known blocks (by skipping them)
Originally committed as revision 6185 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/vmnc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/vmnc.c b/libavcodec/vmnc.c
index 496f39dba9..c4e5956203 100644
--- a/libavcodec/vmnc.c
+++ b/libavcodec/vmnc.c
@@ -363,6 +363,12 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, uint8
c->cur_x = dx - c->cur_hx;
c->cur_y = dy - c->cur_hy;
break;
+ case MAGIC_WMVg: // unknown
+ src += 10;
+ break;
+ case MAGIC_WMVh: // unknown
+ src += 4;
+ break;
case MAGIC_WMVi: // ServerInitialization struct
c->pic.key_frame = 1;
c->pic.pict_type = FF_I_TYPE;
@@ -379,6 +385,9 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, uint8
//skip the rest of pixel format data
src += 13;
break;
+ case MAGIC_WMVj: // unknown
+ src += 2;
+ break;
case 0x00000000: // raw rectangle data
if((dx + w > c->width) || (dy + h > c->height)) {
av_log(avctx, AV_LOG_ERROR, "Incorrect frame size: %ix%i+%ix%i of %ix%i\n", w, h, dx, dy, c->width, c->height);