小妹请教各位大侠,帮帮忙,谢谢!!!

中文QNX 讨论: 欢迎大家灌水,讨论有关QNX 问题。
回复
zhangshuyuan
Senior Member
帖子: 10
注册时间: 周一 4月 13, 2009 1:49 pm

小妹请教各位大侠,帮帮忙,谢谢!!!

帖子 zhangshuyuan » 周二 4月 14, 2009 1:48 pm

小妹现在在做一个QNX下的USB设备驱动。
问题:
(1) 视频传输的时候采用BULK传输,BULK-IN最大包512Bytes,每一Payload数据包最大16k,那么接收数据的buffer的大小该如何设定?
(2) 音频传输的时候采用同步传输,同步管道最大包1024bytes,音频PCM采样,采样频率1ms,一个sample大概90bytes,为了保持实时性,接收数据的buffer大小该如何设定 :?:

PS:问题解决十万火急,希望哪位大侠可以帮帮小妹,小妹在此跪谢了!!!

nakeyfish
Senior Member
帖子: 375
注册时间: 周五 8月 06, 2004 4:12 pm
来自: BJ

帖子 nakeyfish » 周二 4月 14, 2009 4:04 pm

什么意思呀,Buffer和实时性有什么关系。开大一点,能一次把所有数据收下来不就行了。


难道你想分几次把数据读过来,不是更罗嗦?!

zhangshuyuan
Senior Member
帖子: 10
注册时间: 周一 4月 13, 2009 1:49 pm

Re: 小妹请教各位大侠,帮帮忙,谢谢!!!

帖子 zhangshuyuan » 周二 4月 14, 2009 4:47 pm

zhangshuyuan 写了:小妹现在在做一个QNX下的USB设备驱动。
问题:
(1) 视频传输的时候采用BULK传输,BULK-IN最大包512Bytes,每一Payload数据包最大16k,那么接收数据的buffer的大小该如何设定?
(2) 音频传输的时候采用同步传输,同步管道最大包1024bytes,音频PCM采样,采样频率1ms,一个sample大概90bytes,为了保持实时性,接收数据的buffer大小该如何设定 :?:

PS:问题解决十万火急,希望哪位大侠可以帮帮小妹,小妹在此跪谢了!!!
音频数据是麦克风传入的,所以无法判断每次的数据有多大

laris
Senior Member
帖子: 95
注册时间: 周一 2月 09, 2009 11:24 am

帖子 laris » 周三 4月 15, 2009 8:58 am

建议尽量大的开一段连续物理内存,然后每1ms去读取该sample的数据,放入开辟的内存中.Buffer大小和实时性无关.
视频同样.
要追求实时性,建议不要在Buffer上做文章了,如果你的设备有DMA,那么使用DMA会更快一些.

comquter
Moderator
帖子: 269
注册时间: 周四 9月 18, 2003 3:08 am

帖子 comquter » 周三 4月 15, 2009 8:21 pm

我对UB驱动也不是很熟,写过一个蓝牙的驱动,不过半途而废,你可以拿去看看.
驱动是在6.3上作的,6.3的host驱动Isoc有问题,6.4已经纠正了,但据说用法也有改动.

回复