我想使用Windows Media Encoder录制来自网络摄像头的视频和来自麦克风的声音。 我设置了一个配置文件,使用基于比特率的模式和使用CBR的视频录制音频。
this.newProfile = new WMEncProfile2();
this.newProfile.ValidateMode = true;
this.newProfile.ContentType = 17;
this.newProfile.set_VBRMode(WMENC_SOURCE_TYPE.WMENC_AUDIO, 0, WMENC_PROFILE_VBR_MODE.WMENC_PVM_BITRATE_BASED);
this.newProfile.set_VBRMode(WMENC_SOURCE_TYPE.WMENC_VIDEO, 0, WMENC_PROFILE_VBR_MODE.WMENC_PVM_NONE);
newProfile.AddAudience(400000);
IWMEncAudienceObj audience = newProfile.get_Audience(0);
audience.set_VideoCodec(0, 3);
audience.set_VideoBitrate(0, 700000);
audience.set_VideoFPS(0, 25000);
audience.set_VideoKeyFrameDistance(0, 5000);
audience.set_VideoBufferSize(0, 3000);
audience.set_VideoWidth(0,800);
audience.set_VideoHeight(0, 600);
audience.set_AudioCodec(0, 1);
audience.SetAudioConfig(0, 2, 44100, 192000, 16);
this.newProfile.Validate();
然而,视频输出没有声音。它只是在CBR模式下工作。
答案 0 :(得分:0)
我只知道基于比特率的VBR,编码器必须启动两次(encoder.Start();)。现在,我可以录制声音了。