阅读:3672回复:17
USB Audio firmware
各位前辈,大侠,
我在开发一个USB Audio Device, 接了一个8bit 8KHz 的Codec 现在想录音,但声音老是录不进来或是效果很差,不知所以然。 问题一: PChost <---> USB MCU (firmware) <---> Codec <----> 描述符文件中的speaker和microphone的采样率要描述成16 bit,就可以识别该Audio,如果描述为8bit就不能识别为Audio,我不知道是为什么呢? 问题二: firmware在PChost 和 Codec之间转发数据的时候,要如何处理数据? 因为我的Codec是8位的,u-Law/a-Law,所以我得到8位数据以后,如何 把它们加工成16bits per sample并发给PCHost呢? 当PCHost给我发回16bits per sample的数据时,我又应该如何把它们转成8bits per sample呢? 问题三: 我用USB snoopy监控,用录音机录了以后再放,PChost收到的从USB发过来的数据流内容(用录音机录)与从PChost发回给USB(用录音机放),发现不一样。因而我需要知道Windows对数据的处理过程,为什么录放的数据会不一样呢? 当用16bit 8KHz录音时我检查.wave文件,其数据与我的MCU发送数据一致,但当用录音机放的时候,用snoopy看到的数据却与录的时候看到的不一样了,象是要经过某种算法的。 这里面应该与Microsoft PCM Converter有比较大的关系,所以我想知道其算法以验证数据传输的正确性。 谢谢! |
|
最新喜欢:ww7002 |
沙发#
发布于:2003-01-17 21:40
我大概知道了,应该是要符合AC \'97的标准,但现在我急于想知道的是8 bits 和 16 bits per sample 数据是如何转换的以验证我的数据传输正确性。但我找了很久很久都没找到:-<
|
|
板凳#
发布于:2003-01-18 11:02
你采用的是哪种Codec呢?我也正在作这个,已差不多了,不妨探讨探讨。
[编辑 - 1/18/03 by xjLegend] |
|
|
地板#
发布于:2003-01-18 12:24
好啊,我用的是winbond的,
你知道8bit和16bit是如何转的吗? 你用的是什么codec,你做了数据格式转换吗? |
|
地下室#
发布于:2003-01-25 13:01
现在我已经可以录音了,虽然效果比较差,是不是还要滤波啊??
请问哪有G.711算法和source code,哪位知道望指引,谢谢!! |
|
5楼#
发布于:2003-02-12 17:27
好久没来了,回家过春节了。
你的效果怎么个差法?是否需要滤波要看你的codec吧. |
|
|
6楼#
发布于:2003-02-12 18:10
有比较明显的背景噪声,怀疑是数据格式不对。
问题如下: 我的codec是A-LAW或U-LAW的,即8bits per sample 但根据AC\'97规范需要16bits????? 所以我的descriptor里描述的是16bits per sample 那么我把codec发过来的8bit的数据按每个字节后面加了个0就发给PC Host了(这是权宜之计),因为我没有G.711 虽然我知道有G711.c,但还是想看看G.711 能不能说说你的心得体会?谢谢! 我发给你的邮件,你没有回吗? |
|
7楼#
发布于:2003-02-12 18:28
祝新年快乐!^_^
|
|
8楼#
发布于:2003-02-15 14:51
我没有收到你的邮件啊!
我这也是8位采样,也有背景噪声,但分辨声音没问题。据分析是需要调整codec工作点。 |
|
|
9楼#
发布于:2003-02-15 15:23
你的邮件地址是什么啊?或者联系电话有吗?
你在描述符里是16位还是8位呢?如果是16位,你有用G.711转换数据格式吗?你所说的Codec工作点是指什么?能解释一下吗? |
|
10楼#
发布于:2003-06-11 15:31
高人,我也正想实现类似的东西,可是却一头雾水。能不能share一下实现方案?感激不尽,如不愿公布,能不能发到我的信箱?
lmx800@163.com |
|
11楼#
发布于:2003-06-11 17:07
至少有两种方法实现,不知道你的需求是什么?
|
|
12楼#
发布于:2003-06-20 16:44
终于回复了,楼上老兄说至少有两种方法实现,可否都讲一讲?我也对8-16的转换很迷惑,能否答疑?不知道可不可以跟你EMAIL联系,可以快一些,我的信箱是lmx800@163.com,期待您的来信!感激不尽! :D
|
|
13楼#
发布于:2003-06-20 17:41
8到16位的转换有现成的在本网站上,或者你在网上找找,sun的就可以了。
所谓两种方法说的是,自定义驱动和标准驱动。 网站的邮件联络好象有点问题,这个要请教站长了。 :cool: |
|
14楼#
发布于:2003-07-08 09:52
问一下,你们采用的是什么芯片(语音转换的和USB的)?
|
|
15楼#
发布于:2003-08-11 16:03
明显的背景噪声可能是MIC出来的
|
|
16楼#
发布于:2003-08-17 11:08
花了一个礼拜时间,终于把USB的录音和放音做好了,音质很好。之前发mail请教了一些在这里的先驱,不过没人理我。想想当时的沮丧,实在是没法说。为了PCM和A Law的转换,找G7。11的spec,找了够久的了。为后来者想一想,决定最近在www.eyeteck.com上提供G711的spec下载。不好意思,事情总要靠自己努力的,所以不要来问我source code。
|
|
17楼#
发布于:2005-01-27 16:33
kermit,我也在作类似的内容,能把你的经验共享吗?
|
|