PDA

View Full Version : DVD Profiler support

z.mash
February 17th, 2003, 06:04 PM
Now that the screen resolution enhancement is forthcoming, the next thing that would be great to see is some kind of support for DVD Profiler to create a DVD catalog.

DVD Profiler let's you enter the UPC code from a DVD, and it downloads cover art and all of the information about the DVD (e.g. aspect ratio, running time, synopsis, actors, etc.). I don't know how it stores the data, but it can be exported to an XML file, and the cover art is stored in a directory.

How can we use this? I have one idea, which I will outline in the next post.

-Zak

z.mash
February 17th, 2003, 06:11 PM
Here's my idea (I have no clue if this is even possible).

Since we have the XML file with all of the data, and a directory of images (which are referenced by file name in the XML file), could we copy the file and the images directory to the NetRemote client and have a driver that will display the various elements?

For example, assume the driver number is -6. We would have a series of buttons in NetRemote, each with the RC5x code set to -6. The IR name of the buttons would interface with the driver and control what is displayed. IR name "Image" would display the image, "Title" would display the title, etc. There could also be some "action" IR names that would control navigation.

I have 150 DVDs in my copy of DVD Profiler, and it takes up 2.1MB (including front and back cover scans). I don't think storage on a PPC would be an issue. I do not know if parsing the XML file would take too long.

So, am I crazy? I have been snowbound for a couple of days, so I might have cabin fever...

-Zak

Ben S
February 17th, 2003, 06:17 PM
I've thought about this a few times as well, Zak.

Assuming network speed isn't a problem, I'd prefer to have the xml file and images on the server, so that multiple clients could get the info.

I'm pretty sure this is something Gavin could roll into his "dvd jukebox" code he's doing with LUA in Girder.

What do you think?

z.mash
February 17th, 2003, 06:39 PM
Yes, I definitely should have mentioned Gavin's work with LUA. I was hoping he would jump in this thread and talk any issues he has run into that could be ameliorated through customizations to NetRemote.

I was reading through your bug list and saw the intermittent issues with images through MJB. I thought maybe there were inherent issues with serving the images to the client. If not, then I agree that server-side would be better, in which case Gavin's scripts would take care of it.

One client-side change that might help is a comment field. This would be a left-justified, word-wrapped box that would allow, for example, DVD synoposes. I know you did something like this for MJB, but I haven't looked at it yet.

-Zak

brockgr
February 17th, 2003, 09:51 PM
Zak, Ben,

DVD Profiler support is in the currently unreleased version of LUA DVD Jukebox. Once I 'borrowed' some XML parser code, it really was a no brainer. The XML out of DVD Profiler is very simple and well formed.

Currently I'm extracting Title, Genre, Notes (for DVD location information) and ID. The ID is used to point at the image files stored in an image directory (sadly the actual path is not in the XML). Other fields could easily be added.

What functionality of DVD Profiler is needed. The current version of LDJ is desinged to be a scrollable list of titles (+/- 3 titles), optionally filtered by genre(s) and the the cover art for the currently selected image. This is designed to be "re-skinnable", but the +/-3 is currently hard coded.

I imageine that people might want a page of covers (say 3 x 4 on a PPC), and just select the image of the DVD they want. This however would require multiple image feedback to work, and could get rather slow on modest hardware.

Another feature I would like would be to view the text descriptions of movies. However these are long, and there seems to be no "word-wrap" feature for buttons/frames in CCF.

Maybe some of this would be better implemented as HTML data in NR emebedded IE window?

Cheers, Gavin

z.mash
February 18th, 2003, 05:08 AM
That sounds great, Gavin! Can I get a copy of LDJ with DVD Profiler support?

Once higher resolutions are available, the word-wrap support will be key for showing the descriptions. I don't thnik displaying one picture at a time will be a problem (at least for me).

Thanks,
Zak

brockgr
February 18th, 2003, 08:40 AM
Zak

Ok - just got back from the pub. Let me sober up a bit, and then make image feedback an optional feature, and then I'll put together a release. Sometime tomorrow hopefully.

Hic :o"!!

Gavin

brockgr
February 18th, 2003, 08:52 AM
Oh screw it - I'll regret this..

The current version is here (http://www.brock-family.org/luadvdjb/luadvdjb-0.04.zip)!!!

Features:

* DVD profiler parsing
* Directory Scanning
* Optional Image feedback
* Latest feedback interface
* Genre support for DVD Profiler only

Edit the settings in the LUA DVD Jukebox "Initialise" script. Feedback most welcome.

Cheers,

Gavin

z.mash
February 18th, 2003, 09:22 AM
That's what I like to hear! Damn the consequences!

Um...I got a Girder parse error after I loaded the CCF. I am only using the DVD Profiler feature, not the recurse feature. Any thoughts?

Thanks,
-Zak

brockgr
February 18th, 2003, 05:01 PM
Zak,

Hmm - that was less than spectacular :?. The debug interface for LUA in girder is a pain.

Can you open up the "initialise" function, and leave it open. Then click on the red/blue icon at the top of the window, to reset the script engine. Then open the CCF in NR. Finally, watch the output in the bottom frame of the window. Any errors appear messages appear there.

Let me know what you get. It may be that your DVD profiler XML file is more complex than my test one.

Cheers

Gavin

z.mash
February 18th, 2003, 06:38 PM
EDIT: IGNORE THIS POST AND READ THE NEXT ONE!!!!
Here you go:

pld2 =
error&#58; attempt to index local &#40;null&#41;' &#40;a nil value&#41;
stack traceback&#58;
1&#58; main of &#40;none&#41;
error&#58; attempt to call global LDJ_rescan' &#40;a nil value&#41;
stack traceback&#58;
1&#58; main of &#40;none&#41;

I can send you my XML file if you want. Send me a PM or I can post it in the other forum.

Thanks,
-Zak

z.mash
February 18th, 2003, 06:42 PM
Crap. I forgot to Enable Devices *after* loading your GML. Here's the new output. It looks like I don't have my listen ports set correctly. I tried 1023 (as listed in the error codes) but that didn't work. What value should that be? Thanks!

pld2 =
Scanning directories for DVDs..
Reading&#58; M&#58;\
Extracting DVDs from DVD-Profiler..
Sorting Titles..
Done... &#40;Found 149 DVDs&#41;
Genre&#58;Science-Fiction
Genre&#58;Classic
Genre&#58;Animation
Genre&#58;Comedy
Genre&#58;Family
Genre&#58;Adventure
Genre&#58;Drama
Genre&#58;Music
Genre&#58;Action
Genre&#58;Suspense/Thriller
Genre&#58;Fantasy
Genre&#58;Horror
Genre&#58;Western
Genre&#58;Foreign
Genre&#58;Romance
Genre&#58;Special Interest
Sorting Genres..
send_payloads_to_client to 127.0.0.1&#58;1023
payload LDJ_DVD_Title_-2=
payload LDJ_DVD_Title_-1=
payload LDJ_DVD_Title=2001&#58; A Space Odyssey
payload LDJ_DVD_Title_+1=A Bug&s Life
payload LDJ_DVD_Title_+2=A Christmas Story
SET

error&#58; attempt to call global connect' &#40;a nil value&#41;
stack traceback&#58;
1&#58; function NR_client_open' &#91;&#40;none&#41;&#93;
2&#58; function NR_send_label_feedback_to_client' &#91;&#40;none&#41;&#93;
3&#58; function NR_send_label_feedback' &#91;&#40;none&#41;&#93;
4&#58; function LDJ_refresh_titles' &#91;&#40;none&#41;&#93;
5&#58; function LDJ_rescan' &#91;&#40;none&#41;&#93;
6&#58; main of &#40;none&#41;

-Zak

Ben S
February 18th, 2003, 07:45 PM
Gavin, this thing looks totally cool. Especially the genre selection. Using button feedback to change the check state is the coolest thing I've ever seen. Wow!

Zak - You'll need to enable luasockets to get this to work. I believe it's part of the base Girder install.

Gavin, only 2 things. 1) It looks like not all of my dvd's are showing up. None of my xfiles are showing up, for instance. 2) I enabled image feedback, and get the DVD video image, but no dvd images. I've made sure the directory is set up correctly. Any way to debug this?

