[Solved] Proxies vs intermediate codecs; other proxy questions
Things are moving along with my project which now includes my required (16 bit) TIFF images sequences (created with lists) and (AVCHD) 1080p60 MTS video, also some various video shot with smartphone and a few still images, I will need alpha channel so I am editing in RGBA mode. I had used Cinelerra a long time ago with the same video source and I had made intermediate codecs DNxHD (using a recommended ffmpeg script) back then, I believe its now updated to DNxHR 422. In the meantime I worked a bit in Kdenlive which allowed to used mixed media with no intermediaries although it worked slower....
If I select convert to proxies scaled 1:1 which, according to the manual, is best for images, (also I think I might need effects that benefit from keeping it 1:1 -i.e making the subject in some images get smaller and smaller while I keep a composited background at the same scale....), should I still convert my MTS files to an intermediate codec (transcoding done outside of Cinelerra) or is using one of the proxies settings suggestions in the manual sufficient and useful for the varied sources?
I did test one of the proxy settings and saved it to project b, ffmpeg; mpeg mpeg compression, yuv420p, 2000000 bitrate, but I did not know how to exclude the few jpeg still images which once converted, had an mpeg extension, do they really require a proxy? Is there a way to select what media requires a proxy and what can be excluded in the same project?
I should mention that I just got a more recent NVIDIA graphics card with 6 Gb memory (Geforce RTX2060 OC) while my system is quite old (Phenom 965 Black edition 4 core CPU, 3.5GHz, 12G DD3 memory) & I'm hoping that some of the transcoding, effects etc can make use the GPU processing- I have set the video driver to x11-openGL & using proprietary driver.
Is there a proxy setting that takes advantage of this? I'm a bit confused, I'm not sure what proxy setting can make both video and image sequences more efficient for editing & allow an alpha channel...
Because my Laptop is old I have to use Proxy. Usually my Proxy is set to: Scale factor=1/4, "Rescaled to project size"= UNCHECKED, FFMPEG | mpeg or mov.
Using alpha channel you can see my Proxy settings at 5m17s in the "Animated Split Screens" tutorial. Link to https://www.youtube.com/watch?v=YCqJnHLmj6s
The Format Project is 1920x1080 @30fps, dimensions of the original videos 1920x1080.
My Settings->Preferences-> - Playback A TAB: - Video Out: - Play every frame = UNCHECKED - Video driver = X11 - Use direct x11 render if possible = Checked - Performance TAB: - Use HW Device = none - Project SMP cpus: 4
My Laptop works good enough in that condition.
If you don't change type of extension (or don't change the Scale Factor) for proxy but change type of coded (Compression) you have delete or move your proxy files to another folder. For example, if you have chosen FFMPEG | qt, Compression=png.qt and then you want to change from png.qt to mjpeg.qt, Cinelerra thinks that proxies have already been created. Cinelerra-GG don't know the difference between png.qt and mjpeg.qt.
Hello yes thanks @phylsmith2004, I finally had realised that by trying the .mov extension, the DNxHR options were revealed, I'm so rusty on everything! I tried to test transcode with DNxHR_HQ the Tiff sequence as well but it stutters; is not fluid in the compositor while the various videos are fine in compositor. Not sure if its because I'm still trying to figure out what to use to for them, guess PNG proxy...I think that once I add effects my old computer will struggle so I need to proxy the DNxHR_HQ video to something else as well. I keep re-reading the manual and some sites online & trying to figure out the right combination of transcoding and proxy settings but it is still confusing me since I need to stick to 1:1 & have alpha channel.
I wonder if there is a way to put all the proxy & transcode files into a folder that cinelerra will be able to open?, right now they are all mixed up with other files in my /home/videos,
I'd be interested in the answer to this, it happens to me too. It's so damned untidy and more than a little confusing when searching through the clips!
I found the best way to transcode, although it's much more labour intensive, is to render DNxHR_HQ from the timeline by labelling each clip and selecting create new clip at each label in the render box, then transferring the clips to a "transcoded" folder. I have never tried this for proxies because it would not bring up the proxy on/off on the timeline. I've been editing using the transcodes.
Are you transcoding AND generating proxies, that's how it reads to me, if so, why? Just curious. 😀
If using offline editing (proxy editing), there is no need to transcode footage unless it is in a format your NLE cannot accept. Editing is performed on the proxy clips, the edits will be applied to the original clips upon rendering, as long as you switch the proxies off first (hence the comment in my previous post regarding not generating proxies the same way as I transcode).
If transcoding to an intermediate "edit friendly" codec, which usually means from a CPU intensive long-GOP such as mp4 to an all-i much easier to handle format such as DNxHD, then proxies should not be needed, but if they are, it would have been better to use proxies without transcoding in the first place.
There is no need to worry about bit rates and quality settings for DNxHR as they are fixed to the resolution and frame rate of the media being encoded.
Just a note to say that in CinGG the Transcode feature is not complete. It originates within creating proxies, as a way to do 1:1 proxies. For example transcode does not set the color spaces that will have to be varied either before, outside of CinGG, or after transcoding with the ColorSpace plugin.
I have found no problems using different formats and resolutions in the same timeline. I do recommend, however, that there be uniformity of color spaces (and FPS).
PS: you can use DNxHR_lb which is the "proxy" version of the avid format (low bitrate). But to apply filters and do Color Correction you have to switch to the no proxy version. It is easy in CinGG to switch between modes all the time.
Currently these files MUST be in the same directory as the original files - the original design goal was to make it as fast as possible to switch from viewing the proxy file back to viewing the original file (the P/S switch in the upper right hand corner of the program window) because you would only be using Proxy if you needed speed in the first place.
I would argue that you would also use proxy clips if you want smooth playback probably, but not necessarily, the same thing.
As for transcoding, it only needs to be done once and afterwards the original files could be deleted if desired.
We seem to be confusing transcoding with proxy generation. Transcoding is converting clips to a different working format, clips that can then be used in the place of the original clips. Proxy clips are low resolution clips to be used alongside the original clips, as temporary substitues but not to replace them. Both should help with a slow computer, in some cases proxy more so than transcoding.
Hey Guys! @dejay @phylsmith2004 @andreapaz thanks for all the info, I will go over it after taking a little break, much needed as its been a crazy bumpy journey from crash learning Darktable (Raw image editor that heavily uses open-Cli) for my stop motion images & getting a newer NVIDIA card (all i could budget) only to realise that there is still much used by the CPU and limited by the drive speed when dealing with most video editors except for Davinci Resolve. Thus I really need either efficient proxies or transcoding to help my system.
What I found confusing is that the many options for both transcoding and proxies seem identical except for the scale option, hence trying to wrap my head around the difference. How I remember it in Cinelerra for Grandmas manual, the terms intermediate codec, at that time there was DNxHD and the mjpeg type, were almost used interchangeably with proxies since we still had to point Cinelerra to the original files for the final render. I am surprised to read that with good codecs, you can now drop the originals!
My main types of files; TIFF sequences (which could not play in compositor, would cause Cin to crash) & MTS video originals (interframe long GOP) were all transcoded and replaced with DNxHR_HQ but upon testing with effects playback is slow esp the video ( 3-4 frames per second).
(To complicate things, I was hoping to try a few things like the painting effect in Natron with the edited footage (Natron works with many sources in Rec.709 space) but I might save that for another project.)
So maybe I should get my originals back in project and just proxy them with DNxHR_lb so I can switch to the originals for the colour correcting. If I didn't need an alpha channel, for masking & chroma key effect, I would have liked to use the mpeg.mpeg proxy, it seemed to play smoother. Can we still render small portions of a project in a float format and bring it back on the timeline if needed?
With old computers We can use Proxy. Cinelerra uses two types of Proxy and you can switch that with "Rescaled to project size".
When "Rescaled to project size" is checked, the size of the video data to be computed will always be as the format project.
The size of your video is scaled down of the Scale factor BUT, then, it is rescaled up to the project format.
For example, your format project is 1920x1080 and Proxy's Scale factor is 1/4, then your videos will be scaled down to 480x270 and then up-scaled to 1920x1080. For an old computer, this option is not recommended.
When "Rescaled to project size" is UNchecked, the size of the video data to be computed will be reduced of the Scale factor.
The size of your video is scaled down of the Scale factor.
For example, your format project is 1920x1080 and Proxy's Scale factor is 1/4, then your videos will be scaled down to 480x270.
It works as if the format project were 480x270 (and really it works so).
The good thing is that your computer will be faster. The bad thing is that some Effects (Plugins) doesn't work as expected because they use pixel units. An example for that are Title, Blur plugins. A workaround is needed for that.
In the list below, some possible Proxy settings with Alpha Channel, tested by me.