[alsa-devel] REGRESSION: Webcam mic for 145f:015b not longer working with 1.0.24 and above (OK with 1.0.23)

Kostas hunter18 at gmail.com
Wed Aug 29 14:04:51 CEST 2012


On 29/08/2012 09:23 πμ, Daniel Mack wrote:
> On 29.08.2012 02:13, Kostas wrote:
>> On 29/08/2012 01:51 πμ, Daniel Mack wrote:
>>> On 29.08.2012 00:16, Kostas wrote:
>>>> On 28/08/2012 12:55 μμ, Daniel Mack wrote:
>>>>> On 28.08.2012 11:47, Kostas wrote:
>>>>>> On 28/08/2012 12:30 μμ, Daniel Mack wrote:
>>>>>>> On 28.08.2012 11:18, Kostas wrote:
>>>>>>>> On 28/08/2012 12:06 μμ, Daniel Mack wrote:
>>>>>>>>> On 28.08.2012 10:56, Kostas wrote:
>>>>>>>>>> On 28/08/2012 11:50 πμ, Daniel Mack wrote:
>>>>>>>>>>> On 28.08.2012 10:47, Kostas wrote:
>>>>>>>>>>>> On 28/08/2012 08:44 πμ, Daniel Mack wrote:
>>>>>>>>>>>>> On 28.08.2012 00:19, Kostas wrote:
>>>>>>>>>>>>>> On 27/08/2012 06:54 μμ, Kostas wrote:
>>>>>>>>>>>>>>> On 27/08/2012 02:44 μμ, Daniel Mack wrote:
>>>>>>>>>>>>>>>> On 27.08.2012 12:33, Kostas wrote:
>>>>>>>>>>>>>>>>> On 27/08/2012 12:26 μμ, Daniel Mack wrote:
>>>>>>>>>>>>>>>>>> On 27.08.2012 11:00, Kostas wrote:
>>>>>>>>>>>>>>>>>>> Hi All,
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> I have a 'Trust Webcam' (USB ID: 145f:015b) that comes with a
>>>>>>>>>>>>>>>>>>> microphone.
>>>>>>>>>>>>>>>>>>> The microphone works with Alsa 1.0.23 but it does not work with the
>>>>>>>>>>>>>>>>>>> latest Alsa 1.0.25 neither with Alsa 1.0.24.
>>>>>>>>>>>>>>>>>>> Apparently this is a regression.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> What shall I do to figure out the source of the problem?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Here are attached my alsa-infos, with Alsa 1.0.23 (working),
>>>>>>>>>>>>>>>>>>> 1.0.24 (NOT
>>>>>>>>>>>>>>>>>>> working) and 1.0.25 (NOT working).
>>>>>>>>>>>>>>>>>> Can you provide dmesg protocols for both a working and a non-working
>>>>>>>>>>>>>>>>>> case please?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Below are attached the dmesg files.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thanks - the logs look both good, I guess the interesting messages are
>>>>>>>>>>>>>>>> only generated once you try to start the stream. Can you try this?
>>>>>>>>>>>>>>> How i do that?
>>>>>>>>>>>>>>> I tried to make a test call in skype and also recording a video in
>>>>>>>>>>>>>>> cheese but no changes in dmesg.
>>>>>>>>>>>>>>> Is there another way to start the stream?
>>>>>>>>>>>>>> Also tried to record voice with sound recorder...with alsa 1.0.23
>>>>>>>>>>>>>> recording is fine..i hear my voice when playback the file but with alsa
>>>>>>>>>>>>>> 1.0.24 and above nothing is recorded.
>>>>>>>>>>>>>> In both cases nothing is changed in dmesg output.
>>>>>>>>>>>>>> What else could i do to help you out?
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Comparing the two dmesg logs, I'm under the impression that in the
>>>>>>>>>>>>> second case (the newer kernel), the hda driver kicks in and creates a
>>>>>>>>>>>>> sound device before the usb audio driver does. Hence, the default card
>>>>>>>>>>>>> changes and you're recording from your internal sound card rather than
>>>>>>>>>>>>> the Webcam.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Could you please send the output of 'aplay -l' in both cases?
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Daniel
>>>>>>>>>>>>>
>>>>>>>>>>>> Output of working case
>>>>>>>>>>>> **** List of PLAYBACK Hardware Devices ****
>>>>>>>>>>>> card 0: SB [HDA ATI SB], device 0: AD198x Analog [AD198x Analog]
>>>>>>>>>>>> Â  Subdevices: 1/1
>>>>>>>>>>>> Â  Subdevice #0: subdevice #0
>>>>>>>>>>>> card 0: SB [HDA ATI SB], device 1: AD198x Digital [AD198x Digital]
>>>>>>>>>>>> Â  Subdevices: 1/1
>>>>>>>>>>>> Â  Subdevice #0: subdevice #0
>>>>>>>>>>>> card 2: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
>>>>>>>>>>>> Â  Subdevices: 1/1
>>>>>>>>>>>> Â  Subdevice #0: subdevice #0
>>>>>>>>>>> Sorry, there's of course no playback on a webcam. Try 'arecord -l'
>>>>>>>>>>> instead, please.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Daniel
>>>>>>>>>>>
>>>>>>>>>> Output of non-working case
>>>>>>>>>> **** List of CAPTURE Hardware Devices ****
>>>>>>>>>> card 0: SB [HDA ATI SB], device 0: AD198x Analog [AD198x Analog]
>>>>>>>>>>         Subdevices: 3/3
>>>>>>>>>>         Subdevice #0: subdevice #0
>>>>>>>>>>         Subdevice #1: subdevice #1
>>>>>>>>>>         Subdevice #2: subdevice #2
>>>>>>>>>> card 1: Webcam [Trust 2MP Auto Focus Webcam], device 0: USB Audio [USB
>>>>>>>>>> Audio]
>>>>>>>>>>         Subdevices: 1/1
>>>>>>>>>>         Subdevice #0: subdevice #0
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Output of working case
>>>>>>>>>> **** List of CAPTURE Hardware Devices ****
>>>>>>>>>> card 0: SB [HDA ATI SB], device 0: AD198x Analog [AD198x Analog]
>>>>>>>>>>         Subdevices: 3/3
>>>>>>>>>>         Subdevice #0: subdevice #0
>>>>>>>>>>         Subdevice #1: subdevice #1
>>>>>>>>>>         Subdevice #2: subdevice #2
>>>>>>>>>> card 1: default [Trust 2MP Auto Focus Webcam ], device 0: USB Audio [USB
>>>>>>>>>> Audio]
>>>>>>>>>>         Subdevices: 1/1
>>>>>>>>>>         Subdevice #0: subdevice #0
>>>>>>>>>>
>>>>>>>>> Try 'arecord -f cd -Dplughw:1 foo.wav' and see if that works. For
>>>>>>>>> whatever reason, the webcam is not the default in the non-working case.
>>>>>>>>> Are you using the same userspace and configs in both cases?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Daniel
>>>>>>>>>
>>>>>>>> Unfortunately it doesn't work...voice is recorded only in 1.0.23 alsa
>>>>>>>> version.
>>>>>>>> In above version nothing is recorded.
>>>>>>>> I use the same Ubuntu release just the kernel changes
>>>>>>>> 1.0.23 alsa is in kernel 2.6.38
>>>>>>>> newer alsa versions that don't work are in newer kernels.
>>>>>>> I still think it is all related to configs and settings. Can you please
>>>>>>> go check all relevant volume settings and routing switches with amixer
>>>>>>> or alsamixer? The fact that the default changes tells me that
>>>>>>> something's different in the behaviour in which ALSA handles the devices.
>>>>>>>
>>>>>>> Also note that 1.0.24 is rather ancient already, and while the driver
>>>>>>> has seen quiet some refactoring lately, I haven't heard about
>>>>>>> regressions in that version yet - and I'm sure we would have gotten a
>>>>>>> whole lot of reports if there was such a tremendous breakage. And
>>>>>>> there's no signs of errors in the kernel logs either. But you never
>>>>>>> know, of course.
>>>>>>>
>>>>>>>
>>>>>>> Daniel
>>>>>>>
>>>>>> Alsamixer working casehttp://imagebin.org/226143
>>>>>> Alsamixer non-working casehttp://imagebin.org/226142
>>>>>>
>>>>>> I also attach amixer output for both cases.
>>>>>>
>>>>> Both in the images and in the text output you seem to have missed
>>>>> pointing amixer/alsamixer the correct device. alsamixer is also in the
>>>>> playback pane, which doesn't exist for the Webcam.
>>>>>
>>>>> Try 'alsamixer -c1 -V capture'
>>>>>
>>>> I finally figured it out with amixer command
>>>> non working version gives me this output
>>>>
>>>> kostas at kostas-home:~$ amixer -c1
>>>> Simple mixer control 'Mic',0
>>>> Â  Capabilities: cvolume cvolume-joined cswitch cswitch-joined penum
>>>> Â  Capture channels: Mono
>>>> Â  Limits: Capture 0 - 4096
>>>> Â  Mono: Capture 2723 [66%] [10.63dB] [on]
>>>>
>>>> The working version gives this output
>>>> kostas at kostas-home:~$ amixer -c1
>>>> Simple mixer control 'Mic',0
>>>>      Capabilities: cvolume cvolume-joined cswitch cswitch-joined penum
>>>>      Capture channels: Mono
>>>>      Limits: Capture 0 - 4096
>>>>      Mono: Capture 4096 [100%] [16.00dB] [on]
>>> Ok, thanks. In the given case, I have to ask you to do a git bisect.
>>> That will point us to the commit that causes your problems. Sorry that I
>>> can't help you any further right now, it's just unclear which commit in
>>> the ancient history causes your problem.
>>>
>>> See here for instructions on how to do that:
>>>
>>>     https://www.kernel.org/pub/software/scm/git/docs/git-bisect.html
>>>     http://git-scm.com/book/en/Git-Tools-Debugging-with-Git
>>>
>>>
>>> Thanks for your help and patience,
>>> Daniel
>>>
>> Command git bisect good 1.0.23 gives me the output
>> fatal: Needed a single revision
>> Bad rev input: 1.0.23
>>
>> How can i figure out the revision number?
>>
> When working with the kernel git, you have to take the kernel version
> numbers.
>
Sorry i really can't understand what to do.
The steps i did were
git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel
git bisect start alsa-kernel/
git bisect bad
git bisect good (Here i don't know what number to give)

I will keep reading because the whole thing is interesting to me...but 
for now i can't understand anything.



More information about the Alsa-devel mailing list