*/
/**
- * @file libavcodec/xbin.c
+ * @file
* Binary text decoder
* eXtended BINary text (XBIN) decoder
* iCEDraw File decoder
int i;
avctx->pix_fmt = PIX_FMT_PAL8;
- s->frame.reference = 1;
- if (avctx->get_buffer(avctx, &s->frame)) {
- av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
- return -1;
- }
-
p = avctx->extradata;
if (p) {
s->font_height = p[0];
} else {
switch(s->font_height) {
default:
- av_log(avctx, AV_LOG_WARNING, "font height %i not support\n", s->font_height);
+ av_log(avctx, AV_LOG_WARNING, "font height %i not supported\n", s->font_height);
s->font_height = 8;
case 8:
s->font = ff_cga_font;
s->frame.linesize[0], s->font, s->font_height, c,
a & 0x0F, a >> 4);
s->x += FONT_WIDTH;
- if (s->x >= avctx->width) {
+ if (s->x > avctx->width - FONT_WIDTH) {
s->x = 0;
s->y += s->font_height;
}
int buf_size = avpkt->size;
const uint8_t *buf_end = buf+buf_size;
+ s->x = s->y = 0;
+ s->frame.buffer_hints = FF_BUFFER_HINTS_VALID |
+ FF_BUFFER_HINTS_PRESERVE |
+ FF_BUFFER_HINTS_REUSABLE;
if (avctx->reget_buffer(avctx, &s->frame)) {
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
return -1;
}
AVCodec ff_bintext_decoder = {
- "xbin",
+ "bintext",
AVMEDIA_TYPE_VIDEO,
CODEC_ID_BINTEXT,
sizeof(XbinContext),