PDA

View Full Version : Cue sheet only plays last track!?



DanielTheGreat
2007-09-05, 05:04
Because of the way I rip and store music tracks, I can't get my Squeezeboxes to display track title and artist in the format I want. I had hoped I could use the 'extended' playlist format (a la http://hanna.pyxidis.org/tech/m3u.html), but SlimServer doesn't seem to support this format [why not??]. One of the Logitech support staff (who are quite helpful) suggested I try the cue sheet format, which the documentation says is supported.
The only cue sheet format I know about is that used by CDRWin, who I believe originated the cue sheet format. Of course I can't strictly comply with that format, since I use FLAC files, which aren't supported by CDRWin. But I followed the format and just substituted "FLAC" where CDRWin would have "WAVE". Here's an extract from my test cue sheet:

TITLE "Paul Simon - Various"
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\AMERICAN_TUNE[80085B0A_06].flac" FLAC
TRACK 01 AUDIO
TITLE "American Tune - Paul Simon [80085B0A_06]"
INDEX 01 00:00:00
.
.
.
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\HOBO'S_BLUES[9A081A0B_09].flac" FLAC
TRACK 06 AUDIO
TITLE "Hobo's Blues - Paul Simon [9A081A0B_09]"
INDEX 01 00:00:00
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\KODACHROME[80085B0A_01].flac" FLAC
TRACK 07 AUDIO
TITLE "Kodachrome - Paul Simon [80085B0A_01]"
INDEX 01 00:00:00

This does solve the titling problem, but it won't play all the tracks in the list! I played the test cue sheet and observed that the first song played (which happened to be "Kodachrome" - I didn't think this unusual, since playing was set to shuffle by song) displayed the desired title information. But when trying to play this cue sheet right through, "Kodachrome" is the *only* song it will play (even if I revert to non-shuffle play). When that song finishes, it plays again! If I press skip forward or backwards, the Squeezebox briefly displays the title of "Hobo's Blues", but then immediately reverts to playing and displaying "Kodachrome".

Am I doing something wrong, or is this a bug in SlimServer?

Once I overcome this hurdle, I'll be able to experiment to see what 'minimal' format for a cue sheet I can get away with. For a start, since FLAC is not a valid descriptor for the file type (for a CDRWin cue list, at least), I presume I could leave off the 'FLAC' following the file paths? Secondly, can I omit the 'album' title (first line of the cue file), since I won't be using this information for my displays? Thirdly, are the 'TRACK 01 AUDIO ' and 'INDEX 01 00:00:00' lines required, or can I pare the file down to just a list of track paths (starting with 'FILE ') each followed by a 'TITLE...' line? Once I've answered those questions it's a simple matter to write a little program to automatically generate the desired cue sheet files from my automatically-generated playlist files.

If someone's done all this before, perhaps you can save me all that experimenting?

MikeFish
2007-09-05, 07:32
I might be completely wrong here but I'm pretty sure that when ripping FLACs using EAC, it generates it's own CUE files.

MikeFish
2007-09-05, 07:35
From the EAC website:
Automatic creation of CUE sheets for Burnnn, Feurio, Nero or even EAC, which can include all gaps, indicies, track attributes, UPC and ISRC and also CD-Text for an exact copy

DanielTheGreat
2007-09-05, 17:18
Thanks for the comments, MikeFish, but I don't use EAC (faaar too sloooow - I have several hundred CDs to rip). In any event, the titles obtained from CDDB are rarely suitable for my desired format, if even available (my music is 60s and earlier).
But if you could send me a sample cue sheet from EAC, that might help.
I find it a little strange that Slim Devices can claim that their system supports cue sheets, but their support people can't give me details of the supported format! Makes me wonder if anyone has actually used it successfully.
Regards, Daniel

jeebers
2007-09-06, 06:02
Looks to me like you haven't got the track times set up right.
The INDEX is the time in the file that the new track starts - i.e. INDEX 02 03:20:00 denotes that track 2 starts at 3m 20s.

Therefore I think your cue sheet should look something like this:

TITLE "Paul Simon - Various"
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\AMERICAN_TUNE[80085B0A_06].flac" FLAC
TRACK 01 AUDIO
TITLE "American Tune - Paul Simon [80085B0A_06]"
INDEX 01 00:00:00
.
.
.
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\HOBO'S_BLUES[9A081A0B_09].flac" FLAC
TRACK 06 AUDIO
TITLE "Hobo's Blues - Paul Simon [9A081A0B_09]"
INDEX 01 25:56:00
FILE "F:\TRACKS\PERFORMERS\PAUL_SIMON\KODACHROME[80085B0A_01].flac" FLAC
TRACK 07 AUDIO
TITLE "Kodachrome - Paul Simon [80085B0A_01]"
INDEX 01 28:45:00

