Commit Graph

  • 032f47c0b0 lib/xiph/FlacMetadataIterator: disallow copying Max Kellermann 2018-07-07 14:08:05 +02:00
  • 1f4e4dd9b3 lib/xiph/FlacMetadataIterator: reuse default constructor Max Kellermann 2018-07-07 14:08:18 +02:00
  • d43218ed16 lib/xiph/FlacMetadataIterator: proper CamelCase Max Kellermann 2018-07-07 14:06:23 +02:00
  • 3d43e4e954 decoder/flac: move class FLACMetadataIterator to separate source Max Kellermann 2018-07-07 14:03:00 +02:00
  • b0d587ded7 decoder/flac: pass FLAC__Metadata_Chain* to FLACMetadataIterator ctor Max Kellermann 2018-07-07 14:04:06 +02:00
  • 1245b4a49f decoder/wavpack: merge duplicate code into Scan() Max Kellermann 2018-07-07 13:54:02 +02:00
  • d4ce6049c9 decoder/wavpack: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:52:58 +02:00
  • c236a85c13 decoder/wavpack: add CheckAudioFormat(WavpackContext) Max Kellermann 2018-07-07 13:48:49 +02:00
  • 9cf43eef67 decoder/wildmidi: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:43:29 +02:00
  • ed6d0aa548 decoder/wildmidi: convert WILDMIDI_SAMPLE_RATE to AudioFormat Max Kellermann 2018-07-07 13:36:18 +02:00
  • 3d27fffc50 decoder/opus: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:34:32 +02:00
  • de0ee26432 decoder/sndfile: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:29:39 +02:00
  • 45cccbce59 decoder/sndfile: use AtScopeExit() Max Kellermann 2018-07-07 13:27:26 +02:00
  • 479de9c7cb decoder/sndfile: add CheckAudioFormat(SF_INFO) Max Kellermann 2018-07-07 13:26:39 +02:00
  • 60821232b9 decoder/audiofile: allocate AFvirtualfile with malloc() Max Kellermann 2018-07-07 13:25:01 +02:00
  • 9b4156a282 decoder/audiofile: add "noexcept" Max Kellermann 2018-07-07 13:21:27 +02:00
  • 89b1e27d2e decoder/audiofile: merge duplicate code into CheckAudioFormat(AFfilehandle) Max Kellermann 2018-07-07 13:21:09 +02:00
  • 1dcaf8f76a decoder/audiofile: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:18:06 +02:00
  • 18508d1919 decoder/audiofile: merge audiofile_get_duration() into audiofile_scan_stream() Max Kellermann 2018-07-07 13:16:38 +02:00
  • 9f77d568e2 decoder/mad: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:10:39 +02:00
  • 0d0569b9af decoder/mad: merge mad_decoder_total_file_time() into mad_decoder_scan_stream() Max Kellermann 2018-07-07 13:09:23 +02:00
  • 0f18e7baf9 decoder/mpg123: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:08:06 +02:00
  • d8b03d4927 decoder/ffmpeg: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-07 13:02:08 +02:00
  • 72b6c09a73 db/simple: add an AudioFormat to each Song Max Kellermann 2018-07-06 13:22:17 +02:00
  • c05bca6f2c tag/Handler: implement FullTagHandler::OnAudioFormat() Max Kellermann 2018-07-06 22:46:03 +02:00
  • 73c95d1fb2 TagFile: rename exported functions, use CamelCase Max Kellermann 2018-07-06 22:33:35 +02:00
  • 2c30e16371 db/simple/Song: remove obsolete comment Max Kellermann 2018-07-06 21:50:53 +02:00
  • 72437ca9e2 db/simple/Song: use C++11 initializers Max Kellermann 2018-07-06 17:03:31 +02:00
  • 9be14bbe82 doc/protocol.xml: document the lsinfo response Max Kellermann 2018-07-06 21:20:11 +02:00
  • d47f37f23a doc/protocol.xml: add command hyperlinks Max Kellermann 2018-07-06 21:25:00 +02:00
  • a22aed7acf doc/protocol.xml: update reference to Ack.hxx Max Kellermann 2018-07-06 21:36:18 +02:00
  • 38b58715ae .travis.yml: add build with GCC 8 Max Kellermann 2018-07-06 21:31:02 +02:00
  • d88e00c0a4 .travis.yml: switch to GCC 6 Max Kellermann 2018-07-06 21:30:14 +02:00
  • a72d1200fb require GCC 6 Max Kellermann 2018-07-06 19:44:32 +02:00
  • 9a29d02e7e Merge branch 'v0.20.x' Max Kellermann 2018-07-06 19:41:53 +02:00
  • 6f3c0d0a60 AudioFormat: include cleanup Max Kellermann 2018-07-06 17:10:11 +02:00
  • 466625f7ad input/curl: use new class HttpStatusError Max Kellermann 2018-07-06 19:26:11 +02:00
  • b8259e604a db/update/{Walk,ExcludeList}: use InputStream to read .mpdignore Max Kellermann 2018-07-06 17:53:57 +02:00
  • 86e2075c63 lib/nfs/Connection: use new class NfsClientError Max Kellermann 2018-07-06 19:01:30 +02:00
  • 30900b2fe2 input/Error: new library providing IsFileNotFound() Max Kellermann 2018-07-06 19:12:46 +02:00
  • fd7ae7ea4c input/Domain: remove obsolete variable Max Kellermann 2018-01-20 19:19:07 +01:00
  • 60d5bf0240 util/StringFormat: new utility library Max Kellermann 2018-01-24 12:52:43 +01:00
  • 41cdc4e14b input/Offset: add macro PRIoffset Max Kellermann 2018-01-24 13:25:11 +01:00
  • 87dfca0477 input/curl: remove obsolete Windows sprintf() fallback Max Kellermann 2018-01-24 13:26:18 +01:00
  • e1ee8e7812 util/FormatString: remove obsolete Windows fallback Max Kellermann 2018-01-24 13:22:43 +01:00
  • 63406efcd8 db/update/ExcludeList: allow comments only at start of line Max Kellermann 2018-07-06 18:27:17 +02:00
  • d5c132fca0 db/update/ExcludeList: move code to ParseLine() Max Kellermann 2018-07-06 18:25:27 +02:00
  • 5f082a2739 output/httpd: remove broken DLNA support code Max Kellermann 2018-07-06 17:28:01 +02:00
  • 45139f94bb db/LightSong: pass URI to constructor Max Kellermann 2018-07-06 16:56:12 +02:00
  • 80cb680fca db/LightSong: implicit initialization Max Kellermann 2018-07-06 16:50:37 +02:00
  • b9ff6383a4 db/LightSong: make Tag a reference Max Kellermann 2018-07-06 16:43:11 +02:00
  • ebc006ab52 db/simple: wrap LightSong in Manual<> Max Kellermann 2018-07-06 16:46:01 +02:00
  • 86a02871fc decoder/vorbis: call TagHandler::OnAudioFormat() Max Kellermann 2018-07-06 12:41:38 +02:00
  • e152e843d8 tag/Handler: add method OnAudioFormat() Max Kellermann 2018-07-05 19:06:28 +02:00
  • 9ff1ff75cb tag/Handler: add FullTagHandler constructor with want_mask Max Kellermann 2018-07-06 12:44:22 +02:00
  • abea4a24ba tag/Handler: move WANT_DURATION|WANT_TAG to protected AddTagHandler() Max Kellermann 2018-07-06 12:43:45 +02:00
  • 3d3a1232b1 tag/Handler: convert to class with virtual methods Max Kellermann 2018-07-05 19:07:05 +02:00
  • 09d4176210 output/multiple: use WaitAll() in EnableDisable() Max Kellermann 2018-06-23 19:23:56 +02:00
  • 30d41e45e2 output/multiple: remove unnecessary IsBusy() check from WaitAll() Max Kellermann 2018-06-23 19:23:18 +02:00
  • bd9a5021da notify: remove unused library Max Kellermann 2018-06-23 19:15:26 +02:00
  • 1624a5eb8d output/Control: add another Cond attribute, replacing audio_output_client_notify Max Kellermann 2018-06-23 19:11:48 +02:00
  • 1bca29f9e2 output/Control: rename "cond" to "wake_cond" Max Kellermann 2018-06-23 19:10:23 +02:00
  • efb8a9bd2c player, decoder, output: wrap MusicPipe in std::shared_ptr/std::unique_ptr Max Kellermann 2018-06-23 18:45:57 +02:00
  • 82954d1d6f player/Thread: eliminate ClearAndReplacePipe() Max Kellermann 2018-06-23 18:44:48 +02:00
  • 5a02324c09 MusicBuffer: make constructor explicit Max Kellermann 2018-06-23 18:40:36 +02:00
  • eb93bebbc1 MusicBuffer: fix potential deadlock while cross-fading in Return() Max Kellermann 2018-06-23 18:39:50 +02:00
  • 2be905b2e2 MusicPipe: eliminate the unused MusicBuffer reference Max Kellermann 2018-06-23 18:04:09 +02:00
  • 076be809c2 Music{Pipe,Chunk}: use MusicChunkPtr for the list links Max Kellermann 2018-06-23 17:58:42 +02:00
  • 88f1233d7b MusicPipe, output/multiple: include cleanup Max Kellermann 2018-06-23 17:44:32 +02:00
  • 54d295c247 MusicChunkPtr: managed MusicChunk pointer Max Kellermann 2017-12-30 18:00:40 +01:00
  • e81b089612 MusicPipe: automatically clear in destructor Max Kellermann 2018-06-22 23:09:13 +02:00
  • 9f14e7a98d MusicPipe: add MusicBuffer reference Max Kellermann 2017-12-30 17:24:58 +01:00
  • cb412b221c output/multiple: update API documentation Max Kellermann 2018-06-22 22:59:30 +02:00
  • 7d6a762845 python/build/libs.py: upgrade FFmpeg to 4.0.1 Max Kellermann 2018-06-22 22:35:27 +02:00
  • 1ca1269a59 input/curl: use class MaybeBufferedInputStream Max Kellermann 2018-06-14 17:31:08 +02:00
  • 6681b14b71 input/MaybeBuffered: proxy InputStream implementation which auto-uses BufferedInputStream Max Kellermann 2018-06-21 22:19:46 +02:00
  • 12f2418445 input/buffered: proxy InputStream implementation which caches in a huge buffer Max Kellermann 2018-06-21 22:18:24 +02:00
  • ae8a2ab652 util/SparseBuffer: new utility class Max Kellermann 2018-06-21 22:17:23 +02:00
  • d0fbf6db59 input/Stream: remove attribute "cond", replace with handler interface Max Kellermann 2018-06-22 19:37:18 +02:00
  • 01d8eb6290 input/rewind: move sources out of the "plugins" directory Max Kellermann 2018-06-22 19:31:06 +02:00
  • 197968d65e input/Stream: mark qobuz:// and tidal:// as "seeking is expensive" Max Kellermann 2018-06-21 22:35:30 +02:00
  • 2cb83a1f84 input/Stream: make "uri" const Max Kellermann 2018-06-14 17:31:54 +02:00
  • d7c94e30c5 input/Stream: remove obsolete comment Max Kellermann 2018-06-14 17:31:33 +02:00
  • 510d2514a0 doc/user.xml: mention the cache_directory requirement for mounts Max Kellermann 2018-06-05 22:10:28 +02:00
  • 5217a74b7f storage/udisks: return file path in MapUTF8() Max Kellermann 2018-06-05 22:01:28 +02:00
  • cccf35d140 storage/udisks: add missing MountWait() call to MapFS() Max Kellermann 2018-06-05 21:56:28 +02:00
  • 249316c8fc storage/udisks: implement MapFS() Max Kellermann 2018-06-05 21:54:50 +02:00
  • cd24449495 doc/user.xml: document the two udisks plugins Max Kellermann 2018-06-05 20:58:33 +02:00
  • 687834328c doc/user.xml: add section explaining storage/neighbor plugins and mounts Max Kellermann 2018-06-05 21:00:59 +02:00
  • 4d015aff30 doc/user.xml: rewrite the "Introduction" section with text from the website Max Kellermann 2018-06-05 21:35:19 +02:00
  • ba8040d068 storage/udisks: new plugin Max Kellermann 2018-06-03 11:03:49 +02:00
  • 5fa94d2a85 lib/dbus/AsyncRequest: add missing include Max Kellermann 2018-06-04 22:00:49 +02:00
  • 7eee79c145 neighbor/udisks: move code to class UDisks2::ParseObjects(ODBus::Message) Max Kellermann 2018-06-04 21:48:39 +02:00
  • 9626523420 neighbor/udisks: move code to class UDisks2::ParseObjects(ReadMessageIter) Max Kellermann 2018-06-04 21:41:51 +02:00
  • 0150131984 test/run_neighbor_explorer: make GlobalInit const Max Kellermann 2018-06-04 17:44:31 +02:00
  • 2ddd45e5e1 test/run_neighbor_explorer: use ShutdownHandler to catch SIGINT/SIGTERM Max Kellermann 2018-06-04 17:42:47 +02:00
  • 03c89c9cec neighbor/udisks: move ParseObject() to UDisks2.cxx Max Kellermann 2018-06-04 17:21:04 +02:00
  • 640de5518b neighbor/udisks: move struct UdisksObject to UDisks2.hxx Max Kellermann 2018-06-04 17:08:04 +02:00
  • a92c694f1b neighbor/Iter: add missing include Max Kellermann 2018-06-04 17:23:42 +02:00
  • a159299a4b lib/dbus/AsyncRequest: new helper class Max Kellermann 2018-06-04 11:22:55 +02:00