Bug 17727 - playback issues with mp3 + cue sheets combination
: playback issues with mp3 + cue sheets combination
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Streaming From SlimServer
: 7.6.0
: PC Windows 7
: P1 major with 9 votes (vote)
: 7.7.x
Assigned To: Michael Herger
: MP3::Cut::Gapless
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-11-04 14:26 UTC by Patrick
Modified: 2015-02-23 19:12 UTC (History)
4 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick 2011-11-04 14:26:22 UTC
Since the introduction of Squeezebox Server 7.6 this feature isn't working anymore as it's supposed to work. When adding an album to the playlist in the web interface and selecting a track from the cue sheet to play, the track either plays but without sound or the track plays with sound, but when it should go to the next title in the cue sheet playback just stops working and the following is shown in the server.log file:

[11-11-04 20:42:51.6071] Slim::Utils::Scanner::scanDirectory (318) Found 5 files in D:\Mp3\New\Dance Album
[11-11-04 20:43:08.3921] Slim::Utils::Misc::msg (1304) Warning: [20:43:08.3919] Error: Unable to read at least 10 bytes from file.
[11-11-04 20:45:41.6747] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.6745] Error: Unable to read entire cache file.
[11-11-04 20:45:41.9279] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.9277] Error: Unable to read at least 10 bytes from file.
[11-11-04 20:45:41.9489] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.9487] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:45:41.9608] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)
[11-11-04 20:45:41.9614] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.9613] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:45:41.9616] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)
[11-11-04 20:45:41.9619] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.9617] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:45:41.9621] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)
[11-11-04 20:45:41.9623] Slim::Utils::Misc::msg (1304) Warning: [20:45:41.9622] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:45:41.9625] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)

|
|
|
*cut* <literally thousands of the same error messages>
|
|
|

[11-11-04 20:48:18.4569] Slim::Utils::Misc::msg (1304) Warning: [20:48:18.4568] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:48:18.4571] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)
[11-11-04 20:48:18.4580] Slim::Utils::Misc::msg (1304) Warning: [20:48:18.4577] Error: Unable to read at least 4 bytes from file.
[11-11-04 20:48:18.4582] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 6221 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x7dd376c)

Also the server.log file becomes huge very quickly during this process, 137MB after 2-3 minutes and it keeps growing even after closing Logitech Media Server it's still growing and after 10-15 minutes it was more then 2GB.

I will add an example to the Large File Upload ftp directory relating to this bug report.

See also the following topic I submitted some time ago:
http://forums.slimdevices.com/showthread.php?t=89081
Comment 1 Andy Grundman 2011-11-07 05:29:43 UTC

*** This bug has been marked as a duplicate of bug 17348 ***
Comment 2 Andy Grundman 2011-12-17 09:29:37 UTC
Reopening per Patrick's message in bug 17348 that this may not be a dupe of that bug.
Comment 3 Patrick 2011-12-17 14:30:05 UTC
Besides the error messages which i posted in my first post on 2011-11-04 i also see the following error (each with a slightly different time frame) appearing thousands of times in the server.log:

[11-12-17 16:04:38.5210] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 4130 for frame 0 (5869) at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xa532004)

Also the pause button doesn't work when playing a mp3 with cue sheet loaded.
Comment 4 Patrick 2011-12-17 15:26:30 UTC
I forgot to mention i'm using a Squeezebox Classic SB3 (firmware 137) and Web Control in Google Chrome browser on Windows 7 Ultimate 64-bit (every software is up-to-date).
Comment 5 Dr Lovegrove 2011-12-21 06:10:44 UTC
I've also been seeing a similar thing since moving to 7.7 on windows (tried on both vista and win7 and with sb3 and trasp.) Still in current nightly.

Adding a big mp3 album which has been split into tracks via a .cue often plays the 1st sub-track fine, but totally wipes out the server when it moves on to track 2. I thought it might be a cross-fade bug, but it's the same with crossfade on and off. Seems to be the same for both flac and mp3 files. 

The server sits there logging away at an alarming rate:

[11-12-21 14:00:48.2513] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 15347436 for frame 143827 (3aeb6) at /<C:\PROGRA~1\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x9eecddc)
[11-12-21 14:00:48.2516] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 15347436 for frame 143827 (3aeb6) at /<C:\PROGRA~1\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x9eecddc)
[11-12-21 14:00:48.2519] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 15347436 for frame 143827 (3aeb6) at /<C:\PROGRA~1\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0x9eecddc)
Comment 6 Dr Lovegrove 2011-12-21 06:11:55 UTC
*** This bug has been confirmed by popular vote. ***
Comment 7 Patrick 2012-03-28 09:54:59 UTC
I just tried LMS 7.7.2 and I can confirm that the bug is still there. Because of this bug I can't listen to half of my music collection. Since LMS doens't handle cue sheets correctly. It plays one song and then it stops.

