Render to uncompressed AVI

Is it possible to render to uncompressed AVI from within the Synfig gui ?

So far I have found the simplest way to produce high quality mp4 as an end product is to render to png or jpeg at 30 frames per second, the load the png or jpeg files into Cinelerra (or a windows program) and then output mpeg 4, this works but it is time consuming.

It would be useful to output uncompressed AVI to retain as a master video file but I have not figured out how to do that.

I did output to YUV420p but I could not find anything that would read it or convert it.

Current avi file output is produced by a ffmpeg command line. Unfortunately nobody has written the interface for ffmpeg to produce avi (or other formats) with different compression levels, so the built in one would produce a compressed one. In fact synfig produce a stream of ppm image files which are piped to ffmpeg.

The best (and for the moment the only one) prodecures to produce a uncompressed animation file are explained here. I strongly recommend to read the Documentation or search the wiki for any doubt you have. There are mor information that really is visible. Also don’t be afraid to connect with us in the IRC ( #synfig)

YUV420p can be read by ffmpeg, cinelerra and IIRC avidemux. There must be other applications thar can read that format. Anyway a png image sequence gives the same quality and consume less HD space. Just keep them in a folder :slight_smile:


Thanks for your reply and the link to producing AVIs by command line … quality.3F

I am wondering if my yuv420p could not be read properly because I set quality to zero for the render.

More exploring to do and back to using command line. yes I currently put the png files in a folder. However I found that in Cinelerra if I give each of the imported png files a display time of less than 0.05 seconds I can’t do anything with them in Cinelerra. More things to learn.

You’re welcome :smiley:

I’m absolutely sure that that’s the problem. The quality set to 0 should be avoided. It must be changed in the code. It is not working as it was intended it works I think.

Yes, cinelerra has problems importing image sequences because the display time is stupidly rounded to that value. The best way to go to cinelerra is using yuv format. It read it properly without any problem.


I am still having trouble with rendering to yuv. I am using the GUI to render, a 30 second file, size 640 by 480, 30 frames per second, I get a yuv file of about 400 megabytes, I set the render quality to 3.

The png files for this animation add to about 570 megabytes.

The problem is that Cinelerra thinks the file is a pcm audio and builds two audio tracks.

Has anyone encountered this ?

Something must be wrong there. PNG never would be greater than yuv. Did you set the yuv file extension to “.yuv”? Did you explicitly select “yuv420p” from the drop down list for the target when render in synfigstudio? did you specify the target output with synfig command line order?
In other term of things:
Which version of cinelerra have you got?

and finally if all the above questions are correct, can you share the sifz file to let me test its render?


No, I selected the target output using the GUI, I missing something ?

here are the settings for rendering to YUV

I am using Synfig 0.61.07


Cinelerra 2.1CV (which does not list YUV in its load format choices)

I have upgraded to Cinelerra 4 and now get the message failed to open …".yuv" Cinelerra also faield to open the “yuv” file rendered from the attached sifz file - text and layers 2.sifz

I guess it is a problem with the rendering.
text and layers 2.sifz (2.7 KB)

The Synfig Org page on renders - indicated that the yuv is rendered but not in a format that can be read. Has this problem been fixed?

I’ll load your sifz file and produce a yuv file to insert to cinelerra. I use cinelerra 2.0 CVS (an old version) in my old computer. I’m sure that the yuv is fine because I’ve readed it with other players encoders (mplayer, ffmpeg, totem, ffplay) and my cinelerra does it.

Let me reach home :slight_smile:

Thanks once again. There is a link on the render page - that suggests the problem may be with the way various versions of ffmpeg are compiled.

Does synfig have its own ffmpeg included in the synfig package or does it rely on the ffmpeg installed in the system - in my case Ubuntu .

Actually I have just downloaded and installed (not sure how successfully) the new ffmpeg from the ffmpeg site, but no change in the results so far.

I found a player that runs in Windows that can play the synfig generated yuv420p file correctly, provided that I tell the player what the image sizes are. It seems that this data is either not included in the file header or is wrong. The player is available here

I’ve rendered to yuv format the sample file you have provided with the same render options. Also I’ve installed the latest cinelerra available for Ubuntu Hardy (1:2.1.0-1svn20080826akirad1) and it loads perfectly the yuv file.

Please tell me what’s the synfig version you have installed. I guess that there are missing libraries installed on your system (Ubuntustudio?) that don’t allow use render output to yuv correctly. I guess that you’re using synfig 0.61.07 that is quite buggy. Current release is 0.61.08 but unfortunately it was not included with Hardy.

I strongly recommend to install all the needed and recommended packages from the Build instructions (see the wiki) and build the latest synfig svn version. It must work.


Thanks for all your help. I will install the latest version of Synfig and check the libraries.

I think this package is very useful and it is worth the effort to get things working correctly.

You are right in one aspect. Cinelerra 4 from heroine warrior doesn’t support yuv files.
Sorry if I confused you.

I’m running Cinelerra 4 on Fedora Core 8 and thought I’d throw in what I’ve learned of it so far.

I, too, tried the YUV method to import animation from Synfig, but abandoned it in favor of importing the separate PNG files. My experience may differ from yours, but I’ve found it’s easy to do: I create a new project, specifying one video track that matches the height, width, and framing rate of my animation, then I select “Load new files”. I go to the directory holding the PNG files, select the first file of the series, then scroll down to the last file, and while holding the shift button I select the last file (so that all the files in the sequence are selected). I click the “Replace project and append to existing tracks” icon, then click open.

I then usually render the sequence into MPEG using the H.264 codec with a quantization factor of 20. This makes it easier to edit the individual sequences together in Cinelerra’s main window.

My $0.02