Author Topic: Another question re XISF  (Read 3206 times)

Offline eddiet

  • PTeam Member
  • Newcomer
  • Posts: 18
    • http://astroshed.com
Another question re XISF
« on: 2016 December 29 18:41:42 »
Hi Juan and all,

I would also like to congratulate you on the XISF initiative. Lately I've been using PI for all pre-processing and I have to say the combination of XISF and however you've implemented caching, is brilliant. So fast and so stable on large datasets that make just about any other IP app, choke. Impressive!

However, I have become very used to using my own app FITS4Win, for sorting, selecting and searching-for FITS images, by keyword. This is purely Windows-based and maps keywords to the windows property system, both to standard Image properties and a custom property set for commonly-used FITS-specific keywords. If interested, you can read about it here http://astroshed.com/fits4win/fits4win2.htm

Anyway, now that I am accumulating a large number of XISF files, I'd like to implement something similar to FITS4Win, for XISF and have started some work on it, with an app for viewing/searching for FITS keywords, extracted from XISF images using Microsoft's XML development libraries.

I saw in a previous thread that you are planning to phase-out FITS keyword dependency and I have a question about how you plan to implement this.

1. Will it happen all at once, for all keywords, or would you expect to phase-in the new property list over time? I ask because the nomenclature for XISF properties will obviously be different to FITS keywords and I'm considering how to implement the changeover.

2. Are you expecting XISF to continue to include FITS keywords, or will FITS keywords be removed as they are replaced with XISF properties?

3. I'm also planning to implement a XISF image decoder (only) for thumbnails and previews, again Windows-only.

At the moment I'm tossing up a few options. i.e. whether to integrate your XISF DLL, which I have managed to compile from the PCL source release, or start from scratch.

I would rather use your XISF library as you have done much of the hard work there and so generously made it available. I've read the terms and *think* that I can use your lib in a commercial app. Is that correct?

Sorry for the barrage of questions at Christmas time, I have some time off and this is how I'm spending it. Haha. There is no hurry for a response.

Hope you had a good Christmas and all the best for the new year!

Eddie
Regards,

Eddie T.
http://astroshed.com

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Re: Another question re XISF
« Reply #1 on: 2017 January 03 04:38:32 »
Hi Eddie,

I'm glad to know you're working on this project, that's great news!

Quote
I saw in a previous thread that you are planning to phase-out FITS keyword dependency and I have a question about how you plan to implement this.

1. Will it happen all at once, for all keywords, or would you expect to phase-in the new property list over time? I ask because the nomenclature for XISF properties will obviously be different to FITS keywords and I'm considering how to implement the changeover.

Removing all FITS keyword dependencies from a complex platform like PixInsight is not a small task, as you surely figure out. Hopefully this will happen during 2017, or at least this is my intention, but of course we now have other priorities. So don't expect this to happen in the very short term. Anyway, FITS keyword generation will remain as an optional feature, since many existing scripts and third-party projects and applications depend on them. So we'll have the possibility of FITS keywords and XISF properties coexisting in image files for a relatively long time.

Once I start removing FITS dependencies from the platform, this task will be as fast as possible, so yes, hopefully all FITS keywords will be replaced by properties in a single operation. The good news is that adapting existing tools and scripts should be very easy. Both FITS keywords and XISF properties are name/value pairs, and XISF is much more flexible than FITS (UTF-8 vs ASCII, and no practical length restrictions). So the adaptation basically consists of replacing names.

Once I release the final XISF 1.0 Specification document (soon), all standard properties will be formalized so you can have all the changes planned.

Quote
2. Are you expecting XISF to continue to include FITS keywords, or will FITS keywords be removed as they are replaced with XISF properties?

As I've said FITS keyword generation will be an optional feature. I'm not sure if it will be enabled by default, though. Maybe yes for some time, but it will be discouraged and will generate visible warnings.

Quote
3. I'm also planning to implement a XISF image decoder (only) for thumbnails and previews, again Windows-only.

Great. Along with the final specification, I'm working on a first version of libXISF, which will be the reference implementation of XISF. It will be open-source (released under PCL license) and multiplatform.

Starting from the XISF support module directly is another possibility if you modify it. However the modifications are not trivial and require a lot of heavy work, since a PixInsight module depends strongly on the PixInsight core application. For example, you'd have to implement data compression, cryptographic hashing, XML decoding, etc. So the best option is waiting for libXISF, IMO.

Quote
I would rather use your XISF library as you have done much of the hard work there and so generously made it available. I've read the terms and *think* that I can use your lib in a commercial app. Is that correct?

Yes, that's correct. The PixInsight Class Library and almost all modules released as open-source products (except a few contributed modules that have been released under GPL by their authors), have been released under the PixInsight Class Library License (PCLL) Version 1.0. PCLL is a liberal BSD-like license that allows you to release your PCL-based developments as freeware or commercial, open-source or closed-source products.

All the best also to you and yours for 2017. Let me know if you need further assistance with this project.
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline eddiet

  • PTeam Member
  • Newcomer
  • Posts: 18
    • http://astroshed.com
Re: Another question re XISF
« Reply #2 on: 2017 January 21 04:44:23 »
Hi Juan,

Thanks for getting back to me, I like your plan.

I think I will do as you suggest and wait for libXISF. I hadn't delved deeply enough into it yet, to realise the depth of the PI Core dependencies of the XISF module. I can think of many good reasons to use libXISF (apart from my laziness). ha

I really appreciate your support and all the work you've put into this so far. It's fantastic.

All the best, talk soon.
Regards,

Eddie T.
http://astroshed.com

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Re: Another question re XISF
« Reply #3 on: 2017 January 21 10:02:18 »
Hi Eddie,

Good news: The reference XISF implementation, along with a final draft of the format specification, should be ready for release within 1-2 weeks. Finally, there will be no separate libXISF. The XISF reference implementation will be part of PCL. It will be very easy to use and of course it will have no dependencies on the PixInsight core application. Stay tuned, all of this will be available on our open source GitHub repositories very soon.
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline eddiet

  • PTeam Member
  • Newcomer
  • Posts: 18
    • http://astroshed.com
Re: Another question re XISF
« Reply #4 on: 2017 January 21 18:24:09 »
Juan,
That's fantastic! I'm looking forward to getting stuck into this project.

Thanks!

Eddie
Regards,

Eddie T.
http://astroshed.com