I have several cue sheets set up that work fine.

jeebers
2007-09-06, 07:28
Just noticed you have your cue sheet pointing to different files. Excuse me if I'm missing something obvious, but why do you need a cue sheet if you have separate files? Why not just tag them?

DanielTheGreat
2007-09-06, 16:40
Jeebers,
That's right; all my tracks are in separate files, hence the starting index is always zero.

I don't yet know enough about the location and format of a FLAC tag to write a program to generate tags in the desired format, so for the time being I'm forced to resort to other methods to get Squeezebox to display the title-artist information the way I want it. Since extended playlists are not supported, cue sheets looked like the only other option.

If someone can point me to detailed FLAC format and tag information, then I could write a program to try the re-tagging approach. I certainly wouldn't have the time to re-tag 10,000+ tracks manually with a tag editor!

Siduhe
2007-09-07, 03:38
Try the following:
http://flac.sourceforge.net/faq.html#general__tagging

http://wiki.slimdevices.com/index.cgi?SlimServerSupportedTags (not entirely up to date, but a good starting point)

You may also find this helpful - http://xiph.org/vorbis/doc/v-comment.html

You sound like you've thought about this solution a lot, but creating cue sheets does sound like a lot of work just to get the tag information to display the way you want. Have you looked some of the plugins like Michael's MusicInfoScreensaver? Any chance this could achieve what you want? What is the desired format you are trying for?

I'm guessing from the section of cuesheet you posted, you may be trying to avoid the [*******] number part of the title (although it still appears in your title section, so perhaps not). If so, could you perhaps tag the files using something semi automatic like MusicBrainz Picard? Appreciate that you will have your own views about how you want to work stuff, but I'd be surprised if someone on here hasn't wrestled with the same or similar issues in the past and may have some insight.

http://www.herger.net/slim-plugins/detail.php?nr=446

DanielTheGreat
2007-09-09, 21:36
Siduhe,
Thanks for you response to my dilemma, the most considered yet.

