Commit Graph

9486 Commits

Author SHA1 Message Date
Max Kellermann 4da3291157 decoder/ffmpeg: check InputStream::KnownSize() 2014-08-19 20:44:29 +02:00
Max Kellermann 52edabf2cb decoder/faad: remove unnecessary cast to size_t 2014-08-19 20:44:29 +02:00
Max Kellermann 43a1a0f3ab decoder/faad: remove size!=0 check
Since we already checked InputStream::KnownSize(), we can assume that
GetSize() returns a valid value, and this check is obsolete.
2014-08-19 20:44:29 +02:00
Max Kellermann e88524f274 decoder/faad: check InputStream::KnownSize()
Replace the bogus GetSize() check and call GetSize() only when
necessary.
2014-08-19 20:44:29 +02:00
Max Kellermann 7a929fcd27 decoder/faad: call GetSize() only when needed 2014-08-19 20:44:29 +02:00
Max Kellermann 7087fdf6c0 decoder/DsdLib: make variables more local 2014-08-19 20:44:29 +02:00
Max Kellermann 67093a5143 decoder/DsdLib: use fixed-length ID3 buffer
Variable-length arrays are not allowed in C++.
2014-08-19 20:42:40 +02:00
Max Kellermann 3f34016888 decoder/DsdLib: check InputStream::KnownSize() 2014-08-19 20:24:33 +02:00
Max Kellermann 1307633a84 decoder/dsf: check InputStream::KnownSize() 2014-08-19 20:24:09 +02:00
Max Kellermann 1a53f07d80 decoder/dsf: remove unnecessary ID3 offset check
If the offset is out of range, the seek will simply fail.  Not a
problem.
2014-08-19 20:23:36 +02:00
Max Kellermann 672f678ed6 InputStream: use KnownSize() in assertion 2014-08-19 11:59:19 +02:00
Max Kellermann b924568f79 decoder/audiofile: check InputStream::KnownSize()
The plugin assumes that the size is known, but does not verify it at
runtime.
2014-08-19 11:58:15 +02:00
Max Kellermann e6e9c21275 input/ffmpeg: use av_strerror()
Generate more detailed error messages.
2014-08-18 20:35:34 +02:00
Max Kellermann 636f5d4a1d {input,decoder}/ffmpeg: move ffmpeg_domain to lib/ffmpeg/Domain.cxx
Eliminate duplicate definition (in input plugin and decoder plugin).
2014-08-18 10:12:37 +02:00
Max Kellermann 41a4b280ee input/ffmpeg: update offset after seeking 2014-08-18 09:52:53 +02:00
Max Kellermann 27139bf41f input/ffmpeg: refactor error code path 2014-08-18 09:52:25 +02:00
Max Kellermann 12ba1957d0 input/ffmpeg: use "auto" 2014-08-18 09:47:28 +02:00
Jurgen Kramer 9b9d189a33 decoder/dsf: Allow up to DSD512. Enable DSD rates based on Fs=48kHz 2014-08-16 18:40:53 +02:00
Jurgen Kramer 7c3af4f56f Report bitrate for DSF and DSDIFF DSD decoders 2014-08-16 18:38:44 +02:00
Max Kellermann 880ce080b7 decoder/dsf: fix indent 2014-08-16 18:38:15 +02:00
Max Kellermann 6e84a03a35 PlayerThread: rename player_create() to StartPlayerThread() 2014-08-16 10:33:19 +02:00
Max Kellermann a9f6556454 Merge branch 'v0.18.x' 2014-08-16 08:25:10 +02:00
Max Kellermann 2722211ba3 pcm/SoxrResampler: add missing string.h include 2014-08-16 08:25:06 +02:00
François Revol e2e5cddcaa icu: include strings.h for strcasecmp
Again, POSIX says strcasecmp is not in string.h.
2014-08-16 07:53:08 +02:00
François Revol 40280fa6cf util: Fix header for strcasecmp
According to POSIX and both OSX and Linux manpages,
strcasecmp comes from strings.h, not string.h.

Most OSes also have them available in string.h,
but we just fixed the headers on Haiku and it now
only provides them in strings.h.

We might want to fall back to string.h for other
OSes though...

