Re: Line6 TonePort

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Stefano D'Angelo wrote:
> The problem is quite simple: this USB card does not support DMA transfers

No USB device supports DMA transfers.  USB devices support USB transfers.

The host controller supports DMA transfers.  Yours does, too.

> Takashi told me to use an intermediate buffer,

This is just because the buffer for a USB frame must be continguous, but
you cannot always guarantee this when you're near the end of ALSA's ring
buffer.

> but I really don't know how to do it.  Should I copy data from the
> buffer (playback) on usb transfer completition callbacks?

You should copy the data just before you submit the URB.  In other words,
yes.

> But in such case isn't it the same to just copy data into the urb's
> transfer buffer?

This is indeed the same.  The URB's transfer buffer _is_ the
intermediate buffer mentioned by Takashi.

The opposite, i.e., not using an intermediate buffer, would mean that
the URB's transfer_buffer pointed into ALSA's ring buffer.

> I tried to avoid using this buffer and what I obtain is something that
> resembles what the card should be playing but with huge noise.

How do you determine how much data to send in each USB frame?


Regards,
Clemens

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux