x264源码分析--fps参数

参数含义:预设帧率,用来定位关键帧位置,以及码率控制。并不能控制输出帧率,
输出帧率和输入帧率有关,如果要改变视频帧率,可以使用ffmpeg的fps滤镜。
参数解析:
OPT("fps")
    {
        if( sscanf( value, "%u/%u", &p->i_fps_num, &p->i_fps_den ) != 2 )
        {
            double fps = atof(value);
            if( fps > 0.0 && fps <= INT_MAX/1000.0 )
            {
                p->i_fps_num = (int)(fps * 1000.0 + .5);
                p->i_fps_den = 1000;
            }
            else
            {
                p->i_fps_num = atoi(value);
                p->i_fps_den = 1;
            }
        }
    }




代码逻辑:
rc->fps = (float) h->param.i_fps_num / h->param.i_fps_den;//码率控制fps
rc->buffer_rate = vbv_max_bitrate / rc->fps;//一帧的max size rate
h->param.i_keyint_min = X264_MIN( h->param.i_keyint_max / 10, (int)fps );//最小关键帧间隔

猜你喜欢

转载自blog.csdn.net/fantasy_ARM9/article/details/80262981
今日推荐