我正在使用WPF和MediaElement编写媒体播放器。 我正在播放一段视频,我有几个音轨。但他们都在同一时间:(WPF MediaElement,更改音轨
打我怎么只打其中之一吗?是不是在所有可能的?
我正在使用WPF和MediaElement编写媒体播放器。 我正在播放一段视频,我有几个音轨。但他们都在同一时间:(WPF MediaElement,更改音轨
打我怎么只打其中之一吗?是不是在所有可能的?
我认为这个问题出在你使用的音频和视频DirectShow编解码器上。你能在Windows Media Player中正确播放视频吗?如果不是,请重新安装拨号编解码器。
几个月前我已经完全原型d要切换音轨以便在我们的多语言软件中显示视频帮助。 我的经验给出了一些选择:
使用通过的WinForms主机WMP-控制,然后更改喜欢的语言:
功控制=((IWMPControls3)wmpControl.Ctlcontrols);
control.currentAudioLanguage = 9; //英语
LCID的完整列表,您可以找到here。 要列出你可以使用像视频中的所有音轨:
wmpControl.PlayStateChange += (o, args) => {
if(args.newState == 3) {
var control = ((IWMPControls3)wmpControl.Ctlcontrols);
for(int i = 1; i <= control.audioLanguageCount; i++) {
MessageBox.Show(control.getAudioLanguageID(i) + ": " + control.getAudioLanguageDescription(i));
}
}
};
我希望这可以帮助您选择您的解决方案。
这是不可能的WPF MediaElement的,如果你有一些DirectShow中的专有技术如何,你可以试试我的WPF MediaKit并修改MediaUriElement/Player或创建你自己的。
我遇到了这篇文章,并试图做同样的事情。我正在使用MediaKit,但我不确定如何修改它以切换音频流。任何细节都将不胜感激。 – thecaptain0220 2013-10-17 19:35:39
谢谢!这节省了我很多时间!我现在正在使用wpf的视频帮助,因此我会尝试使用Windows媒体播放器控件。 – 2012-06-28 11:51:00
我有同样的问题,两个音轨同时播放。重新安装K-Lite Codec Pack解决了我的问题。谢谢! – CodingYourLife 2013-04-29 20:22:43