Problem rendering layers in the command line.

Hello all!

I’m currently using Synfig for producing animation data for a videogame.

The process I’m following to produce the character animation is easy:

  • Record a real life video of me generating performing an action.
  • Use synfig to mimic the extremities animation, and also track position the head and the stomach positions along the animation (a kind of rotoscopy).
  • Export the whole animation in 3 parts: the animation of the left part of the body (arm and leg), the same for the right part, and then the “control-points” of the head and the stomach.

I’ve realized the process is a bit tediuos, taking into account the amount of animations I have, and the fixes I will need to perform once I realize there is something weird in the results, so I decided to prepare a pipeline with animation batch processing.

The best way I thought it, is to export the layers in synfig studio and then export with the following command lines:

“C:\Archivos de programa\Synfig\bin\synfig.exe” -c RightBodyPart anim1.sifz -o frame.png
“C:\Archivos de programa\Synfig\bin\synfig.exe” -c LeftBodyPart anim1.sifz -o frame.png
“C:\Archivos de programa\Synfig\bin\synfig.exe” -c HeadStomach anim1.sifz -o frame.png

I’m having serious problems trying to achieve this, because the frames produced are cropped and cut. If I render from the root (without the -c option) the image dimensions are correct.

I’ve tried several approaches, like appending a layer with dots in the corners of a 480x270 area to try to “force” the output of the image dimensions, but with no success, still the results are cropped.

Can anyone give me a clue of what can I do to achieve the results I need?
Thanks in advance!


I’ve never tested the -c option so it looks like a bug. Would you provide a sample file to reproduce the problem?
when you open the exported canvas in its own windows, what’s the file dimensions descriptions? are they the same than the root one? (I assume yes because you exported the layers after encapsulation.
What does: synfig.exe --list-canvases anim1.sifz gives?
and synfig.exe --canvas-info anim1.sifz what gives?
Sorry for the inconvenience and thanks for the help on debugging this.

Hello Genete,
First of all, thanks for your quick answer.

After 3 hours I’ve finally solved the problem! The only parameter I didn’t tested, the span, helped me to get the results.
Is there any Murphy’s law to tell that right after you write a post asking for help then you find by yourself the answer?

Anyway, I think there is something strange, may be a bug as you point out.
It took me a while to prepare the test but here it is (see attachment)

BTW: This is what you asked me before.

The output of:

synfig.exe --list-canvases anim1.sifz


synfig(2848) [12:51:40] info: Loading modules from C:\Archivos de programa\Synfi g\bin/../etc/synfig_modules.cfg anim1.sifz#:ParteDerecha anim1.sifz#:cabeza-cuerpo anim1.sifz#:ParteIzquierda

synfig.exe --canvas-info anim1.sifz


synfig(3540) [12:51:40] info: Loading modules from C:\Archivos de programa\Synfi g\bin/../etc/synfig_modules.cfg Nothing to do!

My solution to the problem:

"C:\Archivos de programa\Synfig\bin\synfig.exe" -s 9.1788 -w 480 -h 270 -c ParteDerecha -t gif anim1.sifz -o anim2.gif

works, but

"C:\Archivos de programa\Synfig\bin\synfig.exe" -w 480 -h 270 -c ParteDerecha -t gif anim1.sifz -o anim1.gif


"C:\Archivos de programa\Synfig\bin\synfig.exe" -c ParteDerecha -t gif anim1.sifz -o anim1.gif

does not.

If there is something more I can do to help, please tell me :slight_smile:

anim1.sifz (9.15 KB)