37 Commits

Author SHA1 Message Date
Mark Furneaux
53f21584e4 Fix inconsistent buffer sizes sent to analyzer
The analyzers are sent new buffers of audio data to process each time
they pass through the gst pipeline. Different file formats and bit depths/
sample rates can change the size of these buffers, in some cases making them
large and therefore infrequent. This causes choppiness in the analyzer
as it is not getting new data with every frame. This patch chunks the buffers
coming off the pipeline to correspond with the framerate of the analyzer.
2014-04-29 21:38:21 -04:00
Mark Furneaux
f793d09d8e Fix play bleeding into next track after auto stop
If "fade out on stop" is enabled, the "stop after this track" feature
would stop not stop the on current track, but instead start playing
the next track and fade out on that immediately. This patch disables
fadeout when the engine is stopped by HandleStopAfter().
2014-04-26 00:58:08 -04:00
John Maguire
bebd781fdf Reformat all non-3rd-party C/C++/Objective-C++.
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
 -style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire
d309d4ab27 Use c++11 instead of boost where possible. 2014-02-06 16:51:39 +01:00
John Maguire
36975c41d2 Add stereo balance slider as part of equalizer. 2013-04-26 20:28:57 -07:00
Andreas
ec481d5874 Fixed issue 578: fade-in fade-out on (un)pause. 2013-04-22 21:42:04 +02:00
John Maguire
3b935e89da cstdint is missing on Snow Leopard. 2012-11-21 14:41:37 +01:00
John Maguire
79318cc4e1 Build fixes for mingw-w64 2012-11-13 14:43:13 +01:00
David Sansome
7d6eee590a Don't force the track to stop at the end of a section unless it's part of a cue sheet. Fixes issue 1610. Fixes issue 1636. 2011-03-28 22:11:07 +00:00
David Sansome
b3db5d699e Remove CanDecode from GstEngine - it was only used by a test, and the test was disabled on buildbot because it was unreliable. 2011-03-20 19:36:50 +00:00
David Sansome
cb275f318f Add an option to disable automatic crossfading between tracks on the same album or from the same cuesheet. Fixes issue 1479 2011-03-13 18:37:46 +00:00
Paweł Bara
c8c394d200 don't push new URL into engine in the CurrentMetadataChanged slot - send it the beginning and end markers only
this means that Clementine still skips broken songs while at the same time fixes issue #1565
2011-03-12 20:20:13 +00:00
Paweł Bara
8722e00103 Clementine now skips songs that don't exist anymore (updates issue #250) 2011-03-10 18:01:35 +00:00
David Sansome
2cb8b8dba7 Stop cue sections at exactly the right place, and move seamlessly between consecutive sections of the same file. Fixes issue #1233. Fixes issue #1419. 2011-03-06 16:35:47 +00:00
Arnaud Bienner
375abfd04e Don't exit application to fast, to allow fadeout 2011-02-16 22:43:05 +00:00
David Sansome
37618dae96 Use nanoseconds instead of seconds or milliseconds throughout the Player and Engine. 2011-02-13 18:29:27 +00:00
Paweł Bara
bbe97b00a2 make engine 'multiple-section songs' aware -> you should now be able to play your .cue related music 2011-01-02 18:53:45 +00:00
Paweł Bara
5082d81ba4 some corrections to MPRIS 2 (Updates issue #1058) 2010-12-12 23:20:41 +00:00
David Sansome
44dc05a87a Don't stop the track when it's about to end if crossfading is enabled but fadeout is disabled. Fixes issue #1040 2010-12-07 20:29:13 +00:00
John Maguire
c625acfd87 Refactor background streams.
Add volume control for background streams and infrastructure for custom streams.
2010-12-03 13:53:43 +00:00
David Sansome
ed1a25693c Add missing licenses to debian/copyright, and add copyright information to each source file 2010-11-20 13:27:10 +00:00
David Sansome
0c95f7c234 Safeguard against a null pipeline in GstEngine::Play. 2010-09-26 20:59:41 +00:00
John Maguire
c801ce1a2d Rollback analyzer changes. 2010-08-28 18:48:16 +00:00
John Maguire
59233f5192 Disable FFT when no analyzer in use. 2010-08-20 12:14:43 +00:00
John Maguire
03274b0831 Add new analyzer API and example using gstreamer spectrum element. 2010-08-18 16:09:45 +00:00
John Maguire
41ab99e62e Generate Hypnotoad rather than streaming it. 2010-07-14 11:16:56 +00:00
John Maguire
92e95ecf80 Support for background streams. 2010-06-14 19:15:10 +00:00
David Sansome
910553b175 Gapless playback! 2010-04-21 13:55:30 +00:00
David Sansome
d51c7444ab Fix some confusion with auto/manual track changes 2010-04-12 01:59:21 +00:00
David Sansome
a25fd395f1 Fixed the easier codereview comments from r645 2010-04-12 00:26:16 +00:00
David Sansome
031752823c Add support for crossfading when changing tracks automatically 2010-04-11 23:52:16 +00:00
David Sansome
c4aa779728 Clean style of Engine::Base 2010-04-11 23:24:03 +00:00
David Sansome
23880b3cb5 Crossfading in gstreamer backend 2010-04-11 23:03:39 +00:00
David Sansome
c6fe113e79 GStreamer equalizer. Mostly working, just missing presets. Updates issue #166 2010-04-07 16:26:04 +00:00
David Sansome
256648f5e3 Add a UI for choosing which gstreamer audio sink to use 2010-04-07 13:51:14 +00:00
David Sansome
f8240e8b7c Make GstEngine::canDecode much faster by creating the pipeline only once 2010-04-07 12:56:05 +00:00
David Sansome
d5eb2297d2 Move the audio engines to their own directory 2010-04-04 17:50:11 +00:00