Older blog entries for hub (starting at number 300)

... solved

I went ahead and solved the problem on my own with planet OpenOffice.org: I changed the RSS template files to escape their content. I don't know why the behaviour is different between two Python installation, and actually I don't wanna know ;-)

It looks like grep is still one of my best friends.

People aggregating the planet should no longer have issue. Sorry for the mess.

Syndicated 2007-06-07 16:26:42 from Diary of a CrazyFrench

Planet issues...

Dear Lazyweb,

Since I moved planet OpenOffice, it generates invalid RSS feed because it does not escape the content of <dc:author>. The planet version is the same, but the Python version likely is different. I have no power on the version of Python that is installed.

This invalid feed cause problems for people aggregating planet in a feed reader (like I do).

Oh Lazyweb, do you have a magical solution? Your friend Google seems to not have been helpful.

Thanks, love,

Hub

Syndicated 2007-06-06 14:55:41 from Diary of a CrazyFrench

Planet OpenOffice.org and go-oo.org service announcement

I just migrated Planet OpenOffice.org to a new ISP. Nothing should be changed for you readers, but if you notice any problem, feel free to contact me.

We will also be moving the rest of go-oo.org progressively, there might be disturbances. We will try to minimize them.

Thanks.

Syndicated 2007-06-04 19:42:15 from Diary of a CrazyFrench

Lossless JPEG

Last night I reached a new milestone in libopenraw: being able to decompress the RAW data from CR2 files using Lossless JPEG. The lazyweb has been helpful in finding code for it (libjpeg does not support it) code that I ported from old K&R to C++. I'm still not completely statisfied with the port but it works much better than my attempt to port some MIT-licensed Java code.

Above is the PGM I generated, that contain the RAW data, viewed in eog. The look is due to the fact that we have a GRBG 2x2 color filter array diplayed as a graymap, and that eog does sone dithering. This is the data I should be passing to the demosaicing code. The picture is one of the random sample I took from my own photo library, taken around the corner from where I was living in Montréal.

DNG support should come The code is in the git repository.

Syndicated 2007-06-02 22:42:07 from Diary of a CrazyFrench

Eight years ago

8 years ago, back when AbiWord was a commercial venture, the AbiWord folks from Sourcegear had a booth at Linux Expo 99.

Abi the ant was there. Marc dug up pictures that were still on the server. One did catch our eyes (along with the caption):

Miguel and his partners are starting a new company, International GNOME Support

Syndicated 2007-05-30 16:24:26 from Diary of a CrazyFrench

Exempi 1.99.0

I think that a release of Exempi 1.99.0 is due.