Can this please be fixed asap?
Comment 8 rintje 2012-03-29 00:59:40 UTC
(In reply to comment #7)
> I just tried LMS 7.7.2 and I can confirm that the bug is still there. Because
> of this bug I can't listen to half of my music collection. Since LMS doens't
> handle cue sheets correctly. It plays one song and then it stops.
> 
> Can this please be fixed asap?

I guess we have to stay at 7.6 til this is fixed... shame
Comment 9 Gialt J.M. Huininga 2012-03-29 13:12:48 UTC
I have the same issue and recognize what is said above.
Comment 10 Patrick 2012-03-29 13:44:16 UTC
@Gialt J.M. Huininga

Thanks for your support, would you be so kind to click the vote button as well?
Comment 11 Alan Young 2012-03-30 05:09:20 UTC
The Version field is intended to indicate the earliest known version in which this problem occurs, not the most recent. Resetting to 7.6.

This issue has previously been evaluated by Logitech and assessed as 'normal' severity. CUE files are not an advertised feature of the product set.
Comment 12 Patrick 2012-03-30 07:08:01 UTC
@Alan Young

Thanks for correcting and explaining.

I've just added a test file on the Large File Upload location referring to this bug report (namely [Bug 17727] Example mp3+cue sheet.rar).

I'm using LMS in combination with my SB3 (I think the problem lies purely in LMS, but I don't know if it's just happening with the SB3).

The moment it should go to the next track in the cue sheet, playback stops and literally spams the server.log file, which becomes huge in a very short time (I've seen it become more then 1GB). The only way to stop the log file from growing is to stop the Logitech Media Server.
The moment it goes wrong it says "Error: Unable to read entire cache file." after that message it just repeats the next message endlessly till the LMS is stopped.

[log]

[12-03-30 14:50:19.0372] Slim::Utils::Misc::msg (1304) Warning: [14:50:19.0370] Error: Unable to read entire cache file.
[12-03-30 14:50:19.9614] Slim::Utils::Misc::msg (1304) Warning: [14:50:19.9612] Error: Unable to read at least 4 bytes from file.
[12-03-30 14:50:20.0521] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 16663 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xb65eabc)
[12-03-30 14:50:20.0529] Slim::Utils::Misc::msg (1304) Warning: [14:50:20.0528] Error: Unable to read at least 4 bytes from file.
[12-03-30 14:50:20.0531] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 16663 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xb65eabc)
[12-03-30 14:50:20.0534] Slim::Utils::Misc::msg (1304) Warning: [14:50:20.0532] Error: Unable to read at least 4 bytes from file.
[12-03-30 14:50:20.0535] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Unable to read frame 16663 at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xb65eabc)

***CUT***

[/log]

Logitech Media Server Version: 7.7.2 - r33893 @ Wed Mar 14 05:47:42 PDT 2012 
Hostname: Laguna 
Server IP Address: 192.168.1.62 
Server HTTP Port Number: 9000 
Operating system: Windows 7 - EN - cp1252 
Platform Architecture: 8664 
Perl Version: 5.14.1 - MSWin32-x86-multi-thread 
Database Version: DBD::SQLite 1.34_01 (sqlite 3.7.7.1) 
Total Players Recognized: 1
Player Model: Squeezebox Classic 
Firmware: 137
Comment 13 Patrick 2012-03-30 08:04:34 UTC
Also after it goes wrong (as in song playing in web control, not visibly playing on SB3 and no sound output) the pause button restarts the current track instead of pausing the track.
When you then try to play the first track again (which worked fine the first time) that also doesn't play anymore and shows different error messages (again flooding the server.log file) in the log file as shown below, than when you try to play the other tracks. If you choose any other track than the first track you get the error messages shown in the post above.

