Bugzilla – Bug 5950
mms direct stream play does not work
Last modified: 2007-10-29 08:38:25 UTC
Hello! In 6.5.4 all my mms streams play fine. Now with latest Build 7.0a1 from 28. October. I always get for all streams: [18:23:56.2123] Slim::Player::Squeezebox2::directHeaders (475) Direct stream failed for url: [mms://stream1.orf.at/fm4_live] [18:23:56.2133] Slim::Player::Squeezebox2::failedDirectStream (599) Oh, well failed to do a direct stream for: mms://stream1.orf.at/fm4_live [] [18:23:56.2145] Slim::Player::Source::errorOpening (1598) Error: While opening current track, so mark it as already played! [18:23:56.2158] Slim::Player::Source::errorOpening (1598) Backtrace: frame 0: Slim::Utils::Log::logBacktrace (/usr/share/perl5/Slim/Player/Source.pm line 1598) frame 1: Slim::Player::Source::errorOpening (/usr/share/perl5/Slim/Player/Squeezebox2.pm line 604) frame 2: Slim::Player::Squeezebox2::failedDirectStream (/usr/share/perl5/Slim/Player/Squeezebox2.pm line 477) frame 3: Slim::Player::Squeezebox2::directHeaders (/usr/share/perl5/Slim/Networking/Slimproto.pm line 554) frame 4: Slim::Networking::Slimproto::_http_response_handler (/usr/share/perl5/Slim/Networking/Slimproto.pm line 429) frame 5: Slim::Networking::Slimproto::client_readable (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 6: (eval) (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 7: Slim::Networking::Select::select (/usr/sbin/slimserver line 487) frame 8: main::idle (/usr/sbin/slimserver line 437) frame 9: main::main (/usr/sbin/slimserver line 979)
More Output: [18:40:45.4791] Slim::Player::Squeezebox::stream (986) This player supports direct streaming for mms://stream1.orf.at/fm4_live as mms://stream1.orf.at/fm4_live, let's do it. [18:40:45.5026] Slim::Player::Squeezebox::stream (1017) setting up direct stream (3270011058:80) autostart: 3. [18:40:45.5035] Slim::Player::Squeezebox::stream (1018) request string: GET /fm4_live HTTP/1.0 Accept: */* User-Agent: NSPlayer/4.1.0.3856 Host: stream1.orf.at Pragma: xClientGUID={c88c2251-997b-10de-c524-1d0375beb74d} Pragma: no-cache,rate=1.0000000,stream-time=0,stream-offset=0:0,request-context=2,max-duration=0 Pragma: xPlayStrm=1 Pragma: stream-switch-count=1 Pragma: stream-switch-entry=ffff:1:0 [18:40:45.7260] Slim::Player::Squeezebox2::directHeaders (298) Processing headers for direct streaming: HTTP/1.0 200 OK Content-Type: application/x-mms-framed Server: Cougar/9.01.01.3841 Date: Sun, 28 Oct 2007 17:40:43 GMT Pragma: no-cache, client-id=1320426531, xResetStrm=1, features="broadcast", AccelBW=0, AccelDuration=0, Speed=1.000 Cache-Control: no-cache Last-Modified: Sun, 28 Oct 2007 17:40:43 GMT Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.predstrm, com.microsoft.wm.fastcache, com.microsoft.wm.startupprofile Connection: keep-alive [18:40:45.7277] Slim::Player::Squeezebox2::directHeaders (357) Processing 8 headers [18:40:45.7426] Slim::Player::Squeezebox2::directHeaders (407) Got a stream type: audio/mpeg bitrate: title: [18:40:45.7440] Slim::Player::Squeezebox2::directHeaders (475) Direct stream failed for url: [mms://stream1.orf.at/fm4_live] [18:40:45.7449] Slim::Player::Squeezebox2::failedDirectStream (599) Oh, well failed to do a direct stream for: mms://stream1.orf.at/fm4_live [] [18:40:45.7460] Slim::Player::Source::errorOpening (1598) Error: While opening current track, so mark it as already played! [18:40:45.7476] Slim::Player::Source::errorOpening (1598) Backtrace: frame 0: Slim::Utils::Log::logBacktrace (/usr/share/perl5/Slim/Player/Source.pm line 1598) frame 1: Slim::Player::Source::errorOpening (/usr/share/perl5/Slim/Player/Squeezebox2.pm line 604) frame 2: Slim::Player::Squeezebox2::failedDirectStream (/usr/share/perl5/Slim/Player/Squeezebox2.pm line 477) frame 3: Slim::Player::Squeezebox2::directHeaders (/usr/share/perl5/Slim/Networking/Slimproto.pm line 554) frame 4: Slim::Networking::Slimproto::_http_response_handler (/usr/share/perl5/Slim/Networking/Slimproto.pm line 429) frame 5: Slim::Networking::Slimproto::client_readable (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 6: (eval) (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 7: Slim::Networking::Select::select (/usr/sbin/slimserver line 513) frame 8: main::idleStreams (/usr/share/perl5/Slim/Control/Queries.pm line 2889) frame 9: Slim::Control::Queries::statusQuery (/usr/share/perl5/Slim/Control/Request.pm line 1712) frame 10: (eval) (/usr/share/perl5/Slim/Control/Request.pm line 1712) frame 11: Slim::Control::Request::execute (/usr/share/perl5/Slim/Web/JSONRPC.pm line 354) frame 12: Slim::Web::JSONRPC::requestMethod (/usr/share/perl5/Slim/Web/JSONRPC.pm line 201) frame 13: (eval) (/usr/share/perl5/Slim/Web/JSONRPC.pm line 201) frame 14: Slim::Web::JSONRPC::handleURI (/usr/share/perl5/Slim/Web/HTTP.pm line 486) frame 15: Slim::Web::HTTP::processHTTP (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 16: (eval) (/usr/share/perl5/Slim/Networking/Select.pm line 243) frame 17: Slim::Networking::Select::select (/usr/sbin/slimserver line 487) frame 18: main::idle (/usr/sbin/slimserver line 437) frame 19: main::main (/usr/sbin/slimserver line 979)
I've solved this with: File: /usr/share/perl5/Slim/Player/Squeezebox2.pm Replace: } elsif ($client->contentTypeSupported($contentType)) { with } elsif ($contentType eq "audio/mpeg" || $client->contentTypeSupported($contentType)) { I'm not shure if this is the right behavior - the other idea is. To strip down $contentType with $contentType =~ s#^audio/##; and then we've to add type mpeg to $client->formats(). Thanks
please leave target undefined. This is for qa to set after a review.
OK - my "patch" fixes the play problem - but there seems to be another one. I can now play an wma / mms stream it works nicely. But when i shutdown the squeezebox and want to play it again some time later - it does not work. All other streams works except wma / mms streams. When i reboot the slimserver / squeezecenter it works again.
Will look into this.
My fault, fixed in change 14171.