This release is the first release towards Exempi 2.0. It is based on Adobe own XMP SDK and unlike the original Adobe code, it builds fine on Linux, and even more on x86_64 (I'm not proud of the fix, but it is as good as it gets for now). This version is much more feature complete than Exempi 0.5.1 as it read and writes (serialize) XMP metadata and load from and to files, including, for supported file types, reconciling the existing metadata.

Download: .tar.gz - GPG signature

It is licensed under the BSD license.

The current API is somewhat not definitive, but I hope it is OK. The documentation still has to be written / generated.

One of the question I got asked is how do you add XMP metadata like CC:Licensing to a PDF[1]. Here is a snippet:

#include <exempi/xmp.h>
...
XmpFilePtr f;
f = xmp_files_open_new("test.pdf", XMP_OPEN_FORUPDATE);
XmpPtr xmp = xmp_files_get_new_xmp(f);
xmp_set_property(xmp, NS_XAP_RIGHTS, "Copyright", "(c) ACME Inc., some rights reserved"
   " - This work is licensed to the public under the Creative Commons Attribution-ShareAlike "
   "license http://creativecommons.org/licenses/by-sa/2.0/");
xmp_files_put_xmp(f, xmp);
xmp_free(xmp);
xmp_files_close(f, XMP_CLOSE_SAFEUPDATE);

Now a little call: Exempi 1.99.0 supports several media format, but not vorbis... I wish I could add support for it. Any idea? I haven't actually dug into it yet.

Notes

[1] could be any of the other supported file types

Syndicated 2007-05-30 03:23:34 from Diary of a CrazyFrench

exiv2 and Python

I discovered today pyexiv2, which is a Python interface to the infamous Exiv2, a GPL library to read and write Exif and IPTC/IIM metadata from JPEG and various camera RAW file. Too bad I can't reuse the exiv2 code in libopenraw as it is GPL and not LGPL.[1]

pyexiv2 is actually an exemple on how easy it is to write Python module in C++ using Boost.Python

Notes

[1] The decision to use LGPL for libopenraw is in complete relation to the policies from both Gnome and KDE when it come to libraries, and nothing else.

Syndicated 2007-05-29 19:12:55 from Diary of a CrazyFrench

Last week-end (or was it the one before ?)

Last week-end (or maybe the one before, I keep delaying this post), for Victoria day, we took the train to Montréal. It was actually a meetup of Range Finder Forums members.

Without order, occurred during the week-end:

  • watched the Sens winning to get to the finals of the Stanley Cup. They play starting this Monday against Anaheim's Duck This happened at Hurley's.
  • tried out the Epson RD-1, a digital rangefinder camera. Unfortunately I don't have the pictures as I didn't have my SD cards with me... Too bad this camera is expensive, still less than the Leica M8, but still.
  • tried out a Bessa R2 rangefinder at marché Jean-Talon. For this one I have the film, but I have yet to get it processed.
  • had a shoot with models. More about that later. Two fact: the EF 50mm f/1.4 USM is one of my favorite lenses (I ended up shooting most of the week-end with it), and I need to get a decent light meter for proper incident light metering.
  • discovered a few places on Saint-Denis: La Baroufe, Le Passeport (a gothic night club, that turns back into a clothing shop during the day) and l'Académie, a very nice apportez-votre vin[1] restaurant, located next to a SAQ[2] that close at 10:00PM[3]

I really miss living in that city. I felt that last time when attending LGM, this time just confirmed it. I miss walking down Sainte-Catherine with people in the street, in the evening or on week-ends, I miss the Metro.

Let's talk about changes. When I left they were starting to tear down the building that was hiding Saint-James-United church. Now the front of the church is free, visible. Here is what that give at dusk, from the street:

taken with an EF 50mm f1.4 USM, 1/160 f/2.5 @1600 ISO

Before that, I could only photograph this from the inside, like this, with very little distance:

taken with an EF 24-85mm f/3.5-4.5 USM, 1/125 f/3.5 @400 ISO

I'll go further in depth for the pictures, but the workflow for digital photography on Linux is still pretty steep...

Notes

[1] bring your own wine

[2] provincial liquor store

[3] pretty much uncommon, but for beer and wine, we have deps in Québec until 11:00PM

Syndicated 2007-05-29 15:24:38 from Diary of a CrazyFrench

Digital photography with free software

Linux.com has recently published several articles about digitial photography with Linux.

Notes

[1] Digital Asset Management

Syndicated 2007-05-25 23:47:46 from Diary of a CrazyFrench

XMP support

Exempi2 will use the Adobe XMP SDK as a code base, instead of reinventing the wheel. It will also become BSD licensed to make things easier with the original code.

The reasons are as follow:

  • Adobe XMP SDK implements the whole spec, including scanning XMP out of the various file formats
  • it is somewhat tested (but not on the platform we use)
  • it is less work to fix it than rewriting it
  • it is BSD licensed so perfectly fine for use in GPL applications

The caveats:

  • it needs work to build and work on Linux. I actually have done that.
  • it still fails on 64-bits platforms (fix in progress, don't assume sizeof(void*) == 4)
  • I'm not sure how much it will deviate from upstream as fixes needs to be. I'll do my best to push the changes upstream.
  • It needs a sane API. The APIs are not bad but the are not really designed for dynamic linking as they are based on C++ templates. Templates are not inherently bad, but passing them through dynamic linkage like that is not really a good idea, and worse, it is not language neutral. I'll make some nice C API inspired by what I did in Exempi.

Mental note: explain why XMP is important.

Syndicated 2007-05-22 23:51:46 from Diary of a CrazyFrench

291 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!