I checked all the links you supplied about the FLAC tag format (I had previously found similar information on the 'net), but it wasn't much help. Unless I'm misinterpreting, the tag information looks like it should be stored as plain text fields, somewhere (unspecified) in the FLAC file. I had a look at one of my files (with HexEdit) and could not find a large block of text fields. There was a little text some way in from the start, with track and album gains (but mixed with non-ASCII bytes), but nothing like title or artist.

To write a program to re-write my FLAC tags, I'd need a heap more detailed info than this. As well as the layout of the tag section itself, I'd need to know where to find it (is its position variable, with a pointer?), and how to modify other aspects (e.g. pointer to the actual music data) of the FLAC file if I change the size of the tag block. And so on. Not an easy task in the absence of a 'bible' for FLAC files and their tags.

In comparison, writing a little program to generate cue sheets (or extended playlists - either would do if SlimServer properly supported them) with my desired title and artist information would be dead easy, simply be parsing and rearranging my 'master' (ALL my music tracks) playlist, which of course is generated with one simple DOS command.

I downloaded and (after searching for instructions) installed the Michael's MusicInfoScreensaver plugin you suggested. Unfortunately it comes with no instructions on how to configure it to find the title (for me: filename with underscores replaced with spaces) and artist (last sub-directory name, also with underscores replaced). So it didn't help me at all.

And no, I don't want to get rid of the [ID_trackNo] part of the track title - that's essential for differentiating between different copies of the same track, until I have time to listen to all my duplicates to decide the 'best' version and delete the rest. Though I have a program that writes all the duplicates out to a 'dups.m3u' playlist, being several hundred sets, it will need many hours of listening to do that job, spare time I won't have for a few more years.

I also had a quick look at PicardTagger, but it didn't seem suitable either. It appears to be album-centric, and I have absolutely no interest in grouping things by album (my storage schema contains [by design] no album information).

So to finish up (sorry for the rambling post), my only options still seem to be to get the SlimServer programmers to properly support either (or both) cue sheets or extended m3u playlists.

From the lack of helpful posts about cue sheets, it would seem that no-one is using standard cue sheets (i.e. in CDRWin format), or else I've posted to a little-used list!

Siduhe
2007-09-10, 01:48
Unfortunately it comes with no instructions on how to configure it to find the title (for me: filename with underscores replaced with spaces) and artist (last sub-directory name, also with underscores replaced).

Daniel, thanks for your post - I can think of a couple of decent tagging programs that will do pretty much what you have specified above. MediaMonkey for one (see the instructions below to get tags from filename and replace underscores with spaces). I'm also fairly sure you could get the artist from the subdirectory. It will also bulk convert.

http://www.mediamonkey.com/sw/webhelp/noframe/source/auto-tag%20from%20filename.htm

Is there a reason that something like this wouldn't work for you?

Mark Lanctot
2007-09-10, 07:50
I checked all the links you supplied about the FLAC tag format (I had previously found similar information on the 'net), but it wasn't much help. Unless I'm misinterpreting, the tag information looks like it should be stored as plain text fields, somewhere (unspecified) in the FLAC file. I had a look at one of my files (with HexEdit) and could not find a large block of text fields. There was a little text some way in from the start, with track and album gains (but mixed with non-ASCII bytes), but nothing like title or artist.

To write a program to re-write my FLAC tags, I'd need a heap more detailed info than this. As well as the layout of the tag section itself, I'd need to know where to find it (is its position variable, with a pointer?), and how to modify other aspects (e.g. pointer to the actual music data) of the FLAC file if I change the size of the tag block. And so on. Not an easy task in the absence of a 'bible' for FLAC files and their tags.

In comparison, writing a little program to generate cue sheets (or extended playlists - either would do if SlimServer properly supported them) with my desired title and artist information would be dead easy, simply be parsing and rearranging my 'master' (ALL my music tracks) playlist, which of course is generated with one simple DOS command.

I downloaded and (after searching for instructions) installed the Michael's MusicInfoScreensaver plugin you suggested. Unfortunately it comes with no instructions on how to configure it to find the title (for me: filename with underscores replaced with spaces) and artist (last sub-directory name, also with underscores replaced). So it didn't help me at all.

And no, I don't want to get rid of the [ID_trackNo] part of the track title - that's essential for differentiating between different copies of the same track, until I have time to listen to all my duplicates to decide the 'best' version and delete the rest. Though I have a program that writes all the duplicates out to a 'dups.m3u' playlist, being several hundred sets, it will need many hours of listening to do that job, spare time I won't have for a few more years.

I also had a quick look at PicardTagger, but it didn't seem suitable either. It appears to be album-centric, and I have absolutely no interest in grouping things by album (my storage schema contains [by design] no album information).

Perhaps I'm missing something because I don't really understand your tagging scheme or why you're making it so complicated, but couldn't this be accomplished with a tagger?

Mp3tag can tag FLAC files just fine, no need to dig into the underlying file structure, and it supports scripting and conditional statements for the complex tagging you seem to require.

DanielTheGreat
2007-09-11, 05:58
Siduhe & Mark,
Thank you both for your tagging program recommendations. I downloaded and tried both, and they will both do what I want (though it will take a lot longer than generating cue sheets with the desired titles). But since SlimServer doesn't appear to properly support cue sheets, re-tagging is the way I'll have to go.

Mark, I didn't really understand your comment "why you're making it so complicated". I can't think of a much simpler storage scheme than a directory for each artist containing tracks with filename = song title. Other than sticking all 15,000 tracks into a single directory and adding the artist name to every filename, which would produce a maintenance nightmare!

Perhaps you can elaborate on how you think my storage scheme is complicated?

Daniel

Mark Lanctot
2007-09-11, 06:16
I guess I don't understand why you're using odd catalogue-type numbers: what they are, why you need them.

"American Tune - Paul Simon [80085B0A_06]"

...what's up with the "[80085B0A_06]"? Never seen that before.

DanielTheGreat
2007-09-12, 16:29
OK Mark, now I see where you're coming from. Easily explained...

I don't use album directories for storing my music (don't see the point in preserving the artificial partitioning imoposed by obsolescent technology [CDs] when the current technology allows much more logical storage) - so all my tracks by one particular artist go into a single sub-directory for that artist (e.g. 'Paul_Simon' in the example you've quoted).

Because some songs appear on more than one CD, this means I can start out with multiple copies of the same song in one sub-directory. As you can't have two files with identical paths, I distinguish them with the CDDB ID and track number in square brackets (I don't actually use CDDB, but it provides a useful unique identifier).

AudioGrabber rips the tracks and names them with the ID_TrkNo, and a program I wrote marries that with a track titles file exported from my own music database and renames the tracks as 'Title[ID_TrkNo]'.

When I eventually finish ripping my entire collection, I will then have to find time to review all the duplicates (I also have a program that generates a playlist containing just duplicates) and delete all but the best of them (and yes, there often are differences in nominally identical copies of songs on different albums, depending on the mastering engineer).

In some cases I would then go back into my database and add a note about which is the 'best' version of a song, and the [ID_TrkNo] is then essential to be able to identify the album each duplicate comes from.

Daniel

Mark Lanctot
2007-09-12, 17:08
Wow, that's pretty comprehensive. I like the idea!

Yes, I'm not that album-based myself - I prefer Random Mix.

DanielTheGreat
2007-09-13, 16:57
I'm with you, Mark! At the end of each week, after I've ripped another dozen or two of my CDs, I run my little batch file to generate ALL.M3U, which contains every track on my server (takes about 3 seconds for about 12,000 tracks, all I've ripped so far). Then for the following week I play from ALL.M3U in 'shuffle by song' mode.

Every song is a pleasant 'surprise', and sometimes I hear a song I'll swear I've never heard before, even though it's been in my collection for years! :-)

Daniel

slimpy
2007-09-13, 18:09
AudioGrabber rips the tracks and names them with the ID_TrkNo, and a program I wrote marries that with a track titles file exported from my own music database and renames the tracks as 'Title[ID_TrkNo]'.
Daniel, have a look at metaflac, the command line tagger that comes with flac. I'm sure you can extend your program to not only change the title but also call metaflac at the same time to add artist and title information.

I'm with you, Mark! At the end of each week, after I've ripped another dozen or two of my CDs, I run my little batch file to generate ALL.M3U, which contains every track on my server (takes about 3 seconds for about 12,000 tracks, all I've ripped so far). Then for the following week I play from ALL.M3U in 'shuffle by song' mode.
Why don't you just use Random Mix? There's no need to generate a playlist with all of your music if you just want to listen to all of it in shuffle mode.

-s.

DanielTheGreat
2007-09-14, 01:34
Slimpy,
Thanks for the tip on metaflac. I found some docs on the 'net, and it looks like it might do the job. I could write a program to process ALL.M3U into a batch file that calls metaflac for every track on my server, and reprocess the tags (and run it on a day when I'm not using SlimServer, since it will take many hours). I'll need to do a little experimenting first, to clarify my understanding of the metaflac docs, but it's looking good!

I simplified my explanation of how I create my ALL.M3U file for shuffle playing. After generating the playlist with everything, I run it through my EXCLUDE program that compares each line with an exclude.txt file containing directories and/or files I want removed from my 'master' playlist. "If I don't want to play them, why are they on the server?", you may ask. Some are test tracks (DTS channel-check, etc), and some are Xmas music, which I only want to hear at Xmas! Thus Random mix doesn't quite do it for me. Not to worry, as I mentioned it takes only seconds to create ALL.M3U, even with the exclude process.

Daniel

slimpy
2007-09-14, 04:57
I simplified my explanation of how I create my ALL.M3U file for shuffle playing. After generating the playlist with everything, I run it through my EXCLUDE program that compares each line with an exclude.txt file containing directories and/or files I want removed from my 'master' playlist. "If I don't want to play them, why are they on the server?", you may ask. Some are test tracks (DTS channel-check, etc), and some are Xmas music, which I only want to hear at Xmas! Thus Random mix doesn't quite do it for me. Not to worry, as I mentioned it takes only seconds to create ALL.M3U, even with the exclude process.

This still sounds overly complicated. A lot of your workarounds can permanently be solved with proper tagging of your flac files.
Just tag your test tracks with the genre Test and your christmas music with the genre Christmas, then uncheck those two genres in the random mix configuration and you're done. When you add new music just tag them with the appropriate genre and they will never appear in your mix.

-s.

DanielTheGreat
2007-09-16, 17:15
Slimpy,
You've probably gathered that I'm a complete beginner when it comes to Squeezebox/SlimServer (is there a short-name for this system? S/S?), file tags, etc. So thanks for your many suggestions.

Being pressed for time, I haven't yet started exploring all the options available in the S/S system. I just had a quick look at Random Mix (in SlimServer), and it didn't show the sort of genres I would want. Perhaps it's just showing some defaults, and will show others when it find thems during a scan?

In any event, I couldn't see a way to save several Random Mix setups (with different combinations of genres), to replace the several variants of All.m3u I generate for different locations/capabilities/purposes, each with a different set of 'excludes'.

And retrospectively tagging my music collection with genres would seem to be a massive task. Unlike artists and track titles, which I should be able to automatically update tags for, since that information is contained in the file paths, there is no stored information about genres, and even the genre info in my database doesn't have sufficient granularity for the task.

So given that it takes my batch file less than 17 seconds to generate a master playlist and the desired subsidiary playlists (with specified exclusions), I will probably stick with this method for the time being.

Daniel

slimpy
2007-09-17, 05:46
Being pressed for time, I haven't yet started exploring all the options available in the S/S system. I just had a quick look at Random Mix (in SlimServer), and it didn't show the sort of genres I would want. Perhaps it's just showing some defaults, and will show others when it find thems during a scan?
It shows all genres that are present in your library. No defaults.

In any event, I couldn't see a way to save several Random Mix setups (with different combinations of genres), to replace the several variants of All.m3u I generate for different locations/capabilities/purposes, each with a different set of 'excludes'.
I think you haven't posted that tid bit of information before, have you? All the suggestions you get in this forum are only as good as the information you provide...

And retrospectively tagging my music collection with genres would seem to be a massive task. Unlike artists and track titles, which I should be able to automatically update tags for, since that information is contained in the file paths, there is no stored information about genres, and even the genre info in my database doesn't have sufficient granularity for the task.
Now is the time to start populating those fields. It won't get easier. Sooner or later you will want to use some functionality that relies on those tags anyway. Better do it now.
Regarding custom playlists have a look at some of erland's plugins. They should be able to do what you want (but need genre tags to do so)
http://wiki.erland.homeip.net/index.php/Dynamic_Playlist_plugin

-s.

DanielTheGreat
2007-09-18, 16:52
Slimpy,
Thanks again for your further contributions.
No, I didn't tell you all the minutia of my modus operandi because I thought my posts were already too long, and anyway we were drifting further away from the original question.

I've taken on board all the suggestions about populating the tags, but am still annoyed that this is only made necessary by the shortcomings of SlimServer (in particular its inability to correctly handle *extended* m3u playlists and cue sheets). It's also annoying that it does not handle browsing of Music Folder and Playlist orthogonally - it correctly navigates my directory structure in the Music Folder, but flattens the structure of my Playlists root directory, thus negating the crude 'genre' structure I had set up to allow playing by genre. A bad side-effect of this flattening is that SlimServer won't allow me to have the same-named playlist in two sub-directories (for 'cross-over' music that fits two [or more] genres) - do tags allow multiple genre classifications for a given track?

Getting back to the Random Mix and its display of genres, which you say are only those present in my library, this really puzzles me. I don't understand how such weird genres as 'Euro-House' and 'House' could have got into my tags, since I have no such music, and anyway FLAC would not have had any input about genres when I converted the original WAVs.

Daniel

slimpy
2007-09-19, 04:08
I've taken on board all the suggestions about populating the tags, but am still annoyed that this is only made necessary by the shortcomings of SlimServer (in particular its inability to correctly handle *extended* m3u playlists and cue sheets). It's also annoying that it does not handle browsing of Music Folder and Playlist orthogonally - it correctly navigates my directory structure in the Music Folder, but flattens the structure of my Playlists root directory, thus negating the crude 'genre' structure I had set up to allow playing by genre. A bad side-effect of this flattening is that SlimServer won't allow me to have the same-named playlist in two sub-directories (for 'cross-over' music that fits two [or more] genres) - do tags allow multiple genre classifications for a given track?
Daniel,
Slimserver is focused on tags. That's what most people use because it is keeps the audio and meta data together in the same file and is easy to maintain. There are a lot of free and non-free programs around on all platforms to edit tags. Therefore the ability for slimserver to correctly handle extended playlists isn't a priority for most users and hence the developers.
The flattening of the playlist tree is a known problem. See here: http://bugs.slimdevices.com/show_bug.cgi?id=1740
Yes, multiple values for genre are supported. Either with multiple GENRE comments where this is supported (eg flac) or multiple values in one frame (eg mp3).

Getting back to the Random Mix and its display of genres, which you say are only those present in my library, this really puzzles me. I don't understand how such weird genres as 'Euro-House' and 'House' could have got into my tags, since I have no such music, and anyway FLAC would not have had any input about genres when I converted the original WAVs.Browse by genre and you should see the tracks that are tagged with those genres. Those values must be in your files somewhere. Use a tagging program to have a close look at those files. A possible source of confusion is multiple tags in the same file (eg idv1 and idv2 in mp3 files, vorbis comments and id3 in flac).

-s.

DanielTheGreat
2007-09-21, 00:31
Slimpy,

Thanks for the bug thread link. It was good to see I'm not the only one missing the playlist directory structure browse capability. I'm glad they're planning to reintroduce it, as it will largely negate the need for me to add genre tags to my ~15,000 tracks, which would have involved a lot of manual work. The title & artist tags I will add when I've finished ripping my collection (hopefully in a few weeks), as that can be easily automated. That should then solve my info display problems. When I'm fully retired and have more time (next year?), I will look at adding genre tags :-)

Thanks again for your help and information; it's been quite educational for me!

Daniel