Also, I'm wondering if the fact that I get all the images and you don't might be related to timeout settings? I don't think so, but you might try upping the timeout.

Either way, I'm going to fix it, because this thing -rocks-. Nice job!

z.mash
February 18th, 2003, 09:46 PM
Sweet- that worked!

Gavin, this is awesome! I have the same problem as Ben that I don't get the actually DVD images displayed. Are there any scaling issues? That is, does the image have to be a certain size to be displayed properly?

Let me know if there is anything I can test out!

-Zak

brockgr
February 18th, 2003, 10:14 PM
I have a feeling that I'm mistakenly only sending the DVD image, and that is small so not having problems. Let me double check there is no alcohol induced coding bugs :roll:.

The timeout solution is an interesting one - that would explain random cut-offs that varied between platforms. I'll have to wait until I get home to test this (why does NR not appear when you VNC to a Windows machine?)

Ben, your X-Men DVD's. Are these in directories, or DVD-Profiler? Send me any suspicious DVD-Profiler XML files to " g a v i n @ b r o c k - f a m i l y . o r g " (remove those spaces!)

Once I have some spare time, I'll try to write up an install guide that covers all the pitfalls you guys just had. Sorry.

Cheers,

Gavin

brockgr
February 19th, 2003, 08:01 AM
Ok, new version: http://www.brock-family.org/luadvdjb/luadvdjb-0.05.zip

Yes I was getting the DVD Profiler covers messed up. Should work now. I'm now getting 100% success with the PPC NetRemote and image feedback. The Win32 one is not working - maybe my install is messed up.

Anyway, I'm now going to try todays NetRemote build. I'll post here if I have any new problems.

How are people finding performance? I'm finding my PPC/Girder feedback combo to be a little slower than ideal - only just useable. Smaller cover images may help, but it's tedious to shrink them all.

Cheers, Gavin

p.s. Back to the question of scaling images. I'm assuming a 2x3 aspect ratio, but any size image will be squashed into that. I think it's exactly the same image scaling as the MJ plugin.

z.mash
February 19th, 2003, 08:19 AM
This works great! I occasionally get the following error message (and the first time it popped up it shut down NetRemote):

EDIT: I deleted the image to make the page a little faster to load.

Have you seen this before? Here's what I'm running:

WinXP SP1
NR Win32 .975
Girder 3.2.8

Great work! I can't wait to try this with a bigger panel!

-Zak

z.mash
February 19th, 2003, 08:24 AM
Actually, I get the error fairly often, but not consistently. For example, I have gotten the error:
- Starting NR the first time after initilizing LDJ.
- Starting up NR a second time (after LDJ has initialized and previously connected to NR) gives me the error.
- Toggling b/w navigation and full screen pix

However, none of this takes away from how awesome this tool is! Check out a couple of pix:

http://members.bellatlantic.net/~vze3fgvv/LDJ1.gif http://members.bellatlantic.net/~vze3fgvv/LDJ2.gif

-Zak

Ben S
February 19th, 2003, 08:42 AM
How are people finding performance? I'm finding my PPC/Girder feedback combo to be a little slower than ideal - only just useable. Smaller cover images may help, but it's tedious to shrink them all.

I don't think image sizes are neccessarily the issue. With images disabled, it still seemed to take a moment or two when I pressed down to have it update the list of dvds. Win32 performance is super quick.

I think I need to examine performance in general. I would think even a 2mb network connection would be fast enough to support what we're doing. I might buy a 100 mb CF card for the Pocket PC though just to see if it's network performance related, however.

What do you mean NR doesn't appear when you VNC? It really should, I'm not doing anything special at all. Weird.

Zak - the error you're seeing is one that Gavin and I are trying to iron out, and appear to be related to file size. I'm going to stress test image feedback and see if I can get this more stable.

Regarding scaling - Yes, I scale the images that come in to be the same size as the window they're displayed in. This allows the same image received to be scaled down for a thumb, and up for "full" view.

z.mash
February 19th, 2003, 09:15 AM
Zak - the error you're seeing is one that Gavin and I are trying to iron out, and appear to be related to file size. I'm going to stress test image feedback and see if I can get this more stable.

I see. At worst it is a minor inconvenience, so it won't stop me from using this.

Regarding scaling - Yes, I scale the images that come in to be the same size as the window they're displayed in. This allows the same image received to be scaled down for a thumb, and up for "full" view.

Cool- I want to try this with a bigger window.

What do you mean NR doesn't appear when you VNC? It really should, I'm not doing anything special at all. Weird.

