ZeMarmot at Alternatiba Paris 2015

Barely back to Paris since yesterday, we will be at Alternatiba Paris tomorrow, Sunday 27th of September. Alternatiba is a World event (mostly present in France) which mostly focus on climate, ecology, but also alternative social models, more human and fair. It went in many cities and will end up in Paris, place de la République, this week-end.

Well we will be there in the “Libre Village”, particularly in the “cinema” and “museum” booth, close to other communities, projects and association of Free Software and similar movements (April, Parinux, Framasoft, Franciliens.net, la quadrature du net, root 66, Chiffrofête, Mozilla-FR, Drupal, Novalys, Libre Office…).

We are in the area '9' of this map!
We are in the area ‘9’ of this map!

We will represent the LILA association, ZeMarmot animation film project, and do a few GIMP demos and presentation.

Come see us if you are around Paris!

P.S.: we’ll make a small report of our trip to the Alps where we got very cool references for ZeMarmot, very soon. We’ll just need a few days to have some rest after this exhausting journey!

Improving the export process in GIMP

While I have been working for days on the animation software for ZeMarmot, I wanted to “rest” my brain a little and came back to an old project of mine, which I should have implemented months ago.

So let’s get the troll out straight away: yes, this is about the split between save and export on GIMP. Now I was not there when the decision was taken, but I think it makes sense anyway. Saving is about “your work”, your process. XCF is — in such a view — not an image format, but a project format. It contains much more than the final visual image. Same as you would not save a “.mpeg“, “.avi” or “.mov” in blender, but a “.blend“, you don’t save a “.jpeg” or “.png” either, but a “.xcf” (another analogy for developers out there: “.blend” or “.xcf” can be compared to your source files — which is definitely what they are in a multimedia project — and the image or video formats as the compiled binary).

Yet I understand that some users have a hard time understanding this since there are nearly no difference in our GUI between saving and exporting.
save-export
What’s the difference, you’d ask? And you’d be right.

In the last 2 days, I refactored the whole GimpFileDialog code, which was completely mixing every concepts with hard-to-read if {} else {} statements inside a single class. GimpFileDialog became a generic parent class, containing only logics common to all file dialogs, and I added 3 specific children: GimpOpenDialog, GimpSaveDialog and GimpExportDialog.
This will allow us to do easily much more interesting graphical interfaces specific to each process.

As a proof of concept, I tested a “Scale at export” feature, which would allow to rescale images at export time, without touching the original. Who indeed never worked on some high resolution image, then needed to export it in lower resolution (to upload on some website, send through email or whatever…)? The current GUI would force to scale the original image, export it, then not forget to cancel the scale afterwards (if you forget, save and quit — for instance by habits — you are doomed: you just completely lost data and hours of high res work!).
Here for a UI test:
Scale for export in GIMP

Now before you tell anything: I know that the above screenshot does not look so nice, with a lot of wasted space on the right. I reused an existing widget (the same used in the “Scale Image” dialog, if you know GIMP well) and have not been trying to customize for this first version. The goal was mostly to test the new refactored code and we have some more thinking and discussion before actually adding these features (there are many more things that could be rethought to improve export, at deeper levels too).
The refactoring is now merged to master; the “Scale at export” isn’t yet though (feel free to test it on its git feature branch though, it’s functional).

Of course this is only the start of greater things. One may want to crop an image, change the color space (particularly if you were working in non sRGB), or even apply any GEGL operation before export (like “sharpen” after downscaling).
This should all be possible soon. Of course we’d have to work on the ideal UI to not clutter the export dialog. I will keep readers updated for when the next steps will occur.

I believe this is partially what some people would call a “Save for Web” feature, though I personally don’t like this naming since it is far too restrictive. You may want to change your exported image for far many more reasons that just “the web”.

Now I’ll be back to ZeMarmot (and I remind everyone who wants to support me to improve GIMP they can still support our Open Animation Film)!

Rewind on Aryeom and Jehan’s Open videos

Before we met, Aryeom drew quite a bit of animation. You may have a look at her (outdated) 2013 reel. She did a few relay animations with other artists, tried on various technics (sand animation, stopmotion, paint-on-glass animation…) worked on the “Boy Meets Boy” movie in 2008 (she directed a short animation which was included in the movie, as well as a separate music video clip), directed by Kim Jho Kwang-soo…

