关于声形码的思考

2016-07-09 19:30:22 +08:00
 chengfu

最近有个创意想法,但是有个技术难题,关于声形码的:

需求路径:
原始声音~简化为声形码~扫描声形码~播放原始声音

原理构思:
1 、录制原始声音,获得到一个完整的波形图
2 、简化,得到简化的波形图:声形码
3 、定义波峰波谷的绝对值在 1 ~ 5 取值(简化规则)
4 、得到一串整数的数学数字
5 、给这段数字赋值(链接原始录音)
6 、扫描这个声形码~得到数字~得到原始录音

也许现在已经有类似成熟的技术了,如果您知道,请告诉我一下下;这是我这个创意想法非常重要的一个部分,所以,欢迎大家一起探讨~~~

5787 次点击
所在节点    程序员
80 条回复
sc3263
2016-07-09 20:16:07 +08:00
@chengfu 必须要从原始音频中取出点什么东西么?
生成一个指向原始音频的链接,转成 16 进制,用 DTMF 的编码方式变成音频再放出去就好了。
就是解码的时候会有点慢。毕竟一秒里面只有十个音,每个音代表一个字节的话,一秒才能传 10 个字节,链接地址长点的话,用户就该崩溃了。
chengfu
2016-07-09 21:02:42 +08:00
@hard2reg 你这段描述的“声形码”,不是我想要的那种~ @mrleft 嗯,二维码没普及之前,肯定也存在同样的问题。 @ayaseangle 我只是个建筑师&产品经理,或许我提出的问题是相关行业很基础的东西~ @sc3263 这里规划的,关键点就是与原始波形一致性,才有意思,如果是另外一套算法来的,波形图本身就没有意义了~
manhere
2016-07-09 21:10:26 +08:00
压缩率不够,需要巨幅图像才能容纳你的声音编码内容
chengfu
2016-07-09 21:14:58 +08:00
@manhere 我所描述的声形码本身的波形起伏并不能携带声音信息,更多的是象征意义的与原始波形图达成波形趋势的一致性,因为取样点的数量被确定在如 20 ~ 30 个取样点,所以我才规划了- 5 ~+ 5 的数据方案,在有限的取样点数量下,才能赋予声形码更加丰富的内涵
notgod
2016-07-09 21:15:51 +08:00
可以去查找 Google 公司的一些学术公开文档 关于 Content ID 的内容 包括声纹 DNA
Google 的用在那个 youtube, 视频上传成功后 转码将视频轨道和音频轨道分离
在将音频和版权所有者上传的数字 DNA 进行对比
有 = 提示版权问题
无 = 生成音频 DNA, 后续新版权方如果有上传 可以进行快速检索匹配.


原理构思:
1 、录制原始声音,获得到一个完整的波形图
每个设备 录制的声音 都不是一样的 涉及到设备和控制除噪算法

2 、简化,得到简化的波形图:声形码
这个需要一种非常复杂的算法, 采样以后 在保证“唯一性”的前提下 如何生成处理?

3 、定义波峰波谷的绝对值在 1 ~ 5 取值(简化规则)
这个貌似应该在上一层处理

4 、得到一串整数的数学数字
如何确保数字的”唯一性“ “关联性”

5 、给这段数字赋值(链接原始录音)
内容关联

6 、扫描这个声形码~得到数字~得到原始录音
无语了
chengfu
2016-07-09 21:22:15 +08:00
@notgod 谢谢你的丰富回答。<br>1 、就是一段录音,扫码后听到的就是原始录音,哪怕有背噪好想也没有什么关系;<br>2 、因为音色相同的人说同一句话(可能性很大)的波形及趋势很有可能相同,所以在规划的 30 个取样点(是一个概数)中,定义前 25 个取样点是声音取样,后 5 个取样点是随机生成?<br>3 、嗯;<br>4 、如 2 的回答;<br>5 、嗯;<br>6 、虽然长相和结果不同,但是现在流行的二维码扫描不是这样的原理流程?
Mutoo
2016-07-09 22:41:58 +08:00
声音的采样率要求很高,并且不容易压缩到较小的可显示区域(也就是所谓的声形码);
并且这个码要能通过扫描仪或相机可以获取又要求有一定的视觉分辨率,表明需要更大的空间;
综上,这种码即使实现了,也不便携。
jonechenug
2016-07-09 22:59:00 +08:00
支付宝的声波支付?
murmur
2016-07-09 23:29:06 +08:00
时域部分没频域靠谱啊 DTMF 也是频域放了一堆滤波器
schezukNewTos
2016-07-09 23:57:15 +08:00
https://zh.wikipedia.org/wiki/TVB 新闻#.E4.B8.BB.E9.A1.8C.E9.9F.B3.E6.A8.82
8bit
2016-07-10 00:05:05 +08:00
最多能提取特征,复原做不到吧
ahtsiu
2016-07-10 00:50:42 +08:00
这个轮子太老了,想一下当年用电话线上网,猫是怎么叫的。
声卡的原理也就是一个 ADC 录音和一个 DAC 回放,所以可以用声卡来做一个简单的逻辑分析仪,当然也可以用来做软串口或者输出 PWM 来驱动舵机啥的——前提都是直接用线连接加适当的放大电路。
-5 到 5 就是 11 位采样,直接用线连接的话完全可以,但用麦克风来做的话受环境音响干扰太大了,估计得 2 位采样也就是只有高和低才够信噪比,然后调制方式用 FSK 或者 PWM 啥的都可以,反正你要传输的数据量不大,把速率降低,抗干扰性会更好一点。
ahtsiu
2016-07-10 01:01:28 +08:00
貌似我误读楼主的意思了,楼主是想做声音的摘要? 32 楼的回复是关于“用声音传递数字信息”的。
jadecoder
2016-07-10 01:22:04 +08:00
不太明白楼主的声音指的是什么。
1. 采样率?
2. 音高分几级?
3. 音量分几级?(似乎是 -5~+5 共 11 级)

