diff sp5xdec.c @ 5736:810067f2c33d libavcodec

AMV video decoder. Patch by Vladimir Voroshilov (voroshil - gmail - com)
author vitor
date Sat, 29 Sep 2007 15:20:22 +0000
parents bff60ecc02f9
children e0a872dd3ea1
line wrap: on
line diff
--- a/sp5xdec.c	Sat Sep 29 15:09:34 2007 +0000
+++ b/sp5xdec.c	Sat Sep 29 15:20:22 2007 +0000
@@ -72,6 +72,10 @@
     memcpy(recoded+j, &sp5x_data_sos[0], sizeof(sp5x_data_sos));
     j += sizeof(sp5x_data_sos);
 
+    if(avctx->codec_id==CODEC_ID_AMV)
+        for (i = 2; i < buf_size-2 && j < buf_size+1024-2; i++)
+            recoded[j++] = buf[i];
+    else
     for (i = 14; i < buf_size && j < buf_size+1024-2; i++)
     {
         recoded[j++] = buf[i];
@@ -194,3 +198,15 @@
     CODEC_CAP_DR1,
     NULL
 };
+
+AVCodec amv_decoder = {
+    "amv",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_AMV,
+    sizeof(MJpegDecodeContext),
+    ff_mjpeg_decode_init,
+    NULL,
+    ff_mjpeg_decode_end,
+    sp5x_decode_frame,
+    CODEC_CAP_DR1
+};