3

我在使用 Cisco 提供的预编译 OpenH264 二进制文件时遇到丢帧问题。但是,如果我自己编译库而不修改源代码,我就没有这个问题。

我需要使用 Cisco 的预编译二进制文件,因为我将它用于商业应用程序,并且不能使用开源 BSD 许可证。我正在使用 ISVCEncoder 的 InitializeExt() 调用,并将参数 bEnableFrameSkip 设置为 False。

//My full configuration is as follows:
    encoder_->GetDefaultParams (&param);
    param.iUsageType = SCREEN_CONTENT_REAL_TIME;
    param.iRCMode = RC_BITRATE_MODE;
    param.fMaxFrameRate = framerate;
    param.iPicWidth = width;
    param.iPicHeight = height;
    param.iTargetBitrate = bitrate;
    param.bEnableDenoise = 0;
    param.bEnableFrameSkip = 0;
    param.iSpatialLayerNum = 1;

    SliceModeEnum sliceMode = SM_SINGLE_SLICE;

有没有其他人遇到过类似的问题?有谁知道为什么会发生这种情况?

提前致谢

4

2 回答 2

3

我们必须设置标志 bEnableFrameSkip = false。

于 2016-07-19T06:53:45.710 回答
1

只需设置param.bEnableFrameSkip = false;即可解决跳帧问题。如果要使用,RC_BITRATE_MODE则必须在跳帧禁用模式下设置param.bEnableFrameSkip = true;OpenH264不支持。RC_BITRATE_MODE

于 2016-07-19T06:38:49.503 回答