Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | update_walk: move code to update_db.c | Max Kellermann | 2012-02-12 | 3 | -85/+159 | |
| | | ||||||
* | | update_walk: move code to update_io.c | Max Kellermann | 2012-02-12 | 3 | -100/+168 | |
| | | ||||||
* | | update_walk: move code to update_song_file() | Max Kellermann | 2012-02-12 | 1 | -59/+64 | |
| | | ||||||
* | | playlist/embcue: new plugin for reading embedded cue sheets | Max Kellermann | 2012-02-12 | 5 | -0/+322 | |
| | | | | | | | | | | Parses CUE data from the "CUESHEET" tag. Needs further integration in the update thread. | |||||
* | | decoder/wavpack: bigger tag value buffer | Max Kellermann | 2012-02-12 | 1 | -2/+1 | |
| | | | | | | | | Prepare for big CUESHEET tags. | |||||
* | | tag_handler: handle arbitrary name/value pairs | Max Kellermann | 2012-02-12 | 8 | -8/+106 | |
| | | | | | | | | | | The new method pair() receives an arbitrary name/value pair. Support for this is being added to a few decoder plugins. | |||||
* | | decoder/wavpack: move code to wavpack_scan_tag_item() | Max Kellermann | 2012-02-11 | 1 | -26/+17 | |
| | | | | | | | | | | Remove clutter from wavpack_scan_file(), and use a (large) fixed buffer for the tag item. | |||||
* | | decoder/wavpack: use the tag_table library | Max Kellermann | 2012-02-11 | 1 | -8/+7 | |
| | | ||||||
* | | decoder/{mikmod,fluidsynth,mp4ff}: adapt to tag_handler API | Max Kellermann | 2012-02-11 | 3 | -26/+28 | |
| | | | | | | | | Fixes build regression. | |||||
* | | decoder_plugin: scan tags with callback table | Max Kellermann | 2012-02-11 | 30 | -297/+613 | |
| | | | | | | | | | | Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object. | |||||
* | | decoder/gme: convert runtime check to assertion | Max Kellermann | 2012-02-11 | 1 | -21/+22 | |
| | | | | | | | | | | When gme_track_info() returns with success, then the gme_info_t pointer must be set. | |||||
* | | decoder/ffmpeg: use the tag_table library | Max Kellermann | 2012-02-11 | 1 | -13/+9 | |
| | | ||||||
* | | decoder/ffmpeg: move code to ffmpeg_metadata.c | Max Kellermann | 2012-02-11 | 3 | -46/+106 | |
| | | ||||||
* | | decoder/ffmpeg: remove AV_VERSION_INT definition | Max Kellermann | 2012-02-11 | 1 | -5/+0 | |
| | | | | | | | | All supported ffmpeg/libav versions have this. | |||||
* | | decoder/flac: check for errors only after _process_single() | Max Kellermann | 2012-02-11 | 1 | -8/+6 | |
| | | | | | | | | The only other libFLAC call (seek) does not produce fatal errors. | |||||
* | | decoder/flac: symmetric FLAC__stream_decoder_finish() calls | Max Kellermann | 2012-02-11 | 1 | -1/+3 | |
| | | | | | | | | | | Call it in the function that also invokved FLAC__stream_decoder_init_*(). | |||||
* | | decoder/flac: use error messages from libFLAC | Max Kellermann | 2012-02-11 | 3 | -44/+10 | |
| | | ||||||
* | | decoder/flac: eliminate the remaining "gotos" | Max Kellermann | 2012-02-11 | 1 | -42/+54 | |
| | | | | | | | | https://www.xkcd.com/292/ | |||||
* | | decoder/{vorbis,flac}: use the tag_table library | Max Kellermann | 2012-02-11 | 2 | -21/+21 | |
| | | ||||||
* | | tag_id3: use the tag_table library for TXXX | Max Kellermann | 2012-02-11 | 2 | -15/+26 | |
| | | ||||||
* | | tag_table: convert to a struct | Max Kellermann | 2012-02-11 | 3 | -14/+22 | |
| | | | | | | | | | | The struct is smaller because it is sparse. Its traversal is also more efficient. | |||||
* | | decoder_api: correct decoder_seek_error() documentation | Max Kellermann | 2012-02-11 | 1 | -1/+1 | |
| | | ||||||
* | | decoder/vorbis: move code to vorbis_comment.c | Max Kellermann | 2012-02-11 | 3 | -103/+167 | |
| | | ||||||
* | | cue_parser: new line based CUE sheet parser | Max Kellermann | 2012-02-10 | 6 | -330/+413 | |
| | | | | | | | | To replace libcue, the unmaintained and crashy library. | |||||
* | | command: add optional range parameter to "load" | Max Kellermann | 2012-02-09 | 1 | -4/+13 | |
| | | ||||||
* | | playlist_save: add start/end_index parameters | Max Kellermann | 2012-02-09 | 3 | -4/+12 | |
| | | ||||||
* | | playlist_queue: add start/end_index parameters | Max Kellermann | 2012-02-09 | 3 | -3/+21 | |
| | | ||||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2012-02-04 | 1 | -34/+36 | |
|\| | | | | | | | | | | | | | Conflicts: src/decoder/ffmpeg_decoder_plugin.c test/read_tags.c test/run_decoder.c | |||||
| * | decoder/ffmpeg: use AV_SAMPLE_FMT_* if available | Max Kellermann | 2012-02-03 | 1 | -0/+8 | |
| | | | | | | | | | | Implements support for libavcodec 0.9, which removes the compatibility macros SAMPLE_FMT_* | |||||
| * | decoder/ffmpeg: use sentinel for the ffmpeg_tag_maps table | Max Kellermann | 2012-02-03 | 1 | -3/+6 | |
| | | | | | | | | Minor optimisation. | |||||
| * | decoder/ffmpeg: support all MPD tags | Max Kellermann | 2012-02-03 | 1 | -12/+5 | |
| | | | | | | | | | | Use the tag_item_names table to look up the names of all MPD tags, and remove the duplicate entries from ffmpeg_tag_maps. | |||||
| * | decoder/ffmpeg: pass tag_type and name to _copy_metadata() | Max Kellermann | 2012-02-03 | 1 | -5/+6 | |
| | | | | | | | | Allow using this function without the ffmpeg_tag_map struct. | |||||
| * | decoder/ffmpeg: merge code to _copy_dictionary() | Max Kellermann | 2012-02-03 | 1 | -6/+11 | |
| | | | | | | | | Eliminate some duplicate code. | |||||
| * | decoder/ffmpeg: add macros emulating AVDictionary | Max Kellermann | 2012-02-03 | 1 | -13/+7 | |
| | | | | | | | | Move the #ifdefs out of _copy_metadata(). | |||||
| * | decoder/ffmpeg: _copy_metadata() returns void | Max Kellermann | 2012-02-03 | 1 | -3/+1 | |
| | | | | | | | | No interest in this return value. | |||||
* | | directory: require the caller to lock the db_mutex | Max Kellermann | 2012-02-02 | 9 | -26/+127 | |
| | | | | | | | | | | Reduce the number of lock/unlock cycles, and make database handling safer. | |||||
* | | db_lock: add assertions | Max Kellermann | 2012-02-02 | 2 | -0/+33 | |
| | | ||||||
* | | update_walk: use directory_make_child() | Max Kellermann | 2012-02-02 | 1 | -5/+2 | |
| | | ||||||
* | | directory: add new objects to the end of the linked list | Max Kellermann | 2012-02-02 | 1 | -2/+2 | |
| | | | | | | | | | | This was the cause of the reversed ordering when loading a database file. | |||||
* | | input/soup: use #pragma only with gcc 4.6+ | Max Kellermann | 2012-01-29 | 1 | -2/+2 | |
| | | | | | | | | | | | | It seems gcc 4.5 does not allow #pragma within function: src/input/soup_input_plugin.c:284:9: error: #pragma GCC diagnostic not allowed inside functions | |||||
* | | directory: fix deep path lookup | Max Kellermann | 2012-01-29 | 1 | -16/+14 | |
| | | | | | | | | | | This commit fixes a major regression in directory_lookup_directory(), which broke the deep lookup of directories. | |||||
* | | directory: mark unused parameter | Max Kellermann | 2012-01-24 | 1 | -1/+2 | |
| | | ||||||
* | | directory: replace songvec with doubly linked list | Max Kellermann | 2012-01-24 | 10 | -226/+98 | |
| | | ||||||
* | | directory: add function directory_get_song(), ... | Max Kellermann | 2012-01-24 | 4 | -14/+64 | |
| | | | | | | | | Wrap songvec_find() and other songvec methods. | |||||
* | | directory: replace dirvec with doubly linked list | Max Kellermann | 2012-01-24 | 7 | -205/+99 | |
| | | | | | | | | | | Random access is not needed, and a linked list is easier to manage: we don't need to (re-)allocate the pointer array. | |||||
* | | util/list.h: import the Linux kernel's linked list library | Max Kellermann | 2012-01-24 | 3 | -0/+798 | |
| | | ||||||
* | | directory: simplify constructors and clarify API documentation | Max Kellermann | 2012-01-24 | 5 | -76/+111 | |
| | | | | | | | | | | Pass only the "name" to a directory, instead of the full (relative) path. | |||||
* | | dirvec: unlock mutex in dirvec_find() in all branches | Max Kellermann | 2012-01-24 | 1 | -1/+4 | |
| | | ||||||
* | | dirvec: don't call g_path_get_basename() on parameter | Max Kellermann | 2012-01-24 | 1 | -10/+3 | |
| | | | | | | | | | | This overhead is completely useless, because no caller expects this behaviour. | |||||
* | | songvec: move code to songvec_find_pointer() | Max Kellermann | 2012-01-24 | 1 | -18/+28 | |
| | |