I have a similar problem when using IrfanView to do screen captures. For some reason it acts as if the NR window isn't even there. I just use PrintScreen isntead, so it doesn't really impact me.

brockgr
February 19th, 2003, 09:24 AM
Glad this is beginning to work for you guys.

The image stuff is odd. I'm not 100% trusting of the LUA-sockets code (I'm a C guy - I miss the real calls). I tried changing the socket timeouts in the LUA code but this seemed to have no effect (it's 10 seconds so it shouldn't be in play here). I also added error checking to the sock:send calls and these seem to be happy - I was wondering if you got partial sends if the socket filled up.

My final option is to go back to my Perl Girder server and double check what I am getting sent. Just to confirm that LUA-Sockets is not doing something weird.

BTW, I did a clean install of 0.975 on Win32 and I still have zero luck with the image feedback. I just don't get it. If it's timing/delay related - whizzy Win32 should be much better than the slow PPC. Anyone get Win32 working? I'm on a P4-1.7 - I wonder if slower PC's are better.

Finally, VNC - I'm using the latest ATT-VNC server/viewer on Win2k. I have a feeling that the "transparent windows" thing is an issue. The XP-OSD girder plugin is also not apearing under VNC. Anyway this is not a big issue (just stops me developping on company time ;))

Gavin

z.mash
February 19th, 2003, 09:30 AM
BTW, I did a clean install of 0.975 on Win32 and I still have zero luck with the image feedback. I just don't get it. If it's timing/delay related - whizzy Win32 should be much better than the slow PPC. Anyone get Win32 working? I'm on a P4-1.7 - I wonder if slower PC's are better.

I'm running on P1.8 and Win32 works fine. I haven't tried it on the PPC yet. My last screen shot (I promise) running at 640x480:

http://members.bellatlantic.net/~vze3fgvv/LDJ3.gif

-Zak

K-Wood
February 19th, 2003, 12:03 PM
Well, you boys seem to have this well in hand. But I was hoping that you could throw this non-coding dog a bone and provide us a short layman's explanation of how to set up NR and Girder with Gavin's Lua DVD Profiler app. Specifically:

1. What version of DVD Profiler needs to be running? Do we need to do anything special to our DVD Profiler setups?
2. Upon loading the gml, what variables do we need to provide? Do we need to go into and modify certain scripts to insert pathnames, etc.? Which scripts?
3. What changes do we need to make to the gml file for feedback to work?
4. Can Gavin's ccf/gml be seemlessly incorporated into our existing gmls and ccfs? Any tips on doing this?

Zak, forgive me if you've already provided this information in your documentation -- I haven't checked it recently. Great job, btw.

Thanks much!

- Ken

z.mash
February 19th, 2003, 02:46 PM
Ken,

I did a quick update of the documentation to get you going. Unfortunately I do not have time right now to go in depth, but between the high-level guidance of the guide and this forum, you should have no trouble getting started. Gavin has done an incredible job with this and it really is pretty straight forward from an end-user perspective once you get going.

http://members.bellatlantic.net/~vze3fgvv/NetRemote/lua_dvd_jukebox_control.html

Good luck!

-Zak

brockgr
February 19th, 2003, 07:01 PM
Zak, You are a star!! Thanks for the docs.

Ken,

1. Any version that does XML export - I thing that is all V2.*
2,3 Zak's doc has this
4. It should be seemless, import the GML, and the CCF device.

I am being strict about the LUA namesapce and the Girder Event namespaces (everything is LDJ_*) to avoid clashing with anyone elses stuff.

The only special thing in DVD Profiler is the linking of the databse entires to your ripped DVD's or your Changer hardware ID's. There doesn't seem to be a standard (DVD Lobby or similar?) for this. Unless anyone has a better idea, I will use the Notes field, and look for a line like:

File&#58;C&#58;\path\to\dvd_dir\video_ts.ifo

or

File&#58;C&#58;\path\to\dvd_file.iso

Anyone have better ideas?

Gavin

Ben S
February 20th, 2003, 07:52 AM
Ben, your X-Men DVD's. Are these in directories, or DVD-Profiler? Send me any suspicious DVD-Profiler XML files to " g a v i n @ b r o c k - f a m i l y . o r g " (remove those spaces!)

Sorry I didn't respond to this yet. They are in DVD-Profiler. I double checked the collection.xml file and they are in there. I'll zip it up and send it to you later today.

My dsl was down all yesterday and this morning, so I couldn't post or email, but I relooked at how I'm getting the Base64 data, and either the length that Lua is sending is not always correct, or my receive of 1024 bytes from Girder is not receiving 1024 bytes, but I still assume 1024 came in.

I will take a look.

brockgr
February 20th, 2003, 08:20 AM
Hmm - my thought is that the packets are getting fragmented. I'm not a VB/VC++ coder, but could you be getting a partial "sysread"? Are you using nonblocking socket IO, or multithreading?

LUA Wraps all this so I think it keeps sending until it finishes, times out (10 sec) or disconnects.

Let me know if I can help in any way.

Cheers, Gavin

Ben S
February 20th, 2003, 09:16 PM
It's fixed, I believe. It involved several fixes, and there still might be times when it's -expecting- more data than it actually gets. But at least it now handles it correctly. You should never see the popup with Base64 data again.

I'll make this bug fix available as soon as I can.

Great job, guys!

brockgr
February 20th, 2003, 09:37 PM
Thanks Ben, can't wait to play with it!! Did it affect the general speed in any way? - Gavin

Ben S
February 20th, 2003, 09:43 PM
Unfortunately no. Not noticeably. I'm going to do some other tests to get to the bottom of performance, though.

QuickCarl
February 22nd, 2003, 04:06 PM
I tried to follow the directions in Zak's guide (great job ZAK, BTW) but I can't get things working.

1) I must admit that I opened everything up and tried to run it without follwing the directions the first time.

2) I have tried to edit the script in the GLM file, but for the life of me, I can't figure out how to save it? Of course there is a "file> Save AS" but what name to use? And the GLM that ships in the LDJ zip doesn't have any 'external' script files anyway? What gives?

3) Even so, that should not stop the thing from working? I do get reaction from girder, but my Win32 v975 (with the sample CCF) doesn't show any feedback...... waaaaaa waaaaaaa

Can anyone help me? I feel so retarded.... -Carl

