/**
* RL2 Video Decoder
- * @file rl2.c
+ * @file
* @author Sascha Sommer (saschasommer@freenet.de)
* For more information about the RL2 format, visit:
* http://wiki.multimedia.cx/index.php?title=RL2
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <unistd.h>
+#include "libavutil/intreadwrite.h"
#include "avcodec.h"
/**
* Run Length Decode a single 320x200 frame
* @param s rl2 context
- * @param buf input buffer
+ * @param in input buffer
* @param size input buffer size
* @param out ouput buffer
* @param stride stride of the output buffer
}
-/**
- * Decode a single frame
- * @param avctx decoder context
- * @param data decoded frame
- * @param data_size size of the decoded frame
- * @param buf input buffer
- * @param buf_size input buffer size
- * @return 0 success, -1 on error
- */
static int rl2_decode_frame(AVCodecContext *avctx,
void *data, int *data_size,
- const uint8_t *buf, int buf_size)
+ AVPacket *avpkt)
{
+ const uint8_t *buf = avpkt->data;
+ int buf_size = avpkt->size;
Rl2Context *s = avctx->priv_data;
if(s->frame.data[0])
}
-AVCodec rl2_decoder = {
+AVCodec ff_rl2_decoder = {
"rl2",
- CODEC_TYPE_VIDEO,
+ AVMEDIA_TYPE_VIDEO,
CODEC_ID_RL2,
sizeof(Rl2Context),
rl2_decode_init,
rl2_decode_end,
rl2_decode_frame,
CODEC_CAP_DR1,
+ .long_name = NULL_IF_CONFIG_SMALL("RL2 video"),
};