Cue sheet file support

Request a new feature to add to Muso, or vote +1/-1 for anyone else's suggestion. Even just a few votes will get it looked into (just one possibly not).
marcoc1712
Posts: 22
Joined: Sun Aug 02, 2015 10:52 am
Location: Albinea, Reggio Emilia, Italy
Contact:

Re: Cue sheet file support

Post by marcoc1712 »

musoware wrote:Had same issue with your flac/cue - trying the clear db & rescan next.
I could confirm you that that specific pair of files is working in Windows, Linux (Ubuntu) and macOsX, usinf LMS 7.9 latest build, but it should also with 7.8.
musoware
Site Admin
Posts: 1849
Joined: Fri Sep 14, 2012 6:50 am

Re: Cue sheet file support

Post by musoware »

It took 1 hour 12 minutes to clear & rescan my library. The result? No change...

I'm willing to try any other suggestions but I'm starting to lose hope that this can be made to work!

I'll see if I can upgrade LMS to 7.9 maybe, or at least install a trial 7.9 on my windows box.
marcoc1712
Posts: 22
Joined: Sun Aug 02, 2015 10:52 am
Location: Albinea, Reggio Emilia, Italy
Contact:

Re: Cue sheet file support

Post by marcoc1712 »

! hour and 12 min?

that's my Library on an 9 years old AMD Athlon Dual Core 6000+.

Code: Select all


Library Statistics
Total Tracks: 52,228
Total Albums: 3,539
Total Artists: 8,478
Total Genres: 42
Total Playing Time: 0:00:00
 
Media Scan Details
Discovering files/directories: G:\Documents and Settings\marco\Documenti\Musica\MyLibHome   (1 of 1)   Complete  00:00:01
Discovering files/directories: E:\Audiophile   (48 of 48)   Complete  00:00:00
Scanning new music files: E:\Audiophile   (28 of 28)   Complete  00:00:04
Discovering files/directories: E:\Blues   (152 of 152)   Complete  00:00:00
Scanning new music files: E:\Blues   (84 of 84)   Complete  00:00:06
Discovering files/directories: F:\Classica   (6529 of 6529)   Complete  00:00:41
Scanning new music files: F:\Classica   (3733 of 3733)   Complete  00:06:06
Discovering files/directories: E:\Disco   (6 of 6)   Complete  00:00:00
Scanning new music files: E:\Disco   (2 of 2)   Complete  00:00:00
Discovering files/directories: E:\Jazz   (1876 of 1876)   Complete  00:00:11
Scanning new music files: E:\Jazz   (950 of 950)   Complete  00:01:12
Discovering files/directories: E:\Latina   (19 of 19)   Complete  00:00:00
Scanning new music files: E:\Latina   (8 of 8)   Complete  00:00:00
Discovering files/directories: E:\Lounge   (10 of 10)   Complete  00:00:01
Scanning new music files: E:\Lounge   (4 of 4)   Complete  00:00:00
Discovering files/directories: E:\Rock   (4780 of 4780)   Complete  00:00:34
Scanning new music files: E:\Rock   (2437 of 2437)   Complete  00:03:14
Discovering playlists: G:\Documents and Settings\marco\Documenti\Musica\Playlists   (2 of 2)   Complete  00:00:01
Scanning new playlists: G:\Documents and Settings\marco\Documenti\Musica\Playlists   (1 of 1)   Complete  00:00:00
Building full text index   (7 of 7)   Complete  00:01:49
Create library views   (9 of 9)   Complete  00:00:06
Pre-caching Artwork   (3550 of 3550)   Complete  00:02:42
Database Optimize   (2 of 2)   Complete  00:02:41
The server has finished scanning your media library.
Total Time: 00:19:29 (Monday 21 March 2016 / 07.24.49)
Allmost all of them ar WAV + CUE files.
I really suggest you to:

a. Clear the cache
b. change your media folder to the location with JUST the two files I've sent to You.
c. enable debug logging over scanner
d. wipe and rescan

Should take seconds.

See if it's working. If not, look at the scanner log, you should find some self explanatory message about cue sheets handling there.

BUT if you don't need to stay with 7.8, I'll first upgrade to 7.9, that for sure it works, then same procedure.
musoware
Site Admin
Posts: 1849
Joined: Fri Sep 14, 2012 6:50 am

Re: Cue sheet file support

Post by musoware »

Well I've just tried a brand new LMS 7.9 installation on Windows (install, point db to folder containing your album amongst a few others, full scan, import from LMS into muso, play test album), and I'm STILL getting the same error on trying to play tracks which have been imported with the #secs extension. Very strange.

Scanner log:

Code: Select all

[16-03-21 20:21:20.4055] main::main (205) Starting Logitech Media Server scanner (v7.9.0, 1458287071, Mon Mar 21 04:05:20 CUT 2016) perl 5.014001
[16-03-21 20:21:20.5417] Slim::Schema::forceCommit (2149) Warning: Trying to commit transactions before DB is initialized!
[16-03-21 20:21:25.9670] Slim::Music::Import::runImporter (511) Starting Slim::Media::MediaFolderScan scan
[16-03-21 20:21:25.9674] Slim::Utils::Scanner::Local::rescan (181) Discovering audio files in \\192.168.1.69\files\music\flac\2016_03
[16-03-21 20:22:56.7986] Slim::Utils::Scanner::Local::__ANON__ (193) Start processing found tracks
[16-03-21 20:22:56.7993] Slim::Utils::Scanner::Local::__ANON__ (201) Connect do DB
[16-03-21 20:22:56.7998] Slim::Utils::Scanner::Local::__ANON__ (204) Get latest ID
[16-03-21 20:22:56.8007] Slim::Utils::Scanner::Local::__ANON__ (226) Delete temporary table if exists
[16-03-21 20:22:56.8015] Slim::Utils::Scanner::Local::__ANON__ (229) Re-build temporary table
[16-03-21 20:22:56.8065] Slim::Utils::Scanner::Local::__ANON__ (278) Get deleted tracks count
[16-03-21 20:22:56.8071] Slim::Utils::Scanner::Local::__ANON__ (285) Get new tracks count
[16-03-21 20:22:56.8079] Slim::Utils::Scanner::Local::__ANON__ (290) Get changed tracks count
[16-03-21 20:22:56.8085] Slim::Utils::Scanner::Local::__ANON__ (296) Removing deleted audio files (0)
[16-03-21 20:22:56.8091] Slim::Utils::Scanner::Local::__ANON__ (374) Scanning new audio files (386)
[16-03-21 20:23:37.2858] Slim::Utils::Scanner::Local::new (891) Handling new playlist file:////192.168.1.69/files/music/flac/2016_03/Fabrizio%20Paterlini/Fragments%20Found/01%20Fabrizio%20Paterlini%20-%20Fragments%20Found.cue
[16-03-21 20:23:39.1315] Slim::Utils::Scanner::Local::new (891) Handling new playlist file:////192.168.1.69/files/music/flac/2016_03/Fabrizio%20Paterlini/Viandanze/01%20Fabrizio%20Paterlini%20-%20Viandanze.cue
[16-03-21 20:24:40.9000] Slim::Utils::Scanner::Local::new (891) Handling new playlist file:////192.168.1.69/files/music/flac/2016_03/adagio/Adagio.cue
[16-03-21 20:24:54.0709] Slim::Utils::Scanner::Local::__ANON__ (454) Rescanning changed audio files (0)
[16-03-21 20:24:54.2597] Slim::Music::Import::endImporter (643) Completed Slim::Media::MediaFolderScan Scan in 208 seconds.
[16-03-21 20:24:54.2605] Slim::Music::Import::runImporter (511) Starting Slim::Music::PlaylistFolderScan scan
[16-03-21 20:24:54.2617] Slim::Utils::Scanner::Local::rescan (181) Discovering audio files in C:\Users\JeremyB\Music\Playlists
[16-03-21 20:24:54.2805] Slim::Utils::Scanner::Local::__ANON__ (193) Start processing found tracks
[16-03-21 20:24:54.2808] Slim::Utils::Scanner::Local::__ANON__ (201) Connect do DB
[16-03-21 20:24:54.2811] Slim::Utils::Scanner::Local::__ANON__ (204) Get latest ID
[16-03-21 20:24:54.2815] Slim::Utils::Scanner::Local::__ANON__ (226) Delete temporary table if exists
[16-03-21 20:24:54.2819] Slim::Utils::Scanner::Local::__ANON__ (229) Re-build temporary table
[16-03-21 20:24:54.2852] Slim::Utils::Scanner::Local::__ANON__ (278) Get deleted tracks count
[16-03-21 20:24:54.2855] Slim::Utils::Scanner::Local::__ANON__ (285) Get new tracks count
[16-03-21 20:24:54.2859] Slim::Utils::Scanner::Local::__ANON__ (290) Get changed tracks count
[16-03-21 20:24:54.2862] Slim::Utils::Scanner::Local::__ANON__ (296) Removing deleted audio files (0)
[16-03-21 20:24:54.2865] Slim::Utils::Scanner::Local::__ANON__ (374) Scanning new audio files (0)
[16-03-21 20:24:54.2867] Slim::Utils::Scanner::Local::__ANON__ (454) Rescanning changed audio files (0)
[16-03-21 20:24:54.2870] Slim::Music::Import::endImporter (643) Completed Slim::Music::PlaylistFolderScan Scan in 0 seconds.
[16-03-21 20:24:54.2941] Slim::Music::Import::runImporter (511) Starting Slim::Plugin::FullTextSearch::Plugin scan
[16-03-21 20:24:54.2948] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (396) Starting fulltext index build
[16-03-21 20:24:54.2951] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (400) Initialize fulltext table
[16-03-21 20:24:54.2987] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (406) Create fulltext index for tracks
[16-03-21 20:24:54.3929] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (416) Create fulltext index for albums
[16-03-21 20:24:54.4257] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (425) Create fulltext index for contributors
[16-03-21 20:24:54.4344] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (435) Create fulltext index for playlists
[16-03-21 20:24:54.4433] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (470) Optimize fulltext index
[16-03-21 20:24:54.5338] Slim::Plugin::FullTextSearch::Plugin::_rebuildIndex (485) Fulltext index build done!
[16-03-21 20:24:54.5344] Slim::Music::Import::endImporter (643) Completed Slim::Plugin::FullTextSearch::Plugin Scan in 0 seconds.
[16-03-21 20:24:54.5426] Slim::Music::Artwork::precacheAllArtwork (619) Starting precacheArtwork for 33 albums
[16-03-21 20:25:16.5509] Slim::Music::Artwork::__ANON__ (738) precacheArtwork finished in 22.001247882843
[16-03-21 20:25:16.5514] Slim::Music::Import::endImporter (643) Completed precacheArtwork Scan in 22 seconds.
[16-03-21 20:25:16.5742] Slim::Music::Import::runScanPostProcessing (435) Starting Database optimization.
[16-03-21 20:25:16.8462] Slim::Music::Import::endImporter (643) Completed dbOptimize Scan in 0 seconds
I've just noticed something a bit weirder though - you can play the album through the web interface(browsing to it via music folder or artist), but it only seems to be playing the first track, skipping tracks reports that it is playing track 2,3 etc but no audio is actually coming through, other than for the first track. If you leave the album playing right through the first track it also seems to get stuck on the second.
marcoc1712
Posts: 22
Joined: Sun Aug 02, 2015 10:52 am
Location: Albinea, Reggio Emilia, Italy
Contact:

Re: Cue sheet file support

Post by marcoc1712 »

Log is talking abot 386 audio files, 3 cue, 0 playlists and 33 albums. No errors, then it should be OK.

If you now are reaching the cue via music folder browse, could open it and see tracks in the left panel, then click on "play all tracks" (or just click on play over the cue) getting the right pane populated, means database should be correct and CLI working as it should.

It's like that?

If so, we are now facing a different problem here.

Please check in Settings -> advanced -> File Type, what settings you have for FLAC.

should be something like

FLAC FLAC native (should be disabled)
FLAC PCM FLAC (that's what we need)
FLAC MP3 disabled

then you should have NO custom-conver.conf and only the convet.conf file with the line:

Code: Select all

flc pcm * *
	# FT:{START=--skip=%t}U:{END=--until=%v}
	[flac] -dcs --force-raw-format --endian=little --sign=signed $START$ $END$ -- $FILE$
in it.

Problem is that we need to split the flac file at runtime and to do this we need the 'capability to search' (T), in this case provided by FLAC application, that needs to decode first. You could then encode directly to MP3 instead of PCM, but this way is lossless and bitperfect.

No needs to rescan, this has nothing to do with database, it take place only at play time.

When done, be sure you could browse music folder (please, use music folder browse, not artist/album, it's a completely different way) select and open the cue file, then

a. enqueue all its contents to the playlist. This will ensure us database is correct and CLI is working.
b. skip to next track.
c. try to enqueue (play) ONLY one track at once, different from the first.

Everything should work that way.
musoware
Site Admin
Posts: 1849
Joined: Fri Sep 14, 2012 6:50 am

Re: Cue sheet file support

Post by musoware »

marcoc1712 wrote: Please check in Settings -> advanced -> File Type, what settings you have for FLAC.

should be something like

FLAC FLAC native (should be disabled)
FLAC PCM FLAC (that's what we need)
FLAC MP3 disabled

then you should have NO custom-conver.conf and only the convet.conf file with the line:

Code: Select all

flc pcm * *
	# FT:{START=--skip=%t}U:{END=--until=%v}
	[flac] -dcs --force-raw-format --endian=little --sign=signed $START$ $END$ -- $FILE$
in it.
Is this correct then?
files.PNG
files.PNG (2.15 KiB) Viewed 4637 times
Where do I find that converter config?

Also how do I do these things?
. Clear the cache
. Enable debug logging over scanner

Problem I was having with 7.9 is that my windows box has a firewall which is locked down & I can't open it up to allow device connection, so I'm connecting a softsqueeze instance on the same box to it, rather than a real device - so I'm not sure this was a valid test, and could explainthe problems I was having playing individual tracks within the cue file. My Vortexbox 7.8 instance can play individual tracks within the .cue file if I play the containing folder, though it still doesn't offer a play option on the .cue file itself, and of course queueing/playing via the CLI still doesn't work for me.

My Vortexbox provider, LIV Concepts, aren't yet offering a supported VB 2.4 upgrade which would include LMS 7.9. I may have to shelve this enhancement until they do, unless you are sure all this should work in 7.8 too.
RichG
Posts: 215
Joined: Fri Feb 01, 2013 4:46 pm

Re: Cue sheet file support

Post by RichG »

Just a little note - according to the changelog, there has been quite a few changes to CUE file behaviour in 7.9

http://htmlpreview.github.io/?https://g ... elog7.html
musoware
Site Admin
Posts: 1849
Joined: Fri Sep 14, 2012 6:50 am

Re: Cue sheet file support

Post by musoware »

Thanks Rich - yes "Complete re-write of the CUE sheet parsing" would seem to suggest I would need to be on 7.9 before doing any further development in this area.
marcoc1712
Posts: 22
Joined: Sun Aug 02, 2015 10:52 am
Location: Albinea, Reggio Emilia, Italy
Contact:

Re: Cue sheet file support

Post by marcoc1712 »

Yes, 'Complete re-write of the CUE sheet parsing" is (also) from me, but nothing has been done about CLI or decoding, is just about HOW and WHAT metadata are handled (cue.pm). I think changes on music folder browsing are more related to your problem, in effect before that changes, the only way to enqueue a cue file was to 'play' the folder. This obviously was a bug and I was thinking Mikael was porting this specific correction also in 7.8, but in any evidence is not like that.

Anyway, if it is working that way, the DB is correctly populated and CLI should work, but 7.9 is so different in so many aspects than 7.8 that I really suggest you to move to it ASAP.

Answering to your questions:

To clear the cache, just delete the content of the cache folder (see settings -> info -> cache folder). You could retain the sub directories in it (Installed plugins, Downoladed plugins...) and delete only the db related files, or simply delete the folder and let LMS reinstall plugins (should be automatic).

To enable/disable/change logging level to any component of LMS, go to Settings-> Advanced -> Log, then select the level for each component."
For scanner you have:

(scan) - All Scan Logging
(scan.auto) - Automatic Media & Playlist Scanning
(scan.import) - File & Playlist Metadata Import Logging
(scan.scanner) - Media & Playlist Folder Scanning

By the way, you have also "plugin CLI" to enable logging on CLI commands.

I don't think your problem are related to the firewall, but I don't know how softsqueeze works and if it correcty handle cue sheet, sorry about that, why don't just install squeezelite locally and use the web gui to controll it?

About conversion:

You have Native playback, pcm and Aiff converter enabled. I think it's using Native in that case, but i suggest you to set things like that:

FLAC FLAC disabled
FLAC AIFF disabled
FLAC PCM flac

MP3 is disabled, probably becouse you don't have LAME installed, that's fine.

This way, every and ALL flac file will be decoded to PCM, using the line i've posted or similar.

To check wich line is actually in use is not so simple, it could be defined in many different point, as the server load transcoding command from different files in this order:

- in server folder Convert.conf file.
- in server folder custom-convert.conf file.
- in ANY plugin's home folder custom-convert.conf file (I don't know the relative order)

Commands are loadder in an hash table in memory where the key is:

in format, out format, player model, player id (mac address).

We could use "*" as wildchar for player model and palyer id, a special command is "-" mean no conversion (native on the gui).

In Simple installations, you just have convert.conf in the server foder, and you should have that line among others. I assume this should be your case, if you did not installed transcoding plugins or created the custom-convert.conf file by yourself, then enabling FLAC PCM in fyle Types advanced settings, you are enabling that specfic conversion line..

I know is overcomplicated , that's why I've made a plugin to make thing much simpler.
musoware
Site Admin
Posts: 1849
Joined: Fri Sep 14, 2012 6:50 am

Re: Cue sheet file support

Post by musoware »

Getting some joy now on another new LMS 7.9 instance on Windows, but only if I prefix the file spec with file://, i.e.:

Code: Select all

fpath = myFormatting.SQEncode("file://" + fileName); // WORKS! 
string cmd = currentPlayer + " playlist add " + fpath;
Non-cue-based file paths don;t seem to care whether file:// is in the path, but cue-based files seem to for some reason. So this sends, for example:

Code: Select all

00%3A04%3A20%3A07%3A40%3Ae2 playlist play file:%2F%2F%2F%2F192%2E168%2E1%2E69%2Ffiles%2Fmusic%2Fflac%2F2016_03%2Fadagio%2FAdagio%2Eflac%233006%2D3371
and this works. I do worry that this may not work (or need a tweak) on Linux 7.9 hosts, but I can probably build something from this to trial with the community. I'm not intending to scan .cue files on a file/folder scan, but this solution will at least import .cue-based albums from LMS and allow playpack through squeezebox players, without having to split the media file.
Post Reply