- 25 Jun, 2010 1 commit
-
-
Max Kellermann authored
We already supported "albumartist", but it seems some folks also use "album artist" (with a space).
-
- 31 May, 2010 6 commits
-
-
Max Kellermann authored
Allocate the "tag" object after the file has been checked. That removes one tag_free() call in an error handler.
-
Max Kellermann authored
-
Max Kellermann authored
Allocate only one item on the stack.
-
Max Kellermann authored
-
Max Kellermann authored
Reuse the function tag_name_parse_i().
-
Max Kellermann authored
-
- 30 May, 2010 3 commits
-
-
Max Kellermann authored
I'm not sure if mapping "band" to TAG_PERFORMER is correct, but it might be better than nothing.
-
Max Kellermann authored
Convert if/else/else/... to a loop.
-
Max Kellermann authored
The underlying library is named "libmp4ff". To reduce confusion, rename the plugin to a more specific name.
-
- 04 Jan, 2010 2 commits
-
-
Max Kellermann authored
Make it X_decoder_plugin.c.
-
Max Kellermann authored
This function replaces the replay_gain_info parameter for decoder_data(). This allows the decoder to announce replay gain changes, instead of having to pass the same object over and over.
-
- 01 Jan, 2010 1 commit
-
-
Avuton Olrich authored
-
- 31 Dec, 2009 1 commit
-
-
Max Kellermann authored
This patch changes the following decoder plugins to implement stream_tag() instead of tag_dup(): faad, ffmpeg, mad, modplug, mp4ff, mpcdec, oggflac This simplifies their code, because they do not need to take care of opening/closing the stream.
-
- 26 Dec, 2009 1 commit
-
-
Max Kellermann authored
Remove the data_time parameter from decoder_data(). This patch eliminates the timestamp counting in most decoder plugins, because the MPD core will do it automatically by default.
-
- 16 Dec, 2009 1 commit
-
-
Alam Arias authored
-
- 02 Dec, 2009 1 commit
-
-
Max Kellermann authored
This patch prepares support for floating point samples (and probably other formats). It changes the meaning of the "bits" attribute from a bit count to a symbolic value.
-
- 13 Nov, 2009 1 commit
-
-
Max Kellermann authored
Let the audio_check library verify the audio format in all (relevant, i.e. non-hardcoded) plugins.
-
- 12 Nov, 2009 1 commit
-
-
Max Kellermann authored
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
-
- 13 Oct, 2009 1 commit
-
-
Max Kellermann authored
-
- 19 Jul, 2009 1 commit
-
-
David Woodhouse authored
It makes no difference right now, but we're about to add an endianness flag and will want to make sure it's correctly initialised every time.
-
- 28 Apr, 2009 1 commit
-
-
Max Kellermann authored
strcasecmp() is locale dependent, making it a bad choice for internal string comparisons.
-
- 13 Mar, 2009 1 commit
-
-
Avuton Olrich authored
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
-
- 18 Feb, 2009 7 commits
-
-
Max Kellermann authored
When mp4ff_read_sample() returns a value bigger than zero, it guarantees that the buffer is set. Remove the check.
-
Max Kellermann authored
Don't waste any precious memory when the seek_table cannot be used.
-
Max Kellermann authored
Don't include limits.h, use GLib constants instead.
-
Max Kellermann authored
Use faacDecInit2() instead of AudioSpecificConfig() to detect the AAC track in the MP4 file. This has a great advantage: it initializes the libfaad decoder, which the caller would normally do anyway - but now we can go without the AudioSpecificConfig() call. When decoder==NULL (called from mp4_tag_dup()), fall back to a mp4ff_get_track_type()==1 check, like other audio players do.
-
Max Kellermann authored
Moved the libfaad decoder initialization to mp4_faad_new(), and also fill the audio_format struct there. This eliminates a little bit of complexity in mp4_decode().
-
Max Kellermann authored
Don't wait for the first frame to be decoded. We already have the sample rate and the channel count from faacDecInit2().
-
Max Kellermann authored
The function mp4_load_tag() is used only once, and mp4_tag_dup() is a one-liner. Merge them.
-
- 17 Feb, 2009 2 commits
-
-
Max Kellermann authored
Fixed the log domains of the renamed decoders. Added G_LOG_DOMAIN macros in decoders which don't have one already.
-
Max Kellermann authored
This plugin is based on "libmp4ff".
-
- 25 Jan, 2009 1 commit
-
-
Max Kellermann authored
On some platforms, g_free() must be used for memory allocated by GLib. This patch intends to correct a lot of occurrences, but is probably not complete.
-
- 17 Jan, 2009 1 commit
-
-
Max Kellermann authored
Some plugins used the APE or ID3 tag loader as a fallback when their own methods of loading tags did not work. Move this code out of all decoder plugins, into song_file_update().
-
- 08 Jan, 2009 1 commit
-
-
Max Kellermann authored
-
- 29 Dec, 2008 1 commit
-
-
Frank Mulder authored
I tried to search for a certain composer in my collection, but only non-mp4 files showed up. The source code reveals that this tag is not read. This can be fixed by reading the 'Writer' tag field, in mp4_plugin.c, in function mp4_load_tag. I actually tried this, and after compiling with those lines added, also mp4 (.m4a) files showed up when searching for a composer.
-
- 21 Nov, 2008 1 commit
-
-
Max Kellermann authored
Refuse to play audio formats which are not supported by MPD.
-
- 16 Nov, 2008 1 commit
-
-
Max Kellermann authored
neaacdec.h declares all arguments as "unsigned long", but internally expects uint32_t pointers. This triggers gcc warnings on 64 bit architectures. To avoid that, make configure.ac detect whether we're using Debian's corrected headers or the original libfaad headers. In any case, pass a pointer to an uint32_t, conditionally casted to "unsigned long*".
-
- 11 Nov, 2008 1 commit
-
-
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.
-
- 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.
-