Search results for

“Popping Sound”

20,037 results found

Post

Replies

Boosts

Views

Activity

Using StoreKit from an AUv3 plugin that can be loaded in-process
I have a bunch of Audio Unit v3 plugins that are approaching release, and I was considering using subscription-model pricing, as I have done in a soon to be released iOS app. However, whether this is possible or not is not at all obvious. Specifically: The plugin can, depending on the host app, be loaded in-process or out-of-process - yes, I know, Logic Pro and Garage Band will not load a plug-in in-process anymore, but I am not going to rule that out for other audio apps and force on them the overhead of IPC (I spent two solid weeks deciphering the process to actually make it possible for an AUv3 to run in-process - see this - https://github.com/timboudreau/audio_unit_rust_demo - example with notes) Depending on how it is loaded, the value of Bundle.main.bundleIdentifier will vary. If I use the StoreKit API, will that return product results for my bundle identifier when being called as a library from a foreign application? I would expect it would be a major security hole if random apps coul
10
0
748
3w
LiveCommunicationKit on watchOS: Displaying visual content during active call?
Our watchOS app is exploring adding audio VOIP calling capability using our in-home platform. We are using LiveCommunicationKit for this and have that all hooked up nicely in a proof of concept implementation. Our use case is primarily based around supporting end-users through various tasks with assistance from a remotely based expert. We would like for our platform to be able to display visual content on the watch's screen during the call – in other words, we would like to be able to treat this as a video call. LiveCommunicationKit fully supports all video-related flags on watchOS and doesn't appear to have any different symbol availability versus its iOS version. This high-quality thread (https://developer.apple.com/forums/thread/798090) from a DTS engineer suggests that our use case should be valid (i.e. whiteboarding apps) and that the system's response to an accepted income video call is to dismiss the LCK's incoming call screen and bring the target app to the foreground, allowing it to render i
2
0
85
3w
Reply to tensorflow-metal ReLU activation fails to clip negative values on M4 Apple Silicon
It sounds like you're encountering an issue with the ReLU activation function on the Mac M4 using TensorFlow-Metal. Let's go through a few steps to troubleshoot and potentially resolve this issue: Potential Causes and Solutions TensorFlow-Metal Version Compatibility: Ensure that you are using the latest compatible version of TensorFlow-Metal. Sometimes, bugs are fixed in newer releases. Check for updates via pip: pip install --upgrade tensorflow-macos tensorflow-metal ReLU Implementation in Metal: TensorFlow-Metal might have a different implementation of ReLU that doesn't handle edge cases like floating-point precision issues with exactly zero values. You could try a workaround by slightly offsetting zero values before applying ReLU: def custom_relu(x): return tf.maximum(x, 1e-10) model = tf.keras.Sequential([ tf.keras.layers.Input(shape=(10,)), tf.keras.layers.Dense(5, activation=custom_relu) ]) Environment and Configuration: Double-check that TensorFlow is correctly configured to use Metal. You can
Topic: Machine Learning & AI SubTopic: Core ML Tags:
3w
Reply to Two errors in debug: com.apple.modelcatalog.catalog sync and nw_protocol_instance_set_output_handler
Based on the error messages you're encountering in Xcode, it seems like there are two main issues to address: nwprotocolinstancesetoutputhandler Not calling removeinput_handler: This error typically indicates a problem with how network connections are being managed using Apple's Network framework. Specifically, it suggests that an output handler was set on a network protocol instance without a corresponding removal of the input handler, which could lead to resource leaks or crashes. Steps to Resolve: Ensure that every call to nw_protocol_instance_set_output_handler is matched with a call to nw_protocol_instance_remove_input_handler when you're done with the connection or when the connection is closed. Review the lifecycle of your network connections to ensure handlers are properly managed, especially in asynchronous or error-prone paths. Check if there are any closures or network operations that might inadvertently leave handlers dangling. com.apple.modelcatalog.catalog sync: connection error: This error poin
3w
Reply to Questions about VoIP Push compliance rules and CallKit handling
We do not use CallKit. The call is handled entirely using a custom in-app call UI. This is a bad idea. It's going to significantly complicate your app’s audio logic and, most practically, it means that ANY other incoming call from ANY CallKit app will IMMEDIATELY interrupt your app’s audio. It's also going to allow a variety of other odd edge cases which will be similarly disruptive (for example, now playing activity can interrupt your calls). The PRIMARY reason CallKit was originally created was so the system could properly arbitrate and manage the audio of VoIP apps, preventing all those edge cases. However, the exact rules and thresholds for these violations are not clearly documented, so I’d like to ask a few questions to better understand the expected behavior. The basic policy rule is that your app is not required to report a call if it either: Is already on a call. Is in the foreground. However, in practice, both of those criteria are much harder to implement than they seem.
3w
Reply to NSFileManager getRelationship:ofDirectoryAtURL:toItemAtURL:error: returning NSURLRelationshipSame for Different Directories
I actually don't have a strong opinion about file reference URLs vs. file path URLs, but from my perspective in the sample, it is clear after the second call to createDirectoryAtURL:..., Yes, and to be clear, that is very much a bug. More specifically, every URL should either be a file reference URL (in which case you'd reference the object in the trash) or a file path URL (in which case you'd reference the original path). You're ending up with a URL which is a mix of both, which is simply wrong. I'd need to test on older OS's, but I suspect this is actually a new bug, possibly introduced in Swift Foundation[1] [1] Much of the Objective C version of Foundation is actually written in Swift now. Yeah. You can't even create a file without a path, so there is that. Unfortunately, yes. I'm not claiming my radical idea is something that will ever be (again) implemented. Keep in mind that I'm not claiming that macOS is wrong about paths; I think EVERY operating system is wrong about paths. Well, every operating syst
Topic: App & System Services SubTopic: Core OS Tags:
3w
Reply to spctl --type install rejects notarized .pkg on macOS 26 Tahoe (26.3)
[quote='817887021, kappie, /thread/817887, /profile/kappie'] Both produce: Warning: unable to build chain to self-signed root [/quote] Hmmm, that doesn’t sound good. Have you tried testing the cross-over cases? That is: Building on macOS 26.3 and trying to install on macOS 26.2 Building on macOS 26.2 and trying to install on macOS 26.3 Those will let you determine whether this is a build problem or an install problem. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Topic: Code Signing SubTopic: Notarization Tags:
3w
App Preview | AppStore Connect
I'm trying to understand why App Preview uploads are stuck in this state even after 24 hours without any errors thrown My current video has the following specs which follows Apple requirements for Video Specifications for App previews. Video codec: H.264 High Profile Level 4.0 — meets requirement Resolution: 886×1920 — correct for 6.9 Frame rate: ~28.9 fps (under 30) — meets requirement Format: MP4 — meets requirement Duration: 28.08s (under 30s) — meets requirement Audio codec: AAC — meets requirement Audio bitrate: 256kbps — meets requirement Audio sample rate: 44.1kHz — meets requirement Audio channels: stereo — meets requirement
2
0
72
3w
Reply to Apple-Hosted Asset Pack Support in App Review
Hello, @TimDeWachter! I’m glad that you were able to make progress. By default, asset packs work differently for App Review than for App Store and TestFlight users. Specifically, pre-launch downloads are disabled for App Review, which mirrors the experience that an App Store or TestFlight user would see if they previously disabled background downloads on their device by going to Settings > Apps > App Store and turning off In-App Content. The setting is on by default, but users can turn it off if they choose. It sounds like you’re correctly handling that case by showing a fallback screen, but you still need to display the download size on that screen per App Review Guideline 4.2.3 (ii): If your app needs to download additional resources in order to function on initial launch, disclose the size of the download and prompt users before doing so. The easiest way to determine the download size is to look at an asset pack’s downloadSize property’s value, which is available in both Swift and Objective-
3w
Reply to FileManager.replaceItemAt(_:withItemAt:) fails sporadically on ubiquitous items
Thanks again! I think very fast actually understates how significant the performance difference is. Ha, true. In practice it seems “instant”, to the extent that on APFS, updating huge zip files is not much slower than in-place saving into a package. I don't know if anyone has ever shipped a solution that worked like this, but... it might be worth thinking about using DiskImages as a file format. Interesting! Although cross-platform compatibility might be an issue here. The replaceItem(at:...) documentation actually answers this… Sorry, I should have been more clear, although thinking about it I have been tying myself up in knots and the solution was indeed here all along. I was referring to the circumstances we were discussing before, where we don’t want to do the temp work on the same volume as the destination because the destination volume is slow. In other words, we have deliberately created the temp folder for updating our file on another volume (e.g. one that supports APFS), because the one created using
Topic: App & System Services SubTopic: Core OS Tags:
3w
Bluetooth audio packet alignment
We’re evaluating a Bluetooth device that supports Hands Free Profile (HFP) as the “Hands-Free Unit”. You can think of this as a Bluetooth telephone headset. This device interacts with our iOS application. We observed the following. The iPhone 17 HFP Wide-Band Speech (WBS) mSBC decoder requires the WBS packet (H2 header + mSBC frame) to be sent aligned. Aligned meaning, the H2 header must be first in every packet. The WBS packet cannot span multiple eSCO packets or else the iPhone will discard the audio. This is a different implementation than the iPad (iPad Pro 11-inch M4) , presumably due to Apple’s new N1 chip. In other words, we’ve identified that older iPhones and iPads do not require this alignment. They have implemented a stateful parser/decoder of the HFP WBS audio. A quick picture to help illustrate. The iPhone 17 requires: | Frame | Frame | Frame | Frame | However, a Bluetooth implementation we are evaluating does: | me Fra | me Fra | me Fra | me Fra | Does Apple intend to keep this
3
0
141
4w
Reply to Audio System Trace: Zero Time Stamp
Can you share more details about your audio setup and what you're trying to investigate? It would be helpful to know what type of audio processing your app is doing, if you're experiencing any audio-related issues (like glitches or latency), and the context around when these 'Zero Time Stamp' events appear. Also, are these events occurring frequently or only in specific circumstances? Screenshots of the Instruments trace might also help us better understand what you're seeing.
Topic: Media Technologies SubTopic: Audio Tags:
4w
Two apps, same name. How is that possible?
Hi everyone, I've exchanged several emails with support already and didn't receive meaningful answer. Everything sounds automated or the person responding is very ... not paying attention to my questions let's say. The problem I'm facing is I have released an app more than a year ago. Someone else released app with identical name few weeks after me. Developer support mentioned something about localisations and that apps with different localisations can have same name. To be honest, I don't understand that at all. Facts: both apps have identical name both apps are available only in english language according to the store listing both apps are available in same regions I wouldn't be bothered about it too much, but my competition is not really great and have received some bad reviews. The problem is obvious. Users are mixing my app with my competitor, writing bad feedback, asking questions about the other app and it generally is starting to be a problem now that my app is gaining more traction. It also
0
0
109
4w
AVAssetDownloadConfiguration: How many video variants are actually downloaded when multiple variants exist in the HLS master playlist?
Hi, I’m trying to better understand how AVAssetDownloadConfiguration selects video variants when downloading HLS content for offline playback. Suppose I have an HLS master playlist (.m3u8) that contains several video variants defined with #EXT-X-STREAM-INF. For example, the master playlist may contain multiple video streams like this: Same resolution, different BANDWIDTH Or different resolutions (for example 720p, 1080p, etc.) My question is: How many video variants are actually downloaded when using AVAssetDownloadConfiguration without specifying any variantQualifiers? In other words: If the master playlist contains multiple video variants, will the download task fetch only one variant, or multiple variants? Does the behavior differ depending on whether the variants differ only by BANDWIDTH or also by RESOLUTION? What I observed in testing In my tests, I always end up with only one video variant downloaded, specifically the one with the highest BANDWIDTH parameter. In the m3u8 files I tested, all video varia
1
0
293
4w
Using StoreKit from an AUv3 plugin that can be loaded in-process
I have a bunch of Audio Unit v3 plugins that are approaching release, and I was considering using subscription-model pricing, as I have done in a soon to be released iOS app. However, whether this is possible or not is not at all obvious. Specifically: The plugin can, depending on the host app, be loaded in-process or out-of-process - yes, I know, Logic Pro and Garage Band will not load a plug-in in-process anymore, but I am not going to rule that out for other audio apps and force on them the overhead of IPC (I spent two solid weeks deciphering the process to actually make it possible for an AUv3 to run in-process - see this - https://github.com/timboudreau/audio_unit_rust_demo - example with notes) Depending on how it is loaded, the value of Bundle.main.bundleIdentifier will vary. If I use the StoreKit API, will that return product results for my bundle identifier when being called as a library from a foreign application? I would expect it would be a major security hole if random apps coul
Replies
10
Boosts
0
Views
748
Activity
3w
LiveCommunicationKit on watchOS: Displaying visual content during active call?
Our watchOS app is exploring adding audio VOIP calling capability using our in-home platform. We are using LiveCommunicationKit for this and have that all hooked up nicely in a proof of concept implementation. Our use case is primarily based around supporting end-users through various tasks with assistance from a remotely based expert. We would like for our platform to be able to display visual content on the watch's screen during the call – in other words, we would like to be able to treat this as a video call. LiveCommunicationKit fully supports all video-related flags on watchOS and doesn't appear to have any different symbol availability versus its iOS version. This high-quality thread (https://developer.apple.com/forums/thread/798090) from a DTS engineer suggests that our use case should be valid (i.e. whiteboarding apps) and that the system's response to an accepted income video call is to dismiss the LCK's incoming call screen and bring the target app to the foreground, allowing it to render i
Replies
2
Boosts
0
Views
85
Activity
3w
Reply to tensorflow-metal ReLU activation fails to clip negative values on M4 Apple Silicon
It sounds like you're encountering an issue with the ReLU activation function on the Mac M4 using TensorFlow-Metal. Let's go through a few steps to troubleshoot and potentially resolve this issue: Potential Causes and Solutions TensorFlow-Metal Version Compatibility: Ensure that you are using the latest compatible version of TensorFlow-Metal. Sometimes, bugs are fixed in newer releases. Check for updates via pip: pip install --upgrade tensorflow-macos tensorflow-metal ReLU Implementation in Metal: TensorFlow-Metal might have a different implementation of ReLU that doesn't handle edge cases like floating-point precision issues with exactly zero values. You could try a workaround by slightly offsetting zero values before applying ReLU: def custom_relu(x): return tf.maximum(x, 1e-10) model = tf.keras.Sequential([ tf.keras.layers.Input(shape=(10,)), tf.keras.layers.Dense(5, activation=custom_relu) ]) Environment and Configuration: Double-check that TensorFlow is correctly configured to use Metal. You can
Topic: Machine Learning & AI SubTopic: Core ML Tags:
Replies
Boosts
Views
Activity
3w
Reply to Two errors in debug: com.apple.modelcatalog.catalog sync and nw_protocol_instance_set_output_handler
Based on the error messages you're encountering in Xcode, it seems like there are two main issues to address: nwprotocolinstancesetoutputhandler Not calling removeinput_handler: This error typically indicates a problem with how network connections are being managed using Apple's Network framework. Specifically, it suggests that an output handler was set on a network protocol instance without a corresponding removal of the input handler, which could lead to resource leaks or crashes. Steps to Resolve: Ensure that every call to nw_protocol_instance_set_output_handler is matched with a call to nw_protocol_instance_remove_input_handler when you're done with the connection or when the connection is closed. Review the lifecycle of your network connections to ensure handlers are properly managed, especially in asynchronous or error-prone paths. Check if there are any closures or network operations that might inadvertently leave handlers dangling. com.apple.modelcatalog.catalog sync: connection error: This error poin
Replies
Boosts
Views
Activity
3w
Reply to Questions about VoIP Push compliance rules and CallKit handling
We do not use CallKit. The call is handled entirely using a custom in-app call UI. This is a bad idea. It's going to significantly complicate your app’s audio logic and, most practically, it means that ANY other incoming call from ANY CallKit app will IMMEDIATELY interrupt your app’s audio. It's also going to allow a variety of other odd edge cases which will be similarly disruptive (for example, now playing activity can interrupt your calls). The PRIMARY reason CallKit was originally created was so the system could properly arbitrate and manage the audio of VoIP apps, preventing all those edge cases. However, the exact rules and thresholds for these violations are not clearly documented, so I’d like to ask a few questions to better understand the expected behavior. The basic policy rule is that your app is not required to report a call if it either: Is already on a call. Is in the foreground. However, in practice, both of those criteria are much harder to implement than they seem.
Replies
Boosts
Views
Activity
3w
Reply to NSFileManager getRelationship:ofDirectoryAtURL:toItemAtURL:error: returning NSURLRelationshipSame for Different Directories
I actually don't have a strong opinion about file reference URLs vs. file path URLs, but from my perspective in the sample, it is clear after the second call to createDirectoryAtURL:..., Yes, and to be clear, that is very much a bug. More specifically, every URL should either be a file reference URL (in which case you'd reference the object in the trash) or a file path URL (in which case you'd reference the original path). You're ending up with a URL which is a mix of both, which is simply wrong. I'd need to test on older OS's, but I suspect this is actually a new bug, possibly introduced in Swift Foundation[1] [1] Much of the Objective C version of Foundation is actually written in Swift now. Yeah. You can't even create a file without a path, so there is that. Unfortunately, yes. I'm not claiming my radical idea is something that will ever be (again) implemented. Keep in mind that I'm not claiming that macOS is wrong about paths; I think EVERY operating system is wrong about paths. Well, every operating syst
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
3w
Reply to spctl --type install rejects notarized .pkg on macOS 26 Tahoe (26.3)
[quote='817887021, kappie, /thread/817887, /profile/kappie'] Both produce: Warning: unable to build chain to self-signed root [/quote] Hmmm, that doesn’t sound good. Have you tried testing the cross-over cases? That is: Building on macOS 26.3 and trying to install on macOS 26.2 Building on macOS 26.2 and trying to install on macOS 26.3 Those will let you determine whether this is a build problem or an install problem. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Topic: Code Signing SubTopic: Notarization Tags:
Replies
Boosts
Views
Activity
3w
App Preview | AppStore Connect
I'm trying to understand why App Preview uploads are stuck in this state even after 24 hours without any errors thrown My current video has the following specs which follows Apple requirements for Video Specifications for App previews. Video codec: H.264 High Profile Level 4.0 — meets requirement Resolution: 886×1920 — correct for 6.9 Frame rate: ~28.9 fps (under 30) — meets requirement Format: MP4 — meets requirement Duration: 28.08s (under 30s) — meets requirement Audio codec: AAC — meets requirement Audio bitrate: 256kbps — meets requirement Audio sample rate: 44.1kHz — meets requirement Audio channels: stereo — meets requirement
Replies
2
Boosts
0
Views
72
Activity
3w
Reply to Apple-Hosted Asset Pack Support in App Review
Hello, @TimDeWachter! I’m glad that you were able to make progress. By default, asset packs work differently for App Review than for App Store and TestFlight users. Specifically, pre-launch downloads are disabled for App Review, which mirrors the experience that an App Store or TestFlight user would see if they previously disabled background downloads on their device by going to Settings > Apps > App Store and turning off In-App Content. The setting is on by default, but users can turn it off if they choose. It sounds like you’re correctly handling that case by showing a fallback screen, but you still need to display the download size on that screen per App Review Guideline 4.2.3 (ii): If your app needs to download additional resources in order to function on initial launch, disclose the size of the download and prompt users before doing so. The easiest way to determine the download size is to look at an asset pack’s downloadSize property’s value, which is available in both Swift and Objective-
Replies
Boosts
Views
Activity
3w
Reply to FileManager.replaceItemAt(_:withItemAt:) fails sporadically on ubiquitous items
Thanks again! I think very fast actually understates how significant the performance difference is. Ha, true. In practice it seems “instant”, to the extent that on APFS, updating huge zip files is not much slower than in-place saving into a package. I don't know if anyone has ever shipped a solution that worked like this, but... it might be worth thinking about using DiskImages as a file format. Interesting! Although cross-platform compatibility might be an issue here. The replaceItem(at:...) documentation actually answers this… Sorry, I should have been more clear, although thinking about it I have been tying myself up in knots and the solution was indeed here all along. I was referring to the circumstances we were discussing before, where we don’t want to do the temp work on the same volume as the destination because the destination volume is slow. In other words, we have deliberately created the temp folder for updating our file on another volume (e.g. one that supports APFS), because the one created using
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
3w
Bluetooth audio packet alignment
We’re evaluating a Bluetooth device that supports Hands Free Profile (HFP) as the “Hands-Free Unit”. You can think of this as a Bluetooth telephone headset. This device interacts with our iOS application. We observed the following. The iPhone 17 HFP Wide-Band Speech (WBS) mSBC decoder requires the WBS packet (H2 header + mSBC frame) to be sent aligned. Aligned meaning, the H2 header must be first in every packet. The WBS packet cannot span multiple eSCO packets or else the iPhone will discard the audio. This is a different implementation than the iPad (iPad Pro 11-inch M4) , presumably due to Apple’s new N1 chip. In other words, we’ve identified that older iPhones and iPads do not require this alignment. They have implemented a stateful parser/decoder of the HFP WBS audio. A quick picture to help illustrate. The iPhone 17 requires: | Frame | Frame | Frame | Frame | However, a Bluetooth implementation we are evaluating does: | me Fra | me Fra | me Fra | me Fra | Does Apple intend to keep this
Replies
3
Boosts
0
Views
141
Activity
4w
Reply to Audio System Trace: Zero Time Stamp
Can you share more details about your audio setup and what you're trying to investigate? It would be helpful to know what type of audio processing your app is doing, if you're experiencing any audio-related issues (like glitches or latency), and the context around when these 'Zero Time Stamp' events appear. Also, are these events occurring frequently or only in specific circumstances? Screenshots of the Instruments trace might also help us better understand what you're seeing.
Topic: Media Technologies SubTopic: Audio Tags:
Replies
Boosts
Views
Activity
4w
Audio System Trace: Zero Time Stamp
In Instruments, I'm seeing Zero Time Stamp events in the Audio Server lane. What does that mean?
Replies
1
Boosts
0
Views
174
Activity
4w
Two apps, same name. How is that possible?
Hi everyone, I've exchanged several emails with support already and didn't receive meaningful answer. Everything sounds automated or the person responding is very ... not paying attention to my questions let's say. The problem I'm facing is I have released an app more than a year ago. Someone else released app with identical name few weeks after me. Developer support mentioned something about localisations and that apps with different localisations can have same name. To be honest, I don't understand that at all. Facts: both apps have identical name both apps are available only in english language according to the store listing both apps are available in same regions I wouldn't be bothered about it too much, but my competition is not really great and have received some bad reviews. The problem is obvious. Users are mixing my app with my competitor, writing bad feedback, asking questions about the other app and it generally is starting to be a problem now that my app is gaining more traction. It also
Replies
0
Boosts
0
Views
109
Activity
4w
AVAssetDownloadConfiguration: How many video variants are actually downloaded when multiple variants exist in the HLS master playlist?
Hi, I’m trying to better understand how AVAssetDownloadConfiguration selects video variants when downloading HLS content for offline playback. Suppose I have an HLS master playlist (.m3u8) that contains several video variants defined with #EXT-X-STREAM-INF. For example, the master playlist may contain multiple video streams like this: Same resolution, different BANDWIDTH Or different resolutions (for example 720p, 1080p, etc.) My question is: How many video variants are actually downloaded when using AVAssetDownloadConfiguration without specifying any variantQualifiers? In other words: If the master playlist contains multiple video variants, will the download task fetch only one variant, or multiple variants? Does the behavior differ depending on whether the variants differ only by BANDWIDTH or also by RESOLUTION? What I observed in testing In my tests, I always end up with only one video variant downloaded, specifically the one with the highest BANDWIDTH parameter. In the m3u8 files I tested, all video varia
Replies
1
Boosts
0
Views
293
Activity
4w