[12-03-30 16:24:48.0731] Slim::Utils::Misc::msg (1304) Warning: [16:24:48.0729] Error: Unable to read entire cache file.
[12-03-30 16:24:48.3285] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 34 for frame 0 (5869) at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xa64e704)
[12-03-30 16:24:48.3321] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 34 for frame 0 (5869) at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xa64e704)
[12-03-30 16:24:48.3326] Slim::Networking::IO::Select::__ANON__ (147) Error: Select task failed calling Slim::Web::HTTP::sendStreamingResponse: Invalid frame offset 34 for frame 0 (5869) at /<C:\PROGRA~2\SQUEEZ~1\server\SQUEEZ~3.EXE>Slim/Player/Protocols/File.pm line 250.
; fh=Slim::Web::HTTP::ClientConn=GLOB(0xa64e704)
Comment 14 Patrick 2012-04-06 10:23:37 UTC
I'm changing it to major again since it is mentioned as a feature in the change log:

-Cue sheet support has been improved. The following formats will currently work with cue sheets, including seeking:
*FLAC (native)
*Ogg Vorbis (native)
*MP3 (native)
*MPEG-4 AAC (native and transcoded)
*MPEG-4 ALAC (native and transcoded)
*WAV/AIFF (native and transcoded)
*WMA (native)
*WavPack (transcoded)
- MP3 cue sheet tracks are now played without gaps. A full rescan is required and scan time will be slower for these tracks.

@Andy Grundman

Do you have any news on this bug? It has been months since your last response.
Comment 15 Mikael Nyberg 2012-04-13 09:04:21 UTC
I don't have the original bug as described here .

But it tried one of the cue+mp3 combos offered innthis tread .

http://forums.slimdevices.com/showthread.php?94349-Please-vote-to-help-fix-bug-in-7-6-x-7-7-x/page2

And had issues ( se the tread ).

These issues was resolved if I removed the CRLF line terminators in the file ?

So LMS7.8 has issues scanning ASCII text files with CRLF line terminators .

Now I'm on a completely different OS and perl version so it may be the same issue but with less severe consequences .
Comment 16 Mikael Nyberg 2014-06-23 05:04:56 UTC
Revisiting http://forums.slimdevices.com/showthread.php?94349-Please-vote-to-help-fix-bug-in-7-6-x-7-7-x/page2

Imy solution only fixed it for Linux ?
Comment 17 Patrick 2014-12-12 12:26:17 UTC
Just updated to LMS 7.7.5 and I can confirm this bug is still not resolved :(
Comment 18 Michael Herger 2015-02-06 08:39:57 UTC
Could someone please attach a sample file to this bug report? The download links in that thread have expired.
Comment 19 carp 2015-02-10 09:19:39 UTC
(In reply to comment #18)
> Could someone please attach a sample file to this bug report? The download
> links in that thread have expired.

Michael, I sent you a private message (my files are too big to become attached to this thread).
Comment 20 Michael Herger 2015-02-10 09:41:38 UTC
Thanks carp - got your files.

Is anybody seeing this issue with an OS other than Windows? All log snippets seem to be Windows only, and I can't reproduce it on my Mac.
Comment 21 Michael Herger 2015-02-10 09:50:32 UTC
Ok, can easily reproduce it on Windows.
Comment 22 Michael Herger 2015-02-10 10:48:37 UTC
There's most likely a bug in the module used to improve gapless playback of mp3 files with cue sheets. I haven't been able to track down what exactly is causing it. But it seems to be Windows only. I've therefore disabled it for now on that platform (all 7.x versions). In my little testing this didn't harm the gaplessness - while it restored playback.

Please give tomorrow's build another try. Thanks!
Comment 23 carp 2015-02-12 22:12:00 UTC
(In reply to comment #22)
> Please give tomorrow's build another try. Thanks!

Today I installed "Logitech Media Server Version: 7.9.0 - 1423658968" on my Windows Home Server v1. After the music scan completed, I tried one CUE+MP3 - seems like it is working now! Gapless playback works, skipping tracks works, fast forward and rewind works - very fine!
Comment 24 Michael Herger 2015-02-13 05:27:14 UTC
Thanks for the confirmation!
Comment 25 Patrick 2015-02-23 17:35:30 UTC
Hi Michael thanks for taking notice of this bug, I almost gave up hope that the team would get around to it.

Now some questions. In which final build will the fix be included? And in which versions did you disable it? You said in all 7.x versions, does that include current version 7.7.5, which can be downloaded from the Logitech site? Or just nightly builds from 7.7.6, 7.8.1 and 7.9.0?
Comment 26 Michael Herger 2015-02-23 19:12:38 UTC
7.7.5 has been released months ago. No more changes there. You'll have to install a nightly build.