Is there a new build coming??

Sep 4, 2009 at 11:49 AM

Hi

Just starting to have a liitle play with this great ap! Its been a while since the last build was posted on codePlex. Will there been a new version with any new features in the near future?

 

davey

Sep 4, 2009 at 2:46 PM
Edited Sep 4, 2009 at 2:47 PM

Sorry, replied to the wrong forum... *blush*

Coordinator
Sep 4, 2009 at 5:33 PM
Edited Sep 4, 2009 at 5:35 PM

I've got a fairly major checkin coming that will result in a new release - I'll (hopefully) fix the type command bug (can't sent shifted keys - e.g. !@#$...) I'll have a bunch of new commands around Photos in the library and some audio imporvements. Currently the new commands look like (subject to change):

 

=== Photo Library Commands: ==========

This is a set of tools to search, filter, and display (serve) the photos in the media center library. Especially usefull if you have the images tagged!

  • photo-list - list photos that match the specified filters (is tagged, is not tagged, and dates)
  • photo-play - starts a slideshow with the specified images (not impemented yet)
  • photo-queue - adds the specified images to the playing slideshow (not impemented yet)
  • photo-tag-list - lists all the tags in the collection (or specified images)
  • photo-serv - serves the image (resized if desired)
  • photo-clear-list-cache - clears the cache (normally only cleared when the number of images in the collection change)
=== Music Library Commands: ==========

The idea is that this set of commands will functionally replace the "Audio library commands", they are faster more versitle and more robust (they are based on the actual artist / album names instead of just an index into the entire collection) I've also included caching so that results are only regenerated when needed. I am NOT deleting the current Audio library commands so exising applications will continue to work

  • music-list-artists - lists all the matching artists (match based on partial or full artist and album names) in the library (does not include any info beyond the artist names)
  • music-list-albums - lists all the matching albums(match based on partial or full artist and album names) in the library (does not include any info beyond the album names)
  • music-list-songs - lists all the matching song names (match based on partial or full artist and album names) in the library (does not include any info beyond the song names)
  • music-list-details - lists all information available for artista / albums / songs - most usefull with a custom format
  • music-play - plays the matching songs (match based on partial or full artist and album names and indexes into the result list)
  • music-queue - same as "music-play", except the songs are added to the now-playing list
  • music-cover - serves the album cover as an image
  • music-clear-cache - forces the cache to be cleared (normally the cache is only cleared when the number of audio items in the media collection change)

 

Additionally the new commands can all use custom formatting including conditionals (based on whether the specified parameter exists for the media item) and file includes (makes it much easier to manage complex formats).

With the exception of the play and add to slide show commands (photo-play and photo-queue) all of the above are implemented but still need a bit more testing). Depending on my work load and home load this could be released as early as next week.

If I'm going to be too delayed I may release an alpha for people who want to play with the new functionality

I'll also have some sample formats (really full web apps) aimed at the iPhone and iPod Touch (cover flow for the photos, a network based media remote, etc) that I'll release sometime somewhat soon.

Thanks, Tony

Sep 5, 2009 at 2:19 PM

Hi, awesome that a new build is coming. Hopefully you can include the msgboxrich command I submitted.

-James

Sep 7, 2009 at 1:40 PM

Many thanks for your responces. The new codes sounds very exciting-)
I would like to build a Pronto interface. I am sure it would work great

Not sure if it might help but I may be able to assign a full time developer to work on the code for the community if that helps move things along a little if everyone is time limited.
I would also be interested if anyone wants to do some paid work developing media interface for the iphone, ipod touch

Cheers

Dave

Coordinator
Sep 9, 2009 at 12:33 AM

