From: James Courtier-Dutton <James@superbug.demon.co.uk>
To: alsa-devel@lists.sourceforge.net
Subject: Suggestion regarding alsa driver writing documentation.
Date: Sat, 08 May 2004 19:33:51 +0000 [thread overview]
Message-ID: <409D361F.5050903@superbug.demon.co.uk> (raw)
I have been helping some people with writing alsa drivers.
One thing that they did not totally understand from the alsa
documentation was the concept of frames.
To help with this, could we add a html link between in the following
document: -
http://www.alsa-project.org/~iwai/writing-an-alsa-driver/x490.htm
In section: -
/* pointer callback */
pointing to: -
http://www.alsa-project.org/~iwai/writing-an-alsa-driver/x537.htm
In Section: -
PCM Configurations
Where it explains about what a "frame" is.
I think it would be helpful to also explain that the document: -
http://www.alsa-project.org/~iwai/writing-an-alsa-driver/x490.htm
has a line: -
current_ptr = mychip_get_hw_pointer(chip);
I think that comments should be added close to that line to say: -
"
The pointer value obtained from the hardware is likely to be a byte
offset within the buffer. In order to convert this value to a type
"snd_pcm_uframes_t" , that is required as the return value, use the
following code: -
return bytes_to_frames(substream->runtime, pointer);
An explanation of what a "frame" is can be found at http://xyz
"
Or just change the document example code: -
/* pointer callback */
static snd_pcm_uframes_t
snd_mychip_pcm_pointer(snd_pcm_substream_t *substream)
{
mychip_t *chip = snd_pcm_substream_chip(substream);
- unsigned int current_ptr;
+ unsigned int current_byte_ptr;
// get the current hardware pointer
- current_ptr = mychip_get_hw_pointer(chip);
- return current_ptr;
+ current_byte_ptr = mychip_get_hw_pointer(chip);
+ return bytes_to_frames(substream->runtime, current_byte_ptr);
}
Cheers
James
-------------------------------------------------------
This SF.Net email is sponsored by Sleepycat Software
Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to deliver
higher performing products faster, at low TCO.
http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3
next reply other threads:[~2004-05-08 19:33 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-08 19:33 James Courtier-Dutton [this message]
2004-05-10 9:29 ` Suggestion regarding alsa driver writing documentation Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=409D361F.5050903@superbug.demon.co.uk \
--to=james@superbug.demon.co.uk \
--cc=alsa-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.