- 24 Nov, 2008 1 commit
-
-
Max Kellermann authored
SEEK_SET is defined by unistd.h. Explicitly include it.
-
- 21 Nov, 2008 1 commit
-
-
Max Kellermann authored
Refuse to play audio formats which are not supported by MPD.
-
- 20 Nov, 2008 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
The ov_info() return value may be corrupt when ov_read() did not return a positive value. First check for success, then check ov_info().
-
- 12 Nov, 2008 1 commit
-
-
Max Kellermann authored
Unfortunately, ov_fopen() is not supported by libvorbis versions older than 1.2.
-
- 11 Nov, 2008 9 commits
-
-
Max Kellermann authored
Due to an unnoticed merge error, there was a superfluous "}". Remove it.
-
Max Kellermann authored
Move the reponsibility for freeing the file handle to libvorbis.
-
Max Kellermann authored
-
Max Kellermann authored
Eliminate two decoder_get_command() invocations from the main loop.
-
Max Kellermann authored
Don't let the buffer grow until it is full, flush it whenever there is data available.
-
Max Kellermann authored
The stream_decode() and file_decode() methods returned a boolean, indicating whether they were able to decode the song. This is redundant, since we already know that: if decoder_initialized() has been called (and dc.state==DECODE), the plugin succeeded. Change both methods to return void.
-
Max Kellermann authored
Having an array instead of individual variables allows the use of the replay_gain_mode enum as an array index.
-
Max Kellermann authored
Some code simplification. Avoid pointers to pointers.
-
Max Kellermann authored
Renamed functions and variables.
-
- 10 Nov, 2008 1 commit
-
-
Max Kellermann authored
Instead of having a seprate try_decode() method, let the stream_decode() and file_decode() methods decide whether they are able to decode the song.
-
- 04 Nov, 2008 1 commit
-
-
Max Kellermann authored
Instead of checking the stream_types bit set, we can simply check whether the methods stream_decode() and file_decode() are implemented.
-
- 03 Nov, 2008 1 commit
-
-
Max Kellermann authored
If an input stream provides tags (e.g. from an icecast server), send them in the decoder_data() and decoder_tag() methods. Removed the according code from the mp3 and oggvorbis plugins - decoders shouldn't have to care about stream tags. This patch also adds the missing decoder_tag() invocation to the mp3 plugin.
-
- 02 Nov, 2008 3 commits
-
-
Max Kellermann authored
Ogg and ffmpeg detection was disabled when the stream was not seekable, because the detection was too expensive. Since the curl input stream can now rewind the stream cheaply, we can re-enable detection on streams.
-
Max Kellermann authored
Provide an API for submitting additional tags from the stream.
-
Max Kellermann authored
Don't pass the "seekable" flag with every decoder_data() invocation. Since that flag won't change within the file, it is enough to pass it to decoder_initialized() once per file.
-
- 01 Nov, 2008 2 commits
-
-
Max Kellermann authored
The strings were constant, but the pointers weren't. C syntax is somewhat tricky..
-
Max Kellermann authored
All decoder_plugin structs are initialized at compile time, and must never change.
-
- 31 Oct, 2008 1 commit
-
-
Max Kellermann authored
-
- 30 Oct, 2008 1 commit
-
-
Max Kellermann authored
Don't return 0/-1 on success/error, but true/false. Instead of int, use bool for storing flags.
-
- 29 Oct, 2008 2 commits
-
-
Max Kellermann authored
A decoder_flush() invocation was missing in the FLAC plugin, resulting in casual assertion failures due to a wrong assumption about the last chunk's audio format. It's much easier to remove that decoder_flush() function and make the decoder thread call ob_flush().
-
Max Kellermann authored
Call ob_clear() in decoder_command_finished() instead of implementing that call in every decoder plugin.
-
- 26 Oct, 2008 4 commits
-
-
Max Kellermann authored
For boolean values and success flags, use bool instead of integer (1/0 for true/false, 0/-1 for success/failure).
-
Max Kellermann authored
Renamed all functions and variables.
-
Max Kellermann authored
Everybody should use struct input_stream.
-
Max Kellermann authored
These plugins are not input plugins, they are decoder plugins. No CamelCase in the directory name.
-
- 17 Oct, 2008 1 commit
-
-
Max Kellermann authored
Don't compile the sources of disabled decoder plugins at all, and don't attempt to register these.
-
- 10 Oct, 2008 1 commit
-
-
Max Kellermann authored
The last bit of CamelCase in audio_format.h. Additionally, rename a bunch of local variables.
-
- 08 Oct, 2008 1 commit
-
-
Max Kellermann authored
"bool" should be used in C99 programs for boolean values.
-
- 29 Sep, 2008 1 commit
-
-
Max Kellermann authored
The old struct initializers are error prone and don't allow moving elements around. Since we are going to overhaul some of the APIs soon, it's easier to have all implementations use C99 initializers.
-
- 07 Sep, 2008 1 commit
-
-
Max Kellermann authored
Get rid of CamelCase, and don't use a typedef, so we can forward-declare it, and unclutter the include dependencies.
-
- 29 Aug, 2008 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
Getting rid of CamelCase; not having typedefs also allows us to forward-declare the structures.
-
- 26 Aug, 2008 3 commits
-
-
Max Kellermann authored
The code said "decoder_command==STOP" because that was a conversion from the old "dc->stop" test. As we can now check for all commands in one test, we can simply rewrite that to decoder_command!=NONE.
-
Max Kellermann authored
Return early when the player thread sent us a command. This saves one level of indentation.
-
Max Kellermann authored
On our way to stabilize the decoder API, we will one day remove the input stream functions. The most basic function, read() will be provided by decoder_api.h with this patch. It already contains a loop (still with manual polling), error/eof handling and decoder command checks. This kind of code used to be duplicated in all decoder plugins.
-