家电论坛

广告合作
 注册  找回密码

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

楼主: gzwpf

浅谈有关数字升频的问题

[复制链接]

60

主题

1万

帖子

438

威望

荣誉会员

Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8

积极参与奖

交易诚信度
1
注册时间
2005-8-10
发表于 2009-9-15 18:15 | 显示全部楼层
原帖由 gzwpf 于 2009-9-15 17:43 发表


多谢anony帮我复习了数学课,虽然读了四年的数学,
但我是最烦数学了,几十年之后,都又送回给老师了。
数学的确很“美",
可惜我在我的那些数学天才同学面前,自尊倍感摧残。
本来的一点兴趣也没了。

  同专业的握手!
  我与你的情况似乎正相反,中学阶段,数学是我的短板,但有兴趣且擅长的物理或机械设计生理条件限制不容许我学!
  只好学这个不好学,但多用脑少用眼的专业,并靠这个吃饭了...
  这个专业里,不好出成绩,只是学学、用用、教教,感觉还是满有意思的。
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-15 18:23 | 显示全部楼层
原帖由 gzwpf 于 2009-9-15 17:37 发表
YYY9,老虎,你们说的都是对的!!
对图片而言。
插值并不会找回原来丢失的信息点。
只是用比较“光滑"的手段,利用数学手段”猜测“原来的信息是什么而已。
或者说是一种在保持原来数据的基础上,做一些“美化” ...


取决于对象的物理性质和基础数据,插值的“假”没关系,只要DA後的模拟信号更“真”就好了。可能CD音频的插值效果会更好,甚至增加信息量,当然是相对人的耳朵而言的模拟信号。

[ 本帖最后由 今夜星光 于 2009-9-15 23:11 编辑 ]
回复 支持 反对

使用道具 举报

50

主题

1702

帖子

35

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
2
注册时间
2001-11-21
发表于 2009-9-15 20:30 | 显示全部楼层
原帖由 今夜星光 于 2009-9-15 15:22 发表


CD机的说明书说所插的值是算出来的。不知吹牛大不大?

所插的值当然是算出来的。但是插值算法很多,不同的算法得出的曲线可以完全不同。所以不同的CD机播放同样的碟片,声音也会千差万别。就是同样的算法,一些初始条件的取舍不同,也会影响插值的结果。
我以前做过2次B样条插值,可以做到1阶导数连续。但是因为样条插值不仅依靠当前取样点的数据,还依赖于前后相邻取样点的数据,或者说是曲线的斜率,而第1个点之前没有数据,最后一个点之后也没有数据,所以如何假定第1个点前面的数据和最后一个点之后的数据,都会影响插值后曲线的形状。
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-15 23:19 | 显示全部楼层
原帖由 Fly Mouse 于 2009-9-15 20:30 发表

所插的值当然是算出来的。但是插值算法很多,不同的算法得出的曲线可以完全不同。所以不同的CD机播放同样的碟片,声音也会千差万别。就是同样的算法,一些初始条件的取舍不同,也会影响插值的结果。
我以前做过2次 ...


[s:20] 可能还需要些音频曲线的经验,才能算得更好。[s:21] ,以后要多比较CD机,本来以为没什么差异呢。[s:97]
音联邦
回复 支持 反对

使用道具 举报

8

主题

259

帖子

2

威望

初级会员

Rank: 2Rank: 2

交易诚信度
0
注册时间
2009-3-15
发表于 2009-9-15 23:37 | 显示全部楼层
有一个问题,如果有一个24/48的文件,是一次计算升频到24/192好呢,还是先升到24/96,再根据24/96升到24/192好呢?
如果分两步计算,后一次把前一步插值的数据与真实数据同等处理会不会带来额外的失真?
香港弦声音响
回复 支持 反对

使用道具 举报

96

主题

1万

帖子

241

威望

核心会员

Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

交易诚信度
0
注册时间
2001-11-21
发表于 2009-9-16 00:13 | 显示全部楼层
原帖由 gzwpf 于 2009-9-14 15:25 发表


1、先请澄清一下,“不是‘假’的”是否系“都是‘假’的”之误?

答:没有错,不能保证不是“假”的,意思就是不能保证其为“真”的。
因为AB之间的信息已经不复存在了,只有上帝才知道原来是什么东西了。
...
好象有问题,举个例子:

假设原采样点 B、C 是分别原采样点 A 的左右邻,f(t) 代表原采样点 t 的 PCM 值,假设有 f(B)<f(A)、f(C)<f(A)。

经过 upsampling 后,A 不再是采样点。假设 g(t) 代表新采样点 t 的再生 PCM 值。

