50

I cannot allow camera and microphone of my macbook pro to be used in different applications (Google Chrome, Slack etc.) as they do not appear in “System Preferences -> Security & Privacy -> Microphone/Camera”.

Since, there are no apps and no way to add them, there are no tickboxes as explained in this Apple support document.

Giacomo1968
  • 58,727
loadbox
  • 657

7 Answers7

17

I have experienced the same issue when trying to record audio with Microsoft Powerpoint 2011 on macOS 10.14. Powerpoint does not show up in the list of app with access to the microphone (System Preferences -> Privacy -> Microphone).

Note that you can reset this list from the command line (i.e. the Terminal) using:

tccutil reset Microphone

This may or may not help you. In my case it didn't.

What did help, was to launch Powerpoint from the command line through iTerm (though I suspect, using the Terminal.app works just as well). So on the command line, I've typed:

/Applications/Microsoft\ Office\ 2011/Microsoft\ PowerPoint.app/Contents/MacOS/Microsoft\ PowerPoint

I.e., I executed the executable in Powerpoint's /Contents/MacOS subfolder. By convention, every application has an executable, meaning, you can launch every application that way (but the name of the executable will usually be different).

Launched this way, when I tried to access the microphone, the System asked me whether I wanted to grant iTerm access to me microphone. After granting access, I was able to record audio through Powerpoint.

Obviously, this is just a hack to get things going. But sometimes a hack is all you need.

hendrik
  • 381
11

Solution

Successfully tested on

  • Monterey 12.2.1
  • BigSur 11.7.4
  • Ventura 13.3, 13.6
  • (See the bottom of the answer for other versions)
  1. Make a backup copy of the TCC database, just in case:

    cp ~/Library/Application\ Support/com.apple.TCC/TCC.db ~/TCC.db.bak
    
  2. I opened the TCC database by running:

    sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db
    
  3. I added the app by typing:

    insert into access
    values 
    ('kTCCServiceMicrophone','<AppBundleURLname>', 0, 2, 2, 1, null, null, null, 'UNUSED', null, null, 1669648527);
    
  4. Close the connection to the database:

    .quit
    

The value to replace the placeholder <AppBundleURLname> in Step 3 above can be found by opening and inspecting file:

/Applications/appname.app/Contents/Info.plist

And usually it is the value keys like CFBundleURLName or CFBundleIdentifier. For example, for the WhatsApp MacOS app, if you open file:

/Applications/WhatsApp.app/Contents/Info.plist

then you will find something like:

    <key>CFBundleURLName</key>
    <string>com.WhatsApp.chat</string>

and it means that in this case you should replace <AppBundleURLname> with com.WhatsApp.chat in Step 3 of the above instructions.

For example

Note: The last value in the inserted record (see step 3) is just a timestamp (in seconds), you can put a timestamp that corresponds to any date you want, for example to check what date corresponds to timestamp 1669648527 you can type:

$ date --date='@1669648527'
Mon 28 Nov 15:15:27 GMT 2022

If you are running a different MacOS version

In this case, the structure of the access table may be different and the record you insert may be a bit different. You can inspect its structure with the following commands:

  • To compare the record you want to add with other existing records:

    select * from access ;
    
  • Or perhaps even better:

    select * from access where service = 'kTCCServiceMicrophone' ;
    
  • To check the structure (e.g. the columns) of the access table:

    .schema access
    

Example with MacOS Sonoma

insert into access values ('kTCCServiceMicrophone','<AppBundleURLname>', 0, 2, 2, 1, null, null, null, 'UNUSED', null, null, 1669648527,null,null,'UNUSED',1669648527);

note that there are 4 additional columns, for more info see:

https://www.reluctant-tech-traveler.net/prod/user/showblog/macos-adding-apps-to-camera-mic-access-1

8

In my case, I won’t get the camera, mic permission prompt at all. Camera section in Security and Privacy won't populate with any app at all.

Checked the console and found out that every time I tried to use any app that needed camera/mic access, it kept throwing following error at me in Console:

Policy disallows prompt for REQ:{ID: xxx.xxx.xxx}

and

access to kTCCServiceCamera denied

I tried the method shown by @loadbox’s answer but it didn’t work for me. Turns out I had System Integrity Protection disabled. I had to reboot Mac and start in recovery mode. Started Terminal and re-enabled it by entering these:

csrutil enable
reboot

Once the machine was booted, I started Skype and voila… It prompted for Camera permission. Problem solved. Depending on your config, your mileage may vary.

Giacomo1968
  • 58,727
1

in my case my per-user tccd has been disabled somehow

try

  • open Terminal.app
  • launchctl list | grep -i com.apple.tccd
  • if no matches found re-enabe your user tccd using

    launchctl load -wF /System/Library/LaunchAgents/com.apple.tccd.plist

Hofi
  • 111
1

Switching to an administrator account resolved it for me.

The standard account only had one app in microphone settings. Admin account had 5+ apps.

Not sure if it’s because the app was installed on the administrator account or if the apps are not requesting permission properly.

Senseful
  • 4,400
0

Had this problem with Chrome and Safari not being able to be added as applications to Camera and Microphone. None of the solutions here worked or were able to be applied as my machine is under administrator control, however I was able to resolve the issue by upgrading my OS from macOS Sonoma to macOS Sequoia, camera and microphone started working again in Google Meet.

mbonness
  • 131
-2

I found a solution for my case. I am using macOS Mojave Version 10.14.5. Hope it works for others too.

  1. Finder > Go > Computer

  2. Macintosh HD > user > Double finger tap on your account > Get Info

  3. Sharing & Permissions: Click on the lower right lock and enter password

  4. Click on the gear mark at the bottom > Apply to enclosed items > Click OK for the pop-up window (Applying permissions...)

  5. Reboot your mac

loadbox
  • 657