从图像创建MPEG4视频时的分辨率问题(Windows Media Foundation)

时间:2015-03-09 15:31:27

标签: c++ ms-media-foundation

目前,我使用Media Foundation SDK将图像转换为H.264视频,使用以下Microsoft的示例。

https://msdn.microsoft.com/en-us/library/windows/desktop/ff819477(v=vs.85).aspx

我在调整用于输入的媒体类型对象的MF_MT_FRAME_SIZE时遇到问题,看起来如果分辨率高于监视器,则计算机连接到对IMFSinkWriter对象的SetInputMediaType的调用会返回HRESULT错误代码0xc00d36b4这意味着无效的MediaType,这让我想知道你创建的任何MediaType是否受到你的分辨率的限制?我的代码与示例的不同之处在于在顶部定义了以下常量。

const UINT32 VIDEO_WIDTH = 2048;
const UINT32 VIDEO_HEIGHT = 1088;
const GUID   VIDEO_ENCODING_FORMAT = MFVideoFormat_H264;

1 个答案:

答案 0 :(得分:3)

我很确定Windows H.264编码器具有最高分辨率,具体取决于您的Windows版本。尝试编码为1920 x 1080。

H.264编码器的最大分辨率可能与屏幕分辨率无关。