Commit Graph

176 Commits

Author SHA1 Message Date
David Sansome 9a06fa0bfc Don't start a new timer for *every* track we play. 2010-05-28 17:14:00 +00:00
David Sansome 4c13e78893 Fix a mingw warning 2010-05-27 20:30:15 +00:00
David Sansome 3927d91cf1 We use decodebin2 on windows now 2010-05-25 22:25:04 +00:00
David Sansome 9292bd3cb5 toFloat() was Qt 4.6 2010-05-25 21:33:16 +00:00
John Maguire a59f5a3887 *Fix m3u parsing
*Add regression test
*Fix clang warnings
2010-05-23 15:35:28 +00:00
David Sansome eb78ace541 Replay Gain support 2010-05-23 13:07:15 +00:00
David Sansome d054e06444 Don't do the preloaded check on manual track changes.
Update issue #332
Status: fixed
Thanks for the patch!  Calling Stop() in there meant that the OSD got shown
briefly with a "Stopped" message though, so I've changed GstEngine::Load
instead - the problem was with the code that checked whether the pipeline had
already started to load that URL as a result of GstEngine::StartPreloading.
It'll now only do that on an automatic track change.
2010-05-22 17:19:27 +00:00
David Sansome 9b224fd87d Fix the fader behaviour a bit 2010-05-19 13:26:23 +00:00
David Sansome 694c5e9f9e Wait 2 seconds after the fadeout finished before destroying the pipeline, to allow for delays in the sound server/driver. Fixes issue #294. 2010-05-15 17:55:36 +00:00
David Sansome 1aee5e4667 Split all the source files up into seven new directories. 2010-05-10 21:50:31 +00:00
David Sansome 980d61a583 If we're not crossfading, keep the same pipeline when changing tracks and just swap out the gstreamer source - this should allow for completely gapless playback. 2010-05-08 17:39:12 +00:00
David Sansome 5cbed1c6b3 Use uridecodebin to pick the right source for us, rather than using giosrc sometimes, and soup/neon for http. Fixes issue #290 2010-05-08 13:54:12 +00:00
David Sansome 19b08540ef Force the directsound sink on windows 2010-05-04 15:51:23 +00:00
John Maguire 7b420b6845 Some defensive programming for r819. 2010-05-03 14:55:00 +00:00
John Maguire 3adc74dfab Disable gstengine's timer when it's stopped. 2010-05-03 14:15:42 +00:00
David Sansome 6f7dbf3286 Make local file playback work on Windows again 2010-05-01 14:01:01 +00:00
David Sansome 266ad640de Fix character decoding from gstreamer errors.
Update issue 263
Status: Fixed
Nevermind, I worked out out - should be fixed now!
2010-04-30 15:37:57 +00:00
David Sansome 9d72d85f09 Don't crash when asked to load a file that doesn't exist on Windows 2010-04-27 17:53:52 +00:00
David Sansome a56107c598 Fix UTF8 characters in metadata received from gstreamer. Affects issue #229 2010-04-22 20:48:35 +00:00
David Sansome 906f3526cf Fix a crash bug when you seek all the way to the end of the last track 2010-04-22 17:02:06 +00:00
David Sansome 99743d49aa Nasty hack to hopefully prevent "seek failed" errors - just don't allow two seeks to happen within 100ms of each other. 2010-04-22 16:54:09 +00:00
David Sansome 82602f8d96 Fix setenv/putenv madness on mac 2010-04-22 13:49:16 +00:00
David Sansome 7263983e0c More debug output in CanDecode, and set the gst path in GstEngine rather than main() 2010-04-21 17:11:50 +00:00
David Sansome 3cc0ed361a Ignore useless metadata from gstreamer, and metadata that comes while the next track is preloading 2010-04-21 14:04:40 +00:00
David Sansome 910553b175 Gapless playback! 2010-04-21 13:55:30 +00:00
David Sansome 4eedddd57c Make the gst engine emit Error() instead of showing its own dialog when a plugin couldn't be found. 2010-04-21 11:14:12 +00:00
David Sansome 4234700e24 Trim the metadata received from tags 2010-04-20 22:20:20 +00:00
David Sansome 0656330548 Test we can load various popular file formats 2010-04-20 22:00:02 +00:00
David Sansome f4e9de8e5b Free the error messages properly, since they aren't owned by gstreamer. Thanks john :) 2010-04-19 12:30:19 +00:00
David Sansome 4bc704d7e3 Actually show error messages that come from gstreamer. Fixes issue #230 2010-04-19 12:04:35 +00:00
David Sansome dd86b60411 CMake variables and commandline options to allow multiple engines to be built. Thanks christoph.gysin.
Fixes issue #203
2010-04-15 12:39:34 +00:00
David Sansome 44ffc5be75 Get metadata from shoutcast streams (like somafm) 2010-04-14 23:59:11 +00:00
John Maguire 4862c41477 Tidy up http gstreamer source element. 2010-04-14 15:42:49 +00:00
David Sansome 57bd1b0227 Use different frequency values for the equalizer. Fixes issue #192 2010-04-12 20:57:21 +00:00
David Sansome c08179aa94 Fix a race condition caused by global state in the equalizer. 2010-04-12 20:33:59 +00:00
David Sansome ecda1787c8 Remove the CanDecode check - it's slow, and overidden by the taglib check anyway. 2010-04-12 19:46:08 +00:00
David Sansome 00b19ae83e Fix somafm playback on linux. Might merge this with the mac ifdef if possible? 2010-04-12 17:40:08 +00:00
David Sansome 07a851c951 Oops, we'd better unref these buffers to stop memory leaks 2010-04-12 16:41:44 +00:00
David Sansome e4c3c600b9 Fix a problem where the scope would apperar to freeze for a few seconds when changing tracks. 2010-04-12 16:39:48 +00:00
John Maguire 821baa2211 Mac deployment fixes for gstreamer. 2010-04-12 12:36: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 aaee1ded22 Fix a crash at the end of the last song on a playlist 2010-04-12 00:21:41 +00:00
David Sansome 1b0b8979df Codereview comments from r637 2010-04-12 00:20:52 +00:00
David Sansome 031752823c Add support for crossfading when changing tracks automatically 2010-04-11 23:52:16 +00:00
David Sansome 152470e5b3 Codereview comments from r644 2010-04-11 23:26:06 +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 b19fdbf272 Fadeout in gstreamer engine 2010-04-11 21:40:26 +00:00
David Sansome 656fbba37f Remove the "identity" element 2010-04-11 20:01:44 +00:00
David Sansome 14d0b00f46 Factor out the gstreamer pipeline bits into another class. 2010-04-11 19:47:21 +00:00
David Sansome 85032240d9 Set a plugin path on Windows, and don't do a pointless registry check any more 2010-04-11 14:26:30 +00:00
David Sansome d8bc4c1172 Use the extra gst audio conversion on all platforms 2010-04-11 13:28:26 +00:00
John Maguire 95abb71dc0 Equalizer and sound working on mac with a hack. 2010-04-09 14:29:12 +00:00
John Maguire b11c3b28f7 Fix scope on mac 2010-04-09 13:01:20 +00:00
John Maguire 19fe2cff54 Disable equalizer on Mac to at least get playback working. 2010-04-09 12:29:21 +00:00
David Sansome b6fd4dd3ac Fix style in gstequalizer, and fix unused warnings from the elusively named irr_cf.h 2010-04-08 21:32:43 +00:00
David Sansome 539f0a517b Rename this function so as to not confuse john. 2010-04-08 20:17:57 +00:00
David Sansome 1dbcfb9aa7 Add an option to change the output device on supported gst sinks. Fixes issue #184 2010-04-08 20:14:11 +00:00
David Sansome 6122051b7d Set a sync handler on the gstreamer bus to catch some other EOS events. Fixes issue #178 2010-04-07 20:01:44 +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 b3d62edbef Fix automatic track change ... again 2010-04-07 00:20:30 +00:00
David Sansome 5188e4f3d2 Enforce the right audio datatype in the gst pipeline... which makes the scope work \o/ 2010-04-07 00:18:55 +00:00
David Sansome 46818c851b Fix canDecode on tracks with funny characters. Thanks Sylvain 2010-04-06 23:00:20 +00:00
David Sansome 6b472b1e4a Clean up the gstengine formatting a bit 2010-04-06 22:58:41 +00:00
David Sansome b154f2bd4e Go on to the next track properly 2010-04-06 22:01:51 +00:00
David Sansome c7f4a091ed Let's give gstreamer another try... 2010-04-06 16:57:02 +00:00
David Sansome 57189ea911 Comments and warning fixes 2010-04-05 19:16:48 +00:00
David Sansome 2966763471 Hopefully fix audio stuttering 2010-04-05 13:38:12 +00:00
David Sansome f0a2176c78 Emit trackEnded() properly with the VLC backend 2010-04-05 13:26:11 +00:00
David Sansome c7f58b9618 Scope support for the VLC engine 2010-04-05 02:21:53 +00:00
David Sansome b77a64a2f1 Ooops, forgot this file 2010-04-04 20:45:59 +00:00
David Sansome 993a4f0e43 Experimental VLC audio engine 2010-04-04 20:45:03 +00:00
David Sansome d5eb2297d2 Move the audio engines to their own directory 2010-04-04 17:50:11 +00:00