Commit Graph

22123 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
e9580bfa56 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
- Add build_test/ to .gitignore

Co-authored-by: saintmatthieu <22740106+saintmatthieu@users.noreply.github.com>
2025-12-05 23:28:56 +00:00
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
copilot-swe-agent[bot]
3515558534 Initial plan 2025-12-05 23:17:56 +00:00
Dmitry Makarenko
3bc8fc2d37
Locale conversion fix (#10007)
Resolves: #9579

Convert filenames to/from utf-8

<!-- Use "x" to fill the checkboxes below like [x] -->

- [x] I signed [CLA](https://www.audacityteam.org/cla/)
- [x] The title of the pull request describes an issue it addresses
- [x] If changes are extensive, then there is a sequence of easily
reviewable commits
- [x] Each commit's message describes its purpose and effects
- [x] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [x] Each commit compiles and runs on my machine without known
undesirable changes of behavior

QA:

- [ ] Autobot test cases have been run
2025-12-05 15:05:03 +03:00
Dmitry Makarenko
56ce541f8d fix: convert dialog text from utf-8 2025-12-05 12:36:50 +03:00
Dmitry Makarenko
349b777518 fix: convert filenames to and from utf8 during import/export 2025-12-05 12:36:50 +03:00
Dmitry Makarenko
31ccba3749 fix: compilation in debug mode with msvc 2025-12-05 12:36:50 +03:00
Sanskar Bajpai
e4fb0e3b7d
Shortcuts: Assigned a default shortcut to "zoom to fit project" (#9926)
Resolves: [Assign the shortcut to "zoom to fit project"
](https://github.com/audacity/audacity/issues/9490)

The fix was pretty straightforward. I believe no further explanation is
required.

<!-- Use "x" to fill the checkboxes below like [x] -->

- [ ] I signed [CLA](https://www.audacityteam.org/cla/)
- [x] The title of the pull request describes an issue it addresses
- [x] If changes are extensive, then there is a sequence of easily
reviewable commits
- [x] Each commit's message describes its purpose and effects
- [x] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [x] Each commit compiles and runs on my machine without known
undesirable changes of behavior

QA:

- [ ] Autobot test cases have been run

Update: 

I have to edit Audacity's CLA that I signed
2025-12-05 09:33:01 +03:00
embarc-gabriel
93fe6ee0c6
fix(timeline): during playback seek and play (#9889)
Resolves: #9752 https://github.com/audacity/audacity/issues/9415

During playback seekToX should trigger play so we change the modify the
position on clicking the timeline.

<!-- Use "x" to fill the checkboxes below like [x] -->

- [x] I signed [CLA](https://www.audacityteam.org/cla/)
- [x] The title of the pull request describes an issue it addresses
- [x] If changes are extensive, then there is a sequence of easily
reviewable commits
- [x] Each commit's message describes its purpose and effects
- [x] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [x] Each commit compiles and runs on my machine without known
undesirable changes of behavior

QA:

- [ ] Autobot test cases have been run
2025-12-03 08:44:31 -03:00
Gabriel Sartori
ec2ff1ef63 fix: use a single receiver to retrieve playback status information 2025-12-03 08:04:22 -03:00
Gabriel Sartori
17243a4b90 refactor: extract isSeekPositionValid function 2025-12-03 07:32:41 -03:00
Gabriel Sartori
9106bb6c56 refactor(timeline): Improve audio thread states naming 2025-12-03 07:32:41 -03:00
Gabriel Sartori
21aee5fc5f fix(timeline): modify playregion if clicking on time ruler 2025-12-03 07:32:41 -03:00
Gabriel Sartori
fbeeffaf60 fix(timeline): stop if seek outside clip boundaries 2025-12-03 07:32:41 -03:00
Gabriel Sartori
509209b20a fix(timeline): update playback time positon from the main thread 2025-12-03 07:32:41 -03:00
Gabriel Sartori
4f7da52b6c refactor: fix include order 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
Gabriel Sartori
4e538a757e fix(timeline): during playback seek and play 2025-12-03 07:32:41 -03:00
Matthieu Hodgkinson
66c4c51f78
fix(effects): repair change-pitch effect after effect refactoring merge (#9973)
<!-- Use "x" to fill the checkboxes below like [x] -->

- [x] I signed [CLA](https://www.audacityteam.org/cla/)
- [x] The title of the pull request describes an issue it addresses
- [x] If changes are extensive, then there is a sequence of easily
reviewable commits
- [x] Each commit's message describes its purpose and effects
- [x] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [x] Each commit compiles and runs on my machine without known
undesirable changes of behavior

QA:
- [x] Please smoke-test change-pitch effect (only one platform is
sufficient)
- [ ] Autobot test cases have been run
2025-12-02 21:14:23 +01:00
Matthieu Hodgkinson
0bf7a2119b fix(effects): repair change-pitch effect after effect refactoring merge 2025-12-02 21:13:34 +01:00
Matthieu Hodgkinson
196f649154
Spectrogram settings (#9899)
Resolves: #9770

Spectrogram settings, at both track and global level.

<!-- Use "x" to fill the checkboxes below like [x] -->

- [ ] I signed [CLA](https://www.audacityteam.org/cla/)
- [ ] The title of the pull request describes an issue it addresses
- [ ] If changes are extensive, then there is a sequence of easily
reviewable commits
- [ ] Each commit's message describes its purpose and effects
- [ ] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [ ] Each commit compiles and runs on my machine without known
undesirable changes of behavior

### QA
Please note that keyboard navigation will be implemented in a follow-up
PR.

#### What this PR does NOT do
* Preview button is NOT (yet) working. Will be in a follow-up PR.
* Track spectrogram settings are NOT persistent upon app restart and
project re-opening (may become later)

#### What is does
- [x] Behaves otherwise like in Au3
- [x] Global spectrogram settings are persistent
- [ ] Follows the Figma designs (except for the bottom buttons in the
per-track dialog, which at the time of writing is inconsistent with Au3.
This PR aims for the Au3 buttons.)
- [ ] Autobot test cases have been run
2025-12-02 14:39:03 +01:00
Matthieu Hodgkinson
0c5a69f8e4 fix(spectral tools): tracks use own SpectrogramSettings 2025-12-02 13:43:59 +01: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
523664f6f9 Different column width for global and track settings 2025-12-02 13:43:59 +01:00
Matthieu Hodgkinson
d87dc335a8 Track view settings use ActionQuery 2025-12-02 13:43:59 +01:00
Matthieu Hodgkinson
8003b56883 Remove obsolete SpectrogramSettingsPanel.qml 2025-12-02 13:43:59 +01:00
Matthieu Hodgkinson
931a1610a2 Spectrogram settings 2025-12-02 13:43:59 +01:00
Grzegorz Wojciechowski
359fafd5ec
feat(export): Export dialog navigation (#9898)
Resolves: https://github.com/audacity/audacity/issues/8961
Resolves: https://github.com/audacity/audacity/issues/9596
Resolves: https://github.com/audacity/audacity/issues/9223
Resolves: https://github.com/audacity/audacity/issues/9597
2025-12-02 12:22:01 +01:00
Grzegorz Wojciechowski
60cfb7979e Addressed review comments 2025-12-02 11:33:59 +01:00
Grzegorz Wojciechowski
22e4aba216 Added missing channels label 2025-12-02 11:33:59 +01:00
Grzegorz Wojciechowski
5341d875df Fix export dialog initial y positioning 2025-12-02 11:33:59 +01:00
Grzegorz Wojciechowski
28edfb3630 Fix alignment 2025-12-02 11:33:59 +01:00
Grzegorz Wojciechowski
5193c9cb5a Fix setFilePickerPath function 2025-12-02 11:33:59 +01:00
Grzegorz Wojciechowski
a5aa429ed8 Added export dialog navigation 2025-12-02 11:33:59 +01:00
Matthieu Hodgkinson
a8ac3a45de
Refactoring: use effect view model factories (#9789)
<!-- Use "x" to fill the checkboxes below like [x] -->

- [x] I signed [CLA](https://www.audacityteam.org/cla/)
- [x] The title of the pull request describes an issue it addresses
- [x] If changes are extensive, then there is a sequence of easily
reviewable commits
- [x] Each commit's message describes its purpose and effects
- [x] There are no behavior changes unnecessary for the stated purpose
of the PR

Recommended:
- [x] Each commit compiles and runs on my machine without known
undesirable changes of behavior

QA:
Please note that this PR contains the fixes merged on alpha only:
https://github.com/audacity/audacity/pull/9710. That PR was already
tested by @dozzzzer. We are now porting these changes back to master.
On top of these changes, we here are doing some refactoring: easy
changes, but widespread. Hence the following checklist:
- [x] Please smoke-test _all_ built-in effects and generators, in
destructive and real-time mode where applicable,
- [x] Smoke-test one third-party effect of each family (VST, AudioUnit
and LV2) in destructive and real-time modes,
- [x] Presets work as expected
- [x] In realtime mode, replacing one effect by another works as
expected (UI of effect being replaced disappears, that of the new effect
appears)
- [x] Autobot test cases have been run
2025-12-02 11:29:08 +01:00
Matthieu Hodgkinson
7ac8ca9b85 Use factory for TruncateSilence after rebase 2025-12-02 11:28:39 +01:00
Matthieu Hodgkinson
e0057b8880 Refactoring: use effect view model factories 2025-12-02 11:28:39 +01:00
Matthieu Hodgkinson
bad189cc41 Linkage fix 2025-12-02 11:28:39 +01:00
Matthieu Hodgkinson
b82af3f01a EffectsProvider::previewEffect returns immediately 2025-12-02 11:28:39 +01:00
Matthieu Hodgkinson
d73ca355c9 IEffectsProvider::previewEffect requires EffectId 2025-12-02 11:27:45 +01:00
Matthieu Hodgkinson
8c40452027 IEffectsProvider::previewEffect requires EffectId 2025-12-02 11:27:45 +01:00
Matthieu Hodgkinson
23737f559f Assert that m_instanceId is valid in AbstractEffectViewModel. 2025-12-02 11:27:45 +01:00
Matthieu Hodgkinson
3300151c20 Do not consume more than output yet make sure that no played samples remain unconsumed 2025-12-02 11:27:45 +01:00
Matthieu Hodgkinson
ef1e410b26 Rreduce risk of overflow for low buffer sizes 2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
0620cd380a always reset playback cursor positioning when resuming play 2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
7fc674343f jitter compensation in play cursor positioning 2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
5b87d50725 initializationInstanceId() moved from BuiltinEffectViewLoader to AbstractViewLauncher ...
this way, all effect families, in realtime or destructively, can access instanceId at construction time.
2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
d80cc9c5d1 Address review comments 2025-12-02 11:25:42 +01:00
Matthieu Hodgkinson
bf4fa78c65 #9698 "No effect" -> "Remove effect" 2025-12-02 11:25:42 +01:00