Commit Graph

110 Commits

Author SHA1 Message Date
David Sansome b873209d39 Remove the <xiphcomment.h> include from song.h so that windows headers don't infect everything else. Also move other bits of song.h into song.cpp, and reduce the number of includes in song.h. 2011-11-28 13:56:55 +00:00
David Sansome 7548919bc1 Remove the resolvers for now - they don't work properly and ought to use the global search. 2011-11-27 22:15:28 +00:00
David Sansome 7f7451b72a Stop the M3UParser from going into an infinite loop when parsing a file with an invalid #EXTINF line. Fixes issue 2080 2011-08-27 22:35:00 +01:00
John Maguire 2bda4966fc Basic working use of resolvers for XSPF playlists. 2011-07-28 17:33:58 +02:00
David Sansome ccb9f8cf94 Use URLs everywhere instead of filenames. Move the URL parsing and song loading code out of individual playlist parsers and into the base class. Fix the playlist parser unit tests. 2011-04-28 12:27:53 +00:00
David Sansome 3eedc916ad Add a new logging system 2011-04-22 16:50:29 +00:00
John Maguire 0a54c5135b Ignore empty lines in m3u files.
Fixes issue #1403
2011-03-17 16:05:08 +00:00
David Sansome 4471e27ef6 Python docs for PlaylistParser, and clean up the interface a bit 2011-02-27 12:14:32 +00:00
Paweł Bara 7f3f4f4107 more accurate parsing of indices in CUEs (we now respect the FRAMES part)
+ incorporating arnaud's code comment in fileviewlist
2011-02-15 22:26:56 +00:00
David Sansome 8c691d2b3e Use constants instead of "1eN" literals for converting between time units. 2011-02-14 19:34:37 +00:00
David Sansome 3a1853a681 Use nanoseconds in playlist parsers, and fix the tests 2011-02-13 18:35:26 +00:00
David Sansome 507c5e2632 Change the fields in Song from seconds to nanoseconds 2011-02-13 18:34:30 +00:00
Paweł Bara ed4b7abde0 changed my mind - reverting my playlist changes to previous status quo (just making the PlaylistParser's contract more explicit)
this doesn't mean the previous revision was pointless - it still fixed one CUE related bug which I forgot to mention...
2011-02-03 22:21:15 +00:00
Paweł Bara 7bdac8fba6 when loading playlist, take only it's valid songs (+ force validity of CUE and PLS related songs) 2011-02-03 17:47:32 +00:00
Paweł Bara ddd3f119d3 CUE songs are now properly updated in library - you can delete a CUE sheet, add it, you can change section markers in it etc. and everything should work as expected
Song now knows it's cue path (if any)
2011-01-15 18:46:23 +00:00
David Sansome c6d724f53a Add Python bindings for PlaylistParser 2011-01-15 13:59:34 +00:00
David Sansome 1344103515 Add a workaround for broken XML entities in ASX playlists 2011-01-15 13:58:35 +00:00
Paweł Bara 4f7e804638 library: watcher now updates CUE associated songs + ignores the not-CUE-associated songs in a CUE sheet
CueParser: properly update length for the last song from every FILE in multifile CUE sheet
new 'playlist_path' argument in the 'Load' part of PlaylistParser's API
2011-01-11 23:09:59 +00:00
Paweł Bara d4d7f19fab better .cue spec conformity (allow many files in one sheet, use the SONGWRITER field as song's composer, ignore data files) 2011-01-05 20:23:53 +00:00
Paweł Bara bb79a68be0 some minor .cue related changes 2011-01-04 17:12:29 +00:00
Paweł Bara 59378166b4 finalized the support for loading .cue based media using 'files' tab or drag and drop from the system's file browser
use FILE's PERFORMER as albumartist
2011-01-03 23:36:10 +00:00
Paweł Bara 234465874c remember the track number when parsing .cue 2010-12-29 15:46:01 +00:00
Paweł Bara da5f941333 consider .cues when scanning the library
persist the new 'beginning' marker of songs
fixed a bug where %allsongstables script would not update the attached databases
2010-12-28 15:36:01 +00:00
David Sansome eca62e037b Don't re-read song tags from files while loading a playlist if they're already avaiable in the library. Fixes issue #1165 2010-12-25 14:41:31 +00:00
Paweł Bara d7fe4600b8 an initial version of .cue sheets parser
initial support for multipart media files in Song ('beginning' and 'end' fields)
2010-12-23 21:13:43 +00:00
David Sansome 2b77c894db Err... fix the ASX parser 2010-12-11 12:12:36 +00:00
David Sansome a739ff2714 Fix playlist parser tests 2010-12-11 11:07:00 +00:00
David Sansome 08b2bcc816 Always write URLs in XML based playlists, instead of URLs of relative paths. Also load playlist items from the library if possible. Fixes issue #1054 2010-12-11 10:35:07 +00:00
David Sansome 292fdd3e7f Fix writing of album art paths when saving XSPF files 2010-12-11 09:31:39 +00:00
David Sansome ed1a25693c Add missing licenses to debian/copyright, and add copyright information to each source file 2010-11-20 13:27:10 +00:00
John Maguire 3df1f1bed9 Fix parsing of dos line endings in M3U.
Fixes issue #863
2010-10-11 15:20:53 +00:00
John Maguire 2c81cdefc7 Add m3u8 to M3U filetypes. 2010-09-13 16:37:22 +00:00
John Maguire b0e1a516a9 Fix playlist parsing for iTunes M3U
Fixes issue #736
This is really Apple's fault for bizarrely using \r for line endings.
2010-09-13 16:31:42 +00:00
David Sansome 7e29c772af Use the playlist's name as the default filename when saving it 2010-07-31 13:10:08 +00:00
David Sansome 77b4ec54bd Look at the file extension as well as magic when loading a local playlist. Fixes issue #507 2010-07-24 14:09:27 +00:00
David Sansome 384ff16f2b Add a parser for a weird playlist format that looks like a cross between ASX and PLS. I don't know what it's called... 2010-07-10 18:39:41 +00:00
David Sansome 9b39b2db68 Move tabs to the top 2010-06-16 18:50:01 +00:00
David Sansome 02d01b1314 PLS playlists aren't really INI files - they don't follow the same rules with escaping characters, so parse them the old fashioned way. 2010-06-15 17:34:00 +00:00
David Sansome 8c7539f02e ASF files aren't really XML - try to correct the mismatching case 2010-06-15 17:00:48 +00:00
David Sansome 25ff2bca59 Always treat text/uri-list as M3U 2010-06-15 14:52:42 +00:00
David Sansome 2c3e9276aa Fix some of the comments on r1148 2010-06-15 13:56:41 +00:00
David Sansome 08a01d6997 The start of some code to automagically determine whether a URL is a playlist or a song, and load the songs in the playlist if it's a playlist. Still to do: timeout, forcing M3U for text/uri-list. 2010-06-15 13:24:17 +00:00
David Sansome 40bb827fcd Make all the source files a single cmake target again. 2010-06-08 22:39:31 +00:00
David Sansome c0103cc1e0 Bring 1020 back again for Windows systems that don't seem to have a system encoding set :/ 2010-06-02 21:26:12 +00:00
David Sansome 7cbd8f7500 Revert r1020, it wasn't necessary - see issue #364 2010-06-02 21:08:37 +00:00
David Sansome 2381d2ba1a Use UTF8 explicitly rather than the local 8-bit codec 2010-06-02 21:04:03 +00:00
David Sansome 6dd32da591 Make the M3U parser use the local 8-bit encoding instead of latin1. Yes I know the spec says m3us are always latin1 - you didn't expect anyone else to actually follow that did you? Fixes issue #364. 2010-06-02 20:06:47 +00:00
John Maguire 4836b8d420 Fix XML parsers to output file URLs. 2010-05-27 22:43:07 +00:00
John Maguire 7ad2c38333 Port XSPFParser to QXmlStreamWriter. 2010-05-27 21:16:17 +00:00
John Maguire e8dab5c065 ASX support.
Fixes issue #325
2010-05-27 20:55:34 +00:00
John Maguire a0f19e5923 Remove unnecessary checks. 2010-05-23 17:04:55 +00:00
John Maguire 07b2c38690 Save support for M3U. 2010-05-23 17:00:45 +00:00
John Maguire 1b76ead951 Implement playlist saving for XSPF. 2010-05-23 16:26:32 +00:00
John Maguire a59f5a3887 *Fix m3u parsing
*Add regression test
*Fix clang warnings
2010-05-23 15:35:28 +00:00
David Sansome 89bbaeed5f Add a filter for each type of playlist in the load/save dialogs. 2010-05-22 22:29:52 +00:00
David Sansome b487ec00ef GUI for saving playlists 2010-05-22 22:20:00 +00:00
David Sansome 06c6bebe15 Support for saving .pls files 2010-05-22 21:27:51 +00:00
David Sansome 211ae65e3d .pls parser. Fixes issue #302 2010-05-22 21:11:22 +00:00
David Sansome 1f8b0de49c Load playlist button works 2010-05-22 20:28:11 +00:00
David Sansome c9c44ca592 Move the playlist parsers to another directory, and add a PlaylistParser class that magically uses the right parser. 2010-05-22 20:06:19 +00:00