cf.
http://pubs.opengroup.org/onlinepubs/009695399/functions/strcasecmp.html
http://linux.die.net/man/3/strcasecmp
https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/strcasecmp.3.html
2014-08-16 06:51:13 +02:00
Max Kellermann 8b7718fbdc encoder/shine: require libshine 3.1, adapt to new API
The "written" argument to shine_encode_buffer() and shine_flush() was
changed from "long" to "int", which breaks API and ABI compatibility.
This is a big deal, and it doesn't seem worthwile to keep support for
the (broken) 3.0 release.
2014-08-13 18:49:44 +02:00
Max Kellermann fe9299ceff decoder/ffmpeg: use avcodec_descriptor_get() to determine codec name
In version 11, both ffmpeg and libav deprecate
AVCodecContext::codec_name.  The function avcodec_descriptor_get() has
been introduced long ago.
2014-08-13 18:40:39 +02:00
Max Kellermann b44957ad91 PcmExport: add missing <iterator> include
For the range-based loop on a ConstBuffer object.
2014-08-13 13:00:37 +02:00
Max Kellermann a049f972ec test/test_rewind: add missing stdlib.h include
For EXIT_SUCCESS.
2014-08-13 12:55:29 +02:00
Max Kellermann 069895d26b PcmDsdUsb: use class ConstBuffer 2014-08-12 22:21:24 +02:00
Max Kellermann 0e756e4377 PcmExport: use class ConstBuffer 2014-08-12 22:19:53 +02:00
Max Kellermann ee7282ce0d test/test_pcm: add PcmExport unit test 2014-08-12 22:05:38 +02:00
Max Kellermann d026367334 Merge branch 'v0.18.x' 2014-08-12 16:54:32 +02:00
Max Kellermann 7244dc4511 Filter: FilterPCM() returns ConstBuffer
API simplification.  We can now avoid abusing a "size_t*" as
additional return value.
2014-08-12 16:40:51 +02:00
Max Kellermann 56f61a6d59 PcmConvert: Convert() returns ConstBuffer 2014-08-12 16:36:07 +02:00
Max Kellermann 4d5f610029 Filter: update API documentation 2014-08-12 16:05:37 +02:00
Max Kellermann c94b4466d5 MusicChunk: rename struct to MusicChunk 2014-08-12 15:56:41 +02:00
Max Kellermann 61f9e79ec9 MusicChunk: update API documentation 2014-08-12 15:56:11 +02:00
Max Kellermann cf797657ed AllCommands: close connection after syntax error
Stop HTTP clients from exploiting MPD via forged POST requests.
2014-08-12 15:33:45 +02:00
Max Kellermann c597538b40 util/HugeAllocator: implement on Windows 2014-08-11 23:06:45 +02:00
Max Kellermann 43f964e28d db/simple: check for I/O errors in Load() 2014-08-11 22:54:46 +02:00
Max Kellermann 8283f23651 fs/io/TextFile: add method Check() 2014-08-11 22:53:48 +02:00
Max Kellermann 7cc25f91ff fs/io/Reader: add "nonnull" attribute 2014-08-11 22:49:08 +02:00
Max Kellermann 5d2506e697 SongFilter: new filter "modified-since" 2014-08-11 22:38:58 +02:00
Max Kellermann 14908b7f28 doc/protocol: reformat the "find" types 2014-08-11 22:38:58 +02:00
Max Kellermann 2e122e1509 db/simple: compress the database file using gzip 2014-08-11 21:48:25 +02:00
Max Kellermann 486b5b6bfc fs/io/TextFile: use AutoGunzipReader
Several MPD subsystems can now read gzipped files; for example, the
database file can be gzipped.
2014-08-11 21:48:25 +02:00
Max Kellermann 88a2f128ec fs/io/AutoGunzipReader: new class 2014-08-11 21:48:25 +02:00
Max Kellermann 45c139cfb3 fs/io/PeekReader: new utility class 2014-08-11 21:48:25 +02:00
Max Kellermann 3a111e5d74 fs/io/GzipOutputStream,GunzipReader: move zlib_domain to src/lib/zlib/Domain.cxx 2014-08-11 21:48:25 +02:00