From: Carlos Munoz <carlos@kenati.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: Lee Revell <rlrevell@joe-job.com>,
alsa-devel <alsa-devel@lists.sourceforge.net>
Subject: Re: snd_pcm_hw_params_get_period_size() returning 0
Date: Mon, 03 Apr 2006 10:46:34 -0700 [thread overview]
Message-ID: <44315F7A.7060208@kenati.com> (raw)
In-Reply-To: <s5hwte7arhb.wl%tiwai@suse.de>
Takashi Iwai wrote:
>At Fri, 31 Mar 2006 18:20:42 -0800,
>Carlos Munoz wrote:
>
>
>>Lee Revell wrote:
>>
>>
>>
>>>On Fri, 2006-03-31 at 17:00 -0800, Carlos Munoz wrote:
>>>
>>>
>>>
>>>
>>>>Does
>>>>any one know why
>>>>snd_pcm_hw_params_get_period_size() would be returning 0 ? Is it
>>>>something the driver did/didn't do ?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>Argh, please disregard last message, that's not how the hw_params
>>>callback works :-(
>>>
>>>Lee
>>>
>>>
>>>
>>>
>>>
>>Hi Lee,
>>
>>I digged further and this is what I found.
>>
>>snd_pcm_hw_params_get_period_size(...., int *val) does retrieve the
>>correct period size and updates val with it. However, val does not match
>>the address passed to it. I mean the caller of
>>snd_pcm_hw_params_get_period_size(.... 0x41becc) passes the address of
>>where the period size is to be stored as 0x41becc but
>>snd_pcm_hw_params_get_period_size() gets 0x7b83c0d8 and that's where it
>>puts the period size.
>>
>>This is on the Renesas SH7343 processor. alsa-lib is a dynamic library.
>>Should I expect the variable address be the same ?
>>
>>
>
>No. They must be different. The value is stored to the original
>address only when no error returns. Unless that, a temporary variable
>is used. That's why you see two distinct addresses.
>
>
>Takashi
>
>
>
>
Hi Takashi,
I understand what you are saying. However, this is not the case here.
The original address is wrong. I print the value of val (not _val)
passed to snd_pcm_hw_params_get_period_size() and it is wrong. See the code:
#ifndef DOXYGEN
int INTERNAL(snd_pcm_hw_params_get_period_size)(const
snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
#else
int snd_pcm_hw_params_get_period_size(const snd_pcm_hw_params_t *params,
snd_pcm_uframes_t *val, int *dir)
#endif
{
unsigned int _val;
printf("alsa-lib:snd_pcm_hw_params_get_period_size() - params=%p
val=%p dir=%p\n",
params, val, dir);
int err = snd_pcm_hw_param_get(params, SND_PCM_HW_PARAM_PERIOD_SIZE,
&_val, dir);
if (err >= 0)
*val = _val;
return err;
}
This printf shows val has an incorrect value (dir is also incorrect). I
don't think it's related to the alsa-lib but maybe a problem with our
build tool chain.
Thanks,
Carlos Munoz
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
next prev parent reply other threads:[~2006-04-03 17:46 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-01 1:00 snd_pcm_hw_params_get_period_size() returning 0 Carlos Munoz
2006-04-01 1:57 ` Lee Revell
2006-04-01 1:59 ` Lee Revell
2006-04-01 2:20 ` Carlos Munoz
2006-04-03 10:22 ` Takashi Iwai
2006-04-03 17:46 ` Carlos Munoz [this message]
2006-04-03 18:33 ` Takashi Iwai
2006-04-03 18:38 ` Jaroslav Kysela
2006-04-03 19:37 ` Carlos Munoz
2006-04-05 17:53 ` Carlos Munoz
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=44315F7A.7060208@kenati.com \
--to=carlos@kenati.com \
--cc=alsa-devel@lists.sourceforge.net \
--cc=rlrevell@joe-job.com \
--cc=tiwai@suse.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox