Repository navigation
·
1 commit
to experiment/parakeet-transcription
since this release
π¨ Critical Bug Fixes
This release fixes a segmentation fault crash that occurred when opening the app menu.
Fixed Issues
- π Fixed heap corruption in audio device enumeration - CoreAudio buffer allocation was too small, causing memory corruption
- π§΅ Fixed main thread blocking - Device enumeration now happens in background thread
- π₯ Fixed random crashes when opening the status bar menu
- β‘ Improved menu responsiveness - Devices are cached and updated asynchronously
Technical Details
The crash was caused by AudioObjectGetPropertyData writing beyond allocated memory when querying audio devices with multiple channels. This corrupted adjacent heap objects, leading to EXC_BAD_ACCESS (SIGSEGV) crashes in objc_retain.
Changes:
- Allocate correct buffer size for
AudioBufferListbased on actual data size - Use
UnsafeRawPointerwith proper byte alignment - Move
MicrophoneCaptureManager.getInputDevices()to background thread - Wrap
AudioInputDevicestruct inAudioDeviceWrapperclass for safe Objective-C bridging
Previous Features (from v0.2.2)
- β¨ Custom app icon
- π§ 5-minute timeout for long recording sessions
- π Status feedback during summary generation
- π― Bundled Python engine with auto-start
- β Fully notarized
Installation
Clean install recommended
brew uninstall --zap audio-summary
brew install --cask adbutler007/private-notes/audio-summary### Requirements
- macOS 13.0+ (Ventura or later)
- Apple Silicon (M1/M2/M3/M4)
- ~4GB disk space
If you experienced crashes with v0.2.2, please upgrade immediately!