z.mash
February 22nd, 2003, 04:37 PM
You need to click the "Apply" button in the lower right corner to save the changes you made to the LUA script. Try that and see if that helps at all.

-Zak

QuickCarl
February 22nd, 2003, 04:47 PM
Still I don't get any feedback on the netRemote side.

I do see things happening in Girder....

When I start up NetRemote and then choose the DVD Jukebox, I get "Parse Error" down in the status bar of the girder window....

What could be wrong. I confirmed that the "collection.xml" is in the right location.....

z.mash
February 22nd, 2003, 04:55 PM
Try Disabling Devices (F9), open the Initialise LUA script, then hit F9. To enable scripts. Then open the CCF and go to the LDJ panel and see what happens. This is the "debugging" mode. If it doesn't work, copy and paste the feedback from the bottom of the Girder Script Editor.

-Zak

maxtrash
February 22nd, 2003, 05:42 PM
I'm also having troubles getting it to work. I don't get the parsing error, netremote just doesn't show anything.

z.mash
February 22nd, 2003, 06:42 PM
Stupid question, but have you enabled the LUA-Socket Library plugin? Have you set the List Port in the NetRemote GirderDriver to 1023? Might as well start with the basics to make sure everything is setup properly...

http://members.bellatlantic.net/~vze3fgvv/NetRemote/setup.html

-Zak

brockgr
February 22nd, 2003, 08:41 PM
Guys,

Sorry to hear you are having a hard time with this. Sadly the Girder's error reporting is not very friendly (Girder? Friendly? :lol:).

Okay, as Zak said, first check you have the LUA-Socket pluginenabled. This is actually for feedback in general - not just for LDJ.

Assuming that you have done that, we have a real bug, and I need to see the real error. To do this can you open up the LDJ "initialise" function, and leave it open. Then click on the red/blue icon at the top of the window, to reset the script engine. Then open the CCF in NR. Finally, watch the output in the bottom frame of the window. Any errors appear messages appear there.

I've gotta go over to the Girder forums and ask for a better error log!!

One other note, you will probably want to keep the image feedback turned off (set to 0) for now - it's reliability will be improved in the next NetRemote release.

Cheers,

Gavin

QuickCarl
February 22nd, 2003, 09:25 PM
plugin.... Turned it on and briefly had something sort of working.

Zak, I think you want to move that part over to the LDJ setup steps, or at least a check to make sure it is on. Thanks for the heads up on this one.

I'm gonna fiddle around a little to see what I can come up with.... maybe I can figure out what the problem that remains is. -Carl

QuickCarl
February 22nd, 2003, 09:32 PM
Here is the error that I am getting:

pld2 =
error: attempt to index local (null)' (a nil value)
stack traceback:
1: main of (none)
error: attempt to call global LDJ_rescan' (a nil value)
stack traceback:
1: main of (none)

After I followed your instructions from above.

QuickCarl
February 22nd, 2003, 09:34 PM
1) Where do you turn image feedback off for LDJ, as you suggested above?

2) Where is one supposed to put the NoImage image for it to be displayed if there is no cover art (on the PPC and in Win32)?

brockgr
February 22nd, 2003, 10:19 PM
Carl

Oh yes - the dreaded noimage. That has to go in the next version. Currently it is expected in c:\noimage.jpg. Sorry. If you really want to change this, look arround line 300 of the LDJ "Intialise" command.

Error in main of (none) - :shock: ??? Just to check you had the LDJ "Initalise" command is open, not the "NetRemote Feedback" "initialise" one? Girder reports errors relative to the opened script.

My only other thought is that it's all in an odd state through the lack of "noimage". Try quitting netremote, and resetting the script engine in girder. Then reopen netremote.

If this still doesn't work, I'll spend my evening writing real error checking :cry: code.

As for image feedback, at the top of the LDJ "Initalise" you will find:

-- Enable image feedback?
LDJ_image_feedback = 0

Zero is off.
Gavin

QuickCarl
February 22nd, 2003, 10:53 PM
I had the correct script open.... made sure of that.

Also, I found the entry in the script for images, thanks for pointing it out.

Seems like it is a bit fragile. I had to exit and restart both Girder and NetRemote in order to get it back working correctly. Looks really good. Lots of potential. Great work!

I would love to be able to get it working smoothly. A several times when an "unhandled command" would show up on the PPC with a bunch of letters strung togehter in the title bar of the window dialog. Strange.

-Carl

brockgr
February 22nd, 2003, 11:10 PM
Carl,

Glad to hear it's running. The unhandled command errors are the Image Feedback problems. This will be fixed in the next NetRemote.

I agree it can feel a bit fragile. Most of that is due to getting the communication established between Girder and NetRemote. Hopefully I can think of some good inital checks to add to catch these.

In the end, your problems were just the "noimage", and the need for a full reset? Right?

Cheers,

Gavin

maxtrash
February 23rd, 2003, 02:37 AM
Stupid question, but have you enabled the LUA-Socket Library plugin? Have you set the List Port in the NetRemote GirderDriver to 1023? Might as well start with the basics to make sure everything is setup properly...

http://members.bellatlantic.net/~vze3fgvv/NetRemote/setup.html

-Zak
thanks for your help.
I allready did have the socket-library enabled and the listening port was 1023. Then I suddenly realised I hadn't upgraded netremote yet from .974 to .975! Now it works!

maxtrash
February 23rd, 2003, 03:22 AM
It works (see the other message) but still a few hitches.
Without image feedback off I get the unhandled command error all the time (once I got to see an image, after that never again)
With image feedback off it only shows dvd's in the a-e category. It seems the sorting causes problems?

[...]
Genre:Classic
Genre:Science-Fiction
Genre:Romance
Sorting Genres..
error: attempt to index global choice_genre' (a nil value)
stack traceback:
1: function LDJ_filter_genres' [(none)]
2: function LDJ_rescan' [(none)]
3: main of (none)
pld2 =

maybe this helps

brockgr
February 23rd, 2003, 04:08 AM
maxtrash,

Thanks for the report.

That gives me a fairly good idea where you're getting the failure. However I'm not sure what could be cuasing the "choice_genre' (a nil value) ".

I'm wondering if the script engine is confused. If you turn off image feedback, you must reset click "apply" and the reset the script engine (red/blue arrow icon). The fact that you are still getting "unhandled" errors after turning off feedback suggests that the engine has not been reset and still has the old cached image data. You might even want to restart Girder, just to be sure.

