<Sound Dev> [15] RFR: JDK-8246094: [macos] Sound Recording and playback is not working

Philip Race philip.race at oracle.com
Tue Jul 21 20:10:32 UTC 2020


LGTM.

-phil

On 7/21/20, 12:24 PM, Erik Joelsson wrote:
> Here is a late fix for Macos Catalina. In JDK-8244951, I added a 
> missing entitlement to enable sound recording with the hardened 
> runtime signing. It was later discovered that this wasn't quite 
> enough. To be able to record sound you also need to specify a certain 
> key in your Info.plist, NSMicrophoneUsageDescription. The value of 
> this field is displayed to the user the first time the JDK wants to 
> record sound. We also discovered that the way the JDK is laid out in 
> the Macos specific bundle format, the global Info.plist is not 
> actually considered when looking for this particular key, but rather 
> the plist info we embed in the java executable.
>
> This patch adds the new key to all the affected plists (JDK global, 
> JRE global and the one being embedded in executables). We also noted 
> that the bundle ID and version numbers had an effect on how this key 
> was resolved, and to get somewhat better behavior, I'm also unifying 
> the embedded values for those keys (which were hard coded today) with 
> what we already put in the global Info.plist for the JDK. A followup 
> bug where we more fully explore what the CFBundleIdentifier, 
> CFBundleVersion and CFBundleShortVersionString values should actually 
> be is planned for a later release.
>
> With this fix, it's now verified possible to record sound on a Macos 
> Catalina machine.
>
> Webrev: http://cr.openjdk.java.net/~erikj/8246094/webrev.01/index.html
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8246094
>
> /Erik
>



More information about the build-dev mailing list