James - thanks for asking. I somehow completely missed that you had submitted the code as a patch. When you originally wrote about the rich message box I went to embeddedautomation.com but was unable to download without an account - so I promptly forgot about it. Anyway I just figured out that you have submitted a patch. I've reviewed the code, and done a build with it, and everything looks fine -  I'll try to test it tonight. Assuming no issues (and I can't see where any would be) It will be in the next release

Tony

Coordinator
Sep 9, 2009 at 12:44 AM

Dave - this really isn't my project, Jonathan Bradshaw created it and wrote most of the code. I've just gone through and added functionality that I wanted (and the occasional fix that someone pointed out). So short story, I don't feel comfortable giving you (or your developer) directions on what to work on. However, if there is functionality that you feel is missing I'd say go ahead a develop it. Johnathan would probably be happy to add you to the developer list, and if not, I'm happy to apply your patches (assuming they make sense, and they work).

Having said that I've never commuicated with Jonathan other than a one sentence welcome to the project email when he added me to the project. When I did my first release I asked for a code review and never heard back. Plus he hasn't done any checkins since the project was created - So it may be that he is not actively monitoring this project anymore. If that's the case then I'm happy to step forward and add you or your developer to the project.

So, thanks for the very generous offer of a developer, but ask yourself what you want to use him (or her) for!

I'm also happy to discuss any ideas you have...

Thanks, Tony

 

Sep 11, 2009 at 3:39 AM

Hi Tony, thanks for including my patch. One item I didnd't submit (in AddInModule.cs) was related to Win 7 compatibility: MS seems to have changed the user IDs of the Extenders, so it's no longer 'Mcx1', but 'Mcx1-Something'.  This minor change did the trick for me:

 

if (principalName.IndexOf("Mcx") > 0 && sessionId != 1) //if it's an extender
            {
                System.Diagnostics.EventLog.WriteEntry("VmcController", "Determining extender port");
                return basePort + int.Parse(principalName.Substring(principalName.LastIndexOf("Mcx") + 3, 1), CultureInfo.InvariantCulture);
            }

if (principalName.IndexOf("Mcx") > 0 && sessionId != 1) //if it's an extender

            {

                System.Diagnostics.EventLog.WriteEntry("VmcController", "Determining extender port");

                return basePort + int.Parse(principalName.Substring(principalName.LastIndexOf("Mcx") + 3, 1), CultureInfo.InvariantCulture);

            }

I haven't been able to verify if this is backwards-compatible with Vista, but it works well on Win 7 RC for me. Would be great if you could include it in the new official build too.

 

-James

 

 

Coordinator
Sep 12, 2009 at 1:17 AM
James,

I'll try the new code and verify that it will work in the base case (I don't have any extenders) in Vista - but I can't see why it wouldn't work - so I'll put it in (plus it prevents someone from getting in trouble by having more than 10 extenders - which would get in the way of the http ports)

As for Win7 compatability - weren't there issues with the EPG code as well? Or has that been resolved with the final Win7 build?

Thanks, Tony




On Thu, Sep 10, 2009 at 7:39 PM, jamesf123 <notifications@codeplex.com> wrote:

From: jamesf123

Hi Tony, thanks for including my patch. One item I didnd't submit (in AddInModule.cs) was related to Win 7 compatibility: MS seems to have changed the user IDs of the Extenders, so it's no longer 'Mcx1', but 'Mcx1-Something'.  This minor change did the trick for me:

 

if (principalName.IndexOf("Mcx") > 0 && sessionId != 1) //if it's an extender
            {
                System.Diagnostics.EventLog.WriteEntry("VmcController", "Determining extender port");
                return basePort + int.Parse(principalName.Substring(principalName.LastIndexOf("Mcx") + 3, 1), CultureInfo.InvariantCulture);
            }

if (principalName.IndexOf("Mcx") > 0 && sessionId != 1) //if it's an extender

            {

                System.Diagnostics.EventLog.WriteEntry("VmcController", "Determining extender port");

                return basePort + int.Parse(principalName.Substring(principalName.LastIndexOf("Mcx") + 3, 1), CultureInfo.InvariantCulture);

            }

I haven't been able to verify if this is backwards-compatible with Vista, but it works well on Win 7 RC for me. Would be great if you could include it in the new official build too.

 

-James

 

 

Read the full discussion online.

To add a post to this discussion, reply to this email (VmcController@discussions.codeplex.com)

To start a new discussion for this project, email VmcController@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on codePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at codeplex.com


Sep 12, 2009 at 2:34 AM

