Loading ...
Sorry, an error occurred while loading the content.

Suggestions on Reducing Microphone White Noise?

Expand Messages
  • jeffreylhill
    New to the list; looking for some suggestions on reducing microphone white noise. Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get it fully
    Message 1 of 14 , Mar 1, 2007
    • 0 Attachment
      New to the list; looking for some suggestions on reducing microphone
      white noise.

      Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get it
      fully working with Vonage in just a few hours, but since then I've
      been trying to figure out how to reduce the excessive white noise
      callers hear.

      I'm using a fairly good USB headset (Sony DR-260USB) with a microphone
      rated at 100-10,000 Hz with my PCI soundcard (ATI IXP AC97) set just
      for ringing.

      I know the documentation says that when using ALSA not to use the
      default device for the microphone, but I seem unable to set the PCI
      soundcard as the default and have everything work. The sound quality
      from the microphone is excellent; it's just a problem with heavy white
      noise.

      I've tried different advanced audio settings and enabling/disabling
      different codecs, but I'm really shooting in the dark as I'm a total
      neophyte when it comes to audio (fragment size, capture period size?).
      Maybe testing these settings is the wrong direction to take?

      I have a high-speed cable connection and my previous setup with a
      Vonage RT31P2 worked flawlessly, so I don't think it's the connection
      or Vonage.

      While my old setup worked, my intention with Twinkle is to create a
      tel: URI scheme to have Twinkle dial with the click of a link. That, I
      expect, will be a major project, but first I have to eliminate the
      white noise issue.

      Any suggestions/directions appreciated. I suppose learning the dark
      details of ALSA is my next step, unless anyone has any suggestions.

      I don't mind spending days working on this; I'm just hoping for some
      advice so I don't spend too many days hitting brick walls.

      Glad to find this list, and twinkle,

      Jeff
    • joerg.greoj
      ... microphone ... it ... enabling/disabling ... total ... size?). ... yep. i dare to say neither ALSA nor twinkle are introducing white noise to capture. i
      Message 2 of 14 , Mar 1, 2007
      • 0 Attachment
        --- In twinklephone@yahoogroups.com, "jeffreylhill" <jh@...> wrote:
        >
        > New to the list; looking for some suggestions on reducing
        microphone
        > white noise.
        >
        > Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get
        it
        > fully working with Vonage in just a few hours, but since then I've
        > been trying to figure out how to reduce the excessive white noise
        > callers hear.
        ...
        >
        > I've tried different advanced audio settings and
        enabling/disabling
        > different codecs, but I'm really shooting in the dark as I'm a
        total
        > neophyte when it comes to audio (fragment size, capture period
        size?).
        > Maybe testing these settings is the wrong direction to take?

        yep. i dare to say neither ALSA nor twinkle are introducing white
        noise to capture. i guess it´s a mixers´ settings issue. maybe there
        is another channel mixed in to mic audio. so try set all but the mic
        channels to 0%/mute.
        maybe it´s a problem with the BT-driver.
        at least you most certainly can´t fix it by any twinkle settings.
        try `arecord -D<your-twinkle-micdevice> somesound.wav` and check
        this for noise. you´ll see it´s same problem.

        ...
        > While my old setup worked, my intention with Twinkle is to create
        a
        > tel: URI scheme to have Twinkle dial with the click of a link.
        That, I
        > expect, will be a major project

        IIRC this is no big deal. ~/.kde/share/services or sth like that.
        at least skype comes with "skype:xxx" handler - alas it´s not on
        this machine. so i can´t tell for sure.

        cheers
        jOERG
      • Michel de Boer
        ... On some soundcards there is an option called mic boost . It boosts the volume, but it also creates a lot of white noise. Disable this setting if you have
        Message 3 of 14 , Mar 1, 2007
        • 0 Attachment
          > Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get it
          > fully working with Vonage in just a few hours, but since then I've
          > been trying to figure out how to reduce the excessive white noise
          > callers hear.
          >
          > I'm using a fairly good USB headset (Sony DR-260USB) with a microphone
          > rated at 100-10,000 Hz with my PCI soundcard (ATI IXP AC97) set just
          > for ringing.

          On some soundcards there is an option called "mic boost". It boosts
          the volume, but it also creates a lot of white noise. Disable this
          setting if you have it enabled.

          --
          Michel de Boer
          www.twinklephone.com
        • Wolfgang Wershofen
          ... Hash: SHA1 ... I m almost certain, it s a problem of the BT-driver. I m using a BT-headset as well and when using the bluetooth-alsa-plugin (headsetd aka
          Message 4 of 14 , Mar 1, 2007
          • 0 Attachment
            -----BEGIN PGP SIGNED MESSAGE-----
            Hash: SHA1

            joerg.greoj schrieb:
            >
            >
            > --- In twinklephone@yahoogroups.com
            > <mailto:twinklephone%40yahoogroups.com>, "jeffreylhill" <jh@...> wrote:
            >>
            >> New to the list; looking for some suggestions on reducing
            > microphone
            >> white noise.
            >>
            >> Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get
            > it
            >> fully working with Vonage in just a few hours, but since then I've
            >> been trying to figure out how to reduce the excessive white noise
            >> callers hear.
            > ...
            >>
            ...

            > yep. i dare to say neither ALSA nor twinkle are introducing white
            > noise to capture. i guess it´s a mixers´ settings issue. maybe there
            > is another channel mixed in to mic audio. so try set all but the mic
            > channels to 0%/mute.
            > maybe it´s a problem with the BT-driver.
            > at least you most certainly can´t fix it by any twinkle settings.
            > try `arecord -D<your-twinkle-micdevice> somesound.wav` and check
            > this for noise. you´ll see it´s same problem.
            >

            I'm almost certain, it's a problem of the BT-driver. I'm using a
            BT-headset as well and when using the bluetooth-alsa-plugin (headsetd
            aka plugz), people on the other end of the phone line frequently get a
            deafening loud white noise instead of hearing me talk. I'm not able to
            truly reproduce this, it seems to occur randomly.
            After receiving some complaints about this problem, I switched to the
            "old" btsco kernel module and haven't encountered the loud noise anymore
            since then (knock on wood... ;-)
            The problem with the btsco is a noticable delay with the microphone
            (worse with OSS /dev/dsp1, tolerable with the corresponding ALSA device)
            and the fact, that the btsco userspace program ends when connection to
            the headset is lost. Also, testing the audio in twinkle doesn't seem to
            detect the none existing connection to the headset as it does with plugz.

            It's a pity that the bluez-mailinglist doesn't seem to take much
            interest in the bluetooth-alsa thing as I haven't yet received any reply
            on my posts regarding the above mentioned problems...


            just my 2 cents
            Wolfgang
            -----BEGIN PGP SIGNATURE-----
            Version: GnuPG v1.4.5 (GNU/Linux)
            Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org

            iD8DBQFF5zOpgUafbxFH+p8RAnDuAJ4wzLmO+SqZ+qOV3ZHAIIbObe3Z5QCglHBb
            5zy+S8+LpbRW91r0Sk/wBps=
            =4LqG
            -----END PGP SIGNATURE-----
          • joerg.greoj
            thanks a lot for this report! let´s hope the BT-guys will fix that some day. please keep on dropping the news here cheers jOERG
            Message 5 of 14 , Mar 1, 2007
            • 0 Attachment
              thanks a lot for this report!
              let´s hope the BT-guys will fix that some day.

              please keep on dropping the news here

              cheers
              jOERG
            • Jeff Hill
              Well, I appreciate your suggestions, and I tried them, but after many hours of testing, I guess I need some more help. I started off, of course, trying your
              Message 6 of 14 , Mar 13, 2007
              • 0 Attachment
                Well, I appreciate your suggestions, and I tried them, but after many hours of testing, I guess I need some more help.

                I started off, of course, trying your suggestion of doing a test using `arecord -D<your-twinkle-`micdevice> somesound.wav`. The sound quality was near perfect. However, it did reject any sample rate under 10,000 Hertz. Maybe the fact that it wouldn't accept an 8,000 Hertz sample rate is an issue?

                It can't be a conflict with capture/mike on the sound card (ATI IXP AC970) as I even tested with the sound card disabled and there was no change in the white noise. With the the sound card disabled, the only mixer option is the PCM for the headset.

                It's not a Blue Tooth driver issue as it's not a Blue Tooth headset (USB Sony DR-260).

                It's not a hardware or network issue since I tested by rebooting the machine to Windoze and using Vonage's SoftPhone program (X-Pro). The sound quality was excellent.

                The white noise is the same on the remote end whether Twinkle is receiving the call or initiating it, if that helps, and it's the same noise whether using G711u or G711a codecs (I know you said that can't be the issue, but I thought I'd mention it).

                Whether or not I set the audio for both speaker and microphone to "ALSA: plughw:1,0:USB Audio CODEC (USB Audio)" or "OSS:/ev/dsp1: USB Mixer (USB-Audio)", the white noise remains the same.

                So, I'm uncertain what to try next (build ALSA with debugging?). I'd appreciate any suggestions or direction to search.

                Thanks again for your suggestions,

                Jeff

                P.S. Thanks for the tip on ~/.kde/share/services. Not as big a project as I thought.



                joerg.greoj wrote:

                --- In twinklephone@ yahoogroups. com, "jeffreylhill" <jh@...> wrote:
                >
                > New to the list; looking for some suggestions on reducing
                microphone
                > white noise.
                >
                > Yesterday, I managed to patch Twinkle 1.0 on Debian Etch and get
                it
                > fully working with Vonage in just a few hours, but since then I've
                > been trying to figure out how to reduce the excessive white noise
                > callers hear.
                ...
                >
                > I've tried different advanced audio settings and
                enabling/disabling
                > different codecs, but I'm really shooting in the dark as I'm a
                total
                > neophyte when it comes to audio (fragment size, capture period
                size?).
                > Maybe testing these settings is the wrong direction to take?

                yep. i dare to say neither ALSA nor twinkle are introducing white
                noise to capture. i guess it´s a mixers´ settings issue. maybe there
                is another channel mixed in to mic audio. so try set all but the mic
                channels to 0%/mute.
                maybe it´s a problem with the BT-driver.
                at least you most certainly can´t fix it by any twinkle settings.
                try `arecord -D<your-twinkle- micdevice> somesound.wav` and check
                this for noise. you´ll see it´s same problem.

                ...
                > While my old setup worked, my intention with Twinkle is to create
                a
                > tel: URI scheme to have Twinkle dial with the click of a link.
                That, I
                > expect, will be a major project

                IIRC this is no big deal. ~/.kde/share/ services or sth like that.
                at least skype comes with "skype:xxx" handler - alas it´s not on
                this machine. so i can´t tell for sure.

                cheers
                jOERG

              • Michel de Boer
                Hi Jeff, You may try to disable the noise reduction in Twinkle s system settings. For some users it seems to distort the sound. I cannot remember if I
                Message 7 of 14 , Mar 13, 2007
                • 0 Attachment
                  Hi Jeff,

                  You may try to disable the noise reduction in Twinkle's system
                  settings. For some users it seems to distort the sound.

                  I cannot remember if I suggested this before. Check in your
                  audio settings (kmix) if something like mic boost is enabled.
                  If it is, try to disable it.

                  > was near perfect. However, it did reject any sample rate under 10,000
                  > Hertz. Maybe the fact that it wouldn't accept an 8,000 Hertz sample rate
                  > is an issue?

                  That could be. For most codecs, Twinkle opens the mic at 8000 Hz as
                  the codecs take 8000 Hz sampling. You could try speex-wb if the
                  far-end supports it. This codec samples at 16000 Hz.

                  That's all I can think of.

                  --
                  Michel de Boer
                  www.twinklephone.com
                • joerg.greoj
                  ... yes. Twinkle sampling at 8000/s (+- a few) only. Anyway ALSA should provide resampling any rate to 8000/s with the plug plugin. Do you use ALSA:
                  Message 8 of 14 , Mar 13, 2007
                  • 0 Attachment
                    > I started off, of course, trying your suggestion of doing a test
                    > using
                    > `arecord -D<your-twinkle-`micdevice> somesound.wav`. The sound
                    > quality
                    > was near perfect. However, it did reject any sample rate under
                    > 10,000
                    > Hertz. Maybe the fact that it wouldn't accept an 8,000 Hertz
                    > sample rate
                    > is an issue?

                    yes. Twinkle sampling at 8000/s (+- a few) only.
                    Anyway ALSA should provide resampling any rate to 8000/s with the
                    "plug" plugin.
                    Do you use "ALSA: plughw:..." device for mic?

                    try forcing 8000Hz with
                    `arecord -vv --rate=8000 --device="plughw:N.N" hiss.wav`
                    and maybe send diagnostic output here.

                    j
                  • Jeff Hill
                    Well, thanks again to both of you (Michel & Joerg), Unfortunately, setting the rate at 8000Hz has no impact; sound is still clear (diagnostic output below). I
                    Message 9 of 14 , Mar 13, 2007
                    • 0 Attachment
                      Well, thanks again to both of you (Michel & Joerg),

                      Unfortunately, setting the rate at 8000Hz has no impact; sound is still clear (diagnostic output below). I also tried disabling noise reduction, but it had no effect.

                      I should perhaps have mentioned that even if I turn off the microphone, the heavy hiss is still present.

                      I don't have kmix, but the various mixers I have only show an option for changing the PCM level, right-left balance and mute under the USB mixer. No mic boost or other settings. For the sound card, I have set everything to 0 or muted, as well as previously testing with the sound card disabled.

                      I have tried microphone and speaker combinations with both plughw:1,0:USB Audio CODEC (USB Audio)" and "OSS:/dev/dsp1: USB Mixer" with no effect.

                      It does seem strange to me that both speaker and microphone are both on the same device, plughw:1,0 or /dev/dsp1, but that's apparently configured correctly.

                      From what I can tell, Vonage only supports G.711, G.726 and G.729 codecs. I've tried G.711 and G.726 codecs with no change in the hiss. I haven't tried the speex-wb as I didn't originally compile Twinkle with speex (it seemed irrelevant as I couldn't find any mention of Vonage supporting it). Nonetheless, I'll try re-compiling with speex and test that later tonight, but given the above, it seems like a long-shot.

                      At this stage, I'm willing to test anything or even try replacing hardware.

                      Thanks again for any suggestions/direction,

                      Jeff

                      -----------------------------------------------------
                      Diagnostic Output:
                      thor:~$ arecord -vv -d 6 --rate=8000 --device="plughw:1,0" hiss2.wav
                      Recording WAVE 'hiss2.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
                      Plug PCM: Linear conversion PCM (S8)
                      Its setup is:
                        stream       : CAPTURE
                        access       : RW_INTERLEAVED
                        format       : U8
                        subformat    : STD
                        channels     : 1
                        rate         : 8000
                        exact rate   : 8000 (8000/1)
                        msbits       : 8
                        buffer_size  : 4000
                        period_size  : 1000
                        period_time  : 125000
                        tick_time    : 4000
                        tstamp_mode  : NONE
                        period_step  : 1
                        sleep_min    : 0
                        avail_min    : 1000
                        xfer_align   : 1000
                        start_threshold  : 1
                        stop_threshold   : 4000
                        silence_threshold: 0
                        silence_size : 0
                        boundary     : 9007199254740992000
                      Slave: Hardware PCM card 1 'USB Audio CODEC ' device 0 subdevice 0
                      Its setup is:
                        stream       : CAPTURE
                        access       : MMAP_INTERLEAVED
                        format       : S8
                        subformat    : STD
                        channels     : 1
                        rate         : 8000
                        exact rate   : 8000 (8000/1)
                        msbits       : 8
                        buffer_size  : 4000
                        period_size  : 1000
                        period_time  : 125000
                        tick_time    : 4000
                        tstamp_mode  : NONE
                        period_step  : 1
                        sleep_min    : 0
                        avail_min    : 1000
                        xfer_align   : 1000
                        start_threshold  : 1
                        stop_threshold   : 4000
                        silence_threshold: 0
                        silence_size : 0
                        boundary     : 9007199254740992000

                      -----------------------------------------------------------------

                      joerg.greoj wrote:


                      > I started off, of course, trying your suggestion of doing a test
                      > using
                      > `arecord -D<your-twinkle- `micdevice> somesound.wav` . The sound
                      > quality
                      > was near perfect. However, it did reject any sample rate under
                      > 10,000
                      > Hertz. Maybe the fact that it wouldn't accept an 8,000 Hertz
                      > sample rate
                      > is an issue?

                      yes. Twinkle sampling at 8000/s (+- a few) only.
                      Anyway ALSA should provide resampling any rate to 8000/s with the
                      "plug" plugin.
                      Do you use "ALSA: plughw:..." device for mic?

                      try forcing 8000Hz with
                      `arecord -vv --rate=8000 --device="plughw: N.N" hiss.wav`
                      and maybe send diagnostic output here.

                      j


                    • joerg.greoj
                      ... that´s a strange concept of /dev/dsp and -i assume- therefore in ALSA as well to have 2 independant streams in one device (which in fact are two devs,
                      Message 10 of 14 , Mar 13, 2007
                      • 0 Attachment
                        --- In twinklephone@yahoogroups.com, Jeff Hill <jh@...> wrote:
                        > It does seem strange to me that both speaker and microphone are
                        > both on
                        > the same device, plughw:1,0 or /dev/dsp1, but that's apparently
                        > configured correctly.

                        that´s a strange concept of /dev/dsp and -i assume- therefore in
                        ALSA as well to have 2 independant streams in "one" device (which in
                        fact are two devs, speaker and mic). Probably the original designers
                        thought of audio to be sort of a tty or something.
                        there is/was just one argument to implement audio this way: it´s
                        easy to handle synchronization resp. sharing one clock-generator for
                        A/D and D/A. Much the way you set the baudrate for /dev/ttySx. Very
                        early and cheap sound"cards" might have had only one programmable
                        clock, so two devices with their own method to set sampling-rate
                        were cumbersome. There even were circuit diagrams for DIY audio-HW
                        to plug to serial or centronics port. Maybe that´s why...



                        > -----------------------------------------------------
                        > Diagnostic Output:
                        > thor:~$ arecord -vv -d 6 --rate=8000 --device="plughw:1,0"
                        hiss2.wav
                        > Recording WAVE 'hiss2.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
                        > Plug PCM: Linear conversion PCM (S8)

                        try -f s16_le, this sample is u8 (or S8 ?). Have a look to twinkle
                        ´s log to set further parameters to the exact values used by twinkle
                        when opening alsa

                        please read this posting,
                        http://tech.groups.yahoo.com/group/twinklephone/message/790
                        set up mic device accordingly and check the recorded mic file for
                        hiss. if there is any, please send file to joerg.twinklephone AT
                        gmx.de. i like to hear exact type of noise. maybe you can include
                        excerpt from twinkle.log

                        cheers
                        jOERG
                      • joerg.greoj
                        ... also see /opt/kde3/share/services/ and in twinkle tarball the twinkle-1.0/sip.protocol file. @michel: i don´t see this file sip.protocol in *.rpm? Should
                        Message 11 of 14 , Mar 16, 2007
                        • 0 Attachment
                          > > While my old setup worked, my intention with Twinkle is to
                          > > create a tel: URI scheme to have Twinkle dial with the click of
                          > > a link.
                          > > That, I expect, will be a major project
                          > >
                          > IIRC this is no big deal. ~/.kde/share/services or sth like that.

                          also see
                          /opt/kde3/share/services/
                          and in twinkle tarball the
                          twinkle-1.0/sip.protocol
                          file.



                          @michel:
                          i don´t see this file sip.protocol in *.rpm?

                          Should there be a second service file "tel:" for RFC3261/RFC3966?
                          Should twinkle handle "tel:" URI?
                          By not prepending it with "sip:" - probably no provider will support
                          but so what. twinkle has libboost-regex number transforming for
                          user.
                          Or maybe twinkle should always replace "tel:" by "sip:" & add domain
                          - dunno...

                          jOERG
                        • Michel de Boer
                          ... i once added this file to the source on request of the debian pacakgers. i don t know how to get it properly in the configure script such that it will work
                          Message 12 of 14 , Mar 18, 2007
                          • 0 Attachment
                            > @michel:
                            > i don´t see this file sip.protocol in *.rpm?

                            i once added this file to the source on request of
                            the debian pacakgers. i don't know how to get
                            it properly in the configure script such that it
                            will work on any platform

                            --
                            Michel de Boer
                            www.twinklephone.com
                          • joerg.greoj
                            ... sorry when i´m telling nonsense, never had a close look at these things. But: isn´t it quite the same as with KDE menu-entry etc.? j
                            Message 13 of 14 , Mar 18, 2007
                            • 0 Attachment
                              --- In twinklephone@yahoogroups.com, Michel de Boer <michel@...>
                              wrote:
                              >
                              >
                              > > @michel:
                              > > i don´t see this file sip.protocol in *.rpm?
                              ...
                              > i don't know how to get
                              > it properly in the configure script such that it
                              > will work on any platform

                              sorry when i´m telling nonsense, never had a close look at these
                              things. But: isn´t it quite the same as with KDE menu-entry etc.?

                              j
                            • jeffreylhill
                              I meant to respond to this thread a long time ago that the problem was not Twinkle, but the brand of headset (Sony DR-260) that I have. It does not work well
                              Message 14 of 14 , May 8, 2007
                              • 0 Attachment
                                I meant to respond to this thread a long time ago that the problem was
                                not Twinkle, but the brand of headset (Sony DR-260) that I have. It
                                does not work well with alsa.

                                (I was delayed as I've moved three times (and two countries) since I
                                started this thread.)

                                Thanks to jOERG, Michel and everyone for their help.

                                I'll start a new thread for my current hiccup with Vonage.

                                Jeff Hill

                                --- In twinklephone@yahoogroups.com, "joerg.greoj"
                                <joerg.twinklephone@...> wrote:
                                >
                                > --- In twinklephone@yahoogroups.com, Jeff Hill <jh@> wrote:
                                > > It does seem strange to me that both speaker and microphone are
                                > > both on
                                > > the same device, plughw:1,0 or /dev/dsp1, but that's apparently
                                > > configured correctly.
                                >
                                > that�s a strange concept of /dev/dsp and -i assume- therefore in
                                > ALSA as well to have 2 independant streams in "one" device (which in
                                > fact are two devs, speaker and mic). Probably the original designers
                                > thought of audio to be sort of a tty or something.
                                > there is/was just one argument to implement audio this way: it�s
                                > easy to handle synchronization resp. sharing one clock-generator for
                                > A/D and D/A. Much the way you set the baudrate for /dev/ttySx. Very
                                > early and cheap sound"cards" might have had only one programmable
                                > clock, so two devices with their own method to set sampling-rate
                                > were cumbersome. There even were circuit diagrams for DIY audio-HW
                                > to plug to serial or centronics port. Maybe that�s why...
                                >
                                >
                                >
                                > > -----------------------------------------------------
                                > > Diagnostic Output:
                                > > thor:~$ arecord -vv -d 6 --rate=8000 --device="plughw:1,0"
                                > hiss2.wav
                                > > Recording WAVE 'hiss2.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
                                > > Plug PCM: Linear conversion PCM (S8)
                                >
                                > try -f s16_le, this sample is u8 (or S8 ?). Have a look to twinkle
                                > �s log to set further parameters to the exact values used by twinkle
                                > when opening alsa
                                >
                                > please read this posting,
                                > http://tech.groups.yahoo.com/group/twinklephone/message/790
                                > set up mic device accordingly and check the recorded mic file for
                                > hiss. if there is any, please send file to joerg.twinklephone AT
                                > gmx.de. i like to hear exact type of noise. maybe you can include
                                > excerpt from twinkle.log
                                >
                                > cheers
                                > jOERG
                                >
                              Your message has been successfully submitted and would be delivered to recipients shortly.