# HG changeset patch # User michael # Date 1053351650 0 # Node ID 4385101cc89cf6091dca47616c5f0e9ab72d06c8 # Parent e1deeb0c30e30d414e471e75d5666d5ea7731b3a FFASV1 diff -r e1deeb0c30e3 -r 4385101cc89c etc/codecs.conf --- a/etc/codecs.conf Mon May 19 06:54:52 2003 +0000 +++ b/etc/codecs.conf Mon May 19 13:40:50 2003 +0000 @@ -265,6 +265,14 @@ out YUY2,422P,YV12 out BGR32,BGR24 +videocodec ffasv1 + info "ASUS V1" + status working + fourcc ASV1 + driver ffmpeg + dll asv1 + out YV12,I420,IYUV + videocodec ffsvq1 info "FFmpeg Sorenson Video v1" status working diff -r e1deeb0c30e3 -r 4385101cc89c libmpcodecs/vd_ffmpeg.c --- a/libmpcodecs/vd_ffmpeg.c Mon May 19 06:54:52 2003 +0000 +++ b/libmpcodecs/vd_ffmpeg.c Mon May 19 13:40:50 2003 +0000 @@ -244,7 +244,9 @@ (sh->format == mmioFOURCC('M','4','S','2') || sh->format == mmioFOURCC('M','P','4','S') || sh->format == mmioFOURCC('H','F','Y','U') || - sh->format == mmioFOURCC('W','M','V','2') + sh->format == mmioFOURCC('W','M','V','2') || + sh->format == mmioFOURCC('A','S','V','1') || + sh->format == mmioFOURCC('V','S','S','H') )) { avctx->extradata_size = sh->bih->biSize-sizeof(BITMAPINFOHEADER); diff -r e1deeb0c30e3 -r 4385101cc89c libmpcodecs/ve_lavc.c --- a/libmpcodecs/ve_lavc.c Mon May 19 06:54:52 2003 +0000 +++ b/libmpcodecs/ve_lavc.c Mon May 19 13:40:50 2003 +0000 @@ -452,6 +452,9 @@ { printf("Using constant qscale = %d (VBR)\n", lavc_param_vqscale); lavc_venc_context->flags |= CODEC_FLAG_QSCALE; +#if LIBAVCODEC_BUILD >= 4668 + lavc_venc_context->global_quality= FF_QUALITY_SCALE * lavc_param_vqscale; +#endif vf->priv->pic->quality = lavc_param_vqscale; } @@ -640,6 +643,12 @@ memset(mux_v->bih, 0, sizeof(BITMAPINFOHEADER)+1000); mux_v->bih->biSize=sizeof(BITMAPINFOHEADER)+1000; } + else if (lavc_param_vcodec && !strcasecmp(lavc_param_vcodec, "asv1")) + { + mux_v->bih=malloc(sizeof(BITMAPINFOHEADER)+8); + memset(mux_v->bih, 0, sizeof(BITMAPINFOHEADER)+8); + mux_v->bih->biSize=sizeof(BITMAPINFOHEADER)+8; + } else if (lavc_param_vcodec && !strcasecmp(lavc_param_vcodec, "wmv2")) { mux_v->bih=malloc(sizeof(BITMAPINFOHEADER)+4); @@ -682,6 +691,8 @@ mux_v->bih->biCompression = mmioFOURCC('W', 'M', 'V', '2'); else if (!strcasecmp(lavc_param_vcodec, "huffyuv")) mux_v->bih->biCompression = mmioFOURCC('H', 'F', 'Y', 'U'); + else if (!strcasecmp(lavc_param_vcodec, "asv1")) + mux_v->bih->biCompression = mmioFOURCC('A', 'S', 'V', '1'); else mux_v->bih->biCompression = mmioFOURCC(lavc_param_vcodec[0], lavc_param_vcodec[1], lavc_param_vcodec[2], lavc_param_vcodec[3]); /* FIXME!!! */