When I met her, she was working on her graduation animation film, Grandma Ocean with Kang Hui-jin.

Needless to say, when software were needed, these were all done with proprietary software, mostly Adobe ones.

[2012] Our First Open Movie: « Firefox and You »

The Open Movie adventure would begin when we heard of the Firefox Flicks contest, organized by Mozilla to promote Firefox. I was already a GNU/Linux user and Firefox was my browser of choice. We decided to participate, spent about 2 or 3 weeks to make a script and draw a small animation, for which we won a first place in “New Technology” category.

The concept was an interactive video included in an HTML canvas. People could upload a photograph and an address (using OpenStreetMap assets), to show their support to Mozilla, and their image would show embedded during video viewing on the right coordinates in the drawn world map. The actual page which won is still up, with the interactive video version.


Firefox et Vous

It was released under Creative Commons BY-SA/Libre Art licenses for the assets, and AGPLv3 for the code. On the other side, the software used were the usual Adobe Photoshop + After Effects/Premiere. Our first Open Movie, but still with closed tools.

Nevertheless this triggered me to submit my first patches to GIMP a few months later (my first patch being September 2012).

[2013] First Open Movie with FLOSS Tools: « Interview with the Red Panda »

The next year, we did not participate again to the Flicks contest, but Mozilla proposed us to do a small interview or video to promote the event for newcomers. We thought it could be funny to do it in the form of another animation film (out of contest).
This time, we tried to go full-steam Free Software: GIMP, Blender, Ardour. Let me tell you it was not easy. You can also see that the animation has not too many movements. I’m not sure because I don’t remember in detail, but it was probably on purpose.

Interview with a Red Panda

This was again CC BY-SA.

Of course, this is a period with increase of my contributions to GIMP (I was given rights on the repository a few months earlier), but also my first patches to Blender (2 bug fixes: broken offset/crop in VSE and broken render because of the ffmpeg fork affair).

[2013] Promotional/Rotoscopy: « Dance of the Sugar Plum Butterfly »

About at the same time, as an experiment, Aryeom tried a rotoscopy animation on her own. We made a video of the contemporary dancer Hysao Takagi, from the dance company “Le Lien” and drew over the footage in GIMP, later edited in Blender. Let me tell you this was not easy either, and I think to this date, there are still no Free Software to facilitate drawing in rotoscoping technics.

Dance of the Sugar Plum Butterfly

[2013] Our first Libre Graphics Meeting: « Space Girin on the Wall »

A few months later, the GIMP team would invite Aryeom and I to Libre Graphics Meeting in Madrid. Our first time.
They had this very awesome screen-wall which could be programmed, display images, and react to a camera targetted at the place. Aryeom drew our Space Girin (girin = giraffe in Korean) in GIMP which was displayed on the wall, and I wrote some code so that its eyes would follow people walking by, thanks to the street camera. The whole code and images would be released as GPLv3.

Space Girin on the Wall

[2014] Pausing… or not

In end of 2013-2014, we would be in New Zealand, traveling and such. I would code a little, and in particular would start the idea of symmetry painting in GIMP, after seeing the feature in Krita. Well honestly we did not think it was so necessary in GIMP, but it looked like a fun and easy (what a mistake!) thing to add in GIMP, and I thought it could be an interesting occasion to try out a small crowdfunding. This feature would be later implemented in GIMP early 2015.

It is not really true that we totally paused animation-making. We played a little with stopmotion animation, and this is how I discovered Entangle (I would later propose the maintainer to join us in LGM in Leipzig). The fact is that we don’t have real good software for stopmotion, they are all either inactive, or very unstable and limited to webcams, not good cameras. So I played a little with adding stopmotion features to Entangle, a quality software, and very stable for tethered camera control.
We did this small video with the daughter of a landlord we had for some time, to experiment with Entangle:

Shannon vs Octopus
Note that we had the permission from the parents to upload the video, but we never asked for making it a Libre Movie. As a consequence, this movie is under Creative Commons BY-NC-ND. This is more of an experiment and not to be considered as part of our Open Movies.

We are so animation-geeky that Aryeom even draw animation frames on blank cards, with song that we played and sang, and we sent the frames as postcards to family for Christmas (so each person got one frame of the whole animation, which can be seen on the web).

