Commit Graph

298 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
c730ec8c6a Address code review feedback
- Remove redundant empty() check in ThreadLocalStorage::init
- Add QUIET flag to find_package(OpenMP) to suppress warnings
- Remove unnecessary else clause in CMakeLists.txt

Co-authored-by: saintmatthieu <22740106+saintmatthieu@users.noreply.github.com>
2025-12-05 23:28:08 +00:00
copilot-swe-agent[bot]
cf6e85e2c2 Enable OpenMP for parallel spectrogram computation
- Removed mutable mSampleCacheHolder from SpecCache class
- Added sampleCacheHolder as parameter to CalculateOneSpectrum for thread safety
- Updated ThreadLocalStorage to include per-thread sampleCacheHolder
- Added OpenMP support to CMakeLists.txt with find_package(OpenMP)
- All CalculateOneSpectrum calls now pass thread-local sampleCacheHolder

Co-authored-by: saintmatthieu <22740106+saintmatthieu@users.noreply.github.com>
2025-12-05 23:25:03 +00:00
Gabriel Sartori
9106bb6c56 refactor(timeline): Improve audio thread states naming 2025-12-03 07:32:41 -03:00
Gabriel Sartori
7680a3e998 fix(audioio): avoid deadlock on seek and stop 2025-12-03 07:32:41 -03:00
Matthieu Hodgkinson
3a654392a0 We are only interested in per-track Au3 SpectrogramSettings ...
For the global ones, we use Au4 `ISpectrogramConfiguration`.
2025-12-02 13:43:59 +01:00
Matthieu Hodgkinson
931a1610a2 Spectrogram settings 2025-12-02 13:43:59 +01:00
Matthieu Hodgkinson
ef1e410b26 Rreduce risk of overflow for low buffer sizes 2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
554852b907 Bugfix: playback controller did not always call stop on player when playback reached end of project 2025-12-02 11:25:42 +01:00
Paul MARTIN
868d1bfdbe feat(effects) remove SyncLock from SBSMSBase 2025-12-02 09:45:12 +01:00
Paul MARTIN
b66468f1b0 feat(effects) remove SyncLock from SoundTouchBase 2025-12-02 09:45:11 +01:00
Gabriel Sartori
c697a39db7 feat(rulers): change background color on zoom out 2025-11-26 06:15:14 -03:00
Eism
338814e250 added ripple for cutting labels 2025-11-25 13:58:15 +02:00
Eism
8d68e3b1e9 added ripple for deleting labels 2025-11-25 13:58:15 +02:00
Eism
56ec9f7b12 create a range selection across all tracks that spans the duration of the label when selecting the label 2025-11-25 13:58:15 +02:00
Dmitry Makarenko
6d95d9fd61 fix: warnings 2025-11-17 20:03:12 +03:00
Dmitry Makarenko
2efed5e3f0 fix(import): convert filename to utf8 when importing wavpack files 2025-11-14 09:28:31 +03:00
Paul MARTIN
5f078fa047 fix(playback) use audioEngine instead of AudioIO for getAudioCallbackInfoQueue 2025-11-12 12:27:27 +01:00
Paul MARTIN
7217cedc1d fix(playback) cleanup AudioIO includes and add missing PluginProvider in ModuleManager 2025-11-12 12:27:27 +01:00
Eism
a1059e6b62 added copy/paste labels 2025-11-05 17:35:25 +02:00
Eism
d9421bbc95 use id instead of index for labels 2025-11-05 17:35:25 +02:00
Matthieu Hodgkinson
9b7a6fe3e2 Remove duplicate definition of MASTER_TRACK_ID 2025-11-05 09:02:43 +01:00
Matthieu Hodgkinson
c817eaaf3d Au3AudioMeter adapter class 2025-11-05 09:02:43 +01:00
Dmitry Makarenko
51242fa558
Merge branch 'master' into add_opus_codec_to_ogg 2025-11-03 17:07:47 +03:00
Paul MARTIN
8381ece84b 9108 remove SyncLock references from TruncSilenceBase 2025-11-03 11:07:25 +01:00
Paul MARTIN
aba6657727 9108 remove unused include 2025-11-03 11:07:25 +01:00
Paul MARTIN
84d03dec17 9108 Adjust TruncSilenceBase disabling SyncLock logic 2025-11-03 11:07:24 +01:00
Grzegorz Wojciechowski
2f4503b7c9 Fixed reducing export length on multiple tracks projects 2025-11-03 10:08:58 +01:00
Grzegorz Wojciechowski
90ba004759 Export loop region with effect tail 2025-11-03 10:08:58 +01:00
Dmitry Makarenko
bc6574c0ea Add FFmpeg 8.0 support
cherry-picked from: 67744a88
2025-10-30 16:03:23 +03:00
Dmitry Makarenko
b028c8ce5e Add Opus codec support to OGG format 2025-10-29 13:34:29 +03:00
Matthieu Hodgkinson
9ab1ceb007 mHardwarePlaybackLatencyMs 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
f3c550ede8 PushMainMeterValues -> PushMasterOutputMeterValues 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
e7a92ed566 AUdioDelivery -> AudioCallbackInfo 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
56d1ec5e42 Renaming of toGet and other locals in AudioIO.cpp 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
4ec7b30f72 Renaming when to dacTime (and other aliases) 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
0e657124ff More robust meter synchronization 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
fe28dd259e More robust playback cursor position 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
33be4aa26d Take full hardware playback latency into account 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
451e75d255 UpdateTimePosition on main thread and synchronized with render thread 2025-10-24 13:35:03 +02:00
Matthieu Hodgkinson
9ac53c1a26 UndoStateExtension impl-specific modifyState 2025-10-22 16:13:41 +02:00
Matthieu Hodgkinson
a0afacfb80 UndoStateExtension impl-specific modifyState: reorder UndoManager.h declarations 2025-10-22 16:13:40 +02:00
Paul MARTIN
18ed7a8669 9647 early StopMonitoring fix for windows and linux
9647 use double, rename projectRate

