public static DevState GetDevId(string msg, DevState state, ref VideoAndAudioDev dev, ref string devName) { if (!string.IsNullOrWhiteSpace(msg)) { if (msg.Contains(VideoDevConst)) { state = DevState.VideoState; } else if (msg.Contains(AudioStateConst)) { state = DevState.AudioState; } else if (msg.Contains(DevIdConst)) { string devId = msg.Substring(msg.IndexOf(DevIdConst), msg.Length - msg.IndexOf(DevIdConst)).Replace(DevIdConst, "").Replace("\"", "").Trim(); switch (state) { case DevState.VideoState: dev.Videos.Add(new VideoDev() { DevId = devId, DevName = EncoderHelper.ASCIToUtf8(devName) }); break; case DevState.AudioState: dev.Audios.Add(new AudioDev() { DevId = devId, DevName = EncoderHelper.ASCIToUtf8(devName) }); break; } } devName = msg; } return(state); }