Date: Mon, 15 Sep 1997 17:17:29 -0400 From: Randall Hopper <rhh@ct.picker.com> To: Luigi Rizzo <luigi@labinfo.iet.unipi.it> Cc: multimedia@FreeBSD.ORG Subject: Re: speed setting problem with SB16 on snd970904.tgz Message-ID: <19970915171729.32304@ct.picker.com> In-Reply-To: <199709051729.TAA12468@labinfo.iet.unipi.it>; from Luigi Rizzo on Fri, Sep 05, 1997 at 07:29:25PM %2B0200 References: <199709051718.TAA12430@labinfo.iet.unipi.it> <199709051729.TAA12468@labinfo.iet.unipi.it>
next in thread | previous in thread | raw e-mail | index | archive | help
Luigi Rizzo: |right. I am in the middle of implementing split format operation (some |cards do support that, and the SB16 needs that if you want to do full |duplex without too much hassle) so I applied an inverse substitution |forgetting that the original name was play_speed, not just speed :( Thanks Luigi! This'll be fun to play with. |yes. The reason is that I am not using auto mode right now (other work |in progress, see dmabuf_auto.c ... ) so when you get an interrupt (4 |times per second default) you might miss a sample. This problem seems |not to appear with the CS4236, either because they have a bigger data |fifo (does the SB16 has a data fifo at all ? and how do I enable it ?) |or because it generates an interrupt earlier (maybe when the last |sample is acquired, rather than at the first underrun/overrun) or a |combination of the two. Grepping some SB/SB16 programming docs I have lying around, it appears it does have a FIFO. I'll mail you the full docs. They describe this, setting up auto-DMA, and all sorts of things. Haven't used them myself, but they look pretty useful. Randy Bx - Program 16-bit DMA mode digitized sound I/O Command sequence: Command, Mode, Lo(Length-1), Hi(Length-1) Command: ------------------------------------------------- | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ------------------------------------------------- | 1 | 0 | 1 | 1 | A/D | A/I | FIFO | 0 | ------------------------------------------------- | 0=D/A | 0=SC | 0=off | | 1=A/D | 1=AI | 1=on | ------------------------ Common commands: B8 - 16-bit single-cycle input B0 - 16-bit single-cycle output BE - 16-bit auto-initialized input B6 - 16-bit auto-initialized output
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970915171729.32304>