Skip to content

Commit

Permalink
ZeroCodec: Flip output
Browse files Browse the repository at this point in the history
The initial testing of the VFW binary codec was flawed,
likely due to an AviSynth bug.

Re-testing using VirtualDub and various professional editing
applications has revealed it should have been flipped.

Signed-off-by: Derek Buitenhuis <[email protected]>
  • Loading branch information
cehoyos authored and dwbuiten committed Dec 10, 2012
1 parent ccb59c1 commit 2ddf7c8
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 42 deletions.
2 changes: 1 addition & 1 deletion libavcodec/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

#define LIBAVCODEC_VERSION_MAJOR 54
#define LIBAVCODEC_VERSION_MINOR 34
#define LIBAVCODEC_VERSION_MICRO 0
#define LIBAVCODEC_VERSION_MICRO 1

#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \
Expand Down
9 changes: 6 additions & 3 deletions libavcodec/zerocodec.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@ static int zerocodec_decode_frame(AVCodecContext *avctx, void *data,
av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
return AVERROR_INVALIDDATA;
}

prev += (avctx->height - 1) * prev_pic->linesize[0];

pic->key_frame = 0;
pic->pict_type = AV_PICTURE_TYPE_P;
}
Expand All @@ -67,7 +70,7 @@ static int zerocodec_decode_frame(AVCodecContext *avctx, void *data,
zstream->next_in = avpkt->data;
zstream->avail_in = avpkt->size;

dst = pic->data[0];
dst = pic->data[0] + (avctx->height - 1) * pic->linesize[0];

/**
* ZeroCodec has very simple interframe compression. If a value
Expand All @@ -90,8 +93,8 @@ static int zerocodec_decode_frame(AVCodecContext *avctx, void *data,
for (j = 0; j < avctx->width << 1; j++)
dst[j] += prev[j] & -!dst[j];

prev += prev_pic->linesize[0];
dst += pic->linesize[0];
prev -= prev_pic->linesize[0];
dst -= pic->linesize[0];
}

/* Release the previous buffer if need be */
Expand Down
76 changes: 38 additions & 38 deletions tests/ref/fate/zerocodec
Original file line number Diff line number Diff line change
@@ -1,39 +1,39 @@
#tb 0: 417083/10000000
0, 0, 0, 1, 1843200, 0x09f24bd5
0, 1, 1, 1, 1843200, 0x8c932d04
0, 2, 2, 1, 1843200, 0xe04904a0
0, 3, 3, 1, 1843200, 0x1969f383
0, 4, 4, 1, 1843200, 0x70781331
0, 5, 5, 1, 1843200, 0xf494496b
0, 6, 6, 1, 1843200, 0xf6226da2
0, 7, 7, 1, 1843200, 0x5d657925
0, 8, 8, 1, 1843200, 0xde15820d
0, 9, 9, 1, 1843200, 0xb6768df1
0, 10, 10, 1, 1843200, 0xc4318e08
0, 11, 11, 1, 1843200, 0x8530a7d5
0, 12, 12, 1, 1843200, 0x0ee29f10
0, 13, 13, 1, 1843200, 0xcbb6b185
0, 14, 14, 1, 1843200, 0x085aac47
0, 15, 15, 1, 1843200, 0xb42e7b1b
0, 16, 16, 1, 1843200, 0xea3a2cd6
0, 17, 17, 1, 1843200, 0x7600ee09
0, 18, 18, 1, 1843200, 0xe39fc9d4
0, 19, 19, 1, 1843200, 0xc122cd4c
0, 20, 20, 1, 1843200, 0x5fb4c1cb
0, 21, 21, 1, 1843200, 0x1552cb6c
0, 22, 22, 1, 1843200, 0x5b66ce2f
0, 23, 23, 1, 1843200, 0x70a8c318
0, 24, 24, 1, 1843200, 0x8b86af2d
0, 25, 25, 1, 1843200, 0x94886a49
0, 26, 26, 1, 1843200, 0xda05684f
0, 27, 27, 1, 1843200, 0xe57c8f33
0, 28, 28, 1, 1843200, 0x39ef9c7e
0, 29, 29, 1, 1843200, 0xe7a0cab8
0, 30, 30, 1, 1843200, 0x43f0d766
0, 31, 31, 1, 1843200, 0x733d3c7b
0, 32, 32, 1, 1843200, 0x42713cea
0, 33, 33, 1, 1843200, 0xdd844e53
0, 34, 34, 1, 1843200, 0xa0875ba8
0, 35, 35, 1, 1843200, 0x318b6114
0, 36, 36, 1, 1843200, 0xcc986275
0, 37, 37, 1, 1843200, 0x14eb6704
0, 0, 0, 1, 1843200, 0x04154bd5
0, 1, 1, 1, 1843200, 0x3a872d04
0, 2, 2, 1, 1843200, 0x3b1304a0
0, 3, 3, 1, 1843200, 0x7474f383
0, 4, 4, 1, 1843200, 0xce7d1331
0, 5, 5, 1, 1843200, 0x3cdf496b
0, 6, 6, 1, 1843200, 0xe9096da2
0, 7, 7, 1, 1843200, 0x30be7925
0, 8, 8, 1, 1843200, 0x600b820d
0, 9, 9, 1, 1843200, 0xe7bb8df1
0, 10, 10, 1, 1843200, 0x62848e08
0, 11, 11, 1, 1843200, 0x9a71a7d5
0, 12, 12, 1, 1843200, 0x743a9f10
0, 13, 13, 1, 1843200, 0x62b0b185
0, 14, 14, 1, 1843200, 0xd94eac47
0, 15, 15, 1, 1843200, 0xa1007b1b
0, 16, 16, 1, 1843200, 0x11d72cd6
0, 17, 17, 1, 1843200, 0x141aee09
0, 18, 18, 1, 1843200, 0x9a90c9d4
0, 19, 19, 1, 1843200, 0x6bd5cd4c
0, 20, 20, 1, 1843200, 0xdf2ec1cb
0, 21, 21, 1, 1843200, 0xeecbcb6c
0, 22, 22, 1, 1843200, 0x9ecace2f
0, 23, 23, 1, 1843200, 0x7b59c318
0, 24, 24, 1, 1843200, 0x050baf2d
0, 25, 25, 1, 1843200, 0xada36a49
0, 26, 26, 1, 1843200, 0x4f4d684f
0, 27, 27, 1, 1843200, 0x9ddc8f33
0, 28, 28, 1, 1843200, 0x914d9c7e
0, 29, 29, 1, 1843200, 0x0dc3cab8
0, 30, 30, 1, 1843200, 0x98f8d766
0, 31, 31, 1, 1843200, 0x872e3c7b
0, 32, 32, 1, 1843200, 0xdf7b3cea
0, 33, 33, 1, 1843200, 0xf7864e53
0, 34, 34, 1, 1843200, 0x13315ba8
0, 35, 35, 1, 1843200, 0xc4586114
0, 36, 36, 1, 1843200, 0x57a96275
0, 37, 37, 1, 1843200, 0x6e756704

0 comments on commit 2ddf7c8

Please sign in to comment.