[2014] Contemporary Dance International Festival in Alger

For “Le Lien 07” dance company again, we made a film, this time purposed to be projected as background during a choreography for the “International Contemporary Dance Festival” of Alger.
This film used shootage under Creative Commons BY found around the internet, as well as images which were graciously lent to us by their makers, and others taken by the dancers; and our first attempt of 3D animation with a cherry tree under the wind. Here is the show recording. You can see our movie in backgrounds at some point.

"Le Lien" in International Contemporary Dance Festival in Alger

[2015] Our first big project: « ZeMarmot »

Note that during all this time, in 2012 and 2013 in particular, Aryeom had jobs doing marketing videos, or even on TV shows in backstage, but she never used Free Software for any of the professional paid jobs. What does it tell us? Maybe that Free Software, as much as we loved them, were not ready, not efficient enough, or scary. In particular, crashes were too many on GIMP. I already told it in an earlier post but crashing when unplugging a graphics tablet is not acceptable in a professional workflow, neither is actually any kind of crash. Nowaydays, thanks to the hard work of many contributors, GIMP hardly ever crash. Well at least on Linux and in our machines. I don’t say it is flawless yet (which software is?) and we have regular reports of issues in our bugtrackers, which we continue to track down. But in our own lives, we hardly see them anymore. Aryeom can’t even remember the last time she saw GIMP (stable release at least) crash, even though she uses it intensively for hours every day!

So mid-2014, we started thinking doing a real nice project with GIMP and other software. Now let’s be clear: the Free Software workflow and software ecostystem is still not there fully. It is much better for 3D (though not as good for all parts of the production) thanks to the awesome work of the Blender Foundation, and it is going much better for vectorial, thanks to Synfig Studio or Tupi. But for 2D digital cell animation? Well close to the void. This will be hard, but that’s a void we are willing to fill. And we do hope you will help us do so by participating to our crowdfunding!


ZeMarmot teaser

I will probably detail our planned improvements in a next post.

And after?

We are not planning on stopping there. We want to finish ZeMarmot first. This is a story with a start and an end, not a series with unlimited episodes. If we can get it funded, we will work on our custom software that we will release soon as GPLv3, improve GIMP, Blender, and any other necessary software (Ardour maybe too if we have issues there).

And we want to continue. Actually Aryeom already has some very cool ideas of Stopmotion movies, for which we will continue to use GIMP, Blender, but also probably Entangle for photography. I have actually contributed to the Apertus AXIOM crowdfunding (where I was also a minor code contributor and made a few talks to promote the project a few years back), so I should be able to buy one of the first AXIOM cameras ever. When this happens, I’m thinking one of the first things I would do would be a patch to Entangle for the support of AXIOM, and continue my contribution to give it stopmotion features.

Stopmotion contribution in Entangle

This all coupled with more GIMP, Blender, Ardour, Synfig, etc. improvements, we should soon be able to have a very powerful ecosystem on GNU/Linux for any kind of movie making and animation.
Of course, this also depends a lot on you all who are reading me! If ZeMarmot does not happen, all our nice plans for the future might end up in a hole, as a dream that were and never will (or at least not as soon).
I hope you’ll be many to support us! 🙂

support-button-en

Report of Libre Graphics Meeting 2015

We have been back from Libre Graphics Meeting 2015 in Toronto for 2 weeks now. It is time for a report! 🙂

About the event itself, this year was very nice, as usual, though it felt a little empty compared to the previous 2 years we also attended. Not sure exactly why is that. Are most contributors European-based? Apart from this:

* We could hang out with the rest of the GIMP team, and that’s cool…
GIMP Breakfast on Sunday

* Nearly the whole GIMP team made a small road trip to see the Niagara falls…

ZeMarmot at Niagara falls
ZeMarmot at Niagara falls

* Of course, we also had our annual GIMP developer meeting, to discuss directions of the project…
Gimp bird-of-a-feather meeting

