Commit graph

18764 commits

Author SHA1 Message Date
Robin Gareus
015b588d65 print insanity-check message only in debug builds 2015-09-04 22:36:14 +02:00
Tim Mayberry
ad6c71e1fd Fix invalid error message when selecting directories/folders in Import dialog
On linux SndFileSource::get_soundfile_info was being called with an empty path
value when clicking on a folder in the left side part of the file browser which
resulted in an unnecessary error message.

On Windows every time a directory was selected in the Import dialog,
SndFileSource::get_soundfile_info would fail to open the directory in read only
mode and produce an error, but as we don't want to query/open soundfile info
for directories anyway just test and return if the path is a directory.
2015-09-04 11:50:08 +10:00
Tim Mayberry
b3b5646a30 Remove Apply button in Import dialog/Window and change OK to "Import"
Don't close the window when clicking on Import. Changing "OK" to "Import" makes
it clear what action is being taken by the button. I quite frequently imported
several files from different directories using "Apply" and then would click on
OK to finish using the dialog only to have the last import occur again
unintentionally.

Another option would of been to change "Apply" to "Import" and "OK" to "Import
and Close" and not have a Close button.
2015-09-04 09:45:09 +10:00
Tim Mayberry
303b27a69b Change Cancel button in Import Dialog to Close button
This button closes the window, it doesn't actually cancel any importing that
has taken place and cancelling the import in progress is done by the Cancel
button in popup progress dialog
2015-09-03 22:32:53 +10:00
Tim Mayberry
846a5d9446 Indentation and whitespace fixes in sfdb_ui.h 2015-09-03 22:13:43 +10:00
Mathias Buhr
cfb10eba35 Review changes 2015-09-03 10:05:36 +02:00
Mathias Buhr
624f76b229 Fixes case where audiofiles used wrong peakfiles 2015-09-03 09:54:23 +02:00
Mathias Buhr
95b144ee58 Use const reference and renames variable 2015-09-03 09:54:23 +02:00
Robin Gareus
30af404def another -Wabsolute-value fix 2015-09-02 22:57:16 +02:00
Robin Gareus
c7b64803d9 rework AudioUnit variable input port count. 2015-09-02 21:05:09 +02:00
Paul Davis
2f69ee8ec8 a couple of debug output statements to help diagnose a crash, part 2 2015-09-02 12:58:07 -04:00
Paul Davis
e91a0f7e11 a couple of debug output statements to help diagnose a crash 2015-09-02 12:24:37 -04:00
Robin Gareus
2e96b62a1e fix typo in 434416c 2015-09-02 16:03:44 +02:00
Robin Gareus
434416c31f show compile-time cpu-arch in about - closes #6548 2015-09-02 15:08:20 +02:00
Robin Gareus
93aa8d3734 waveform, mutex for _current_image
may be used in render-thread while invalidate_image_cache() is called.
possible fix for #6478
2015-09-02 14:28:26 +02:00
Robin Gareus
fa32fa1abe replace "None" with DeviceNone in ALSA/Coreaudio
TODO: separate MidiSystemNone
2015-09-02 13:33:40 +02:00
Tim Mayberry
7521028831 Add debug output for errors when setting MMCSS thread characteristics 2015-09-02 12:07:59 +10:00
Tim Mayberry
3618689103 Use MMCSS utility functions in PortaudioBackend 2015-09-02 12:07:59 +10:00
Tim Mayberry
b288a40220 Add utility functions in PortaudioBackend for re/setting MMCSS thread characteristics 2015-09-02 12:07:59 +10:00
Tim Mayberry
77ce989dfa Pass input and output audio buffers into PortaudioBackend blocking process function
This makes it possible to reuse the method for callback based processing
2015-09-02 12:07:59 +10:00
Tim Mayberry
a6fb71022f Add audio_utils.h header in PortaudioBackend for de/interleaving audio data 2015-09-02 12:07:59 +10:00
Tim Mayberry
23a490c906 Add two utility methods to abstract PortAudioBackend state
These may change as support for callback API is added
2015-09-02 12:07:58 +10:00
Tim Mayberry
f143d76523 Extract MIDI input/output processing in PortAudioBackend into new methods 2015-09-02 12:07:58 +10:00
Tim Mayberry
a65b1ddedc Add a DSPLoadCalculator class to the PortAudioBackend for DSP load calculation
The class uses the same algorithm as in the coreaudio and alsa backends and
should probably go into libardour at some point
2015-09-02 12:07:58 +10:00
Tim Mayberry
cb7bac5599 Fix include style of system header 2015-09-02 12:07:58 +10:00
Tim Mayberry
5448c229d9 Extract main processing section of PortAudioBackend into new method 2015-09-02 12:07:58 +10:00
Tim Mayberry
f27d8e1e23 Extract freewheel processing in PortAudioBackend into new method 2015-09-02 12:07:58 +10:00
Tim Mayberry
cf81caa798 Don't update unused dsp timer variable in freewheel process in PortaudioBackend 2015-09-02 12:07:58 +10:00
Tim Mayberry
7b23f80b03 Refactor port change handling part of PA Backend process function into new method 2015-09-02 12:07:58 +10:00
Tim Mayberry
684701427e Rename variables in PortaudioBackend in preparation for using PA callback API 2015-09-02 12:07:58 +10:00
Tim Mayberry
56b5e04c3b Fix copy and paste error in debug output message in WINMME Midi Output 2015-09-02 12:07:58 +10:00
Tim Mayberry
ac5eac471d Signal WinMME Midi output thread so the thread wakes up and terminates properly 2015-09-02 12:07:15 +10:00
Tim Mayberry
d520b9c878 Stop WINMME midi driver/devices when PortAudio backend is stopped 2015-09-02 12:07:15 +10:00
Tim Mayberry
2dbdaaa8f5 Refactor part of PortAudioBackend::_start/stop into new methods 2015-09-02 12:07:15 +10:00
Tim Mayberry
f58282844d Don't add "None" devices for ASIO driver in PortaudioBackend 2015-09-02 12:07:15 +10:00
Tim Mayberry
dbe3500f24 Add utility method for choosing which device/s to display in Audio Setup dialog 2015-09-02 12:07:15 +10:00
Tim Mayberry
25ff056921 Use previously set buffer size in EngineDialog if possible
This is also to support refreshing of devices so that the buffer size isn't
reset.
2015-09-02 12:07:15 +10:00
Tim Mayberry
9626e0c413 Add "Refresh Devices" button in Audio Setup dialog for backends that support it
This allows the portaudio library to be reinitialized to pick up new devices
and changes to ASIO buffer changes made externally.
2015-09-02 12:07:15 +10:00
Tim Mayberry
88b332412c Add some debugging output for state restoration in Audio Setup dialog 2015-09-02 12:07:15 +10:00
Tim Mayberry
e6492319b1 Remove Apply button from Audio Setup dialog now that there is a start/stop button 2015-09-02 12:07:15 +10:00
Tim Mayberry
dd275327a4 Change "Stop" button into a Start/Stop button in Audio Setup dialog 2015-09-02 12:07:15 +10:00
Tim Mayberry
0396df963f Implement new AudioBackend API for force updating devices in PortaudioBackend 2015-09-02 12:07:15 +10:00
Tim Mayberry
16f8c3ce85 Add API to AudioBackend to request update to devices 2015-09-02 12:07:15 +10:00
Tim Mayberry
585930f058 Update devices in PortaudioBackend when setting the driver
Reinitialize portaudio to pick up changes in devices and ASIO buffer settings
2015-09-02 12:07:15 +10:00
Tim Mayberry
8c2b9dac59 Rename several methods in PortAudioIO class
return ErrorCode's and handle them where necessary
2015-09-02 12:07:15 +10:00
Tim Mayberry
82f84d6203 Refactor part of PortAudioIO::pcm_setup into new method 2015-09-02 12:07:15 +10:00
Tim Mayberry
1cb36108bb Change the functions related to initializing the Portaudio library 2015-09-02 12:07:15 +10:00
Tim Mayberry
3b71674eee Remove unused and cryptic _state member from PortAudioIO 2015-09-02 12:07:15 +10:00
Tim Mayberry
fd0b54f459 Use PortAudioIO::ErrorCode as return value from PortAudioIO::pcm_setup 2015-09-02 12:07:15 +10:00
Tim Mayberry
4e75220661 Define some error codes in PortAudioIO class 2015-09-02 12:07:15 +10:00