Main > Software Forum

LED Animation Editor - question for all the LED-Wiz Devs...

<< < (2/15) > >>

headkaze:

--- Quote from: RandyT on July 20, 2007, 04:36:38 pm ---
--- Quote from: headkaze on July 20, 2007, 04:07:15 pm ---Why don't we just redesign the lwa format altogether? I propose using an xml format like below. Notice in frame 2 it sends both commands to LEDWiz's 1 and 2.


--- Code: ---<?xml version="1.0"?>
<LEDWizAnimation>
<Frame Number="1" Duration="10">
<PBA LEDWizID="1" Value="0,48,0,0,0,48,0,0,0,0,0,0,0,0,0,0" />
<SBA LEDWizID="1" Value="34,0,68,0,2" />
<PBA LEDWizID="2" Value="0,0,0,0,0,0,0,48,0,0,48,48,0,0,0,0" />
<SBA LEDWizID="2" Value="128,12,0,50,2" />
</Frame>
<Frame Number="2" Duration="10">
<PBA LEDWizID="1,2" Value="0,48,0,0,0,48,0,0,0,0,0,0,0,0,0,0" />
<SBA LEDWizID="1,2" Value="34,0,68,0,2" />
</Frame>
</LEDWizAnimation>
--- End code ---

--- End quote ---

I think the parser might be a little more complex, but it covers all of the bases.  I'm not well versed in all things XML.  Is there a "generic" parser than can be used in code for something like this?

Definitely throws out backward compatibility though :)

RandyT

--- End quote ---

Your a VB6 coder arn't you? Microsoft have a widely deployed xml library you can use in VB6 which you can read more about here. I use C# and .NET has the System.Xml namespace for parsing. I believe Delphi is well equipped for processing xml as well. There would most likely be libraries for every language as it has pretty much become the standard format for describing data.

The thing is what backward compatibility do we need? I don't think many people have made lwa's because there is no decent animation editor yet. That's why I propose a new format before anything goes ahead. I have made about 70 lwa's that I've given to other developers to release with their plugins and I can write a simple program to convert the old format lwa's to the new xml format. I'm happy to do that if we go with the new format.

RandyT:

--- Quote from: headkaze on July 20, 2007, 04:50:40 pm ---Your a VB6 coder arn't you? I think Howard would know a good way to parse xml in that. I use C# and .NET has the System.Xml namespace for parsing. I believe Delphi is well equipped for processing xml as well. There would most likely be libraries for every language as it has pretty much become the standard format for describing data.

--- End quote ---

I'll look into what's out there, for my own edification if for nothing else.


--- Quote ---The thing is what backward compatibility do we need? I don't think many people have made lwa's because there is no decent animation editor yet. That's why I propose a new format before anything goes ahead. I have made about 70 lwa's that I've given to other developers to release with their plugins and I can write a simple program to convert the old format lwa's to the new xml format. I'm happy to do that if we go with the new format.

--- End quote ---

A new format will break compatibility with those very plug-ins you supplied your animation files to.  Multiple units could be supported in those through small changes in their code and would not require a complete re-write of their existing parsing system.

I guess my question is what problems do you foresee with my suggested approach?

RandyT

headkaze:

--- Quote from: RandyT on July 20, 2007, 05:02:32 pm ---
--- Quote from: headkaze on July 20, 2007, 04:50:40 pm ---Your a VB6 coder arn't you? I think Howard would know a good way to parse xml in that. I use C# and .NET has the System.Xml namespace for parsing. I believe Delphi is well equipped for processing xml as well. There would most likely be libraries for every language as it has pretty much become the standard format for describing data.

--- End quote ---

I'll look into what's out there, for my own edification if for nothing else.


--- Quote ---The thing is what backward compatibility do we need? I don't think many people have made lwa's because there is no decent animation editor yet. That's why I propose a new format before anything goes ahead. I have made about 70 lwa's that I've given to other developers to release with their plugins and I can write a simple program to convert the old format lwa's to the new xml format. I'm happy to do that if we go with the new format.

--- End quote ---

A new format will break compatibility with those very plug-ins you supplied your animation files to.  Multiple units could be supported in those through small changes in their code and would not require a complete re-write of their existing parsing system.

I guess my question is what problems do you foresee with my suggested approach?

RandyT

--- End quote ---

Well once loadman chimes in (any moment now) we pretty much have the major plugin developers here. I don't think it will add much work to parsing at all. I don't mind your suggested approach, but I would rather spend 10 more minutes re-writing my parser than tacking on work-arounds to a format that was not designed for multiple devices in mind.

This is just my opinion, and I've debated lwa format changes with loadman and we even wrote you several e-mails asking your opinion (no reply). Unless you finish writing your own lwa animation editor it's probably more important what the plugin developers think at this stage. Hey you make great hardware, but you never finished writing your software!

This is just my opinion, so lets see what loadman and arzoo say as well.

RandyT:

--- Quote from: headkaze on July 20, 2007, 05:34:05 pm ---Well once loadman chimes in (any moment now) we pretty much have the major plugin developers here. I don't think it will add much work to parsing at all. I don't mind your suggested approach, but I would rather spend 10 more minutes re-writing my parser than tacking on work-arounds to a format that was not designed for multiple devices in mind.

This is just my opinion, and I've debated lwa format changes with loadman and we even wrote you several e-mails asking your opinion (no reply).

--- End quote ---

Honestly, it was because of the desire to change the format pretty much out of the gate.  Once one party holds that opinion as the best approach, there isn't much room for discussion on expanding the current format (as I think we might be seeing a little of right now :) ).  I really didn't know where others who had adopted the current format stood, so it was hard to know whether shifting gears mid-stream was an appropriate thing to do.


--- Quote ---Unless you finish writing your own lwa animation editor it's probably more important what the plugin developers think at this stage. Hey you make great hardware, but you never finished writing your software!

--- End quote ---

I agree.  But as I am nearing the late stages of that software, what gets decided will impact what I am doing as well.  There may well be some advantage to an XML based animation format, and I don't deny it.  But I would like to make sure that you don't have to live, eat and breath code in order for people to be able to support the file format.  As it currently stands, the animation files can be pulled in from a file one line at a time, a command with a fixed length argument is compared against a couple of possibilities and that's pretty much all that's required to parse the files.  From what I have just been reading, an XML parser can be built into just about any MS language, but using it is nowhere near as simple as the current method allows.


--- Quote ---This is just my opinion, so lets see what loadman and arzoo say as well.

--- End quote ---

Mine as well.  If everyone feels comfortable dissecting XML files and wants to re-write their existing code to do it, then I'll go that route as well.  I just don't want to put support for the device out of reach of the hobby programmer.

BTW, arzoo asked for a solution in the context of the current format, so that is what I offered.  I like his idea of a DLL to support playback, but I'm not in the position to offer a DLL.  I will consider making file playback part of the OCX though.  I debated implementing it in the single device version that was originally released, but I opted against it so that developers would be more likely to make more capable playback software (as arzoo has already started to do ;) )

RandyT

loadman:
'CHIME'  ;D

I've kinda ran out of steam on discussions on this issue earlier this year (sorry RandyT) other than to say

* Nice work arzoo. Development such as this is in the spirit of the hobby.
* I like the XML style idea Headkaze . I think even a hobby dev (like me) could understand it with some examples supplied. I need to learn how to pars that anyway as the C++ coders at work use it.

At the end of the day I will support whatever Arzoo decides as he is the one doing the hard work on the software  :D

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version