求完整的可以将音频数据转化为二进制流传输,再将二进制流转换为音频信号的代码,感激不尽感激不尽

wzy_sxn 2019-04-28 11:26:09
本人软件小白,目前正在学习c#,上述功能实现对于自己目前阶段有些困难,特来求助各位大神,感激不尽感激不尽
...全文
1824 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzy_sxn 2019-04-29
  • 打赏
  • 举报
回复
谢谢大神谢谢大神,我们之前通过电脑自带声卡用labview采集的声音文件为wav格式的,之前想着把wav文件转化成01字符串通过串口发送,然后接收端接收01字符串,然后再把01字符串变成wav文件或者直接解析成声音。按照您的说法,我们完全没有必要转换wav文件了,可以直接通过串口传送,然后解析wav文件就行,您看是这样吗?如果如果可以直接通过串口传送wav文件的话,是设置好协议,然后接收端接收到的也是wav文件嘛?不好意思不要意思,问题有点多,打扰打扰,感谢感谢
wzy_sxn 2019-04-29
  • 打赏
  • 举报
回复
引用 4 楼 wanghui0380 的回复:
[quote=引用 3 楼 wzy_sxn 的回复:]
感谢大神,感谢大神。大神不知可否加个扣扣啥的,我们其实有具体的需求,是想做个界面,实现音频信号采集,转化为二进制之后串口传输,接收端再解析这个信号恢复为音频信号,之前用labview尝试,但是音频信号转换为二进制后再解析总是乱码。如果您平时工作之余能有闲暇时间的话,希望能跟您合作下。


音频信号,8成设备是不带编码的,也就是标准的pcm数据(pcm本身就是二进制)。你直接把这个pcm发给下面的人就行。

当然如果你跟下面约定是带编码的,你需要找个编码器编码成你们约定的格式比如mp4(wav除外,wav其实就是加了个文件头的pcm数据,所以也无所谓编码不编码了)
[/quote]
谢谢大神谢谢大神,我们之前通过电脑自带声卡用labview采集的声音文件为wav格式的,之前想着把wav文件转化成01字符串通过串口发送,然后接收端接收01字符串,然后再把01字符串变成wav文件或者直接解析成声音。按照您的说法,我们完全没有必要转换wav文件了,可以直接通过串口传送,然后解析wav文件就行,您看是这样吗?如果如果可以直接通过串口传送wav文件的话,是设置好协议,然后接收端接收到的也是wav文件嘛?不好意思不要意思,问题有点多,打扰打扰,感谢感谢
wzy_sxn 2019-04-29
  • 打赏
  • 举报
回复
谢谢大神谢谢大神,我们之前通过电脑自带声卡用labview采集的声音文件为wav格式的,之前想着把wav文件转化成01字符串通过串口发送,然后接收端接收01字符串,然后再把01字符串变成wav文件或者直接解析成声音。按照您的说法,我们完全没有必要转换wav文件了,可以直接通过串口传送,然后解析wav文件就行,您看是这样吗?如果如果可以直接通过串口传送wav文件的话,是设置好协议,然后接收端接收到的也是wav文件嘛?不好意思不要意思,问题有点多,打扰打扰,感谢感谢
wanghui0380 2019-04-29
  • 打赏
  • 举报
回复
采集部分可以直接使用NAudio,一次触发就是一帧pcm数据,你可以把这个pcm原封不动抄送到串口,也可以找编码器编码后送到串口
wanghui0380 2019-04-29
  • 打赏
  • 举报
回复
引用 3 楼 wzy_sxn 的回复:
感谢大神,感谢大神。大神不知可否加个扣扣啥的,我们其实有具体的需求,是想做个界面,实现音频信号采集,转化为二进制之后串口传输,接收端再解析这个信号恢复为音频信号,之前用labview尝试,但是音频信号转换为二进制后再解析总是乱码。如果您平时工作之余能有闲暇时间的话,希望能跟您合作下。
音频信号,8成设备是不带编码的,也就是标准的pcm数据(pcm本身就是二进制)。你直接把这个pcm发给下面的人就行。 当然如果你跟下面约定是带编码的,你需要找个编码器编码成你们约定的格式比如mp4(wav除外,wav其实就是加了个文件头的pcm数据,所以也无所谓编码不编码了)
wzy_sxn 2019-04-29
  • 打赏
  • 举报
回复
感谢大神,感谢大神。大神不知可否加个扣扣啥的,我们其实有具体的需求,是想做个界面,实现音频信号采集,转化为二进制之后串口传输,接收端再解析这个信号恢复为音频信号,之前用labview尝试,但是音频信号转换为二进制后再解析总是乱码。如果您平时工作之余能有闲暇时间的话,希望能跟您合作下。
wanghui0380 2019-04-29
  • 打赏
  • 举报
回复
labview都是图形化的,基本上都可以不用做什么,拖个采集的,拖个串口的,在连个线就行了。这里面都不必做什么太多东西
大鱼> 2019-04-28
  • 打赏
  • 举报
回复
https://bbs.csdn.net/topics/392047264 其实音频转二进制,与其他文件转二进制一样的
Fan警长 2019-04-28
  • 打赏
  • 举报
回复
/// <summary> /// 工具类:文件与二进制流间的转换 /// </summary> public class FileBinaryConvertHelper { /// <summary> /// 将文件转换为byte数组 /// </summary> /// <param name="path">文件地址</param> /// <returns>转换后的byte数组</returns> public static byte[] File2Bytes(string path) { if (!System.IO.File.Exists(path)) { return new byte[0]; } FileInfo fi = new FileInfo(path); byte[] buff = new byte[fi.Length]; FileStream fs = fi.OpenRead(); fs.Read(buff, 0, Convert.ToInt32(fs.Length)); fs.Close(); return buff; } /// <summary> /// 将byte数组转换为文件并保存到指定地址 /// </summary> /// <param name="buff">byte数组</param> /// <param name="savepath">保存地址</param> public static void Bytes2File(byte[] buff, string savepath) { if (System.IO.File.Exists(savepath)) { System.IO.File.Delete(savepath); } FileStream fs = new FileStream(savepath, FileMode.CreateNew); BinaryWriter bw = new BinaryWriter(fs); bw.Write(buff, 0, buff.Length); bw.Close(); fs.Close(); } }

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