Max Kellermann
|
7c6b0d5c31
|
player/Thread: use class ScopeLock
|
2016-12-14 13:10:48 +01:00 |
|
Max Kellermann
|
03151310cf
|
player/Control: add method LockApplyBorderPause()
|
2016-12-14 13:09:48 +01:00 |
|
Max Kellermann
|
baa2bc0c38
|
player/Control: add method LockSetOutputError()
|
2016-12-14 13:01:17 +01:00 |
|
Max Kellermann
|
9fb7cc796b
|
decoder/Control: add attribute configured_audio_format
Obsoletes the same variable from AudioConfig.cxx.
|
2016-12-03 14:12:08 +01:00 |
|
Max Kellermann
|
6cc1ff5eeb
|
decoder/Control: make ReplayGainConfig const
|
2016-12-03 13:05:25 +01:00 |
|
Max Kellermann
|
ee57c3490a
|
{decoder,player}/Control: add ReplayGain{Config,Mode} attributes
Don't use the global variables in class DecoderBridge; instead,
forward these values to the decoder thread via PlayerControl and
DecoderControl.
|
2016-11-25 12:51:55 +01:00 |
|
Max Kellermann
|
d9cb85df83
|
output/Plugin: remove 'Error&' parameters, use C++ exceptions only
|
2016-11-09 12:36:21 +01:00 |
|
Max Kellermann
|
445e82be75
|
output/Multiple: migrate from class Error to C++ exceptions
|
2016-11-09 12:31:23 +01:00 |
|
Max Kellermann
|
4cd21f1e07
|
decoder/Control: throw exception on Seek() error
|
2016-11-07 09:05:28 +01:00 |
|
Max Kellermann
|
308010794a
|
decoder/Control: convert error from Error to std::exception_ptr
Prepare full C++ exception support in the decoder thread.
|
2016-09-08 17:16:03 +02:00 |
|
Max Kellermann
|
b67e7df38e
|
Merge tag 'v0.19.17'
release v0.19.17
|
2016-07-09 00:46:09 +02:00 |
|
Max Kellermann
|
d3c7fac606
|
thread/Thread: throw std::system_error on error
|
2016-06-17 19:11:20 +02:00 |
|
Max Kellermann
|
8b903626c2
|
Merge tag 'v0.19.16'
release v0.19.16
|
2016-06-13 19:03:59 +02:00 |
|
Max Kellermann
|
ac7ce73526
|
player/Thread: cancel audio when decoder startup on seek fails
Fixes assertion failure in MultipleOutputs::Open() after seeking to a
failing song during playback.
|
2016-04-21 14:03:27 +02:00 |
|
Max Kellermann
|
1d67aa7bf2
|
update copyright year to 2016
|
2016-02-26 17:54:05 +01:00 |
|
Max Kellermann
|
faca8bc02a
|
decoder/Control: Seek() returns Error information
|
2015-11-11 19:56:08 +01:00 |
|
Max Kellermann
|
3b71e2abef
|
player/Thread: call DecoderCommand::SEEK only on existing decoder
If the decoder was just started, it already seeks to the desired
position.
|
2015-11-05 00:41:54 +01:00 |
|
Max Kellermann
|
30cad0c5f1
|
player/Thread: move code to WaitDecoderStartup()
|
2015-11-05 00:39:30 +01:00 |
|
Max Kellermann
|
3a387643b3
|
player/Thread: move player_command_finished() to PlayerControl
|
2015-11-05 00:38:09 +01:00 |
|
Max Kellermann
|
e6b37703da
|
player/Thread: copy pc.seek_time in ActivateDecoder()
If this gets called while seeking, do the right thing. This moves the
elapsed_time setter from method Run(), which is now redundant.
|
2015-11-05 00:30:04 +01:00 |
|
Max Kellermann
|
990f473bb3
|
player/Control: initialize seek_time in EnqueueSongLocked()
Allows removing a few special cases in the player thread.
|
2015-11-05 00:29:03 +01:00 |
|
Max Kellermann
|
cf1de78205
|
player/Thread: remove decoder error check from ActivateDecoder()
It is futile to check for decoder errors before the decoder has
finished startup. At this time, it's unlikely that the decoder has
already failed.
|
2015-10-28 18:24:42 +01:00 |
|
Max Kellermann
|
ccea6dd74b
|
player/Thread: rename WaitForDecoder() to ActivateDecoder()
.. and fix its API documentation.
|
2015-10-28 18:20:48 +01:00 |
|
Max Kellermann
|
166b490eed
|
player/Thread: move code to ForwardDecoderError()
|
2015-10-27 23:28:13 +01:00 |
|
Max Kellermann
|
efd871ad2f
|
player/Thread: clear pc.next_song earlier in WaitForDecoder()
|
2015-10-27 23:25:50 +01:00 |
|
Max Kellermann
|
e753c924ef
|
player/Thread: merge the cross_fading flag into enum CrossFadeState
|
2015-10-27 22:43:46 +01:00 |
|
Max Kellermann
|
9dc7b5a6d9
|
player/Thread: move ResetCrossFade() calls to where pipes are set
Move ResetCrossFade() to where cross-fading would actually break, to
make the cross-fading state more reliable.
|
2015-10-27 22:11:56 +01:00 |
|
Max Kellermann
|
f5d21c9cdb
|
player/Thread: add method ResetCrossFade()
|
2015-10-27 22:05:41 +01:00 |
|
Max Kellermann
|
6ce13646da
|
player/Thread: more CrossFadeState documentation
|
2015-10-27 21:12:20 +01:00 |
|
Max Kellermann
|
151653dd98
|
player/Thread: automatic CrossFadeState enum values
|
2015-10-27 21:05:10 +01:00 |
|
Max Kellermann
|
619cfe6a1c
|
player/Thread: move enum CrossFadeState into the Player class
|
2015-10-27 20:48:14 +01:00 |
|
Max Kellermann
|
5fba8d773c
|
PlayerThread, ...: move to src/player/
|
2015-08-15 15:55:46 +02:00 |
|