提供这三点就能估计出大致的信息量,然后才能看是否能编码。

我感觉,编码 MIDI 还可以,录音不太可能。
jadecoder
2016-07-10 01:38:12 +08:00
举个栗子,音量按 8 级算,音高也按 8 级算(低音 1 到 中音 7 ),每次采样就是 6 bits 。
按每秒采样 4 次算(和八音盒差不多),每秒 24 bits ,就是 3 Bytes 。一分钟 180 Bytes ,二维码可以很轻松的容纳。

但是按照楼主的方案,横轴长度是 4*60 = 240 格。纵轴如果用高度表示音高和音量,是 64 格。如果高度只表示音量,再用宽度或者粗细表示音高,那图像就得相当精细,或者识别条件很苛刻。恐怕无论怎样识别起来相当困难吧。

二维码之所以信息密度高,就是因为它丑陋啊。
hackpro
2016-07-10 02:08:48 +08:00
你这就是模拟信号采集,然后进行量化
看下信号处理的教材吧
SlipStupig
2016-07-10 02:13:13 +08:00
@chengfu 如果被录音了能保证安全么?
thomaspaine
2016-07-10 02:32:23 +08:00
@chengfu 你还不如直接用讯飞的方案直接识别语音呢,录音识别音高,一个是受环境影响太大,另外一个是每个人的基准都不一样。
要做还不如做身纹识别,喊一声就登录了多好。
chengfu
2016-07-10 07:23:09 +08:00
<img src="http://chengfu.qiniudn.com/%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202016-07-10%20%E4%B8%8A%E5%8D%887.03.23.png" />
@Mutoo 感谢,如图示,声音确实是有一定外形的,我规划的声形码要求有这些波形起伏,其本身的长相与声音波形一致,更多的是基于营销宣传的考虑,而其本身的长相更多是象征意义,既然是码么,肯定需要一定的视觉分辨率的,所以这个题目也可以换成:用简单波形图怎么携带足量数据,其波形本身能够被扫描并识别其所代表的人类赋予它的意义? @jonechenug 这个太高科技了,换个说法,这个议题你可以把它当作,怎么可以“看到”声音,假如我说的这个码的是成立的,那么未来的可用场景也不少的,比如快递包裹上贴上声形码,每个快递员都能在寄送过程中扫码听到买主的声音和要求,为其快递业务增加了可玩性~~~ @murmur 虽然我刚刚拿到业余无线电 B 证,但是没有钱买短波装备,所以这种波啊什么的,还是门外汉。 @schezukNewTos 啥? @8bit 嗯,如果你说的特征码是我说的与原始声音长相差不多的,那么,就是,不需要复原,这里怎么说呢,在我规划下的这个声形码的扫描识别需要联网,不能如二维码一样本地就能解析了,因为原始声音放在互联网上的,声形码只是提取的秘钥,本身携带的是数字数据,而非声音数据。 @ahtsiu 谢谢,虽然没有看懂你所描述的这个,但是貌似你在描述的一个怎么实时采样的过程,我规划中,没有实时采样的需求,都是一段音录制好后,在用软件的方法进行简化和采样。 @jadecoder 谢谢,声形码本身不具有携带声音数据的功能,只能携带认为给予赋值的数字数据功能。同时就是因为二维码长得丑,所以我才提出这个制作“看得见”的声音的怎么个声形码,怎么样,是不是很浪漫! @hackpro 声音转化成码是一回事,通过 camera 扫描还原好像是另外一回事。 @SlipStupig 二维码如何保证安全的? @thomaspaine 基于创造一个“看得见”的声音,所以,这个事儿没那么高科技,完全是一个规则制定和识别算法的问题
janxin
2016-07-10 08:03:29 +08:00
midi 应该问题不大吧,所以做一个类似八音盒?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/291394

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX