Commit c3a06615 authored by Justin Ruggles's avatar Justin Ruggles

bethsoftvideo: fix palette reading.

Return the correct number of consumed bytes and set *data_size = 0.
Returned size is 1 too small, leading to that 1 byte being read as the next
frame, which results in an extra blank frame at the beginning of the stream.
parent 83ce51cc
......@@ -59,7 +59,7 @@ static int set_palette(BethsoftvidContext *ctx)
palette[a] = bytestream2_get_be24u(&ctx->g) * 4;
}
ctx->frame.palette_has_changed = 1;
return 256*3;
return 0;
}
static int bethsoftvid_decode_frame(AVCodecContext *avctx,
......@@ -86,7 +86,13 @@ static int bethsoftvid_decode_frame(AVCodecContext *avctx,
switch(block_type = bytestream2_get_byte(&vid->g)){
case PALETTE_BLOCK: {
return set_palette(vid);
int ret;
*data_size = 0;
if ((ret = set_palette(vid)) < 0) {
av_log(avctx, AV_LOG_ERROR, "error reading palette\n");
return ret;
}
return bytestream2_tell(&vid->g);
}
case VIDEO_YOFF_P_FRAME:
yoffset = bytestream2_get_le16(&vid->g);
......
0, 0, 192000, 0xdecc683b
0, 0, 192000, 0x00000000
1, 0, 1480, 0x00000000
0, 1500, 192000, 0x00000000
0, 3000, 192000, 0x01a6cf45
0, 4500, 192000, 0xd07d57e9
0, 1500, 192000, 0x01a6cf45
0, 3000, 192000, 0xd07d57e9
0, 4500, 192000, 0x3cb1dff5
1, 5994, 1480, 0x20a92bd4
0, 6000, 192000, 0x3cb1dff5
0, 7500, 192000, 0xd1aaa8fb
0, 9000, 192000, 0x75f526cd
0, 10500, 192000, 0x0f673577
0, 6000, 192000, 0xd1aaa8fb
0, 7500, 192000, 0x75f526cd
0, 9000, 192000, 0x0f673577
0, 10500, 192000, 0x897b6781
1, 11988, 1850, 0xa9e48a74
0, 12000, 192000, 0x897b6781
0, 13500, 192000, 0x81e6b7f7
0, 15000, 192000, 0x1f45ce61
0, 16500, 192000, 0x5a0772a6
0, 18000, 192000, 0xf78732b3
0, 12000, 192000, 0x81e6b7f7
0, 13500, 192000, 0x1f45ce61
0, 15000, 192000, 0x5a0772a6
0, 16500, 192000, 0xf78732b3
0, 18000, 192000, 0x8427f9e5
1, 19481, 1480, 0x23ecd018
0, 19500, 192000, 0x8427f9e5
0, 21000, 192000, 0x40473f11
0, 22500, 192000, 0x173ceebe
0, 24000, 192000, 0x136b9516
0, 19500, 192000, 0x40473f11
0, 21000, 192000, 0x173ceebe
0, 22500, 192000, 0x136b9516
0, 24000, 192000, 0x138d11ae
1, 25475, 1480, 0x206bb915
0, 25500, 192000, 0x138d11ae
0, 27000, 192000, 0x063dbff3
0, 28500, 192000, 0x5280852f
0, 30000, 192000, 0x99943a8f
0, 25500, 192000, 0x063dbff3
0, 27000, 192000, 0x5280852f
0, 28500, 192000, 0x99943a8f
0, 30000, 192000, 0x0330a728
1, 31469, 1850, 0xb0e10e75
0, 31500, 192000, 0x0330a728
0, 33000, 192000, 0x5d35467d
0, 34500, 192000, 0xfd436343
0, 36000, 192000, 0xc323fcfe
0, 37500, 192000, 0x2a1530a0
0, 31500, 192000, 0x5d35467d
0, 33000, 192000, 0xfd436343
0, 34500, 192000, 0xc323fcfe
0, 36000, 192000, 0x2a1530a0
0, 37500, 192000, 0xbd43bb60
1, 38961, 1480, 0x8d9baedd
0, 39000, 192000, 0xbd43bb60
0, 40500, 192000, 0xa47f5eab
0, 42000, 192000, 0xff17f5f7
0, 43500, 192000, 0xb4140b55
0, 39000, 192000, 0xa47f5eab
0, 40500, 192000, 0xff17f5f7
0, 42000, 192000, 0xb4140b55
0, 43500, 192000, 0xb8782cc4
1, 44955, 1480, 0xb802aae1
0, 45000, 192000, 0xb8782cc4
0, 46500, 192000, 0x92975b8b
0, 48000, 192000, 0xf42a64d6
0, 49500, 192000, 0x2cc7077d
0, 45000, 192000, 0x92975b8b
0, 46500, 192000, 0xf42a64d6
0, 48000, 192000, 0x2cc7077d
0, 49500, 192000, 0x00080cc8
1, 50950, 1480, 0xecd7b5cc
0, 51000, 192000, 0x00080cc8
0, 52500, 192000, 0x584b48f3
0, 54000, 192000, 0xd68f57da
0, 55500, 192000, 0x60158422
0, 51000, 192000, 0x584b48f3
0, 52500, 192000, 0xd68f57da
0, 54000, 192000, 0x60158422
0, 55500, 192000, 0xd7fb89e6
1, 56944, 1850, 0x16861355
0, 57000, 192000, 0xd7fb89e6
0, 58500, 192000, 0x97f1c76a
0, 60000, 192000, 0x46c4bb9e
0, 61500, 192000, 0xd32f9b66
0, 63000, 192000, 0x74f43886
0, 57000, 192000, 0x97f1c76a
0, 58500, 192000, 0x46c4bb9e
0, 60000, 192000, 0xd32f9b66
0, 61500, 192000, 0x74f43886
0, 63000, 192000, 0x3c4e47df
1, 64436, 1480, 0xa51690bd
0, 64500, 192000, 0x3c4e47df
0, 66000, 192000, 0xb5ac0a58
0, 67500, 192000, 0xcc572b31
0, 69000, 192000, 0xb1739d26
0, 64500, 192000, 0xb5ac0a58
0, 66000, 192000, 0xcc572b31
0, 67500, 192000, 0xb1739d26
0, 69000, 192000, 0x73da5473
1, 70430, 1480, 0xdd0b90d1
0, 70500, 192000, 0x73da5473
0, 72000, 192000, 0x5f79f5bc
0, 73500, 192000, 0x0affc0a0
0, 75000, 192000, 0x2b4d5c1c
0, 70500, 192000, 0x5f79f5bc
0, 72000, 192000, 0x0affc0a0
0, 73500, 192000, 0x2b4d5c1c
0, 75000, 192000, 0x309b41bc
1, 76424, 1850, 0x3ce6e333
0, 76500, 192000, 0x309b41bc
0, 78000, 192000, 0xd42b6424
0, 79500, 192000, 0x4795c948
0, 81000, 192000, 0xbc1a3a8b
0, 82500, 192000, 0x16529c5b
0, 76500, 192000, 0xd42b6424
0, 78000, 192000, 0x4795c948
0, 79500, 192000, 0xbc1a3a8b
0, 81000, 192000, 0x16529c5b
0, 82500, 192000, 0x6b1b31ba
1, 83917, 1480, 0xf8ce8ea3
0, 84000, 192000, 0x6b1b31ba
0, 85500, 192000, 0x569182ce
0, 87000, 192000, 0xe6ea9866
0, 88500, 192000, 0x102c6076
0, 84000, 192000, 0x569182ce
0, 85500, 192000, 0xe6ea9866
0, 87000, 192000, 0x102c6076
0, 88500, 192000, 0xb29f527a
1, 89911, 1480, 0xda4597af
0, 90000, 192000, 0xb29f527a
0, 91500, 192000, 0x040b4eee
0, 93000, 192000, 0x92574f4a
0, 94500, 192000, 0x1e8acdce
0, 90000, 192000, 0x040b4eee
0, 91500, 192000, 0x92574f4a
0, 93000, 192000, 0x1e8acdce
0, 94500, 192000, 0x1becf516
1, 95905, 1480, 0x918f7cb3
0, 96000, 192000, 0x1becf516
0, 97500, 192000, 0xb62e9776
0, 99000, 192000, 0xed37a08e
0, 100500, 192000, 0xc0719912
0, 96000, 192000, 0xb62e9776
0, 97500, 192000, 0xed37a08e
0, 99000, 192000, 0xc0719912
0, 100500, 192000, 0x24cf7a7e
1, 101899, 1850, 0xca6edb15
0, 102000, 192000, 0x24cf7a7e
0, 103500, 192000, 0x0307f62f
0, 105000, 192000, 0x79b7417b
0, 102000, 192000, 0x0307f62f
0, 103500, 192000, 0x79b7417b
1, 109392, 1480, 0xba279597
1, 115386, 1480, 0xc5a38a9e
1, 121380, 1850, 0x8147eef5
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment