diff --git a/codec-cfg.c b/codec-cfg.c index fafedddc41..e8c1328e81 100644 --- a/codec-cfg.c +++ b/codec-cfg.c @@ -229,6 +229,7 @@ static short get_driver(char *s,int audioflag) "dk3adpcm", "roqaudio", "faad", + "realaud", NULL }; static char *videodrv[] = { @@ -258,6 +259,7 @@ static short get_driver(char *s,int audioflag) "huffyuv", "zlib", "mpegpes", + "realvid", NULL }; char **drv=audioflag?audiodrv:videodrv; diff --git a/codec-cfg.h b/codec-cfg.h index fb937b5799..e7117fab0a 100644 --- a/codec-cfg.h +++ b/codec-cfg.h @@ -46,6 +46,7 @@ #define AFM_DK3ADPCM 18 #define AFM_ROQAUDIO 19 #define AFM_AAC 20 +#define AFM_REAL 21 #define VFM_MPEG 1 #define VFM_VFW 2 @@ -72,6 +73,7 @@ #define VFM_HUFFYUV 23 #define VFM_ZLIB 24 #define VFM_MPEGPES 25 +#define VFM_REAL 26 #ifndef GUID_TYPE #define GUID_TYPE diff --git a/etc/codecs.conf b/etc/codecs.conf index 7088ceacbc..281a3854c0 100644 --- a/etc/codecs.conf +++ b/etc/codecs.conf @@ -697,6 +697,15 @@ videocodec 3ivX out YUY2 out BGR32,BGR24,BGR16,BGR15 +; experimental real video decoder using closed source codecs + +videocodec rv30 + info "RealPlayer 8 RV30 decoder" + status working + fourcc RV30,rv30 + driver realvid + dll "drv3.so.6.0" + out I420 ; others: diff --git a/libmpcodecs/vd.c b/libmpcodecs/vd.c index 9fbe51b841..2fd76b8a73 100644 --- a/libmpcodecs/vd.c +++ b/libmpcodecs/vd.c @@ -50,6 +50,7 @@ extern vd_functions_t mpcodecs_vd_libmpeg2; extern vd_functions_t mpcodecs_vd_huffyuv; extern vd_functions_t mpcodecs_vd_zlib; extern vd_functions_t mpcodecs_vd_mpegpes; +extern vd_functions_t mpcodecs_vd_real; vd_functions_t* mpcodecs_vd_drivers[] = { &mpcodecs_vd_null, @@ -95,6 +96,9 @@ vd_functions_t* mpcodecs_vd_drivers[] = { &mpcodecs_vd_zlib, #endif &mpcodecs_vd_mpegpes, +#ifdef USE_REALCODECS + &mpcodecs_vd_real, +#endif NULL };