[Resolved] background noise cancellation

Home Forums OpenEars [Resolved] background noise cancellation

Viewing 17 posts - 1 through 17 (of 17 total)

  • Author
    Posts
  • #1023145
    foobar8675
    Participant

    Does one of the plugins doing background noise cancellation? I did some tests of names from my contact list which worked great in a quiet room. In a moving car, I did the same test and the accuracy was not very good.

    #1023153
    foobar8675
    Participant

    Hi Halle,

    just checking in to see if you had any thoughts on my last post.

    #1023222
    Halle Winkler
    Politepix

    Take a look at OpenEars 2.0 for improved noise reduction: https://www.politepix.com/2014/12/05/openears-2-0-and-version-2-0-of-all-plugins-out-now/

    #1023234
    foobar8675
    Participant

    This is awesome news!

    I downloaded openears from https://www.politepix.com/openears/ and tried running the OpenEarsSampleApp.

    I ran into some compile errors, which I attempted to fix by changing the framework search paths (which references Users/me/…) to ../Framework but then got an error saying

    ld: framework not found OpenEars

    which I’m not sure how to fix.

    #1023236
    Halle Winkler
    Politepix

    Sorry about that – one of Xcode’s little pranks, I’ve restored the relative paths. Can you download a new version, give it another try and see if this one builds?

    #1023237
    Halle Winkler
    Politepix

    BTW, you may need to adjust OEPocketsphinxController’s new vadThreshold property a bit up or down to get the desired speech/silence threshold with the new noise-robust voice activity detection. The current setting is what my testing showed to be in the right neighborhood, but you can change it to match your use case better if it isn’t exactly right. If it is too low it can react to too much environmental noise, and if it is too high it can exclude intentional speech.

    #1023243
    foobar8675
    Participant

    hmm, I just re-downloaded and still am getting a compile issue (below) . Not sure why since I see OpenEars is clearly in the Framework search paths. thoughts? out of curiosity, have you updated to xcode 6.1.1? maybe that is why it’s working for you and not me?

    Ld /Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Products/Debug-iphoneos/OpenEarsSampleApp.app/OpenEarsSampleApp normal armv7
    cd /Users/matthewchung/Downloads/OpenEarsDistribution/OpenEarsSampleApp
    export IPHONEOS_DEPLOYMENT_TARGET=6.0
    export PATH=”/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin”
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -L/Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Products/Debug-iphoneos -L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/usr/lib/system -F/Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Products/Debug-iphoneos -F../../OpenEarsDistribution/Framework -F../../OpenEarsDistribution/Framework/AcousticModelEnglish.bundle -F../../OpenEarsDistribution/Framework/AcousticModelSpanish.bundle -filelist /Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Intermediates/OpenEarsSampleApp.build/Debug-iphoneos/OpenEarsSampleApp.build/Objects-normal/armv7/OpenEarsSampleApp.LinkFileList -fobjc-arc -fobjc-link-runtime -miphoneos-version-min=6.0 -framework AudioToolbox -framework Slt -framework AVFoundation -framework CoreGraphics -framework UIKit -framework Foundation -framework OpenEars -Xlinker -dependency_info -Xlinker /Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Intermediates/OpenEarsSampleApp.build/Debug-iphoneos/OpenEarsSampleApp.build/Objects-normal/armv7/OpenEarsSampleApp_dependency_info.dat -o /Users/matthewchung/Library/Developer/Xcode/DerivedData/OpenEarsSampleApp-ethuwcspbfgfdjbccnjuyixmmfpb/Build/Products/Debug-iphoneos/OpenEarsSampleApp.app/OpenEarsSampleApp

    ld: framework not found OpenEars
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    #1023245
    Halle Winkler
    Politepix

    Sorry, it looks like the needed link in the framework to resources was accidentally added to my .gitignore so the uploaded version was missing an essential file (but could be found on my local filesystem). I’ve fixed it and created a virtual machine with a user who has none of my local file structure so I can check whether this is an issue in the future.

    The current uploaded version worked fine for my test developer, so I think it should work fine for you. Please re-download and make sure you’ve deleted the previous two downloads to be sure there’s no unintentional interaction or caching before running the sample app with the new version. Thanks for hanging in there.

    #1023279
    foobar8675
    Participant

    got it working! thanks!

    #1023282
    Halle Winkler
    Politepix

    Glad to hear it!

    #1023288
    jackflips
    Participant

    Hey Halle,

    Congrats on the release! Excited to check out the improvements, but first I’m having a couple of issues with the upgrade to 2.0. First, the sample app is giving me giving me a file not found error for the OE files.

    /Users/johnrogers/Downloads/ears/OpenEarsSampleApp/OpenEarsSampleApp/ViewController.h:23:9: ‘OpenEars/OEEventsObserver.h’ file not found

    It’s probably a header search path issue but I tried changing the search paths to the location of the OE headers to no avail.

    The second issue is with word recognition. I successfully upgraded to OE 2.0 in our main app, but word recognition is taking much, much longer than it was before. Here is a log: http://pastebin.com/x5SEccNc

    It seems as if OE is not detecting the end of a string of speech for tens of seconds, and then,
    “2014-12-08 10:58:33.118 WordBug[11793:806674] An utterance appears to be stuck in listening mode. Exiting stuck utterance.
    2014-12-08 10:58:33.119 WordBug[11793:806674] End of speech detected…”

    OE then takes a very long time to complete word recognition on that snippet.

    2014-12-08 11:00:51.870 WordBug[11793:806674] Pocketsphinx heard “AT US THE IS ADD SPELL BELOW WANT WANT TO IT HOME” with a score of (-191332) and an utterance ID of 0.
    2014-12-08 11:00:51.871 WordBug[11793:806658] Flite sending interrupt speech request.
    2014-12-08 11:00:51.872 WordBug[11793:806658] Local callback: The received hypothesis is AT US THE IS ADD SPELL BELOW WANT WANT TO IT HOME with a score of -191332 and an ID of 0

    Is it possible that I need to tune for background noise?

    #1023292
    Halle Winkler
    Politepix

    Hiya,

    Congrats on the release! Excited to check out the improvements, but first I’m having a couple of issues with the upgrade to 2.0. First, the sample app is giving me giving me a file not found error for the OE files.

    /Users/johnrogers/Downloads/ears/OpenEarsSampleApp/OpenEarsSampleApp/ViewController.h:23:9: ‘OpenEars/OEEventsObserver.h’ file not found

    It’s probably a header search path issue but I tried changing the search paths to the location of the OE headers to no avail.

    Thanks! The sample app definitely runs out of the box (verified by others and for me verified running in a vm with a brand-new user), so I think this is going to be a local issue of some kind. I would just quit Xcode, delete the OpenEars 2.0 download, delete the contents of DerivedData, re-download OpenEars 2.0 from https://www.politepix.com/openears and open up OpenEarsSampleApp.xcodeproj without making any changes to any part of the distribution, and run the sample app. There will never be a reason to do anything with header search paths or importing frameworks to run the sample app, it will just run after download as long as you don’t move it or the Frameworks folder after the download. Also keep in mind that if you recompiled the OpenEars.framework for any reason, you have to compile it with “Archive” rather than just building it, in order for it to be a universal binary that can run on both devices and simulators, which can also account for errors loading objects (but you shouldn’t ever have to recompile the framework to run the sample app).

    Is it possible that I need to tune for background noise?

    No, this sounds to me like an issue with the upgrade process. I would expect that the old acoustic model is still being used, or something along those lines, since the recognition in your logs is a broken recognition rather than merely a slow one as far as I can see from the logs.

    You could confirm this by downloading a new version of the sample app, verify that it runs (if it really doesn’t run after starting fresh, let me know the Xcode version and anything unusual about your setup, but I think it’s going to run) and then make no changes other than changing to your vocabulary, and see if you have the same issue. If you have the same issue, use the contact form to send me the vocabulary so I can take a look at it in the sample app, also letting me know the device and iOS version it is occurring with so I can replicate. Try and see what is different about the two projects and we can troubleshoot further. Turn on OELogging as well so you can see if anything interesting is happening with the audio driver, and please let me know about any relevant architectural details like if there are other objects which use or want to use audio at the same time or near to the same time.

    #1023301
    jackflips
    Participant

    Hey Halle, I did as you said

    quit Xcode, delete the OpenEars 2.0 download, delete the contents of DerivedData, re-download OpenEars 2.0 from https://www.politepix.com/openears and open up OpenEarsSampleApp.xcodeproj without making any changes to any part of the distribution, and run the sample app.

    and Xcode is still reporting “file not found” for all of the OE files. Do you have any further suggestions?

    #1023303
    Halle Winkler
    Politepix

    Not really sure since I just tested it myself in a VM with a new user and a new Xcode install and it worked, but you could copy and paste the errors here and let me know the Xcode version and I can see if it rings any bells.

    #1023305
    jackflips
    Participant

    Fixed. Sorry, the issue was that there was an old version of OpenEars in my downloads folder and the one I was testing had a 2 appended to the name of the directory which prevented it from finding the files.

    #1023306
    foobar8675
    Participant

    A thought is to sanity check the framework search paths to make sure they point to the right framework.

    #1023308
    Halle Winkler
    Politepix

    Super, glad it was something along those lines. Let me know if the issue clears up with your vocabulary + the sample app or not.

Viewing 17 posts - 1 through 17 (of 17 total)
  • You must be logged in to reply to this topic.