Max Kellermann
|
2f2b3f1cdc
|
output/wasapi: SearchDevice() returns IMMDevice
|
2021-03-05 19:25:42 +01:00 |
|
Max Kellermann
|
2ff6a9ad2b
|
output/wasapi: GetDevice() returns IMMDevice
|
2021-03-05 19:25:42 +01:00 |
|
Max Kellermann
|
17d4873b60
|
output/wasapi: use default device only if none was configured
|
2021-03-05 19:25:42 +01:00 |
|
Max Kellermann
|
8b41c4f384
|
output/wasapi: release the COMWorker if OpenDevice() fails
Fixes assertion failure in the Thread destructor.
|
2021-03-05 19:25:42 +01:00 |
|
Max Kellermann
|
17f7098e27
|
output/wasapi: SafeTry() catches all exceptions
Fixes crash due to std::stoul() throwing std::invalid_argument.
|
2021-03-05 19:12:22 +01:00 |
|
Max Kellermann
|
9ff790b7bb
|
output/wasapi: move COM utilities to separate headers
|
2021-03-05 18:33:31 +01:00 |
|
Max Kellermann
|
e6a81bb95c
|
output/wasapi: split the header
Reduce header dependencies.
|
2021-03-05 16:43:44 +01:00 |
|
Max Kellermann
|
9521c1ad58
|
output/wasapi: use forward declarations in the header
|
2021-03-05 16:42:38 +01:00 |
|
Max Kellermann
|
6d65cc48d7
|
output/wasapi: use [[gnu::pure]]
|
2021-03-05 16:42:15 +01:00 |
|
Max Kellermann
|
681956a963
|
output/wasapi: include cleanup
|
2021-03-05 16:42:14 +01:00 |
|
Max Kellermann
|
052f64d648
|
output/wasapi: include config.h for ENABLE_DSD
|
2021-03-05 16:35:21 +01:00 |
|
Max Kellermann
|
afe621c25c
|
output/wasapi: move to separate directory
|
2021-03-05 16:28:36 +01:00 |
|
Max Kellermann
|
422cf5f182
|
Merge branch 'v0.22.x'
|
2021-03-05 16:05:56 +01:00 |
|
Max Kellermann
|
637cf8a039
|
win32/WinEvent: add default value to Wait()
|
2021-03-05 16:05:32 +01:00 |
|
Max Kellermann
|
54c1794cee
|
win32: build static library
Fixes linker failure on test/run_output.exe
|
2021-03-05 13:32:58 +01:00 |
|
Rosen Penev
|
44378b7dbe
|
use structured binding declarations
Shorter.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
|
2021-03-04 20:28:02 +01:00 |
|
Max Kellermann
|
ef1acb4e2f
|
Merge branch 'v0.22.x'
|
2021-03-04 18:56:29 +01:00 |
|
Shen-Ta Hsieh
|
da642b2890
|
src/output: add algorithm for finding usable AudioFormat
* Use PcmExport for 24bit packed output
|
2021-03-04 18:53:58 +01:00 |
|
Shen-Ta Hsieh
|
6f77af20d0
|
src/output: Set fallback setting for DSD
|
2021-03-04 18:50:56 +01:00 |
|
Shen-Ta Hsieh
|
010f65a1d6
|
src/output: Add Interrupt interface
|
2021-03-04 18:50:09 +01:00 |
|
Shen-Ta Hsieh
|
c46f97454a
|
src/output: Reopen device on error
|
2021-03-04 18:49:28 +01:00 |
|
Shen-Ta Hsieh
|
844dbd2ec5
|
src/output: Use WinEvent for as a condition_variable without lock
|
2021-03-04 18:46:26 +01:00 |
|
Shen-Ta Hsieh
|
db7caa2dac
|
src/output: Move event and spsc_queue into thread object
|
2021-03-04 18:45:56 +01:00 |
|
Shen-Ta Hsieh
|
2974737746
|
src/win32: Add ComWorker to run all COM function on same thread
|
2021-03-04 18:43:43 +01:00 |
|
Shen-Ta Hsieh
|
0f39dc1edb
|
output/wasapi: use AUDCLNT_BUFFERFLAGS_SILENT for paused output
|
2021-03-04 18:17:57 +01:00 |
|
Max Kellermann
|
dc9103befe
|
util/AllocatedString: remove Null(), IsNull()
|
2021-03-04 18:05:29 +01:00 |
|
Max Kellermann
|
32b7b2e2fa
|
util/AllocatedString: add default constructor
|
2021-03-04 18:04:06 +01:00 |
|
Max Kellermann
|
cfb7f8ab84
|
util/AllocatedString: rename to BasicAllocatedString
To make things simpler, AllocatedString is now a non-template class.
|
2021-03-04 18:03:56 +01:00 |
|
Max Kellermann
|
d4bbb8c851
|
Merge branch 'struc' of git://github.com/neheb/MPD
|
2021-03-04 17:50:53 +01:00 |
|
Max Kellermann
|
428f769c38
|
output/pipewire: new output plugin
Very rough draft. Barely works.
|
2021-03-03 18:44:39 +01:00 |
|
Max Kellermann
|
133c8834df
|
output/httpd: update API documentation
|
2021-03-02 18:24:57 +01:00 |
|
Max Kellermann
|
34f735890e
|
output/snapcast: remove obsolete TODO comment
|
2021-02-24 17:05:14 +01:00 |
|
Max Kellermann
|
f08810b202
|
output/snapcast: add missing #ifdef HAVE_ZEROCONF
|
2021-02-24 17:04:15 +01:00 |
|
Max Kellermann
|
7a68775e6c
|
output/snapcast: Zeroconf support
|
2021-02-24 17:03:30 +01:00 |
|
Max Kellermann
|
2efa142ec9
|
output/init: use the real-time I/O thread only for the ALSA plugin
|
2021-02-24 16:09:11 +01:00 |
|
Max Kellermann
|
abd416735d
|
output/snapcast: implement SendTag()
|
2021-02-22 23:20:56 +01:00 |
|
Max Kellermann
|
8e8fbe14b1
|
output/snapcast: implement Drain()
|
2021-02-22 22:49:32 +01:00 |
|
Max Kellermann
|
a8a39b6a38
|
output/snapcast: queue chunks
|
2021-02-22 22:41:31 +01:00 |
|
Max Kellermann
|
f84cb6de5e
|
output/snapcast/client: remove obsolete TODO comment
See commit dfc67c45c7d48f584a978be24b611494fe3ad930
|
2021-02-22 22:39:32 +01:00 |
|
Max Kellermann
|
dfc67c45c7
|
output/snapcast: calculate the latency for TIME responses
|
2021-02-22 21:57:20 +01:00 |
|
Max Kellermann
|
e875da5d38
|
output/snapcast/protocol: swap "received" and "sent"
Snapcast's protocol documentation is wrong, see
https://github.com/badaix/snapcast/pull/811
|
2021-02-22 21:42:42 +01:00 |
|
Max Kellermann
|
ce6afe9379
|
output/httpd/Page: convert to type alias on AllocatedArray
|
2021-02-17 18:01:27 +01:00 |
|
Max Kellermann
|
6f04b2230a
|
output/httpd/Page: use std::byte
|
2021-02-17 17:54:38 +01:00 |
|
Max Kellermann
|
8d90b831e1
|
output/snapcast/Timestamp: drop static
|
2021-02-17 14:39:20 +01:00 |
|
Max Kellermann
|
9c8da03c5c
|
output/snapcast: new output plugin
New experimental code, first draft - it works, but there's a lot left
to do. Just look at all the TODO comments.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/975
|
2021-02-17 14:25:23 +01:00 |
|
Max Kellermann
|
ecc07e4e98
|
release v0.22.5
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAmAq1woQHG1heEBtdXNp
Y3BkLm9yZwAKCRAjbopYxttFElB1EACItrIKgEywkzW3l+gmgSjtwwQOiLfg+0Zg
Z3YgpegDvhmjBVXAHFDlhnXf//zCr286ZmCCVItrz2eGHYX2lvul0SdYxp/+Kebk
WrCez6LMecaoGjbgiwQ70u/stNkX85ZT62CznNyYvwMx4bRhXXgOuBdKYTAZTvT8
ABvfL+Ari7TBi88qCAaufmxyv7VFOaZg8+GpV1unIlHE6vu3febzDffPdjfODmOe
BpLILJJIzUd9p1tGmSCvNCUUHdElktbK1aSVS/0x2xdKG3eDKmPIhSdxdqOdunr7
9us4Mg7ZB5REaRC0ZfxR6P+vId0uIT3kpyDqs5i8Zao1WwmCdZhvaMMxJ3KF0MVs
q4Lb99LMF2xAvsoA4x+wY0E0SlFrBhySrFY/i4gaBd9ctzQsbxID3cOZhSbEmQnk
VNlPK/cYtWVHouLzSOUZeg3/nyMMWXTXy87esB/JdKWqushYLFqy/WIIJvKh4dRL
YTEJtGeAe7wn9BPoD5Sf1xaj9ULw5CG/Z72inMk1rdzQBn+sWypb8HwJiGtHH43Q
3YwTSAg/Z3MuxcMM1F9ce/IeE+sqCtOZKgTTpdp56hPlHMV9Fa0v7mnMHz508jB/
4ZwAm3eEbCy14IKtW1jfKwA/IgPnF6bR6D1nn7F9SKnBG+hdHsyAVyHaTsXbfO4u
0RZ5Y9vxdQ==
=I2BI
-----END PGP SIGNATURE-----
Merge tag 'v0.22.5'
release v0.22.5
|
2021-02-15 22:50:16 +01:00 |
|
Shen-Ta Hsieh
|
481c330c17
|
src/output: Set thread name for Wasapi output thread
|
2021-02-15 17:51:49 +01:00 |
|
Max Kellermann
|
efde78db77
|
output/Thread: skip drain calls if there is no data to be played
Keep track of whether there is data being played, and don't call
AudioOutput::Drain() after Cancel() has been called already.
|
2021-02-15 16:39:13 +01:00 |
|
Max Kellermann
|
f1b8bcd6b2
|
output/pulse: don't drain if stream is suspended or corked
In this state, we can't make any progress.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1084
|
2021-02-15 16:07:16 +01:00 |
|
Max Kellermann
|
c2bc3704e1
|
output/pulse: move code to virtual method Drain()
Drain only if it was requested explicitly.
|
2021-02-15 15:59:54 +01:00 |
|