Anyway I added more error checking to the code to warn rather than fail.

I'll put together another release shortly. Either way we all have to hold outr breath for the 0.976 release ;)

Gavin

z.mash
February 23rd, 2003, 07:55 AM
OK, the guide has been updated with the latest revalations from this thread. Hopefully this fills all the gaps.

-Zak

brockgr
February 23rd, 2003, 09:22 AM
Zak - As always, thanks!! I also added a check in the feedback code so the user will get an OSD error if the LUA-Socket stuff is not loaded.
Gavin

QuickCarl
February 23rd, 2003, 09:27 AM
I can't begin to tell you how cool....

Haven't really done much toward looking into the CCF, I am assuming that it is a "Martantz" version (large graphics) rather than a Pronto Pro version....

I just installed Tonto 1.422 (1.421 had a bug that would not display panels and reported good CCFs as corrupt, but it was fixed right away) so I think I can deal with the image size change, but I will have to redo my entire CCF. I'm thinking of creating divergent CCFs - one for the PPC and a larger screen version for the PC/ future tablet...... but I digress

Suggestion - at the button of the screen flanking either side of the 'Play' button you have up and down arrows.... while I haven't been able to get them to work yet, I am assuming that they scroll up/down one movie name so that you can choose each of the 5 movies that are displayed. My suggestion is to have a 'page up' and 'page down' button that moves 5 movies per press... Seems like that would let you get through the movies very quickly, and the play button seems to be quite large enough even if you were to subtract from it enough for the two extra buttons....

What do you think? HTH-Carl

brockgr
February 23rd, 2003, 09:45 AM
Another great idea. The two buttons have events LDJ.PREV and LDJ.NEXT. I can either change them to take arguements, e.g LDJ.NEXT(3) or I can add a LDJ.NEXT_PAGE which moves by the number of +/- entries.

The +/- entries value (currently 2) is now configurable in the LUA code, DVD_List_Up_Down=2. Can anyone think of a better name for this?

Next move is to get these two values and move them into the skin (sorry I think of the panels as skins), so the skin can configure the behaviour of the LUA code. I have one more bug for Ben, before I can do this.

Cheers, Gavin

maxtrash
February 24th, 2003, 05:36 PM
Gavin,

I tried the new version (with netremote 0.98 ) but it didn't change very much. Still only get the first six titles after pressing a-e (rest doesn't work). The image feedback is fine now though.

some other things that I noticed is that if you do a clean start (start Girder for the first time and after that start netremote) it will not show feedback until I press a button (it says ldj_dvd_title -2 etc.). Same for the genres dialog.

edit: put a space between 0.98 and ), it turned into a 8)

:D:D:D:D

brockgr
February 24th, 2003, 06:02 PM
Zak,

Second one first - if you are not getting label updates, your NR has not registered with Girder. Are you starting NR on the LDJ page or the home page. AFAIK NetReomte only registers on entering a "Feedback" panel - if you are already in the panel it won't register. My solution is always to pop over to the home panel and back to LDJ - that will trigger the registration and rescan.

Ok the first one is odd. Does it all work until you use the a-e button, or is it broken to start with (do up/down work for more than 6 dvds)? If you watch the LUA output (after a script engine reset), does it list all your DVD's when it's scanning? I wonder if my XML parser is failing somewhere - feel free to mail me your collection.xml - it is the biggest varaibale in all of this.

Cheers,

Gavin

brockgr
February 24th, 2003, 06:41 PM
Zak,

Ben just sent me his collection.xml and I found a bug in the handling of DVD Profiler entries with no genres. I'll release the fix soon.

Gavin

QuickCarl
February 24th, 2003, 08:55 PM
Gavin and Ben

Image feedback is awesome, and the whole thins seems to zip on LDJ.

Can't wait to get my setup done the way I have imagined. Is it possible to have multiple images on the screen.

