PDA

View Full Version : My new DynamicSource doesn't quite work



STX1300MAN
2007-03-02, 05:15 PM
Ubu

First, thanks for a great plugin, I'm using GBPVR purely as a music/audio platform and find your plugin very useful.

Now to my problem.....I've written a new Dynamic Source module (I'll tell you what it is for when its working :) I guarantee YOU'LL use it :D ). Now I don't do C++ so it's written in VB and as overloading VB over your DLL is something I've never attempted, I've done all the IO from scratch. It all works (once I realised the parameter "-Sections" in the wiki should say "-sections") if run manually from a command line. Working means it creates both of the plx files. However when using the config app the creation of the playlist happens but the import step does not take place. What is your code looking for to start this step?

Hope you can help.

ubu
2007-03-02, 08:06 PM
Ubu

First, thanks for a great plugin, I'm using GBPVR purely as a music/audio platform and find your plugin very useful.

Now to my problem.....I've written a new Dynamic Source module (I'll tell you what it is for when its working :) I guarantee YOU'LL use it :D ). Now I don't do C++ so it's written in VB and as overloading VB over your DLL is something I've never attempted, I've done all the IO from scratch. It all works (once I realised the parameter "-Sections" in the wiki should say "-sections") if run manually from a command line. Working means it creates both of the plx files. However when using the config app the creation of the playlist happens but the import step does not take place. What is your code looking for to start this step?

Hope you can help.Do your section names show up in the config app? That would, at least, mean that UbuStream is invoking your app OK. The import step simply reads your playlist PLX file, item by item, and loads the items into the station database. So the must likely culprit would be some minor problem with the format of your PLX file. You can confirm this by trying to import it from the Import panel of the config app (which essentially does the same thing but without any of the DynSource code involved).

If you let me have a copy of the PLX files that your app is writing, I'd be glad to take a look and see if I can find a problem. (If you don't want to "reveal" it to the world yet, you can email it privately to me at ubu@ubusys.com).

STX1300MAN
2007-03-02, 09:56 PM
I must have checked the layout of the playlist a hundered times!!!!!!!!!!!!!!!!! and what do you know there's a typo lurking. :mad:

I'll make the changes and hopefully have a working version up here over the weekend (need to add some error trapping as it either runs or blows up! Think I saw a similar sentiment from you regarding your C++ :p )

Thanks for the speedy response, and I hope my Dynamic Source will give something back for the benefit I gained here in general.

Regards

Mike

ubu
2007-03-02, 10:11 PM
I must have checked the layout of the playlist a hundered times!!!!!!!!!!!!!!!!! and what do you know there's a typo lurking. :mad:

I'll make the changes and hopefully have a working version up here over the weekend (need to add some error trapping as it either runs or blows up! Think I saw a similar sentiment from you regarding your C++ :p )

Thanks for the speedy response, and I hope my Dynamic Source will give something back for the benefit I gained here in general.

Regards

MikeWell that's good news. I look forward to seeing the finished product.

Wasn't quite sure if you are using my DLL (it's in C#, btw, not C++ :p ). It should be easy to do from VB since it's a standard .Net DLL. I'm not sure about the actual mechanics of using/inheriting it in your VB code though.

Anyway, fyi, I'm working on tightening up the error handling too. I'm trying to get the dll to catch any web request/response errors and also to provide a generalized "unhandled exception" handler to stop the app from just exploding. Then I'm expecting the calling app to deal with receiving an empty or invalid page back from the server (and any exceptions it's generating in its own code).