显然,离 A 最近的左侧新采样点 B1 在(B,A)区间,最近的右侧新采样点 C1 在(A,C)区间,所以一个合理的推断,在多数插值算法法下有 g(B1)<f(A)、g(C1)<f(A)。

而最后经过 DA 变换后产生的模拟信号 [记做 h(t) ] ,h(A )势必将由g(B1)、g(C1)  再生出来,虽然 g(B1) < h(A) 且 g(C1) < h(A) 是可能的,但 h(A) < f(A) 显然仍属于“合理推断”。

所以,经过 upsampling 后,最终经过 DA 还原的模拟信号在原采样点产生了失真。
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-16 09:05 | 显示全部楼层
原帖由 gzwpf 于 2009-9-14 11:52 发表
最近网上谈论升频和Jitter的帖子很多。
根据本人所掌握的知识,谈点看法,才疏学浅,还望这方面的专家们指正。
先介绍一些概念(基于我的知识,不见得准确,欢迎讨论):
1、大家经常说到的升频有两种 Upsampling ...


13、Upsampling转换器也可以先内插,升频为目标频率的几倍后,然后再进行一次抽取,降低为所需的频率。
    以实现更高的精度。(如上条所述,在此情况下,异步的效率会比同步更高)


抽取后,时间改变了吗(短了)?还是在抽取点失去了数值时间不变?还是让剩下的数值重新分配时间?
回复 支持 反对

使用道具 举报

33

主题

706

帖子

11

威望

中级会员

Rank: 3Rank: 3Rank: 3

交易诚信度
0
注册时间
2009-6-11
 楼主| 发表于 2009-9-17 10:30 | 显示全部楼层
今夜星光:因为要降低采样率,所以才抽取,如果每隔一个抽取一个,丢弃一个,
那么采样率就会降低一倍。丢弃的那个值不输出,时间是不会改变的。
回复 支持 反对

使用道具 举报

33

主题

706

帖子

11

威望

中级会员

Rank: 3Rank: 3Rank: 3

交易诚信度
0
注册时间
2009-6-11
 楼主| 发表于 2009-9-17 11:02 | 显示全部楼层
原帖由 yxiao 于 2009-9-16 00:13 发表
好象有问题,举个例子:

假设原采样点 B、C 是分别原采样点 A 的左右邻,f(t) 代表原采样点 t 的 PCM 值,假设有 f(B)


“h(A )势必将由g(B1)、g(C1)  再生出来”。

我认为这句话是对的。
“最终经过 DA 还原的模拟信号在原采样点产生了失真”

我认为这句话就不是断言了,

如果你说模拟信号的失真,那么这个结论显然就会跟DAC的电路结构有关了。
但仅从数字域来说,插值后的采样值是与原采样值相关的。
即使用同样的插值算法,利用最终输出采样序列,反过来可以将丢弃的采样值恢复的。
也就是说,这两个序列是完全“相关”的,最终输出采样序列实际上包含了丢弃值的信息。

可以设想,如果按照插值算法同样的原理设计一个“理想”的DAC转换器,是可以用模拟方法,将丢弃值恢复的。

而现实的DAC芯片,恐怕都存在”量化误差“。
存在“量化误差”的DAC不可能完整再现原来的模拟信号。
也就是说,你给DAC一个特定的数字值,它的模拟输出存在“不确定性”
任何DAC也不能保证,任何时候同样的输入,总是获得同样的输出。
实际的输出,存在输入的“向前相关”,甚至“向后相关”。
还有电压的波动,干扰等等因素。

事实上,当采样率提高后,恰恰降低了DAC的这些“相关性”。通俗地讲:
如果我们让很多的赛车手从“广州”开往“北京”,而不限定中间停靠的城市,
那么走出来的路径估计是五花八门。
但如果限定,必须经由:长沙、武汉、郑州、石家庄。
那么路径的差别就会大大减小。

把这个例子用在DAC上是很恰当的。

因为通过计算生成的新的采样值,虽然不是“原有的模拟信号”
但却给DAC增加的“约束”使DAC生成的模拟信号更加“受控”

这就是在1楼所述的,升频对DAC的量化精度降低了要求的原因。

赵兄:不知道我的这些分析,是否有道理?

如果你同意这个观点,那么实际我的这个回复,
已经回答了“饿虎扑食”有关“整数倍”升频的问题。

在这里还是要多谢赵兄帮我做产品测试,你的建议对我帮助良多,

一些已经体现在产品设计中,但这个产品的成本和结构所限,大的改动不可能了。
搞设计,面对的就是一串串的“遗憾”。这也恰恰是产品升级的动力,
等以后更高档的产品设计时,会将您的想法考虑进去。
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-17 11:04 | 显示全部楼层
原帖由 gzwpf 于 2009-9-17 10:30 发表
今夜星光:因为要降低采样率,所以才抽取,如果每隔一个抽取一个,丢弃一个,
那么采样率就会降低一倍。丢弃的那个值不输出,时间是不会改变的。