Take a look at DVDLobby HERE (http://www.webpromotion.com/cinemar/dvdlobby.html) to see what what I have in mind for part of my setup.

You guys rock! -Carl

brockgr
February 24th, 2003, 10:27 PM
Go Carl - if we have something half as pretty as DVD Lobby, I'll be happy. I really can't find good widget sets for the pronto. Dan's widgets that we are currently using a good, but does anyone know any others.

BTW, we will have to think of a way of resorting the genres without the "refresh" button. You could have two commands for each button - set genre, and then call refresh. A lot of sorting, but might work.

Gavin

QuickCarl
February 24th, 2003, 10:46 PM
Haven't worked on the background or the buttons yet... there are millions (well almost) of galleries on www.remotecentral.com to try.

Just fixed up a crude mock up (running verion .98) now if I could figure out how to get the images matched up with the Up_Down title names....

Have a look, what do you think?

http://groups.msn.com/_Secure/0XADjAn0bIfj9xrVsonWoBTe*l4*1BcFRNusiKsRcldKAiYU66 eNy17rq8g9jAnQLmZc4SWBYyGyXUCxv*ydTgKYfIYwvZM91i*V RRGsGSuMcWITBzpu977sRHbtesgEvaErtwYSMH98/Multi-Image-800X600.JPG?dc=4675411081123370777

brockgr
February 24th, 2003, 11:34 PM
Multiple image feedback is another one on the todo list for Ben. :wink:
Gavin

maxtrash
February 25th, 2003, 02:55 PM
Zak,

Ben just sent me his collection.xml and I found a bug in the handling of DVD Profiler entries with no genres. I'll release the fix soon.

Gavin

Gavin,

my name is Marnix, but never mind.

I tried the new version but, sorry to be a pain, I now get some other problems:

error: bad argument #2 to connect' (number expected, got string)
stack traceback:
1: function connect' [C]
2: function NR_client_open' [(none)]
3: function NR_send_label_feedback_to_client' [(none)]
4: main of (none)'

I'll PM you my collection.xml, if you don't need it just ignore it.

thanks for your effort, very promising!
Marnix

brockgr
February 25th, 2003, 05:58 PM
maxtrash,

Actually this is only a problem for people not using the next, unreleasead, version of netremote - duh!!!! Sorry guys!

"sdellutri" suggested a hack to fix this. In the LDJ->Internal folder, change the "register" and "unregister" funtions. Change "local port = pld2 or 1023" to simply "local port = 1023".

FYI, I took you collection.xml and it parsed fine - so it can work!!

Cheers, Gavin

maxtrash
February 26th, 2003, 01:49 PM
Thanks Gavin,

works like a charm now. The initialization is fine too, and it's very responsive!

Marnix

maxtrash
February 28th, 2003, 06:54 PM
Me again. As I might have mentioned before: I was thinking about playing my divx movies using DVD the LUA script.

DVD Profiler has this <tag> called collection type which shows if the DVD is owned, ordered or in the wishlist. The script now shows all DVD's but I think it might be a good thing if there's some way to filter using the collection type.

I could then make like two pages in the ccf, one for the dvd's (showing all dvd's with collection type 'owned') and another one for my divx stuff (showing all dvd's with collection type 'ordered')

just a thought

brockgr
February 28th, 2003, 10:25 PM
Marnix,

DIVX should be easy to implement. What extensions are standard for those files?

As for DVD profiler, we should be able to work something out. Currently a DVD profiler DVD should only be displayed for 3 reasons:

1. Has File: field (DVD file location) in the notes
2. Has ChangerID: field (for DVD changer disk number) in the notes
3. Has a collection# set (Which I assume is a DVD changer ID).

The last one may solve your problem. Only DVD's you own have a Collection#. Wishlists/orders don't appear.

In your case I would just use the "owned" category, I would put the file locations in the notes for your DIVX files, and all the rest of your DVD's would be implicitly stored because of their "collection#". If you don't have a DVD changer, it just means that play wont work (but you could always change the "DVD Changer Play" actions).

What I then think would be useful for many people would be to add a filter by media types - e.g. VOB/IFO/DIVX/DVD-Disk

Would that work for you?

Gavin

maxtrash
March 1st, 2003, 06:19 AM
Marnix,

DIVX should be easy to implement. What extensions are standard for those files?

I think avi, mpg and mpeg are the most important ones for me. After taking a look at the associations that can be set in Zoomplayer I think divx, ogm, xvid, wmv should also be supported. I'm not sure about mov (apple quicktime), dat (vcd wrapper) or the streaming formats like asf, asx. Wouldn't harm I guess

As for DVD profiler, we should be able to work something out. Currently a DVD profiler DVD should only be displayed for 3 reasons:

1. Has File: field (DVD file location) in the notes
2. Has ChangerID: field (for DVD changer disk number) in the notes
3. Has a collection# set (Which I assume is a DVD changer ID).

The last one may solve your problem. Only DVD's you own have a Collection#. Wishlists/orders don't appear.

I'm not sure if I understand correctly but in my case stuff in the'"ordered" category is also shown in netremote, even though it doesn't have the tag <collectionnumber>. (e.g. "monsters and co." in the collection.xml I sent you)

I don't mind at all though:

In your case I would just use the "owned" category, I would put the file locations in the notes for your DIVX files, and all the rest of your DVD's would be implicitly stored because of their "collection#". If you don't have a DVD changer, it just means that play wont work (but you could always change the "DVD Changer Play" actions).

What I then think would be useful for many people would be to add a filter by media types - e.g. VOB/IFO/DIVX/DVD-Disk

Would that work for you?

Gavin
because I think filtering on media type is far superior. The filtering is more direct and doesn't depend as much on dvdprofiler or agreements.
So keeping the divx in the ordered category (seperate from my dvd's) in dvdprofiler itself and using the mediatype filtering in netremote would be perfect for me!

brockgr
March 1st, 2003, 07:03 AM
Ok,

Let me make the file types configurable. Two styles of location:

File based:
*.ISO *.MPEG *.MPG *.AVI

Directory based:
*/VIDEO_TS.IFO

The user can add more.

Each file will match to a type - currently IFO ISO CHANGER MPEG. The event for play is triggered based on this type.

As for displaying ordered DVDs, with no notes entries - that's a bug and I'll look at it.

Cheers,

Gavin

maxtrash
March 1st, 2003, 08:45 AM
Ok,

Let me make the file types configurable. Two styles of location:

File based:
*.ISO *.MPEG *.MPG *.AVI

Directory based:
*/VIDEO_TS.IFO

The user can add more.

Each file will match to a type - currently IFO ISO CHANGER MPEG. The event for play is triggered based on this type.

brilliant!

As for displaying ordered DVDs, with no notes entries - that's a bug and I'll look at it.

Cheers,

Gavin
If you could make that configurable ...
then again: if I would add the file-field in the notes I could force them being included, can't I?

thanks a lot for your work!

brockgr
March 1st, 2003, 09:01 AM
yep

BTW - if you can hang around for half an hour - I'll make a release of some of this stuff :)

Gavin

brockgr
March 1st, 2003, 09:13 AM
Ok - dvix stuff working here (http://www.netremote.org/phpBB2/viewtopic.php?p=470#470)

I'm going to overhall the filtering to maek it more generic. At the moment it is all hard coded for genre only.

Gavin

QuickCarl
March 1st, 2003, 08:59 PM
Tonto V1.423 is out....

Done a little work on the DVD panel with multiple images, waiting on Ben and Gavin to plug in support for that. I fixed up a skin for 800X600 screens and used some different buttons.

Gavin - did you implement the "page up" and "page down" for title buttons? In what way? I didn't see it in your CCF.

http://groups.msn.com/_Secure/0WADcAiMc!w1GCRGFbB1IvP7dgSzW3TSSaT1M82Q!EmJ2v7Ssf 2kD357Hz6KUzMpVBTWG50MTwQhkCX2q4ZhbIRAiTFTNKpIFTao !mKOpN5QiE7yUwudw!vZiWibSDWz9OgAAAP****8/NetRemoteDVDLobby.jpg?dc=4675411757449950868

brockgr
March 1st, 2003, 09:49 PM
Carl,

Sorry, the page up/down events are registered:

LDJ.NEXT_PAGE
LDJ.PREV_PAGE

I did want to do the LDJ.NEXT(n) option, but I ran into trouble with the numeric/string conversions. I think there is a Girger bug but I haven't proved it yet.

BTW, hang off doing too much with the Genre filtering - this is having a major rework (for more advanced filter options) so all the genre object name/events may change.

Cheers,

Gavin

Ben S
March 1st, 2003, 11:45 PM
Carl - that's going to look great once multi-image works. Make sure and download 0.981 and let me know if it works for you.

I'm going to start focusing on performance soon, as I'm not totally happy with it right now, even on Win32. I shouldn't have to wait to see two images (one 100k, one 70k).

brockgr
March 1st, 2003, 11:47 PM
Carl,

Also give me a chance to rearange the LDJ internals to handle pages more elegantly. I don't want you having to undo lots of work because I broke stuff.

Gavin

maxtrash
March 2nd, 2003, 07:12 AM
Ok - dvix stuff working here (http://www.netremote.org/phpBB2/viewtopic.php?p=470#470)

I'm going to overhall the filtering to maek it more generic. At the moment it is all hard coded for genre only.

Gavin
Gavin,

Great stuff! I can now play all media-files through netremote!

I've also been doing some expermenting/tweaking. The fact is that I have a number of clips like football goals, car-tests (topgear), pop-clips etc. Obviously they don't come with a cover image from DVDProfiler. I then found out that irfanview (a very nice freeware image viewer) can create jpg's from videofiles in a BATCH mode. I changed some of the LUA code to go look for an image file with the same name as the media-file. This is the result:

http://members.home.nl/marnix.timmermans/nrronaldo.jpg

And this is irfanview, to get an idea
http://members.home.nl/marnix.timmermans/irfanview.jpg

I could imagine this being very nice too for people making home videos or recording from tv.

Ok, next to these smaller clips I also have the divx movies it all started with. These are a lot bigger (700MB) and irfanview can't make jpgs out of them. This isn't neccesary since that's wat dvdprofiler is for.
Unfortunately I get a parsing error when putting the file = ... in the notes. Secondly: it would be nice if the mediafiles don't show up twice, once through the directory scanning (which I would want to use for the clips) and once through DVD profiler. I'll PM you some stuff.

brockgr
March 2nd, 2003, 07:45 AM
Maxtrash,

Looking good - things I never even though of!!

Ok - I see where you're going with the code. You basicly just need a directory (or directories) in which we seach for dvd_title.jpg (or gif, png etc). Right? I always like to keep my images with the media, but I notice that a lot of people (MJ is an example) keep them in an images folder. I should have thought of that earlier. I'll reengineer the changes back into 0.09.

As for the "file =" not working - that's a major bug. I'll look into it.

Now the duplicate title problem is interesting. The big thing is presidence - who's information should I trust? My guess is that we take the DVD profiler data first. Then do the scan and look for any overrides (images/dvd_info.txt). My guess is that if someone sets these files up, they are doing it for a reason.

Any objections?

Gavin

p.s. Top-Gear? British Top-Gear? You get that in the Netherlands?

maxtrash
March 2nd, 2003, 08:03 AM
Hi Gavin,

Irfanview puts all images in one directory, even if it recurses subdirs so that would be easiest.

Your thoughts about the sequence in which to do things: I guess if you deliberately put in dvd_info.txt it would make sense to let that prevail.

I would however prefer the dvd-profiler image over automatically generated images by irfanview. Then again, the risk of irfanview being able to generate such an image for 700MB avi's seems small.

An other solution would be to keep the media-file scanning and the dvd-scanning completely separate (you'd have to setup different directories in the script). This might be less userfriendly though because then the directory with clips (non-movie videofiles) cannot be a subdir of the directory that's being scanned for the dvd's
(does this make sense?)

anyway, just some thoughts, go for what you proposed.

And Top Gear: we can receive the BBC here, but these clips I just downloaded from the internet.

mcrutescu
March 3rd, 2003, 08:16 AM
:cry:
Hi,
I just installed the 0.09 LDJ with girder 3.2.8 and netremote 0.98.
From Netremote to LDJ it works... backwards nop.
Configured the netremote Girder driver on 1024 and 1023.

Here is what i get as errors:
error: bad argument #2 to connect' (number expected, got string)
stack traceback:
1: function connect' [C]
2: function NR_client_open' [(none)]
3: function NR_send_label_feedback_to_client' [(none)]
4: function NR_send_label_feedback' [(none)]
5: function LDJ_refresh_titles' [(none)]
6: function LDJ_rescan' [(none)]
7: main of (none)

thanks for help,
mircea

mcrutescu
March 3rd, 2003, 08:25 AM
:cry:
hard coded local port =1023 and works one step more - it goes into dvd scanning (looks on the hard disk) then it bumps into the dvd profiler file:
Extracting DVDs from DVD-Profiler..
error: attempt to call global type' (a string value)
stack traceback:
1: function LDJ_parse_dvd_profile_file' [(none)]
2: function LDJ_rescan' [(none)]
3: main of (none)

Help!

brockgr
March 3rd, 2003, 08:28 AM
mircea,

That's odd - it's still unhappy about the port. Did you reset the script engine (the red/blue arrow icon)?

Ok try this:

- Exit NR
- Reset the Girder script engine
- Restart NR

Any luck?

If not, 'test' the 'LUA Feeback'->'Private Commands'->'Debug Show Clients' command. This will list registered clients. Should be one entry of the form IP:PORT.

If the port is not there, hard code the port value in the 'Private Commands'->'Register' script (this should not be necessary now). Then go through the reset sequence above.

If this still doesn't work I really am stumped :shock:.

Gavin

brockgr
March 3rd, 2003, 08:36 AM
Ok - that's a bug. I keep messing up 'type' :cry:

Somewhere arround line 613 of the LDJ Initialise.

for ext, ftype in LDJ_file_types do
if &#40;strfind&#40;ufile,"%."..ext.."$"&#41;&#41; then type = file_type; break end end Try changing it to for ext, ftype in LDJ_file_types do if &#40;strfind&#40;ufile,"%."..ext.."$"&#41;&#41; then
file_type = ftype;
break
end
end

Just two changes.

I'll put together a new release in the morning if this works (it's late here now - need some sleep!!)

Gavin

mcrutescu
March 3rd, 2003, 09:34 AM
:)
Well, that's what i did - the "display clients" was showing just the ip and no port - that's why i put back the port =1023 and it worked.

I'll modify also the code for the 'type' stuff...

Btw, i missed something in following up your devel; when you're looking for avi & mpg files on the disk, where are you looking for the pictures?
I've seen a "dvdinfo.txt" in your code - what's the purpose?

I'm not *yet* very good in lua ...

Thanks again,
Mircea

brockgr
March 3rd, 2003, 05:37 PM
dvdinfo.txt is the alternative to using DVD profiler. The original design was to have LDJ just scan through my disks looking for DVDs (ripped as IFO and VOB files in my case). To get the image, it would use folder.jpg and to get the genre information, sort title, etc, it would use dvdinfo.txt. It's basicly a file describing the properties of the DVD. However due to demand, at this moment there are more properties implemented in DVD profiler, that dvd_info.txt. I will fix this.

Note if you are using mpegs or iso files, the naming is:

/path/to/name.mpg
/path/to/name.txt (dvd_info.txt format)
/path/to/name.jpg (cover image)

I will also be implementing (or rather reimplementing - since Maxtrash has already written the code :D) the use of an image or dvd_info directory so you can keep these file centrally if you prefer.

Anyway I'm still worried why you needed to code the port number. Is this win32 or PPC?

Cheers,

Gavin

mcrutescu
March 4th, 2003, 02:54 AM
Thanks again!
As the whole thing is moving very fast and i do not have yet bought a HTPC (spent everything on renovating my house) i'm just experimenting... so i'm using netremote win 32 on XP (one on the same computer as girder and a second one on a laptop).
The "show clients" had the same behaviour for both.

I've got other odd things with the images... but i'll try to clean up my installs (experimenting is not helping in having a clean env.) and give it another try...

I'll keep you informed.

Great job you did here!

:wink: Mircea

brockgr
March 4th, 2003, 03:05 AM
Don't worry as soon as you have tidied up, Ben and I will go and change everything :twisted: . Seriously though - thanks for persevering.

maxtrash
March 4th, 2003, 02:50 PM
I will also be implementing (or rather reimplementing - since Maxtrash has already written the code :D) the use of an image or dvd_info directory so you can keep these file centrally if you prefer.

good thing you put the :D there... :shock: :shock:

QuickCarl
March 7th, 2003, 07:58 PM
Gavin & Ben - finally got my testing environment back together

I have .981 and LDJ .9zip installed

I don't seem to have much luck at setting up multiple image feedback... I saw that Stewart had it up... not sure what to change to make that happen.... step by step would be nice.

Also, I am having trouble with the NEXT and PREV page commands... thought I had them right, names are right, is there a different IR data string?

Finally, I am trying to have the same feedback for DVD title names on two different buttons (want the same title listed in two different places) but it seems that the feedback is only good for one button... dang it

OK really finally.... shouldn't we have ONE place where BETA stuff is (for ALL of the connecting pieces) and ONE place where STABLE stuff is (and all the connecting pieces).... and shouldn't that be here and linkable from AVS, NetRemote HOME page, etc??????

JMO-Carl

QuickCarl
March 7th, 2003, 08:18 PM
The latest example http://groups.msn.com/_Secure/0WQDeAugcVk7F0r5tsCC7w*HxkefEHLkLHIpjg9rz7e!qDxGIn lHPEfpWh9QkEP2BWwURwVmwEvm8Lmm3*YiaT!BWhRpUQytZNLl AwYfszoyazRtKYoZ9bMnJylTj5eLjMih*Gk5xyE8/MultiImageProblems.jpg?dc=4675412578658712069

brockgr
March 7th, 2003, 08:50 PM
Carl,

I assume you would like an "up-down" image variable too?

Is the paging working for you? The page size is the "up-down" variable so might not be ideal.

Maybe someone can help out. I have an event:

LDJ.NEXT(n)

Where n is a number of titles to move. However in Girder n is passed as pld1 to the event handler. In LUA pld1 is a string - and it will not let me use it as a number (it doesn't follow the implict conversion rules of all other variables). Anyone seen this?

Gavin

QuickCarl
March 7th, 2003, 08:57 PM
Hey Gavin...

I have buttons that are setup for Next_page and Prev_page but I can't figure what is wrong...

The Test Command button in girder works fine... just can't figure what is wrong with my buttons....

Also... Don't know how to implement the multi-image. I really don't think I need the next(N) function... as I think the 'page' function will be fine...

Guliver
March 14th, 2003, 08:42 AM
Gavin,

Do you have any info about how to configure Girder & LDJ to play DVD's from a 300 Disk Sony Dvd Jukebox.

For IR control, I actually own a Slink-e. I think you already do some work with this device.

Also I have some memory problem when I use LDJ with Girder. After playing with LDJ, sometimes the memory use by Girder goes to 50MB and LDJ freeze a short time after. Girder 3.2.8 is running from a Windows 2000 server with 256Mb of ram.

Any idea why Girder/LDJ takes so much ram.

Thanks!

Guliver :)

brockgr
March 14th, 2003, 09:57 PM
Do you have any info about how to configure Girder & LDJ to play DVD's from a 300 Disk Sony Dvd Jukebox.

If you are using DVD Profiler, LDJ will use the Collection# as the changer ID. You then just need to assign codes to the LDJ Changer section in the Girder file. I havn't used a Slike (I'm a USB-UIRT owner), but I assume it's Girder plugin can handle this.

Also I have some memory problem when I use LDJ with Girder. After playing with LDJ, sometimes the memory use by Girder goes to 50MB and LDJ freeze a short time after. Girder 3.2.8 is running from a Windows 2000 server with 256Mb of ram.
Any idea why Girder/LDJ takes so much ram.

Do you have a large number of DVDs? The latest LDJ caches the encoded cover images in RAM - this may be part of the reason. I'll have a look at my Girder while it's running - I havn't really looked at this before. The caching will no longer be needed in the next version sice we will no longer encode images.

Cheers,

Gavin

Guliver
March 15th, 2003, 05:28 AM
Gavin,

I actually have about 150 DVD's in DVD Profiler.

You tested LDJ with how many DVD's?

I will wait for your next release.

Thanks

Guliver

brockgr
March 15th, 2003, 05:52 AM
Erm - about 6 :oops:. I didn't use DVD-Pro until I started on this projects.
Gavin

z.mash
March 15th, 2003, 07:32 AM
Guliver,
I have about ~160 in my DVD Profiler collection, and I haven't noticed those problems. I am running XP Pro SP-1 w/ 256mb RAM.

Gavin,
I can send you my IMAGES directory and collection.xml file if you want to play around with a larger collection. Let me know and I will PM you a link.

-Zak

brockgr
March 15th, 2003, 07:41 AM
Thanks for the other Zak, but I think the new feedback will change teh memory footprint, so I'll try testing then - Gavin