aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (follow)
Commit message (Collapse)AuthorAgeFilesLines
* flac: always allocate tag objectMax Kellermann2009-01-154-31/+43
| | | | | Free the tag object when it turns out to be empty. This simplifies several functions and APIs.
* flac: use bool instead of intMax Kellermann2009-01-152-42/+37
|
* flac: removed "vorbis_comment_found" flagMax Kellermann2009-01-151-10/+4
| | | | Use tag_is_empty() instead.
* flac: no CamelCaseMax Kellermann2009-01-154-186/+204
| | | | Renamed types, functions, variables.
* oggvorbis: map "Album Artist" to "AlbumArtist"Rasmus Steinke2009-01-151-1/+3
| | | | | This patch allows mpd to recognise the albumartist tag in the way foobar2000 and others write it to files.
* oggvorbis: use g_ascii_strncasecmp() instead of strncasecmp()Max Kellermann2009-01-141-3/+3
| | | | | Don't depend on the daemon's locale settings. Comment names are ASCII.
* oggvorbis: moved tag look into vorbis_parse_comment()Max Kellermann2009-01-141-23/+13
| | | | | | vorbis_parse_comment() should be a function which converts one comment to a tag item. It should do everything required to do the conversion, including looping over all possible tag types.
* oggvorbis: moved code to vorbis_copy_comment()Max Kellermann2009-01-141-9/+21
|
* oggvorbis: use vorbis_comment_value() in vorbis_parse_comment()Max Kellermann2009-01-141-5/+4
| | | | Eliminate some duplicate code.
* oggvorbis: always allocate a tag objectMax Kellermann2009-01-141-8/+14
| | | | | | Always allocate a new tag object before parsing the vorbis comments; free it when it turns out to be empty. This simplifies the code a bit.
* oggvorbis: no CamelCaseMax Kellermann2009-01-141-59/+63
| | | | Renamed functions and variables.
* oggvorbis: use boolMax Kellermann2009-01-141-5/+5
| | | | Make ogg_parseCommentAddToTag() return bool instead of unsigned int.
* added missing explicit config.h includesMax Kellermann2009-01-086-1/+7
|
* fix G_BYTE_ORDER checkMax Kellermann2009-01-051-1/+1
| | | | "#ifdef G_BYTE_ORDER == G_BIG_ENDIAN" cannot work, of course.
* use GLib byte order macrosMax Kellermann2009-01-051-1/+1
|
* song: allocate the result of song_get_url()Max Kellermann2009-01-041-3/+4
|
* utils: removed unused functionsMax Kellermann2009-01-031-0/+2
| | | | | Removed all allocation functions, xwrite(), xread(), ARRAY_SIZE(). Those have been superseded by GLib.
* oggflac: don't use gcc.hMax Kellermann2009-01-021-9/+10
| | | | | Use G_GNUC_UNUSED instead of mpd_unused (which has already been removed).
* decoder plugins: don't include gcc.hMax Kellermann2009-01-015-12/+17
| | | | Use GLib's G_GNUC_UNUSED instead of gcc.h's mpd_unused.
* removed os_compat.hMax Kellermann2008-12-291-0/+2
| | | | | Only include headers which are really needed. os_compat.h aimed to make MPD easily portable, but was never actually made portable.
* mp4: support the writer/composer tagFrank Mulder2008-12-291-0/+2
| | | | | | | | | | 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.
* mikmod: use Glib instead of utils.h/log.hMax Kellermann2008-12-281-9/+6
|
* mikmod: convert mod_Data.audio_buffer to a static arrayMax Kellermann2008-12-281-3/+1
| | | | Don't do two allocations for the mod_Data structure.
* decoder: new plugin using modplug libraryViliam Mateicka2008-12-281-0/+200
|
* Add RVA2 tag support to MPDPauli Virtanen2008-12-281-0/+94
| | | | | | | | | | This patch adds RVA2 (relative volume adjustment) tag support to mpd, as a fallback if no replaygain tags are found. The code is almost directly from madplay (GPL). RVA2 tags are generated for example by the "normalize" utility. Updated by: Avuton Olrich <avuton@gmail.com>
* audiofile: don't close onput stream in libaudiofile destroy()Max Kellermann2008-12-271-2/+3
| | | | | | The input_stream object should only be closed by the MPD core (i.e. decoder_thread.c / decoder_run()). A decoder plugin which attempts to close it will result in a segmentation fault.
* Merge branch 'experimental' of git://git.musicpd.org/metyl/mpdMax Kellermann2008-12-271-15/+74
|\ | | | | | | | | | | | | | | Conflicts: configure.ac src/ls.h src/output/shout_plugin.c
| * decoder: audiofile plugin using input stream instead of fileViliam Mateicka2008-12-031-15/+74
| |
* | ffmpeg: case AV_NOPTS_VALUE to int64_tMax Kellermann2008-12-241-2/+2
| | | | | | | | | | The old code casted it to a 32 bit integer, which cut off bits. AVFormatContext.duration is a int64_t, so use this type.
* | ffmpeg: don't assign "0" to pointerMax Kellermann2008-12-241-1/+1
| | | | | | | | Use NULL instead. Found by sparse.
* | mp3: "tag" argument is unused when libid3tag is disabledMax Kellermann2008-12-241-2/+2
| | | | | | | | Add G_GNUC_UNUSED attributes.
* | ffmpeg: fixing ffmpeg_send_packet to allow multipacketsViliam Mateicka2008-12-151-16/+32
| |
* | ffmpeg: adding APE supportViliam Mateicka2008-12-151-2/+3
| |
* | mp3: declare variables as "enum mp3_action"Max Kellermann2008-12-081-2/+2
|/ | | | | Variables which hold one of the DECODE_* values should be declared as "enum mp3_action" instead of "int".
* mp3: use GLib loggingMax Kellermann2008-11-271-19/+18
| | | | Use GLib's g_warning(), ... instead of MPD's deprecated log.h.
* flac, mpc, ogg, wavpack: include unistd.h for SEEK_SETMax Kellermann2008-11-245-0/+5
| | | | SEEK_SET is defined by unistd.h. Explicitly include it.
* wavpack: use assert_static()Laszlo Ashin2008-11-221-4/+5
|
* decoder: check audio_format_valid() in all decodersMax Kellermann2008-11-219-7/+70
| | | | Refuse to play audio formats which are not supported by MPD.
* flac, oggflac: use GLib instead of utils.h/log.hMax Kellermann2008-11-214-33/+29
|
* ffmpeg: use GLib instead of log.hMax Kellermann2008-11-211-8/+11
|
* audiofile: use GLib instead of log.hMax Kellermann2008-11-211-8/+10
|
* aac: use GLib instead of utils.h/log.hMax Kellermann2008-11-211-10/+10
| | | | Removed the superfluous my_usleep() call.
* ogg: moved the "errorStr" variable into the error handlerMax Kellermann2008-11-201-1/+2
|
* aac: get rid of gcc warningsLaszlo Ashin2008-11-201-2/+2
|
* ogg: check the ov_read() return value before the vorbis_info evaluationMax Kellermann2008-11-201-7/+6
| | | | | | 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().
* wavpack: redo using audio_format_frame_size()Laszlo Ashin2008-11-191-6/+1
| | | | Somehow we lost 600e1322 after renaming some variables in ed6f6046.
* ffmpeg: read tags from AVFormatContextViliam Mateicka2008-11-181-5/+16
| | | | | The ffmpeg library provides some of the song metadata in the AVFormatContext struct. Pass it from there to MPD.
* audiofile: fixed misplaced ifViliam Mateicka2008-11-181-2/+1
| | | | [mk: by definition, tag_new() cannot fail - removed check]
* input_stream: size==-1 means unknown sizeMax Kellermann2008-11-164-1/+10
| | | | | | Define the special value "-1" as "unknown size". Previously, there was no indicator for streams with unknown size, which might confuse some decoders.
* ffmpeg: fixed AVSEEK_SIZEMax Kellermann2008-11-161-3/+9
| | | | | | With whence==AVSEEK_SIZE, the seek function should return the file size, not the current offset. Check the return value of input_stream_seek().