Expression Encoder SDK – 如何在video上添加音轨

我可以在这方面使用一些帮助。 我想将audio.mp3文件(或其他任何格式)叠加到video上。

我正在使用Expression Encoder 4的免费版本,所以我的所有video输出都是wmv。 事实是,我不知道如何将音频文件添加到videoMediaItem。 我试过这样的东西,但它没有在结果上添加音频:

MediaItem videoTrack = new MediaItem(@"path\to\videofile.wmv"); videoTrack.OutputFormat = new WindowsMediaOutputFormat(); videoTrack.OutputFormat.VideoProfile = new AdvancedVC1VideoProfile(); MediaItem audioTrack = new MediaItem(@"path\to\audio.mp3"); videoTrack.OutputFormat.AudioProfile = audioTrack.SourceAudioProfile; job.MediaItems.Add(videoTrack); job.Encode(); 

当这不起作用时(也许是因为仅有一个配置文件只是元数据,而不是音频文件本身),然后我尝试按照将图像叠加到video上的方式覆盖音频,方法如下:

 MediaItem videoTrack = new MediaItem(@"path\to\videofile.wmv"); string overlayFilename = @"path\to\audio.mp3"; videoTrack.OverlayFileName = overlayFilename; job.MediaItems.Add(videoTrack); job.Encode(); 

这也失败了,这次错误说覆盖项目需要有video流或其他东西(我猜ExEncoder预计覆盖为video文件)。 一些帮助将不胜感激。 对于像ExEncoder 4这样强大的产品来说,这真的不应该是这么难。

MediaItem还有一个名为AudioOverlayFileName的属性 – 如果你只想覆盖音频,你应该设置一个属性!