On Mon, May 20, 2013 at 10:23 AM, YIRAN LI <mrfun.ch...@gmail.com> wrote: > Hi guys, > > I've downloaded latest libvpx code and built it into ffmpeg, so that my > application can use ffmpeg dlls. > > Vp8 encoding works correctly and my application can generate webm videos. > > But what I want to know is, how can I set crf when encoding? > > What I do in my application is just calling ffmpeg interface > 1. AVStream* pVideoStream = av_new_stream(pFormatCtx, 0); > 2. AVCodec* pVideoCodec = avcodec_find_encoder(AVCODE_ID_VP8) > 3. AVCodecContext* pVideoCodecCtx = pVideoStream->codec; > > pVideoCodexCtx->bit_rate = > ->rc_min_rate= > ->rc_max_rate= (set all these bit rate control > param) > > I checked libvpxenc.c under libavcodec and seems when initing the encoder, > it doesn't directly refer to any member > of AVCodecContext to set crf. > > So could anyone tell me, how to set crf when open vp8 encoder > programmatically? > > Great thanks! >
This should do it: av_opt_set_int(pVideoCodexCtx, "crf", 10, AV_OPT_SEARCH_CHILDREN) _______________________________________________ Libav-user mailing list Libav-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/libav-user