Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | lib/icu: add IcuInit(), IcuFinish() | Max Kellermann | 2014-06-10 | 5 | -11/+86 | |
| | | ||||||
* | | valgrind.suppressions: more library suppressions | Max Kellermann | 2014-06-10 | 1 | -0/+75 | |
| | | ||||||
* | | thread/Util: relicense to BSD-2 | Max Kellermann | 2014-05-31 | 1 | -15/+25 | |
| | | ||||||
* | | input/async: add offset/size comparison to IsEOF() | Max Kellermann | 2014-05-24 | 1 | -1/+2 | |
| | | ||||||
* | | input/curl: move code to AsyncInputStream | Max Kellermann | 2014-05-24 | 4 | -211/+410 | |
| | | | | | | | | | | New base class for other InputStream implementations that run in the I/O thread. | |||||
* | | input/curl: call SetReady() only if not yet ready | Max Kellermann | 2014-05-24 | 1 | -1/+2 | |
| | | | | | | Fixes assertion failure. | |||||
* | | input/curl: include cleanup | Max Kellermann | 2014-05-24 | 1 | -7/+0 | |
| | | ||||||
* | | InputStream: make Seek() always absolute | Max Kellermann | 2014-05-22 | 28 | -127/+184 | |
| | | | | | | | | | | Remove the "whence" parameter that is not actually necessary, and only complicates the InputStream implementations. | |||||
* | | decoder/vorbis: make VorbisInputStream::input_stream a reference | Max Kellermann | 2014-05-22 | 1 | -6/+6 | |
| | | ||||||
* | | decoder/vorbis: add VorbisInputStream constructor | Max Kellermann | 2014-05-22 | 1 | -14/+13 | |
| | | ||||||
* | | decoder/vorbis: rename struct vorbis_input_stream to VorbisInputStream | Max Kellermann | 2014-05-22 | 1 | -7/+7 | |
| | | ||||||
* | | decoder/vorbis: add "restrict" to pointers in vorbis_interleave() | Max Kellermann | 2014-05-22 | 1 | -2/+2 | |
| | | | | | | | | Allows more compiler optimizations. | |||||
* | | decoder/vorbis: log libvorbis version on startup | Max Kellermann | 2014-05-22 | 1 | -1/+11 | |
| | | ||||||
* | | decoder/wavpack: move code to WavpackInput::ReadBytes() | Max Kellermann | 2014-05-22 | 1 | -6/+12 | |
| | | ||||||
* | | decoder/wavpack: convert WavpackInput attributes to references | Max Kellermann | 2014-05-22 | 1 | -12/+12 | |
| | | ||||||
* | | decoder/wavpack: move wavpack_input_init into struct WavpackInput | Max Kellermann | 2014-05-22 | 1 | -16/+7 | |
| | | ||||||
* | | decoder/wavpack: wavpack_open_wvc() returns WavpackInput* | Max Kellermann | 2014-05-22 | 1 | -14/+12 | |
| | | ||||||
* | | DecoderAPI: add function decoder_open_uri() | Max Kellermann | 2014-05-22 | 6 | -23/+56 | |
| | | | | | | Move and refactor code from the Wavpack decoder plugin. | |||||
* | | test/run_decoder: merge code into FakeDecoderAPI.cxx | Max Kellermann | 2014-05-22 | 4 | -141/+53 | |
| | | | | | | | | Eliminate duplicate code. | |||||
* | | test/run_decoder: auto-initialize struct Decoder | Max Kellermann | 2014-05-22 | 1 | -2/+3 | |
| | | ||||||
* | | Makefile.am: link test_rewind with GLib | Max Kellermann | 2014-05-22 | 1 | -0/+1 | |
| | | ||||||
* | | test/run_decoder: move the "uri" attribute out of struct Decoder | Max Kellermann | 2014-05-22 | 1 | -8/+4 | |
| | | ||||||
* | | test/run_decoder: move the DecoderPlugin pointer out of struct Decoder | Max Kellermann | 2014-05-22 | 1 | -8/+6 | |
| | | ||||||
* | | decoder/wavpack: rename struct wavpack_input to WavpackInput | Max Kellermann | 2014-05-22 | 1 | -8/+8 | |
| | | ||||||
* | | input/curl: relock mutex in error paths | Max Kellermann | 2014-05-21 | 1 | -2/+7 | |
| | | ||||||
* | | input/curl: pass remaining size to CircularBuffer::Append() | Max Kellermann | 2014-05-21 | 1 | -1/+1 | |
| | | ||||||
* | | input/curl: move code to IcyInputStream | Max Kellermann | 2014-05-21 | 6 | -86/+219 | |
| | | ||||||
* | | input/rewind: move code to class ProxyInputStream | Max Kellermann | 2014-05-21 | 4 | -59/+176 | |
| | | ||||||
* | | test/test_rewind: unit test for class RewindInputStream | Max Kellermann | 2014-05-21 | 2 | -0/+177 | |
| | | ||||||
* | | input/InputStream: move Open() to Open.cxx | Max Kellermann | 2014-05-21 | 3 | -51/+74 | |
| | | | | | | | | Allow compiling test programs with only selected plugins. | |||||
* | | input/rewind: include cleanup | Max Kellermann | 2014-05-21 | 1 | -4/+2 | |
| | | ||||||
* | | input/rewind: work around assertion failure | Max Kellermann | 2014-05-21 | 1 | -1/+1 | |
| | | | | | | | | Caused by commit 0b4fa41a | |||||
* | | ThreadInputStream: include cleanup | Max Kellermann | 2014-05-12 | 1 | -1/+0 | |
| | | ||||||
* | | InputStream: "protect" attributes | Max Kellermann | 2014-05-12 | 14 | -37/+53 | |
| | | ||||||
* | | input/cdio: convert to class | Max Kellermann | 2014-05-12 | 1 | -1/+2 | |
| | | ||||||
* | | input/cdio: move initialization code to constructor | Max Kellermann | 2014-05-12 | 1 | -51/+50 | |
| | | | | | | | | | | | | Make attributes const, don't allow partial initialization. Instantiate the CdioParanoiaInputStream object at the end of input_cdio_open(). | |||||
* | | input/cdio: handle cdio_open() failure | Max Kellermann | 2014-05-12 | 1 | -0/+5 | |
| | | ||||||
* | | input/cdio: initialize lsn_relofs in constructor | Max Kellermann | 2014-05-12 | 1 | -2/+1 | |
| | | ||||||
* | | input/cdio: initialize attribute "buffer_lsn" | Max Kellermann | 2014-05-12 | 1 | -1/+2 | |
| | | ||||||
* | | input/cdio: remove unused attribute "trackno" | Max Kellermann | 2014-05-12 | 1 | -11/+6 | |
| | | ||||||
* | | Merge tag 'v0.18.11' | Max Kellermann | 2014-05-12 | 2 | -1/+6 | |
|\| | ||||||
| * | release v0.18.11 | Max Kellermann | 2014-05-12 | 1 | -1/+1 | |
| | | ||||||
| * | decoder/OggUtil: allow skipping up to 32 kB after seek | Max Kellermann | 2014-04-29 | 2 | -1/+3 | |
| | | | | | | | | | | | | | | Fixes missing song length on high-latency Opus files. According to tests with 320 kbit/s opus files with 60ms packets, we need to skip up to 29 kB. | |||||
| * | DeferredMonitor: fix race condition when using GLib event loop | Max Kellermann | 2014-04-26 | 3 | -11/+23 | |
| | | | | | | | | | | | | | | | | | | Turns out the lock-free code using atomics was not thread-safe. The given callback could be invoked by GLib before the source_id attribute was assigned. This commit changes the DeferredMonitor class to use a Mutex to block the event loop until source_id is assigned. This bug does not exist in the 0.19 branch because it does not use the GLib main loop anymore. | |||||
| * | configure.ac: prepare for 0.18.11 | Max Kellermann | 2014-04-26 | 2 | -1/+3 | |
| | | ||||||
* | | icu/Collate: use u_strFoldCase() instead of ucol_getSortKey() | Max Kellermann | 2014-05-12 | 1 | -10/+41 | |
| | | | | | | | | Turns out ucol_getSortKey() does not what I thought it does. | |||||
* | | icu/Collate: UCharFromUTF8() returns WritableBuffer<UChar> | Max Kellermann | 2014-05-12 | 1 | -19/+20 | |
| | | ||||||
* | | icu/Collate: initialize error_code | Max Kellermann | 2014-05-12 | 1 | -1/+1 | |
| | | | | | | | | Fixes the broken "search" command. | |||||
* | | mixer/software: keep attribute "volume" in the 0..100 range | Max Kellermann | 2014-05-12 | 1 | -7/+19 | |
| | | | | | | | | | | The attribute must be 0..100 and not 0..1024. Previously, the code was inconsistent. | |||||
* | | InputStream: remove attribute "plugin" | Max Kellermann | 2014-05-11 | 16 | -63/+21 | |
| | |