Max Kellermann
ec54754e22
Compiler.h: move to util/
2018-08-20 16:19:17 +02:00
Max Kellermann
f6b3a88723
Merge branch 'master' of git://github.com/skidoo23/MPD
2018-08-14 19:02:37 +02:00
skidoo23
82e8913c05
decoder/sidplay: support basic and kernal rom (libsidplayfp)
2018-08-12 14:25:11 +02:00
Max Kellermann
01d3777574
decoder/Thread, ...: log all exceptions
2018-08-09 11:14:40 +02:00
Max Kellermann
0ea6a2dd99
decoder/mpg123: remove obsolete const_cast hack
2018-08-07 22:52:38 +02:00
Max Kellermann
cacc1ffdad
decoder/mpg123: use AtScopeExit() to call mpg123_delete() during scan
2018-08-07 22:48:11 +02:00
Max Kellermann
cfe34647e1
decoder/mpg123: use AtScopeExit() to call mpg123_delete()
2018-08-07 22:29:51 +02:00
Max Kellermann
ca4c81dd84
decoder/mikmod: require at least version 3.2
2018-08-02 20:45:14 +02:00
Max Kellermann
69f4178bff
decoder/ffmpeg: require at least version 11.12
...
This is the version in Debian Jessie (oldstable).
2018-08-02 20:18:19 +02:00
Max Kellermann
90201e9970
DetachedSong, db/LightSong, SongFilter: move to src/song/
2018-08-02 13:51:18 +02:00
Max Kellermann
96017f58a5
decoder/ffmpeg: skip the av_probe_input_format() call
...
This is kind of a revert of commit
b2e3c0757b
, which is not any longer
necessary since commit 0dd4b52b63
removed the last call to `av_open_input_stream()`.
2018-07-25 00:07:16 +02:00
Max Kellermann
fd80683ade
decoder/mad: make "gapless_mp3_playback" a block option
...
Remove another dependency on the config/Global library.
2018-07-18 10:50:09 +02:00
Max Kellermann
816603fd9a
config/Config*: rename files, drop "Config" prefix
2018-07-16 19:50:07 +02:00
Max Kellermann
d7f770ce73
decoder/flac: move flac_sample_format() to FlacAudioFormat.hxx
2018-07-07 14:40:02 +02:00
Max Kellermann
24b14c5aa5
decoder/flac: rename FlacMetadata.cxx to FlacStreamMetadata.cxx
2018-07-07 14:29:49 +02:00
Max Kellermann
2e116c9e28
lib/xiph/FlacMetadataChain: un-inline Read(InputStream)
2018-07-07 14:22:22 +02:00
Max Kellermann
37897d1550
decoder/flac: move class FlacMetadataChain to separate source
2018-07-07 14:18:00 +02:00
Max Kellermann
b153591790
decoder/flac: move FlacIOHandle.?xx to lib/xiph/
2018-07-07 14:17:03 +02:00
Max Kellermann
ee5653338d
decoder/flac: fix comment typo
2018-07-07 14:11:28 +02:00
Max Kellermann
d43218ed16
lib/xiph/FlacMetadataIterator: proper CamelCase
2018-07-07 14:07:48 +02:00
Max Kellermann
3d43e4e954
decoder/flac: move class FLACMetadataIterator to separate source
2018-07-07 14:04:37 +02:00
Max Kellermann
b0d587ded7
decoder/flac: pass FLAC__Metadata_Chain* to FLACMetadataIterator ctor
2018-07-07 14:04:06 +02:00
Max Kellermann
1245b4a49f
decoder/wavpack: merge duplicate code into Scan()
2018-07-07 13:54:02 +02:00
Max Kellermann
d4ce6049c9
decoder/wavpack: call TagHandler::OnAudioFormat()
2018-07-07 13:52:58 +02:00
Max Kellermann
c236a85c13
decoder/wavpack: add CheckAudioFormat(WavpackContext)
2018-07-07 13:48:49 +02:00
Max Kellermann
9cf43eef67
decoder/wildmidi: call TagHandler::OnAudioFormat()
2018-07-07 13:43:29 +02:00
Max Kellermann
ed6d0aa548
decoder/wildmidi: convert WILDMIDI_SAMPLE_RATE to AudioFormat
2018-07-07 13:36:18 +02:00
Max Kellermann
3d27fffc50
decoder/opus: call TagHandler::OnAudioFormat()
2018-07-07 13:34:32 +02:00
Max Kellermann
de0ee26432
decoder/sndfile: call TagHandler::OnAudioFormat()
2018-07-07 13:29:39 +02:00
Max Kellermann
45cccbce59
decoder/sndfile: use AtScopeExit()
...
Fixes memory leaks.
2018-07-07 13:27:26 +02:00
Max Kellermann
479de9c7cb
decoder/sndfile: add CheckAudioFormat(SF_INFO)
2018-07-07 13:26:39 +02:00
Max Kellermann
60821232b9
decoder/audiofile: allocate AFvirtualfile with malloc()
...
afCloseFile() uses free(), so we need to use malloc().
2018-07-07 13:25:01 +02:00
Max Kellermann
9b4156a282
decoder/audiofile: add "noexcept"
2018-07-07 13:21:27 +02:00
Max Kellermann
89b1e27d2e
decoder/audiofile: merge duplicate code into CheckAudioFormat(AFfilehandle)
2018-07-07 13:21:09 +02:00
Max Kellermann
1dcaf8f76a
decoder/audiofile: call TagHandler::OnAudioFormat()
2018-07-07 13:18:06 +02:00
Max Kellermann
18508d1919
decoder/audiofile: merge audiofile_get_duration() into audiofile_scan_stream()
2018-07-07 13:16:38 +02:00
Max Kellermann
9f77d568e2
decoder/mad: call TagHandler::OnAudioFormat()
2018-07-07 13:10:39 +02:00
Max Kellermann
0d0569b9af
decoder/mad: merge mad_decoder_total_file_time() into mad_decoder_scan_stream()
2018-07-07 13:09:23 +02:00
Max Kellermann
0f18e7baf9
decoder/mpg123: call TagHandler::OnAudioFormat()
2018-07-07 13:08:06 +02:00
Max Kellermann
d8b03d4927
decoder/ffmpeg: call TagHandler::OnAudioFormat()
2018-07-07 13:02:08 +02:00
Max Kellermann
86a02871fc
decoder/vorbis: call TagHandler::OnAudioFormat()
2018-07-06 12:44:58 +02:00
Max Kellermann
3d3a1232b1
tag/Handler: convert to class with virtual methods
2018-07-05 19:07:05 +02:00
Max Kellermann
66a1e8b737
release v0.20.20
...
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAlsD85IQHG1heEBtdXNp
Y3BkLm9yZwAKCRAjbopYxttFEm5xD/oCagsybi2L60r0trtjE7DJ+SnmgbjVmn3z
aieaIA78KFK2QWUettevYkVwtwqEqyw5DwSDmxRRpm9sMKsdDBL+gLCf5hjIFNQY
dZjyBIABgE+aAT+iYeXVmWgJI24s8znEGhZjUG5P/gf+CoLKvN5OQiZoBKOaurjX
YwJUyLV1SXiMLV/4HtOFw4xORuRPflhZ5MnA+cO7BmpV0XQoq82XgBi3XqAB8dv4
cIpDs0MU7DFHNUYHeHEWXVh1PgAcr2madWwQTiscuy8KRAR0GzkCsG5UrSyJs0xH
c0yQ1vVt7X0nyxV35Yemmlfe4DwMwNK9avsTr3Mmr4tNDbxxhiddDYZzy6UJHKis
vaVLhePLjXCOfPRivCY8zVZHwGTO5ArxQqftkGDnM1Gq8PwpTWLimZkvUW35d/xf
SJ+ixpkA1O2DzmkyUam41phhXli+lt0hF1P/7dKsuV/fzmAkJlmRpgxJJhLH8mwq
NNfHk8y8kdGoVy65e/u2asJe8PPB2y9NK2JmbBR9g6Dn+6puP4gkhok3a9cvUZ6q
5GHJF9yRYswVkr/Y6q8UtESeEUczqrQTasVvq0fkxV0f17BKDbOxClb+ItrnPTWV
WMfsyF3TYrHi4piB810q/nBY6pY7R2vQNCPMZwfjGlqn5amR2fm8QWecJVIPpkv3
rEPv+4r8nQ==
=DEYg
-----END PGP SIGNATURE-----
Merge tag 'v0.20.20'
release v0.20.20
2018-05-22 12:47:11 +02:00
Michal Koutenský
d495ec71a8
decoder/opus: add support for R128_ALBUM_GAIN tag
2018-05-07 10:57:03 +02:00
Max Kellermann
b763852f57
decoder/dsd: allow 4 MB ID3 tags
...
Closes #277
2018-05-07 10:53:48 +02:00
Max Kellermann
a8568d7246
Merge branch 'v0.20.x'
2018-05-03 20:15:11 +02:00
Max Kellermann
6522d2f722
decoder/{dsdiff,dsf}: support more MIME types
...
These are used by DSD-streaming servers. For example, MiniDLNA uses
"audio/x-dsd".
2018-05-03 12:02:11 +02:00
Max Kellermann
60efdce5ff
Merge branch 'v0.20.x'
2018-02-17 13:37:03 +01:00
Max Kellermann
026aef7465
decoder/flac: move the SubmitData() call out of the callback
...
This addresses two problems:
1. the libFLAC write callback had to send an error status to its
caller when SubmitData() returned a command; this disrupted libFLAC
and the resulting command could not be used for anything;
2. the libFLAC function FLAC__stream_decoder_seek_absolute() also
calls the write callback, but its result cannot be used, because
seeking is still in progress, so we lose all data from one FLAC frame.
By moving the SubmitData() call until after CommandFinished(), we
avoid losing this data. This fixes another part of #113
2018-02-17 13:33:53 +01:00
Max Kellermann
b53a23b51b
decoder/flac: call FlacSubmitToClient() again after seeking
...
See code comment.
2018-02-17 13:33:51 +01:00