I don't have the final Win7 build to test on, but the 'TV Pack'/Fiji thread in the discussions has the code to make VMCController work with Win 7 (basically, it just comments out the EPG code). It seems that the EPG stuff is totally different in Win 7 and I haven't been able to get those commands to work.

 

-James

Coordinator
Sep 17, 2009 at 12:16 AM

Guys - I've posted a new alpha 3 release. It includes all the above new commands, plus the rich message box, and I think it should work under Windows 7 and Fiji

I really have not tested the new stuff as much as I'd like, but I'm realizing that I just don't have the time right now - so I'm hoping to get some validation from the real world - let me know if something does not work!

Additionally I do not have Windows 7 or the Fiji TV pack, so if someone who does could verify that this installs and runs that would be great!

Please test and comment! Thanks, Tony 

Sep 17, 2009 at 9:53 AM

Hi Tony,

I installed it on Windows 7 Ultimate, unfortunately it doesn´t work. It still gives the error message that the background addin could not be started as in the other builds.

Cheers,
Malte

Sep 22, 2009 at 1:18 AM

I ran the alpha 3 release in windows 7 RTM and got the following exception in "Unable to Launch "VMCControler" Background addin.

I opened up the Event viewer and this is what I see.

Exception System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.

at Microsoft.MediaCenter.Utilities.TimedOutOperation.Invoke(TimeSpan spanTimeout, Boolean& fTimedOut)

at Microsoft.MediaCenter.Utilities.TimedOutOperation.InvokeTimedOperation(TimeSpan spanTimeout, Boolean& fTimedOut, Delegate dlgt, Object[] rgobjParams)

at MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.ExtensibilityPlugInLaunchInfo.LoadAddIn()

at MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.Launch(Object& objState)

at MediaCenter.Extensibility.ExtensibilityEntryPoint.Launch(PageBasedUCPService ucp, Object objMediaContext, Object[] entryPointParameters, String altPageUrl, ExtensibilityAutomation& exautoUsed)

InnerException System.IO.FileNotFoundException: Could not load file or assembly 'ehepg, Version=6.0.6000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

 

Server stack trace:

at VmcController.AddIn.AddInModule.Initialize(Dictionary`2 appInfo, Dictionary`2 entryPointInfo)

at MediaCenter.Extensibility.AddInModuleWrapper.Initialize(IDictionary legacyAppInfo, IDictionary legacyEntryPointInfo)

at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]:

at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

at Microsoft.MediaCenter.AddIn.IAddInModule.Initialize(IDictionary appInfo, IDictionary entryPoint)

 

It seems like the exception is related to epg. Do I have to copy this file from my old vista pc and drop it in the ehome folder to just satisfy the execution engine.

Please do let me know , if you want me to perfrom any other test in windows 7.

 

Thanks

Baski

Coordinator
Sep 22, 2009 at 1:24 AM
Edited Sep 22, 2009 at 1:40 AM

Thanks Baski, this should help.

Right now the only thing I can think to do is to do a separate release with the current EPG stuff ripped out. I'm guessing that merely copying the ehepg assembly is not going to be enough - but I'd love to see you try!
Meanwhile I'll try to do some more research and if all else fails I'll post a separate Win7 friendly release
Thanks for trying, Tony

Oct 5, 2009 at 7:36 AM

Tony, any news about a new release? Thanks for your effort! M.

Coordinator
Oct 6, 2009 at 10:35 PM

Sorry - I've been so busy at work and home that I have not done anywork on this lately.

As a peace offering I've stubbed out the epg stuff and added a new download (win7-vmcc.msi) to the Alpha 3 page in the download section. Note that I do not have Win7 so this is completely untested - in all honesty I don't really expect this to work in Win7, but I'm trying to minimize the differences in the projects so I wanted to try this approach first (changes only in the RemoteCommands file). If someone could try this and let me know I'd appreciate it. If this does not work I'll pull the rest of the files out of the project and build a Win7 release...

Thanks for the understanding, Tony

Oct 11, 2009 at 7:03 PM

Hi Tony,

I tried running the "new" alpha3 ..... here are the results - sorry in German - if you need some specific translations, please let me know.

 

Exception System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht.

