Commit Graph

118 Commits

Author SHA1 Message Date
Alexandre Almeida
e900576dbd FifoBuffer adjustments (#5803) 2021-01-23 13:52:36 +01:00
Alexandre Almeida
28ee260e28 Mixer refactor (#4894)
Co-authored-by: Kevin Zander <veratil@gmail.com>
2020-12-11 10:46:03 +09:00
Alexandre Almeida
6e081265ba Rename MidiTime to TimePos (#5684)
Fixes #4866
2020-11-29 19:46:13 +01:00
Alexandre Almeida
83e51ffc45 Remove unused stuff (#5685) 2020-11-20 15:49:15 +00:00
thmueller64
df296b7931 Fix metronome playing when song is paused. (#5612) 2020-08-06 18:36:54 +02:00
Lukas W
b8a3765cb1 Merge branch 'stable-1.2' into master 2020-06-01 15:19:20 +02:00
thmueller64
d5a2366fc8 Fix #5504: invalid warning 2020-05-23 18:07:35 +02:00
Alexandre Almeida
53e6b645c8 Use "bar" instead of "tact"
Closes #4865
2019-10-31 15:13:25 +01:00
Hyunjin Song
7ebaa0e211 Merge branch 'stable-1.2'
# Conflicts:
#	data/locale/pl.ts
#	include/SongEditor.h
#	plugins/vst_base/CMakeLists.txt
#	src/core/Song.cpp
#	src/gui/editors/SongEditor.cpp
2019-10-21 11:18:39 +09:00
David Carlier
732448c392 FreeBSD build version 2019-10-18 16:52:38 +02:00
Johannes Lorenz
59e186d208 Closes #5050: Add Mixer threading comments (#5069)
[ci skip]
2019-07-11 18:22:41 +02:00
Hyunjin Song
12ea80d4fb Merge branch 'stable-1.2'
# Conflicts:
#	data/locale/cs.ts
#	data/locale/en.ts
#	data/locale/ko.ts
#	data/locale/ru.ts
#	data/locale/uk.ts
#	data/locale/zh_TW.ts
#	include/Engine.h
#	plugins/nes/Nes.cpp
#	src/core/NotePlayHandle.cpp
#	src/core/SampleBuffer.cpp
#	src/tracks/SampleTrack.cpp
2019-06-12 17:41:12 +09:00
Johannes Lorenz
6e5650c50a Fixes #4996: Fix metadata when exporting multiple tracks (#5005)
Co-Authored-By: Hyunjin Song <tteu.ingog@gmail.com>
2019-06-07 18:28:11 +02:00
Hyunjin Song
7984bb9db6 Merge branch 'stable-1.2'
# Conflicts:
#	.travis.yml
#	.travis/linux..script.sh
#	.travis/linux.win.download.sh
#	.travis/linux.win32.script.sh
#	.travis/linux.win64.script.sh
#	.travis/osx..script.sh
#	include/VstSyncController.h
#	plugins/audio_file_processor/audio_file_processor.cpp
#	plugins/zynaddsubfx/zynaddsubfx
#	plugins/zynaddsubfx/zynaddsubfx/src/Misc/Bank.cpp
#	plugins/zynaddsubfx/zynaddsubfx/src/Misc/Bank.h
#	src/gui/SetupDialog.cpp
#	src/gui/editors/SongEditor.cpp
2019-03-26 09:53:33 +09:00
Lukas W
17e87c1d68 Fix MidiJack crash on exit
* Fix uninitialized m_jackClient being used in MidiJack destructor
* Fix destruction order in Mixer.cpp so that MidiJack doesn't access the
  deleted AudioJack instance

Fixes #4688
2019-03-10 10:27:51 +01:00
Hyunjin Song
4252f755c2 Merge branch 'stable-1.2'
# Conflicts:
#	cmake/nsis/CMakeLists.txt
#	src/core/ProjectRenderer.cpp
#	src/tracks/Pattern.cpp
2018-10-29 16:20:58 +09:00
Hyunjin Song
d8fb07ff52 Fix minor glitches with sample tracks (#4666)
Switches some signal-slot connections to Qt::DirectConnection.
Now LMMS can handle loop points correctly and export samples without glitches.
Also tweaks some Mixer-related code to avoid related deadlocks on export.
2018-10-29 16:17:41 +09:00
Hyunjin Song
4069aaada2 Merge branch 'stable-1.2'
# Conflicts:
#	.travis/osx..install.sh
#	CMakeLists.txt
#	cmake/apple/install_apple.sh.in
#	doc/lmms.1
#	include/VstSyncController.h
#	plugins/carlabase/carla.h
#	plugins/vestige/vestige.cpp
#	plugins/vst_base/CMakeLists.txt
#	plugins/vst_base/RemoteVstPlugin.cpp
#	plugins/vst_base/Win64/CMakeLists.txt
#	plugins/zynaddsubfx/zynaddsubfx
#	plugins/zynaddsubfx/zynaddsubfx/src/Misc/QtXmlWrapper.cpp
#	src/core/Song.cpp
#	src/core/main.cpp
2018-09-18 09:54:38 +09:00
Hyunjin Song
91ca660161 Fallback to default audio/MIDI backends if invalid one is set
Also shows the setup dialog in case of invalid audio backends
2018-09-13 11:01:49 +09:00
Michael Gregorius
8d00e90322 Remove peak value references from Mixer::getPeakValues
Adjust Mixer::getPeakValues so client do not have to allocate the
variables that will store the peak values.

Adjust both existing clients: FxMixer and VisualizationWidget.
2018-08-16 19:49:30 +02:00
Lukas W
e65ccea7ba Merge branch 'stable-1.2' 2018-07-22 11:49:20 +02:00
Hyunjin Song
f2d68326a7 Fix occasional audio interface deadlock (#4450) 2018-07-10 11:13:56 +09:00
Lukas W
11c693205e Remove usage of deprecated Qt API
Removes usage of the following deprecated Qt functions:
- QPixmap::grabWidget
- QString::null
- qFind
- qSort
- qGreater
- qCopy
2018-06-17 14:27:28 +02:00
Colin Wallace
a3cdda04c0 Give our threads names (#4356)
* Give our threads names

It helps with debugging.

* Use Q_OBJECT macro to automatically name threads.

By default, QThread sets its name based on the Qt meta class. To get an
accurate metaclass, the class which inherits QThread must declare
Q_OBJECT in its header. Futhermore, Qt's MOC requires that a Qt type be
the primary base class when declaring Q_OBJECT, hence the order of
base classes has been rearranged for some classes.
2018-05-24 18:01:51 -07:00
Hyunin Song
0a5d056bdb Merge branch 'stable-1.2'
# Conflicts:
        #       .travis/osx..install.sh
        #       .travis/osx..script.sh
        #       cmake/linux/package_linux.sh.in
        #       data/locale/en.ts
        #       src/core/CMakeLists.txt
        #       src/core/ProjectRenderer.cpp
        #       src/gui/FileBrowser.cpp
2018-03-07 23:54:28 +09:00
Hyunjin Song
926b6542ae Don't restore audio device during exporting (#4083)
Fixes deadlock on multi-track export with SDL
2018-03-02 13:28:56 +09:00
Lukas W
aa1406bac9 Merge pull request #4000 from LMMS/fix/msvc
MSVC fixes
2017-11-24 11:58:12 +01:00
Lukas W
8f3ab4b1b0 Merge branch 'master' into fix/msvc
# Conflicts:
#	plugins/LadspaEffect/CMakeLists.txt
#	plugins/Xpressive/Xpressive.cpp
#	plugins/opl2/CMakeLists.txt
#	plugins/papu/CMakeLists.txt
#	plugins/xpressive/CMakeLists.txt
#	src/CMakeLists.txt
2017-11-22 17:34:22 +01:00
Oskar Wallgren
01265ace66 Default project when cancelling project loading (#3941)
Default project when cancelling project loading

If a user isn't aware that the loading of a project has been
cancelled, it may be in an incomplete state. Saving such a project
will overwrite the original file and result in data loss. This is
solved by loading the default project on cancelling project loading.

Add Mixer::clearNewPlayHandles() to prevent crash when cancelling
loading of a single streamed instrument.
2017-11-17 02:03:49 +01:00
Lukas W
8d6cb120b9 Replace MemoryManager implementation with rpmalloc (#3873)
* Replace MemoryManager implementation with rpmalloc
    Fixes #3865
* Travis: Specify OSX image for Qt5 build
2017-10-18 17:02:40 +02:00
Lukas W
9ae1bdecda MSVC compilation fixes 2017-10-16 15:51:21 +02:00
Lukas W
f23cf4e0bf Fix "out of buffers" crash (#3783)
Remove BufferManager implementation. Use MemoryManager allocation instead and re-use buffers where they are allocated (AudioPort.cpp & PlayHandle.cpp)
2017-09-26 20:33:09 +02:00
Lukas W
31ade1ad2c Fix Mixer renderOnly flag 2017-03-21 22:48:23 +01:00
Lukas W
435c898781 Mixer: Save renderOnly flag 2017-03-21 17:52:10 +01:00
Lukas W
10e28c26b9 Merge branch 'renderer' of https://github.com/PaulBatchelor/lmms 2017-03-21 17:51:51 +01:00
Lukas W
29f832034a Remove unused includes (#3429) 2017-03-16 11:35:18 +00:00
Paul Batchelor
5e536319b7 when rendering, use dummy Audio/MIDI devices 2017-03-04 22:10:36 -08:00
grejppi
9e85d7c66e update all copyright headers to the proper url (#3326) 2017-02-06 02:41:15 +02:00
Oskar Wallgren
6e66665687 Don't run metronome when project is empty (#3173) 2016-12-22 15:30:18 +01:00
Shane Ambler
05ace7e348 Support for using jack midi input (#2038)
* Support jack midi input

* If jack is used for audio then use the same connection for midi as well

* Remove old FreeBSD adjustment for portaudio as multiple version support has been dropped.

* Disable jack midi out port until it is functional
2016-11-10 00:03:35 +01:00
Javier Serrano Polo
5f54995188 Add LocklessAllocator and use it in LocklessList (#2998) 2016-09-04 00:13:45 +00:00
Javier Serrano Polo
c2a406e70f Merge pull request #2895 from jasp00/worker-lock
Added LocklessList and use it for new play handles
2016-07-06 15:18:09 +00:00
Javier Serrano Polo
f7aa773005 Added LocklessList and use it for new play handles 2016-07-03 16:42:07 +02:00
Javier Serrano Polo
8497d39eec Do not busy wait when writing buffer in mixer 2016-07-02 21:57:55 +02:00
Javier Serrano Polo
e55ec80c3d Fixed freeze when finishing export
Fixed stopping processing
2016-06-28 00:50:00 +02:00
Javier Serrano Polo
2c796f9503 Removed more locks from the mixer 2016-06-20 00:30:23 +02:00
Javier Serrano Polo
5606a04ad7 Defer updates to SampleBuffer
Removed global lock from the Mixer
2016-06-18 05:29:21 +02:00
Javier Serrano Polo
d31089ceb5 Fixed removal of track when notes are playing 2016-06-16 17:42:00 +02:00
David Carlier
9d06b9a7cb adding missing sndio Midi name setting. 2016-04-02 22:28:32 +01:00
David Carlier
43a0718d0b Adding OpenBSD's sndio support.
Updating jackmsr's work, adding sndio cmake module.
Updating 64 bits OS arch detection (amd64).
2016-03-26 12:48:28 +00:00