Git Product home page Git Product logo

Comments (10)

bash avatar bash commented on August 15, 2024 2

I used tccutil to reset the microphone permission for the terminal app. That way the permission prompt shows up again when I run a bevy app (cargo run --example volumetric_fog on main).

By resetting the permissions before running a bevy app I can get the prompt to consistently show up.

For macOS' Terminal the command is tccutil reset Microphone com.apple.Terminal. Alternatively for WezTerm: tccutil reset Microphone com.github.wez.wezterm

from bevy.

benfrankel avatar benfrankel commented on August 15, 2024 1

Is there an upstream issue for this?

EDIT: Yes there is: RustAudio/cpal#901

from bevy.

mockersf avatar mockersf commented on August 15, 2024

Does this happen with Bevy examples?

from bevy.

tsukinoko-kun avatar tsukinoko-kun commented on August 15, 2024
Screenshot 2024-06-24 at 01 27 02

I tried volumetric_fog and it happened there too.

from bevy.

mockersf avatar mockersf commented on August 15, 2024

can't reproduce on my Mac

from bevy.

janhohenheim avatar janhohenheim commented on August 15, 2024

I can remember running into this while running Foxtrot on my macOS, which surprised me. I'll check if I can reproduce this with the given example.

from bevy.

janhohenheim avatar janhohenheim commented on August 15, 2024

I can confirm I can reproduce the bug. I thought I couldn't at first, but then realized that I already had disallowed my terminal to use the microphone, so no new popup came up. Steps to reproduce:

  • compile volumetric_fog on main
  • download a fresh iTerm2, because a new app doesn't have any previous security and access settings on my machine
  • run the previously compiled example on iterm (ignore the path not found errors, that's because I switched branches):
image

results in:

image

My machine:
image

From experience, I know that at least Foxtrot asks for the same permission when setting it up as a regular graphical app without running it in the terminal.

from bevy.

janhohenheim avatar janhohenheim commented on August 15, 2024

Update: I found a relevant thread on Discord from a year ago. Something about permissions being weird when info.plist is missing.

from bevy.

bash avatar bash commented on August 15, 2024

I managed to narrow this down to the function default_output_device in cpal which gets called via AudioPluginAudioOutput::defaultOutputStream::try_default.

cpal::default_host().default_output_device();

from bevy.

janhohenheim avatar janhohenheim commented on August 15, 2024

Marking as blocked since this seems like a cpal issue then. Unless we can pass some magic parameters.

from bevy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.