bei Microsoft.MediaCenter.Utilities.TimedOutOperation.Invoke(TimeSpan spanTimeout, Boolean& fTimedOut)

bei Microsoft.MediaCenter.Utilities.TimedOutOperation.InvokeTimedOperation(TimeSpan spanTimeout, Boolean& fTimedOut, Delegate dlgt, Object[] rgobjParams)

bei MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.ExtensibilityPlugInLaunchInfo.LoadAddIn()

bei MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.Launch(Object& objState)

bei MediaCenter.Extensibility.ExtensibilityEntryPoint.Launch(PageBasedUCPService ucp, Object objMediaContext, Object[] entryPointParameters, String altPageUrl, ExtensibilityAutomation& exautoUsed)

InnerException System.IO.FileNotFoundException: Die Datei oder Assembly "ehepg, Version=6.0.6000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden.

 

Server stack trace:

bei VmcController.AddIn.AddInModule.Initialize(Dictionary`2 appInfo, Dictionary`2 entryPointInfo)

bei MediaCenter.Extensibility.AddInModuleWrapper.Initialize(IDictionary legacyAppInfo, IDictionary legacyEntryPointInfo)

bei System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

bei System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

bei System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]:

bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

bei Microsoft.MediaCenter.AddIn.IAddInModule.Initialize(IDictionary appInfo, IDictionary entryPoint)

 

Thanks for the great work!

 

Cheers,
Malte

Developer
Oct 12, 2009 at 7:56 AM

The problem is that the assembly ehepg isn't available on win7 anymore. Tony tried to deal with that with to implement "Unknown Commands" if something went wrong
in the EPG code. i think at the moment it isn't possible to use the EPG stuff on win 7. as i wrote in another post i'm trying to get things up and running on win7. but it could
take a while. the easiest solution, if you don't need the EPG portion, is to take the olddog version from another thread or wait a few days until i have a new installer win7 ready.

P.S.

Schöne Grüße aus Deutschland. ;)

Oct 12, 2009 at 12:53 PM

Hi,

I´d really like to use the olddog version, but it doesn´t work either:

 

Exception System.Security.SecurityException: Die Quelle wurde nicht gefunden, aber einige oder alle Ereignisprotokolle konnten nicht durchsucht werden. Protokolle, auf die kein Zugriff möglich war: Security.

 

Server stack trace:

bei System.Diagnostics.EventLog.FindSourceRegistration(String source, String machineName, Boolean readOnly)

bei System.Diagnostics.EventLog.SourceExists(String source, String machineName)

bei System.Diagnostics.EventLog.VerifyAndCreateSource(String sourceName, String currentMachineName)

bei System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData)

bei System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData)

bei System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type)

bei VmcController.AddIn.AddInModule.Launch(AddInHost host)

bei MediaCenter.Extensibility.AddInEntryPointWrapper.Launch(AddInHost host)

bei System.Runtime.Remoting.Messaging.Message.Dispatch(Object target, Boolean fExecuteInContext)

bei System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]:

bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

bei MediaCenter.Extensibility.AddInEntryPointWrapper.Launch(AddInHost host)

bei System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

bei System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)

bei System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [1]:

bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

bei MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.ExtensibilityPlugInLaunchInfo.AddInModalLauncher.AddInLaunchDelegate.EndInvoke(IAsyncResult result)

bei MediaCenter.Extensibility.ExtensibilityPlugInEntryPointInfo.ExtensibilityPlugInLaunchInfo.AddInModalLauncher.LaunchComplete(IAsyncResult result)

 

Grüße zurück ;)

Developer
Oct 12, 2009 at 1:10 PM

ok. i've never tested the olddog version. i'll try build a package (setup and source) in the next few days for win7. but again, it will be without the EPG stuff for now. are you trying to build the project in VS or where are you getting the errors from? is it a x86 or x64 win7?

Oct 12, 2009 at 1:13 PM

32bit - the epg stuff is not important to me at this time. I stay tuned ;) Thank you!

Developer
Oct 13, 2009 at 2:25 PM
Edited Oct 13, 2009 at 2:26 PM

take a look here. there's a updated version for win 7.