question

tifr0z avatar image
tifr0z asked

Controller not receiving media status update

I am using an SDK controller on iOS along with a Custom Player. The controller can connect / disconnect / start playing media, however the onStatusChange method is never called. The communication between the controller & the player is a black box, so it's a bit hard to troubleshoot. Can someone help me figure this one out? The log entry that seems most relevant is as follow: "Connection - Could not reach service :null, on device :[device=null]. Error code :ECONNREFUSED. Message :java.net.ConnectException: failed to connect to /10.0.1.2 (port 56662): connect failed: ECONNREFUSED (Connection refused);" 10.0.1.2 is the IP address for my test Fire TV stick - so it seems that cause of the error would be a communication breakdown between fling components on the player device? I am adding here the relevant extract from the Custom Player's logs, starting just when the media URL is set by the controller: 12-15 17:33:25.191 16309-16980/com.swishly.webtv.fireosplayer D/WebTVPlayer﹕ Setting data source to http://media.w3.org/2010/05/sintel/trailer.mp4 --------- beginning of /dev/log/system 12-15 17:33:25.201 16309-16980/com.swishly.webtv.fireosplayer D/WebTVPlayer﹕ WebTV statusChange. State=PreparingMedia Condition=Good listeners = 1 12-15 17:33:25.201 16309-16980/com.swishly.webtv.fireosplayer D/WebTVPlayer﹕ Max Volume set to:15.0 12-15 17:33:25.201 16309-16309/com.swishly.webtv.fireosplayer I/Activity﹕ No ActvityExender defined. Proceed with default activity behavior. 12-15 17:33:25.201 16309-16309/com.swishly.webtv.fireosplayer V/MediaViewer﹕ onCreate() 12-15 17:33:25.201 16309-16980/com.swishly.webtv.fireosplayer D/ProxyPlayerService﹕ status change - invoking callbacks 12-15 17:33:25.211 16309-16980/com.swishly.webtv.fireosplayer D/ProxyPlayerService﹕ Invoke callback, number of callbacks=1 12-15 17:33:25.211 16309-16980/com.swishly.webtv.fireosplayer V/WebTVPlayer﹕ WebTV Sending status to listener com.amazon.whisperplay.fling.media.receiver.impl.ProxyPlayerService$1@416f41c8 12-15 17:33:25.211 16309-16980/com.swishly.webtv.fireosplayer D/WebTVPlayer﹕ Executing command com.swishly.webtv.fireosplayer.WebTVPlayer$CommandQueue$Command@417c24b8 12-15 17:33:25.211 16309-16980/com.swishly.webtv.fireosplayer D/WebTVPlayer﹕ Before Play, Waiting for player... 12-15 17:33:25.271 16309-16981/com.swishly.webtv.fireosplayer W/WhisperLink﹕ Connection - Could not reach service :null, on device :[device=null]. Error code :ECONNREFUSED. Message :java.net.ConnectException: failed to connect to /10.0.1.2 (port 56662): connect failed: ECONNREFUSED (Connection refused); 12-15 17:33:25.281 16309-16981/com.swishly.webtv.fireosplayer W/WhisperLink﹕ Connection - Exception in connection. Exception code :2; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer I/WhisperLink﹕ Connection - Excluded transport :inet; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer E/WhisperLink﹕ TTransportManager - Unable to get external transport, channel factory is null; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer E/WhisperLink﹕ TTransportManager - Unable to get external transport!; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer W/WhisperLink﹕ Connection - No route to service :null: on device :[device=null]; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer W/WhisperLink﹕ Connection - Exception in connection. Exception code :1; 12-15 17:33:25.291 16309-16981/com.swishly.webtv.fireosplayer E/ProxyPlayerService﹕ Exception, when attempting to connect to callback:[devicecb: device=[device: local=false, uuid=0285ca98D847D08EE3C44244BA3E9BFE], cb=Description(sid:cb_317261662, friendlyName:, accessLevel:0, security:0, flags:0, version:0), channel=unx, connInfo=null], reason=1, message=com.amazon.whisperlink.exception.WPTException 12-15 17:33:25.351 16309-16309/com.swishly.webtv.fireosplayer D/MediaViewer﹕ Binding to :com.swishly.webtv.fireosplayer.WebTVPlayerService 12-15 17:33:25.371 16309-16309/com.swishly.webtv.fireosplayer V/WebTVPlayerService﹕ onBind() etc...
amazon fling
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

tifr0z avatar image
tifr0z answered
Correction: 10.0.1.2 wasn't the IP address of my test fireTV device, it was the IP of the controller - which makes more sense. I found the issue, it turns out that the DiscoveryController's role goes beyond discovery: and it shouldn't be stopped after the controller is finished discovering (aka after the user selected a fire TV device)
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.