我想使用c#.net
以下列方式播放立体声这是一个立体声音轨:可以只听到L或只听到R声道或两者 同时通道。如果您只在通道上播放,则将音频输出为单声道 你可以听到扬声器或耳机中的一个声道
提前感谢您提供任何帮助
答案 0 :(得分:2)
在Alvas.Audio中,您需要使用AudioCompressionManager.MergeStereo和AudioCompressionManager.SplitStereo方法
见下面的伪代码
AudioCompressionManager.SplitStereo(stereo, left, right);
PlayerEx plex = new PlayexEx();
plex.Done += new PlayerEx.DoneEventHandler(plex_Done);
plex.OpenPlayer(format);
plex.StartPlay();
enum State { Left, Right, Both }
void plex_Done(object sender, DoneEventArgs e) {
byte[] left50ms = Cut(left, 50);
byte[] right50ms = Cut(right, 50);
switch (State) {
case State.Left:
plex.AddData(AudioCompressionManager.MergeStereo(left50ms, left50ms));
break;
case State.Right:
plex.AddData(AudioCompressionManager.MergeStereo(right50ms, right50ms));
break;
case State.Both:
plex.AddData(AudioCompressionManager.MergeStereo(left50ms, right50ms));
break;
}
答案 1 :(得分:0)
我找到了解决方案。
我找到了一个名为zLib的库。你可以使用这个库来播放音频,混合频道等等。这个库非常适用于声音相关的工作,并用VC ++,C#.Net,VB.Net等多种语言编写。转到下面的链接:
这是我为声音创建的最好的图书馆。