Revision bce31749 libavcodec/bethsoftvideo.c
libavcodec/bethsoftvideo.c | ||
---|---|---|
42 | 42 |
vid->frame.reference = 1; |
43 | 43 |
vid->frame.buffer_hints = FF_BUFFER_HINTS_VALID | |
44 | 44 |
FF_BUFFER_HINTS_PRESERVE | FF_BUFFER_HINTS_REUSABLE; |
45 |
avctx->pix_fmt = PIX_FMT_PAL8; // palette in vid->frame.data[1]
|
|
45 |
avctx->pix_fmt = PIX_FMT_PAL8; |
|
46 | 46 |
return 0; |
47 | 47 |
} |
48 | 48 |
|
... | ... | |
51 | 51 |
uint32_t * palette = (uint32_t *)frame->data[1]; |
52 | 52 |
int a; |
53 | 53 |
for(a = 0; a < 256; a++){ |
54 |
palette[a] = AV_RB24(&palette_buffer[a * 3]) * 4; // multiply all colors by 4
|
|
54 |
palette[a] = AV_RB24(&palette_buffer[a * 3]) * 4; |
|
55 | 55 |
} |
56 | 56 |
frame->palette_has_changed = 1; |
57 | 57 |
} |
... | ... | |
69 | 69 |
uint8_t rle_num_bytes; |
70 | 70 |
int yoffset; |
71 | 71 |
|
72 |
// reget buffer will copy old data, good for simple difference frames |
|
73 | 72 |
if (avctx->reget_buffer(avctx, &vid->frame)) { |
74 | 73 |
av_log(avctx, AV_LOG_ERROR, "reget_buffer() failed\n"); |
75 | 74 |
return -1; |
Also available in: Unified diff