CPP MediaFoundation-mp4文件大小减少

CPP MediaFoundation - mp4 Filesize reduces

本文关键字:文件大小 MediaFoundation-mp4 CPP      更新时间:2023-10-16

我正在使用Media Foundation API逐帧读取一个mp4文件,并处理一些像素,然后再次保存为mp4,但当我保存时,mp4文件的文件大小会减少(如果我使用3000kb的视频结果将为2800(

使用输入类型和输出类型,就像这个一样

    MFT_REGISTER_TYPE_INFO inputType  = { MFMediaType_Video, MFVideoFormat_RGB32 };
    MFT_REGISTER_TYPE_INFO outputType = { MFMediaType_Video, MFVideoFormat_H264  };
    if( false == g_bMFTFactoryRegistered )
    {
        hResult = MFTRegisterLocal( &g_MFTFactory, MFT_CATEGORY_VIDEO_ENCODER, L"MFTFactory", 0, 1, &inputType  , 1, &outputType );

如何使源和目标大小相同??有人请帮我

您重新压缩视频,这会更改比特流,因此无法使其大小完全相同。您的输出取决于视频编码器设置,在视频编码器设置中,您可以灵活地定义输出配置文件、级别、比特率等。您尝试从源视频中复制输出可能会使您接近输入和输出大小,但无论如何,由于重新压缩过程,大小会有所不同,而且原始图像质量(细节(也可能在某种程度上丢失。