ziocan Posted April 14, 2016 Share Posted April 14, 2016 Hi guys, I have a 777 disc changer attached to the system and I have cover art etc displaying fine on my touch screens and remotes, however the "now playing" screen (which I thought should show artist/song info) shows the changer commands instead (numeric keypad, arrow keys etc) is this normal? Also the screen saver on the touch screen doesn't show any song information, just "disc changer" when I select the "display media" option. Now, the information is in there, why it doesn't show up? Thanks in advance... Rick Axxess Industries Support 1 Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 14, 2016 Share Posted April 14, 2016 Showing the controls is normal. I THINK so is the fact that it cannot directly display song/artist info. As far as the system is concerned, your 'current media' is merely the 777, not whatever disc etc it's playing. You have to keep in mind that the 777 is quite ancient in technology terms, thus so is it's driver (and indeed the complete proxy it is based on) - it wouldn't have been updated to have the ability to display content etc as has been done for still 'relevant' devices/proxies as nothing of the type of device has been brought out in many years by now - so there is little (no) call to try and update that old disc-changer proxy. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 14, 2016 Author Share Posted April 14, 2016 I know it's old tech, but back when it roared (not many years ago) it was widely in use with C4 (I am also not the only one who still uses it) . The driver is a 2 way driver and the controller knows the disc number and track because the 777 is sending this information back. I find it strange that when this changer was mainstream (also for DVDs) control4 did not care to include this feature into the "now playing" screen... Any "old dog" around that can confirm that this really NEVER worked? Thanks Rick Quote Link to comment Share on other sites More sharing options...
digitaltrader Posted April 14, 2016 Share Posted April 14, 2016 Prior to moving to control4 in 2010 my previous automation system had that type of functionality with the 777ES. I just dont use the DVD changers much anymore Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 14, 2016 Share Posted April 14, 2016 It's even possible that older systems had it, not sure at this time - but the disc changer proxy died with the demise of the 7000 bluray changer. Numerous changes have been made to the system and indeed to now playing/media metadata handling since. Make no mistake - I'm an 'old dog' when it comes to C4 and related. And "not so many years ago" is -for better or worse- ancient in terms of technology. Honestly - any time you can use the plural form of year, it's old. The 7000 was brought out in 2009 - and I think it was at least a year that the 777 was eol at that time (forcing C4 hack use of other models for some) but even at best it was the same year. That's 7 years+. And the 700 lasted at best until early 2012 - so that's 4 years past support. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 14, 2016 Author Share Posted April 14, 2016 I understand what you mean, and I know I am sticking to old stuff, however I am a nostalgic and prefer to have my CD coilection in a changer (same goes for my DVD collection). Fun thing is, browsing, scanning, cover art, everything is still supported, just that "now playing" feature seems to be broken. Any idea whether an open source version of the 777 driver ever existed? Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 14, 2016 Author Share Posted April 14, 2016 Here's the proof that the driver _IS_ sending those events to the controller. Track changed and Disk changed events are there, so the controller actually KNOWS what is playing now (as disc ID and track # map to the mm.db metadata database) .... 2016-04-14 15:49:43 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Disc Changer(419) fired event TrackChanged(7) 2016-04-14 15:51:53 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Disc Changer(419) fired event Stop(4) 2016-04-14 15:52:13 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Disc Changer(419) fired event DiscChanged(6) 2016-04-14 15:52:13 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Disc Changer(419) fired event Play(3) 2016-04-14 15:56:18 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Disc Changer(419) fired event TrackChanged(7) Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 14, 2016 Share Posted April 14, 2016 Sure, but the proxy still isn't able to translate that info - and there is no sense to update the proxy. No modifying the driver will change that. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 14, 2016 Author Share Posted April 14, 2016 So you're basically saying that the discchanger proxy is now broken? Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 14, 2016 Share Posted April 14, 2016 No, not broken - limited. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 14, 2016 Author Share Posted April 14, 2016 In your opinion, is there any way to update this missing information programmatically? I see that when I select a disc, the information seems to be retrieved by the controller: 016-04-14 19:11:22 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Executing command (SELECT_SOURCE) on driver Disc Changer(419) 2016-04-14 19:11:22 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Living Room(413) fired event Unknown(1007) 2016-04-14 19:11:22 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Living Room(413) fired event Unknown(1000) 2016-04-14 19:11:22 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Driver Living Room(413) fired event Unknown(1001) 2016-04-14 19:11:22 +0200 home-controller-800-000FFF5880E2 [1176] INFO: Executing command (REQUEST_CURRENT_MEDIA_INFO) on driver Disc Changer(419) If this information is tracked in a variable it should be possible to program around it.... Is there a way in the programming section of Composer to print the current value of a variable ? Thanks! R Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 14, 2016 Share Posted April 14, 2016 Program what? You CANNOT program the navigators or proxies. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 15, 2016 Author Share Posted April 15, 2016 I mean, if we had the information of the first disc/track selected, we could then trap track changed / disc changed events and keep track of where we are... then, sending this info to the navigators may be another challenge, I don't know. Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 15, 2016 Share Posted April 15, 2016 3 minutes ago, ziocan said: we could then trap track changed / disc changed events Dear me, let's not go there! It would be a simple matter as such of having a device that can simply tell you what is playing....but it keeps getting back to this - there are no disc changers with that sort of ability on the market to day in a number that makes sense for Control4 to do anything about. PERHAPS if there is enough want for it, a media proxy driver (the proxy that handles all that fancy feedback you see for other sources/streaming services) could be made to handle a disc-changer. Not saying it IS possible, but it might be. But once again - to what economic end. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 15, 2016 Author Share Posted April 15, 2016 I know, no one uses changers anymore (but me and a few other fellows). Not talking about anything that can be resold, either by C4 or by a dealer/integrator. It's just that I like to hack into things and wanted to find a way to do it for my own delight :-) My dear old 777's _can_ tell me what they're playing (it's in the protocol and the driver seem to be able to handle that). Unfortunately the 777 driver is a binary one and I can't hack it otherwise I would give it a try, just for fun. Thank you for the info and the tips anyway!! Much appreciated. Rick Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 15, 2016 Share Posted April 15, 2016 Again - doesn't matter what the driver can do, if the PROXY the driver uses has no option/tie-in to use it. No driver editing will change that. You COULD see if somehow a new driver could be made using the media proxy. Not sure if it would work - but that's where you'd be looking at. Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 17, 2016 Author Share Posted April 17, 2016 OK, after verifying (with tcpdump) that the information was actually sent by the cx777es driver to the controller, I spent some time and was able to trap the information by writing a driver which talks SOAP to director and intercepts events related to the changer. LUA output of the driver: Quote Changer ID now 419 Event from 419 is <c4soap name="OnDataToUI" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="time" type="ulong">1460930363</param><param name="data" type="xml"><lasttrack>3</lasttrack></param></c4soap> Event from 419 is <c4soap name="OnDataToUI" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="time" type="ulong">1460930423</param><param name="data" type="xml"><lasttrack>4</lasttrack></param></c4soap> Event from 419 is <c4soap name="OnVariableChanged" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="idvariable" type="ulong">1000</param><param name="type" type="ulong">4</param><param name="value" type="bool">0</param></c4soap> Event from 419 is <c4soap name="OnVariableChanged" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="idvariable" type="ulong">1000</param><param name="type" type="ulong">4</param><param name="value" type="bool">1</param></c4soap> Event from 419 is <c4soap name="OnDataToUI" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="time" type="ulong">1460930595</param><param name="data" type="xml"><lastdisc>2</lastdisc></param></c4soap> Event from 419 is <c4soap name="OnDataToUI" result="0" async="1"><param name="iddevice" type="ulong">419</param><param name="time" type="ulong">1460930812</param><param name="data" type="xml"><lasttrack>2</lasttrack></param></c4soap> As you can see I can trap power events (variable 1000), disc changed, and track changed :-) If I change to a disc and a track other than the first one, this info is not sent however (bug?) This means that for the first song of the new disc the track info can be incorrect. Well I think I can live with that... Now, my idea is to translate disc/track info to artist and song (and cover art) by looking up the mmdb, and send this info to navigators. I'll let you know :-) Rick Quote Link to comment Share on other sites More sharing options...
digitaltrader Posted April 17, 2016 Share Posted April 17, 2016 impressive! Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 18, 2016 Author Share Posted April 18, 2016 Some progress.. media DB lookup completed, now all I have to do is send info to navigators.... Disc changed event received: now 51 Disc 51: Charlie Haden & Pat Metheny - Beyond The Missouri Sky (Short Stories) - Track 1: Waltz For Ruth Track changed event received: now 2 Disc 51: Charlie Haden & Pat Metheny - Beyond The Missouri Sky (Short Stories) - Track 2: Our Spanish Love Song Disc changed event received: now 3 Disc 3: Lisa Ekdahl - Heaven, Earth & Beyond - Track 2: Open Door Track changed event received: now 3 Disc 3: Lisa Ekdahl - Heaven, Earth & Beyond - Track 3: Deep Inside Your Dreams Track changed event received: now 4 Disc 3: Lisa Ekdahl - Heaven, Earth & Beyond - Track 4: When Did You Leave Heaven Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 18, 2016 Share Posted April 18, 2016 21 minutes ago, ziocan said: now all I have to do is send info to navigators.... Which I told you would be the problem part Good luck! Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 19, 2016 Author Share Posted April 19, 2016 8 hours ago, Cyknight said: Which I told you would be the problem part Good luck! Well, to me the problem part was getting the events from the changer driver, and that is solved. I'm sure I'll find a way to make navigators receive the media information... last resort I will sniff the communication between director and navigator and mimic the protocol. As you probably already know, the entire communication is in the clear and unsecured. Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 19, 2016 Share Posted April 19, 2016 6 hours ago, ziocan said: I'm sure I'll find a way to make navigators receive the media information I doubt you will (using the disc changer proxy) - but prove me wrong! Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 19, 2016 Author Share Posted April 19, 2016 Well, actually what I think I have to do is to send updates to the navigators ON BEHALF of the disc changer proxy, which obviously isn't sending anything... Quote Link to comment Share on other sites More sharing options...
Cyknight Posted April 19, 2016 Share Posted April 19, 2016 You aren't understanding how that works the way I believe it does (and again, this is NOT my expertise so it's far from written in stone). The nav decides what to display BASED on the proxy is what I think is the case. In other words, based on the proxy is selects the transport control display vs showing any other info, based on the proxy current media is the device, not other info.... Quote Link to comment Share on other sites More sharing options...
ziocan Posted April 19, 2016 Author Share Posted April 19, 2016 Well, of course I am a newbie at all this, but I am learning fast and have a good IT background that helps me a lot. Everything else failing, I will sniff network traffic between director and touch screen and look for a way to trick the nav into thinking the disc changer is an iPod, or something like that :-) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.