Max Kellermann
ca1a11493d
decoder/audiofile: log seek errors
2014-07-11 21:18:44 +02:00
Max Kellermann
69bb086ba5
decoder/audiofile: fix typo in comment
2014-07-11 21:18:44 +02:00
Joff
09384df32c
decoder/dsd: use decoder_read_full() where appropriate
...
Addresses Mantis ticket 0004015.
[mk: use decoder_read_full() only when needed, and a few formal
changes]
2014-07-09 19:18:36 +02:00
Max Kellermann
20538516b9
decoder/audiofile: use decoder_read_full()
...
Works around WAV stream playback bug, because libaudiofile does not
like partial reads (Mantis 0004028).
2014-07-09 19:05:20 +02:00
Max Kellermann
0759421d11
DecoderAPI: add function decoder_read_full()
...
Move code from the "mad" plugin.
2014-07-09 19:03:58 +02:00
Max Kellermann
bf7417981f
DecoderAPI: add function decoder_skip()
...
Move code from the "mad" plugin.
2014-07-09 19:03:31 +02:00
Max Kellermann
bc6472bb9e
decoder/audiofile: use decoder_read()
...
.. instead of InputStream::LockRead(). The former is cancellable.
2014-07-09 18:57:50 +02:00
Gustavo Zacarias
a70443af31
decoder/OpusDecoderPlugin: fix build failure due to missing stdio.h include
...
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
2014-07-09 17:41:31 +02:00
Gustavo Zacarias
3f221e2edb
decoder/AudiofileDecoderPlugin: fix build failure due to missing stdio.h include
...
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
2014-07-09 17:41:31 +02:00
Max Kellermann
70bd35abe2
decoder/OggUtil: allow skipping up to 32 kB after seek
...
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.
2014-04-29 11:56:05 +02:00
Marcello Desantis
95ac6071b9
decoder/sndfile: work around libsndfile bug on partial read
2014-04-09 23:58:56 +02:00
Max Kellermann
ce18c36ed9
decoder/ffmpeg: handle unknown stream start time
2014-03-18 09:16:09 +01:00
Max Kellermann
8e39cf62e7
decoder/ffmpeg: pass AVSEEK_FLAG_ANY to av_seek_frame()
...
This corrects a major mistake from commit 724a59aa
- there was one
small thing that commit was supposed to do, and it failed.
AV_TIME_BASE is not a seek flag.
2014-03-18 09:10:36 +01:00
Max Kellermann
a9e351e00d
decoder/gme: fix memory leak in container_scan()
2014-03-06 13:12:39 +01:00
Max Kellermann
313d1d5d83
decoder/ffmpeg: support libav v10_alpha1
2014-01-15 11:33:18 +01:00
Max Kellermann
b7d6133593
decoder/ffmpeg: include cleanup
2014-01-15 11:31:51 +01:00
Max Kellermann
5b6bb114ad
decoder/ffmpeg: check for av_samples_get_buffer_size() errors
...
Fixes potential nullptr dereference.
2014-01-15 11:25:58 +01:00
Max Kellermann
fdd76b3461
decoder/faad: fix memory leak
2014-01-08 22:11:00 +01:00
Steven O'Brien
6b3b8c6f2e
fix FfmpegDecoderPlugin to use relative timestamps
2013-12-20 22:28:33 +01:00
Max Kellermann
47c50c079d
decoder/ffmpeg: use IgnoreError instead of local Error instance
2013-11-28 00:05:26 +01:00
Max Kellermann
73f45d87d5
decoder/{dsf,dsdiff}: eliminate useless assignments
2013-11-23 18:30:12 +01:00
Denis Krjuchkov
0bcc477d46
decoder/OggFind.cxx: include stdio.h for SEEK_END definition
2013-11-18 16:28:39 +06:00
Jurgen Kramer
47d3758820
decoder/dsdiff: fix byte order bug
2013-11-10 16:49:39 +01:00
Jurgen Kramer
f4b61e8c8d
decoder/dsf: enable DSD128
2013-11-05 17:38:48 +01:00
Max Kellermann
ecf12a60e8
Log: add level "DEFAULT"
...
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to
G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only
logged on log_level "secure".
2013-11-04 22:27:49 +01:00
Max Kellermann
8555b65c50
*: update copyright year to 2013
2013-10-30 23:37:06 +01:00
Max Kellermann
20597b3632
*: use nullptr instead of NULL
2013-10-28 23:58:17 +01:00
Max Kellermann
4728735acf
decoder/dsf: don't play junk at the end of the "data" chunk
2013-10-28 23:47:25 +01:00
Max Kellermann
9dcbd005f0
decoder/dsf: add range check
2013-10-28 23:41:51 +01:00
Max Kellermann
0ad2eb34c7
decoder/dsdlib: add class DsdUint64
...
Merge lots of duplicate code.
2013-10-28 23:29:23 +01:00
Max Kellermann
0e8a15e813
decoder/dsdlib: include cleanup
2013-10-28 23:26:37 +01:00
Max Kellermann
5b0d6a59cf
decoder/dsdlib: move API documentation to header
2013-10-28 23:26:16 +01:00
Max Kellermann
fd3dc7e5fb
decoder/dsdlib: convert struct dsdlib_id to a class
2013-10-28 23:12:48 +01:00
Max Kellermann
85ae7e9c9a
DecoderControl: move code/attributes to new class MixRampInfo
2013-10-26 14:19:34 +02:00
Max Kellermann
d6e28c42e5
ReplayGainInfo: refactor to a class
2013-10-25 19:12:46 +02:00
Max Kellermann
6d475c40de
ReplayGainInfo: use CamelCase for struct name
2013-10-25 19:12:38 +02:00
Max Kellermann
ac8e5be9f4
decoder/opus: support replay gain
...
Parse the R128_TRACK_GAIN comment string.
2013-10-24 23:56:06 +02:00
Max Kellermann
c76952534e
decoder/Opus: implement seeking
2013-10-24 23:26:58 +02:00
Max Kellermann
f0060718de
decoder/opus: provide time stamps
...
Call decoder_timestamp(). This is not necessary currently, but will
be as soon as we implement seeking.
2013-10-24 23:26:54 +02:00
Max Kellermann
982ab9e496
decoder/opus: show song duration during playback
...
This requires seeking to the end-of-stream, checking its granulepos,
and then seeking back to the previous file position. We do this only
for local files.
2013-10-24 23:26:46 +02:00
Max Kellermann
b74bcf2274
decoder/opus: call ogg_stream_reset() in OggSeekPageAtOffset()
2013-10-24 23:23:23 +02:00
Max Kellermann
dc328e0c4a
decoder/opus: move code to OggSeekPageAtOffset()
2013-10-24 20:40:23 +02:00
Max Kellermann
92c85bd20d
decoder/opus: move SeekFindEOS() to OggFind.cxx
2013-10-24 20:33:12 +02:00
Max Kellermann
f629eb8cb2
decoder/opus: make opus_sample_rate constexpr
2013-10-24 20:14:47 +02:00
Max Kellermann
e4f41ff61d
decoder/opus: use std::copy_n() instead of memcpy()
2013-10-24 20:06:50 +02:00
Max Kellermann
dae6ecb680
decoder/opus: support all core tag names
2013-10-24 20:01:14 +02:00
Max Kellermann
a57a7b1a76
decoder/opus: move code to ParseOpusTagName()
2013-10-24 20:01:14 +02:00
Max Kellermann
03073b366b
decoder/opus: use delete[] for the OpusReader::ReadString() result
2013-10-24 20:01:14 +02:00
Max Kellermann
0a5c991ab5
decoder/wavpack: move variable declarations
2013-10-23 23:20:55 +02:00
Max Kellermann
93deb84499
input_stream: rename struct to InputStream
2013-10-23 23:12:02 +02:00