diff options
-rw-r--r-- | etc/codecs.conf | 8 | ||||
-rw-r--r-- | libmpcodecs/vd_ffmpeg.c | 7 |
2 files changed, 13 insertions, 2 deletions
diff --git a/etc/codecs.conf b/etc/codecs.conf index ffb1aded0d..256d93ef1d 100644 --- a/etc/codecs.conf +++ b/etc/codecs.conf @@ -1104,6 +1104,14 @@ videocodec ffrv10 dll rv10 out YV12,I420,IYUV +videocodec ffrv20 + info "FFmpeg RV20 decoder" + status untested + fourcc RV20,rv20 + driver ffmpeg + dll rv20 + out YV12,I420,IYUV + videocodec ffvp3 info "FFmpeg's VP3-Codec" status untested diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c index fd3b73d2af..dcd0b16d88 100644 --- a/libmpcodecs/vd_ffmpeg.c +++ b/libmpcodecs/vd_ffmpeg.c @@ -251,7 +251,9 @@ static int init(sh_video_t *sh){ #endif } if( sh->format == mmioFOURCC('R', 'V', '1', '0') - || sh->format == mmioFOURCC('R', 'V', '1', '3')){ + || sh->format == mmioFOURCC('R', 'V', '1', '3') + || sh->format == mmioFOURCC('R', 'V', '2', '0') + ){ avctx->extradata_size= 8; avctx->extradata = malloc(avctx->extradata_size); if(sh->bih->biSize!=sizeof(*sh->bih)+8){ @@ -677,7 +679,8 @@ static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){ // if(sh->ds->demuxer->type == DEMUXER_TYPE_REAL){ if( sh->format == mmioFOURCC('R', 'V', '1', '0') - || sh->format == mmioFOURCC('R', 'V', '1', '3')) + || sh->format == mmioFOURCC('R', 'V', '1', '3') + || sh->format == mmioFOURCC('R', 'V', '2', '0')) if(sh->bih->biSize==sizeof(*sh->bih)+8){ int i; dp_hdr_t *hdr= (dp_hdr_t*)data; |