首页 > 解决方案 > 如何通过 WebSocketSharp 完全发送字节

问题描述

我正在制作一个音频聊天程序,所以我首先尝试通过网络套接字发送音频字节,我得到音频字节并将其发送但它失败了(可能无法完全通过)我尝试的第二个是转换字节使用 BitConverter 转换为字符串并使用 Encoding.UTF8.GetBytes 方法再次转换为字节数组

这是我的代码

var pcmAudio = stream.ToByteArray();
var audio = Encoding.UTF8.GetBytes(BitConverter.ToString(pcmAudio));

如果我发送那个“音频”它就可以了。我可以转换为字节数组,我可以播放音频。但是,如果我发送 pcmAudio 有一个错误

Stream ms = new MemoryStream(Encoding.UTF8.GetBytes(data));

以上是我的接收音频代码。数据是字符串。无法使用 Byte 类型接收。所以我不得不将数据转换为字节。

不幸的是,它不起作用。

错误消息是“波头已损坏”

我想完整地发送字节数组。

你的问题 1. 你为什么要发送字节?您知道使用 bitconverter 发送音频的方式我的回答 1. 字节长度会大于未转换的

谢谢你

标签: c#websocket-sharp

解决方案


推荐阅读