C#基于UDP实现的P2P语音聊天工具

2019-12-30 10:57:56王冬梅
  • fs.Close();   //play_sound(recive_soundfile);  
  • ChangeBtn(true);    
  • }   else 
  • {   string m = msg.Type + "->" + msg.UserName + "说:" + msg.NormalMsg;  
  • AddServerMessage(m);   }  
  • }  

    收到语音消息后,我们要进行播放,播放时仍然用刚才那个插件播放

     

     
    1. //--------播放部分----------   private IWavePlayer wavePlayer;  
    2. private WaveStream reader;    
    3. public void play_sound(string filename)   {  
    4. if (wavePlayer != null)   {  
    5. wavePlayer.Dispose();   wavePlayer = null;  
    6. }   if (reader != null)  
    7. {   reader.Dispose();  
    8. }   reader = new MediaFoundationReader(filename, new MediaFoundationReader.MediaFoundationReaderSettings() { SingleReaderObject = true });  
    9.   if (wavePlayer == null)  
    10. {    
    11. wavePlayer = new WaveOut();   wavePlayer.PlaybackStopped += WavePlayerOnPlaybackStopped;  
    12. wavePlayer.Init(reader);   }  
    13. wavePlayer.Play();   }  
    14. private void WavePlayerOnPlaybackStopped(object sender, StoppedEventArgs stoppedEventArgs)   {