aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-10-05playlist_song: fix potential charset bug in apply_song_metadata()Max Kellermann1-2/+9
The song's URI must be UTF-8, not filesystem character set.
2012-10-05playlist_save: use temp2 instead of tempMax Kellermann1-1/+2
Fixes minor Windows compatibility problem.
2012-10-05decoder/ffmpeg: support planar audioMax Kellermann1-0/+6
Implements Mantis feature request 3582.
2012-10-05decoder/ffmpeg: fix playback of planar PCM dataMax Kellermann1-8/+13
Interleaving was completely wrong. This code was never used, so it didn't have an effect.
2012-10-05decoder/ffmpeg: move code to copy_interleave_frame2()Max Kellermann1-5/+14
2012-10-05decoder/ffmpeg: ignore negative time stampsMax Kellermann1-1/+1
Works around assertion failure in decoder_timestamp().
2012-10-05decoder/ffmpeg: show unsupported sample format nameMax Kellermann1-2/+13
Use av_get_sample_fmt_string() to obtain a human-readable string.
2012-10-05decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format()Max Kellermann1-4/+9
API simplification.
2012-10-05decoder/ffmpeg: remove duplicate sample format error messageMax Kellermann1-1/+6
2012-10-04decoder/flac: support FLAC files inside archivesMax Kellermann4-2/+215
Implement the "scan_stream" method that can read tags from any input_stream object. This requires a FLAC__IOCallbacks implementation based on the input_stream API.
2012-10-04decoder/flac: move flac_scan_file2() to main plugin fileMax Kellermann3-20/+9
2012-10-04input/file: use errno_quark()Max Kellermann1-11/+6
2012-10-04PlaylistFile, client_file, tag_id3: don't use g_file_error_quark()Max Kellermann5-8/+57
g_file_error_quark() is meant to be used with the GFileError enum which does not correspond with errno, but must be converted with g_file_error_from_errno(). At the same time, this removes g_strerror() use for g_file_error_quark().
2012-10-02decoder/flac: move callbacks to class FLACInputMax Kellermann5-110/+242
2012-10-02decoder/flac: add ctor/dtor to struct flac_dataMax Kellermann3-34/+17
2012-10-02decoder/flac: add method FLACMetadataChain::Scan()Max Kellermann3-12/+12
Merge common code.
2012-10-02decoder/flac: don't use FLAC__Metadata_SimpleIteratorMax Kellermann1-32/+8
Use the new FLACMetadataIterator C++ class, which is more powerful.
2012-10-02decoder/flac: add C++ libFLAC wrappersMax Kellermann2-14/+71
Not using libFLAC++ because this library adds a lot of overhead due to virtual method calls. This new class library is zero-overhead.
2012-10-02decoder/flac: eliminate the obsolete "track number" codeMax Kellermann4-41/+18
This has been deprecated by the "embcue" playlist plugin.
2012-10-02OSX: Set mDataByteSize correctly on AudioBuffers during render.Gregory Smith1-3/+7
2012-10-02decoder/flac: remove unused function flac_tag_load()Max Kellermann2-17/+0
2012-10-02decoder/flac: use C++ compilerMax Kellermann9-62/+110
2012-10-02{decoder,encoder}/flac: drop support for libFLAC 1.1Max Kellermann3-194/+10
2012-10-02encoder/opus: implement lookaheadMax Kellermann1-2/+43
The "opusinfo" program complained about preskip value that was too small. This commit uses OPUS_GET_LOOKAHEAD to obtain the number of frames that shall be silence at the beginning.
2012-10-02encoder/opus: initialize the "granulepos" packet attributeMax Kellermann1-1/+5
2012-10-02encoder/{vorbis,opus}: merge code to new class OggStreamMax Kellermann3-89/+154
2012-10-02encoder/vorbis: accept floating point input samplesMax Kellermann1-8/+9
Improves quality by not squeezing 32 bit samples down to 16 bit, and then back to 32 bit floating point. Reduces CPU usage by skipping a conversion step.
2012-10-02pcm_channels: support floating point samplesMax Kellermann3-62/+105
2012-10-02encoder/opus: call ogg_stream_flush() only in the last iterationMax Kellermann1-4/+4
If there are multiple pages, the last partial page must be flushed.
2012-10-02encoder/opus: new encoder plugin for the Opus codecMax Kellermann3-0/+446
2012-10-02output/shout: move code to my_shout_configure()Max Kellermann1-31/+40
Eliminate the evil goto.
2012-10-02encoder/vorbis: use C++ compilerMax Kellermann3-25/+53
2012-10-02output/{recorder,shout}: call encoder_read() in a loopMax Kellermann3-16/+23
This is necessary for Ogg packets that span more than one page.
2012-10-02output/recorder: move code to _write_to_file()Max Kellermann1-19/+31
2012-10-02output/recorder: fix write() error checkMax Kellermann1-3/+3
We can only check for negative values if the variable is signed.
2012-10-02output/recorder: make variables more localMax Kellermann1-16/+12
2012-10-02output/httpd: make variables more localMax Kellermann1-31/+16
2012-10-02encoder/vorbis: make variables more localMax Kellermann1-20/+12
2012-10-02output/recorder, test/*: invoke encoder_read() after _open()Max Kellermann2-0/+11
Make sure the file header gets written at the beginning, before _write() gets called.
2012-10-02output/shout: eliminate struct shout_bufferMax Kellermann1-7/+3
Move the raw buffer to struct shout_data.
2012-10-02output/shout: remove shout_buffer.lenMax Kellermann1-9/+4
Make it a local variable instead.
2012-10-02output/shout: fix memory leak in error handlerMax Kellermann1-2/+7
2012-10-02output/shout: make variables more localMax Kellermann1-49/+26
2012-09-28main: use C++ compilerMax Kellermann19-35/+36
2012-09-28PlaylistFile: use std::list instead of GPtrArrayMax Kellermann6-159/+114
2012-09-28stored_playlist, playlist_save: use C++ compilerMax Kellermann12-32/+49
2012-09-28stored_playlist: make variables more localMax Kellermann1-46/+25
2012-09-25output: new option "tags" may be used to disable sending tagsMax Kellermann3-1/+9
Implements Mantis ticket 0003340.
2012-09-25decoder/adplug: new decoder pluginMax Kellermann3-0/+177
2012-09-25decoder/vorbis: skip 16 bit quantisation, provide float samplesSimon Hosie1-0/+44
Internally the vorbis (non-Tremor) decoder is working in floating point, and it's not really necessary to cut the output back to 16-bit if the soundcard or OS supports higher resolution. The decoder can be trivially modified to bypass its internal quantisation and produce floating-point output, and a separate quantisation can be used as appropriate to the platform.