* And we discovered once again several awesome projects during various presentations. I won’t name them all, and unfortunately we also missed a few talks (I was especially sad to miss “Goodbye FontForge” by Dave Crossland — because with such a title and because Dave is a reference, this looks like it was a must-see; and “Web Sites on a Stick: EPUB and the Web Converge” by Liam Quin, a GIMP contributor, and we heard his talk was very cool). But from what we saw, I’ll raise:

  • Creating textbook-grade SVG illustrations for Wikipedia: a talk about contributing to Wikipedia with SVG images. It was interesting to see nice possible outputs of SVG. Yet what really hit me was the low support of SVG in browsers (like: it is supported nearly everywhere now, but apparently most advanced feature are not). So apparently SVG images contributed to Wikipedia are actually re-rendered as bitmap (text layers are hidden, advanced layout features would get wrong rendering on most browsers, embedded links are not working, etc. Well that’s if I got it right, tell me in comment if I misunderstood! This is sad.
  • imgflo: the cool work of Jonnor, GIMP, GEGL and MyPaint contributor, about imgflo, his project of an image rendering server through HTTP API. These are the kind of projects which will help GEGL go forward.
  • The List powered by Creative Commons: a talk by Matt Lee from Creative Commons about a smartphone app project to request and share photographs. Well I’m not sure if this project will be a success, and I heard a lot of people saying they did not believe in it. But I think the basic idea is still there: we should be able to gain more contributions to Libre Knowledge projects (Wikimedia, OpenStreetMap, Creative Commons projects…) by giving them more “game-like” exposure. This is actually a thought I had slightly before knowing this project, when I met people who send all their data to Google with games like “Ingress” (if you read, you know who you are!). I think we should be able to do the same thing with Libre Knowledge projects. For instance, if instead of sending all your coordinates and personal behavioral data to Google, you had a similar Free Software smartphone game to improve OpenStreetMap data automatically, wouldn’t that be awesome? Well if anyone has such a project, do not hesitate to contact me! Especially if you are into UI, then I’d leave you this part and I’d take care of the engine. 🙂
    Of course, I’m not really sure this was the actual direction taken by The List, but it could be an interesting experiment.
    Also we already told about it, but we remind that Matt Lee is running a crowdfunding as well right now for a comedy movie, “Orang-U: An Ape Goes To College”.
  • Allowing Mistakes to Happen: this one was really funny. Antonio is a glitch artist, a field I didn’t know about. Basically while we are looking for bugs to fix them, he is looking for bugs… to use them for art! I know, right?!
    Glitch Art
  • Towards Open Textile and Garment Production: very awesome, an Open Textile Production line project. The idea: the knowledge of making clothes is mostly lost in western countries, and unfair in the rest of the world (bad work condition, dangerous even, bad pay, old material because slaving human workers is cheaper than getting modern machines, etc.). Not to mention the uniformization of fashion. So the idea is to get back control to our own fashion in the same idea as Hackerspaces/fablabs. Here for an awesome video. We also saw one of these hacked knitting machine a week later in OpenTechSummit in Berlin.

    Made In the Neighbourhood (ft. a clothing printer, OpenKnit) from Gerard Rubio.

These are mostly the talks of less known projects and which I didn’t expected (well, excepted imgflo one’s, but it’s always cool to remind it!). Which is good: I prefer to find unexpected things, it’s less boring. 🙂
Of course, if you were rather expecting news of the big projects from my report, I’d suggest to have a look to the slides of the State of Libre Graphics [pdf] (the first talk of LGM), which are pretty self-explanatory (about Blender, GIMP, Inkscape, Scribus, etc. even our awesome LILA is there, and the brand new Pixls.us website project by Patrick David about Free/OpenSource photography).

And finally we presented our own project, ZeMarmot.

LGM-2015-ZeMarmot Talk
“ZeMarmot in a dense blizzard (due to bad camera settings)! ..At the Libre Graphics Meeting, 2015”, by Tom Lechner, CC BY-SA 2.0

You can have a look at ZeMarmot’s slides [pdf] (actually the ones for OpenTechSummit, slightly updated, but similar).
And here for the video of the talk shot by Peter Westenberg (Free Art license):

The presentation and the teaser (shown publicly for the first time this day) got well received, with applause, so this was a nice start. 🙂

Also we remind that we are still in the middle of ZeMarmot’s crowdfunding, in order to a cool animation film out, and improve (code contribution!) Free Software (GIMP, Blender…)
Support ZeMarmot