找回密码
 -注册-
楼主: aarwwefdds
打印 上一主题 下一主题

【原创】拒绝YY 从基础讲解USB/UAC运作原理

[复制链接]
1
发表于 2017-9-22 15:48 | 显示全部楼层 来自 甘肃省
楼主,咨询个问题!!!
音频文件本身采样精度是16bit,外置音频解码器(乐之邦的一个设备)是32bit(bBitResolution)。
那么通过usb的iso方式传输数据时,一个样本应该是传多大?

我的理解:
1,一个样本传16bit?但是好像没有方法设定外置解码器的bBitResolution值。
2,一个样本传32bit?我需要在host的软件端,把音频文件的一个样本从16bit扩展成32bit,在传给外设??

其实就是问在主机端,外设的bBitResolution是可以更改的么?
还是需要在usb传输之前,通过软件把不同采样精度的音频,全部转换为符合外设要求的采样精度,然后传输?

本人刚开始接触UAC,问的问题比较低级,望解答一下,谢谢!
或者指明一下uac文档的那个章节可以找到,看了3天没找到。。。
回复

使用道具 举报

2
发表于 2017-9-23 17:57 | 显示全部楼层 来自 甘肃省
aarwwefdds 发表于 2017-9-23 04:16
最好的办法就是直接塞0了。方便处理

而且在某些情况下,例如在播放过程中应用了DSP,你可以很方便的从 ...

多谢回复!!!
所以,是通过主机端软件修改音频数据,达到主机端和外设端相互匹配bit参数的(外设的bit值是恒定的)。而不是通过向外设发送控制请求,修改外设参数。
这样理解?

在问一下,主机和外设的通道数需要匹配么?
例如,主机端拿到的音频数据是2声道,外设如果是4声道,那这个转换,需要那边来做?

回复

使用道具 举报

3
发表于 2017-9-23 21:42 | 显示全部楼层 来自 甘肃省
我可能大背景没描述!

我是在Linux下,在应用层,去实现uac2.0协议(绕过了底层uac驱动),和外接音频解码器通信。
现在已经能够完全识别设备,并进行控制传输。
在播放音频时,即同步传输(iso)时,播放效果很乱(音频失真还有杂音)。

外接音频解码器:32bit,4声道。(设备信息中读取的)
音源:16bit,2声道。

按照你的讲解,我应该要把音源数据转换成32bit、4声道,再传给外设就OK?
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|粤icp备09046054号|耳机网-耳机大家坛

粤公网安备 44030602000598号 耳机大家坛、www.erji.net、网站LOGO图形均为注册商标

GMT+8, 2024-5-9 01:53

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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