9647 fix formating and some const correctness cleanup on audioengine

9647 fix monitoring not updating when already metering

9647 remove mutable for the inputMonitoring AudioIOBase member

9647 const correctness

9647 remove useless emits
2025-10-22 12:58:18 +02:00
Paul MARTIN
2116bd8c0f 9647 move inputMonitoring to RecordConfiguration thus moving the callback there too.
getting rid of MonitoringChangeReason
re-adjust the audioEngineShouldBeMonitoring and updateAudioEngineMonitoring logic
store inputMonitoring in AudioIOStartStreamOptions
2025-10-22 12:58:18 +02:00
Paul MARTIN
0a8ab3cf16 9647 bring back the isTrackMeterMonitoring and the associated logic in audioEngineShouldBeMonitoring
9647 remove wrongly added emit

9647 typos

9647 some const correctness

9647 check engine when starting Monitoring mPortStreamV19 is checked inside IsMonitoring() and the stream token in IsBusy()
2025-10-22 12:58:18 +02:00
Paul MARTIN
f427cabc32 9647 cleanup some more AudioIO in favour of the AudioEngine
9647 make sure monitoring update when opening the input popup

9647 make sure every stop from the audio engine waits for engine to stop

affects not only Au3Player::stop() but also the missing wait in Au3Record::stop()

9647 use audioEngine instead of AudioIO

9647 rename shouldStartMonitoring as audioEngineShouldBeMonitoring

9647 clarify Monitoring logic
2025-10-22 12:58:18 +02:00
Paul MARTIN
bafee7e625 9647 add StopMonitoring method
9647 move Meters handling in AudioIOBase

9647 cleanup Meters handling in AudioIO
2025-10-22 12:58:18 +02:00
Paul MARTIN
4d8b53af4b 9647 limit namespace scope inside while 2025-10-22 12:58:18 +02:00
Matthieu Hodgkinson
cf09b813c3 Revert purging after pause 2025-10-17 12:13:43 +02:00
Grzegorz Wojciechowski
63b6edcda0 Speed up recording visuals 2025-10-10 13:30:48 +02:00
Grzegorz Wojciechowski
e5a64197d4 Avoid clip data copying 2025-10-10 13:30:48 +02:00