明白了,谢谢。
回复 支持 反对

使用道具 举报

33

主题

706

帖子

11

威望

中级会员

Rank: 3Rank: 3Rank: 3

交易诚信度
0
注册时间
2009-6-11
 楼主| 发表于 2009-9-17 11:07 | 显示全部楼层
老虎:有关整数倍升频的问题,补充一点:
有理数倍升频:
比如要做 2.5倍的升频,
方法是先升5倍,再降低2倍。

升频时是整数,降频时也是整数,但整个比例不是整数。

异步升频,实际上是有理数倍升频的再提高。

实际上,异步转换器的实际工作“倍数”并不是恒定不变的。
因为输入信号的采样率实际上是一个变化值(不可能是理想的44.1K)
因此,转换器内的锁相环,在不停地锁定输入信号,并与输出信号做比较,实时生成

这个“倍数”的。

我在其他贴中似乎也提及这个问题,大家总是说44.1K 到 192K

实际上,现实中不存在44.1K的,只有44.099999 或者 44.100111 等等近似值。

个别采用较差晶振的CD机,其输出恐怕更是五花八门,而且不停地变化中。

[ 本帖最后由 gzwpf 于 2009-9-17 11:12 编辑 ]
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-17 11:10 | 显示全部楼层
原帖由 gzwpf 于 2009-9-17 11:02 发表


“h(A )势必将由g(B1)、g(C1)  再生出来”。

我认为这句话是对的。
“最终经过 DA 还原的模拟信号在原采样点产生了失真”

我认为这句话就不是断言了,

如果你说模拟信号的失真,那么这个结论显然就会跟 ...



这个解释很有道理。
回复 支持 反对

使用道具 举报

99

主题

2585

帖子

33

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2009-2-28
发表于 2009-9-17 11:26 | 显示全部楼层
原帖由 gzwpf 于 2009-9-17 11:07 发表
老虎:有关整数倍升频的问题,补充一点:
有理数倍升频:
比如要做 2.5倍的升频,
方法是先升5倍,再降低2倍。

升频时是整数,降频时也是整数,但整个比例不是整数。


我觉得这方法不好,更好的办法是先升到超过目标频率的最小整备数,再用一次甚至几次 1/N 的抽取法达到目标倍数的频率。这样能尽可能保持较多的原始数值。比如:有100个值,插入400个,总共500个,在去点250,剩下250个,但是仅仅含原始值50个;但是如果100个,插入200个,总共300个,再按1/6的频率去掉50个,剩下250个,但是含有原始数值5/6,83个。
回复 支持 反对

使用道具 举报

33

主题

706

帖子

11

威望

中级会员

Rank: 3Rank: 3Rank: 3

交易诚信度
0
注册时间
2009-6-11
 楼主| 发表于 2009-9-17 12:12 | 显示全部楼层
今夜星光:你的方法从理论上是对的,
但如果实施的话,那么转换器的工作频率就会跟卫星的发射频率差不多了。
你计算一下,按照你的方法,计算量该有多大,而投入跟产出就不是个好的选择了。
按照HIFI人的观点,那就非得这么干不可,但是,没有厂家会为这一小撮人干这事。
回复 支持 反对

使用道具 举报

50

主题

5285

帖子

23

威望

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

交易诚信度
0
注册时间
2008-4-7
发表于 2009-9-17 12:30 | 显示全部楼层
原帖由 gzwpf 于 2009-9-17 11:07 发表
老虎:有关整数倍升频的问题,补充一点:
有理数倍升频:
比如要做 2.5倍的升频,
方法是先升5倍,再降低2倍。

升频时是整数,降频时也是整数,但整个比例不是整数。

异步升频,实际上是有理数倍升频的再提 ...



192/44.1=4.3537414965986394557823129251701。

这可比2.5倍复杂多了。[s:97] [s:14] [s:30] 当然你可以先升43537414965986394557823129251701,然后再降10的31次方。这样精度就高了,我看一般的CPU搞不定啊。[s:14] [s:14] [s:14]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|手机版|客服:010-60152166 邮箱:zx@jd-bbs.com QQ:895456697|广告合作|账号注销|家电联盟网

京公网安备 11010602010207号 ( 京ICP证041102号,京ICP备09075138号-9 )

GMT+8, 2026-4-4 16:10 , Processed in 0.158651 second(s), 23 queries , Gzip On.

快速回复 返回顶部 返回列表