aboutsummaryrefslogtreecommitdiffstats
path: root/src/cue (follow)
Commit message (Collapse)AuthorAgeFilesLines
* CueParser: don't "move" the filenameMax Kellermann2014-01-261-1/+1
| | | | | This invalidated the std::string instance, and thus broke the CUE parser (commit 322b061632).
* copyright year 2014Max Kellermann2014-01-132-2/+2
|
* DetachedSong: fork of struct SongMax Kellermann2014-01-092-25/+20
| | | | | | From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
* tag/TagBuilder: rename Commit() to CommitNew()Max Kellermann2014-01-081-1/+1
|
* util/Alloc: new library replacing GLib's g_malloc()Max Kellermann2014-01-071-4/+3
|
* CueParser: use class TagBuilderMax Kellermann2013-12-032-16/+27
|
* CueParser: rename local variables "current_tag" to "tag"Max Kellermann2013-12-031-6/+6
|
* CueParser: rename "tag" to "header_tag"Max Kellermann2013-12-032-6/+9
|
* TagType: rename enum tag_type to TagTypeMax Kellermann2013-10-201-3/+3
|
* Util/CharUtil: new library replacing g_ascii_isX()Max Kellermann2013-10-191-2/+3
|
* CueParser: use std::stringMax Kellermann2013-10-172-6/+5
|
* gcc.h: rename to Compiler.hMax Kellermann2013-10-151-1/+1
|
* Tag, ...: move to libtag.aMax Kellermann2013-09-051-1/+1
|
* tag: convert to C++Max Kellermann2013-07-302-17/+19
|
* song: convert header to C++Max Kellermann2013-07-282-11/+13
|
* string_util: convert to C++Max Kellermann2013-04-091-1/+1
|
* cue_parser: convert to C++Max Kellermann2013-04-094-461/+450
|
* song: don't use GLibMax Kellermann2013-01-081-0/+2
|
* cue_parser: fix CUE files with only one trackMax Kellermann2013-01-031-7/+47
| | | | | Track whether _finish() has been called, and deliver all partial results then. Fixes Mantis ticket 0003621.
* cue_parser: add code commentsMax Kellermann2013-01-031-2/+21
|
* cue_parser: fix memory leakMax Kellermann2013-01-031-0/+3
|
* playlist/cue: map "PERFORMER" to "artist" or "album artist"Max Kellermann2012-08-251-1/+11
| | | | Implements Mantis ticket 0003549.
* cue_parser: support file types "MP3", "AIFF"Max Kellermann2012-07-261-1/+3
| | | | These two strings are common "FILE" types.
* cue_parser: new line based CUE sheet parserMax Kellermann2012-02-104-267/+385
| | | | To replace libcue, the unmaintained and crashy library.
* cue_tag: show CUE track numbersQball Cow2011-05-091-0/+9
|
* cue: fix code styleOrivej Desh2010-04-011-5/+5
|
* cue: prepend pregap to the beginning of the trackOrivej Desh2010-03-281-2/+9
| | | | | | | | | | | | | | | | | | | | | | | .. rather then append to the end of the previous one Cuebreakpoints from the cuetools package has three modes of operation, and the default is to append pregap (INDEX 00) to the end of the previous track. This is the behavior most compliant to the existing cue files. Here is the patch which fixes the issue. I borrowed bits of implementation from cuebreakpoints. I assumed that the whole audio file must be covered by head-to-head going tracks, which is how hardware CD players probably work. In cue_tag I changed rounding from rounding up to rounding down because the thing in mpd which calculates actual track duration (and current position) rounds it down, and I didn't want to see in my playlist values different from whose in a now-playing progress bar. I've compared the resultant mpd behaviour with "mplayer -ss MM:SS.MS" where the time was supplied by cuebreakpoints and noticed that mplayer started each track a bit earlier then mpd, though this was the same before the patch.
* Merge release 0.15.9 from branch 'v0.15.x'Max Kellermann2010-03-281-17/+1
|\ | | | | | | | | | | | | | | | | Conflicts: NEWS configure.ac src/cue/cue_tag.c src/decoder/mpcdec_decoder_plugin.c src/player_thread.c
| * tag: added function tag_merge_replace()Max Kellermann2010-03-171-21/+1
| | | | | | | | | | Like tag_merge(), but can deal with NULL parameters, and frees both tag objects.
* | cue_tag: added song duration supportMax Kellermann2009-12-161-2/+10
| | | | | | | | | | Get duration from track_get_length().
* | cue_tag: check cd_get_track()!=NULLMax Kellermann2009-12-161-3/+5
| |
* | cue_tag: added function cue_tag()Max Kellermann2009-12-162-17/+29
| | | | | | | | Merge code from cue_tag_file() and cue_tag_string().
* | cue_tag: merged code into cue_tag_merge()Max Kellermann2009-12-161-22/+18
| |
* | cue_tag: pass "const" string to cue_tag_string()Max Kellermann2009-12-162-2/+2
| |
* | cue_tag: changed runtime checks to assertionsMax Kellermann2009-12-161-14/+9
| | | | | | | | It's illegal to pass NULL here. This should not be ignored silently.
* | cue_tag: fixed indent and code styleMax Kellermann2009-12-162-78/+43
| |
* | cue_tag: tag_new() cannot failMax Kellermann2009-12-161-22/+10
| | | | | | | | Removed the NULL check.
* | cue_tag: include cleanupMax Kellermann2009-12-162-2/+5
| |
* | include config.h in all sourcesMax Kellermann2009-11-122-2/+4
| | | | | | | | | | | | 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.
* | tag: removed the "_ITEM_" suffix from the enum namesMax Kellermann2009-10-131-47/+47
|/
* Build tags from information in cue sheetsJochen Keil2009-03-312-0/+296
With these methods a tag struct can be created from the cdtext information in a cue sheet. The methods depend on a cue parsing library. Reading from strings (char*) as well as from a file (FILE*) is supported.