www.ssontech.com Forum Index www.ssontech.com
SynthEyes Camera Tracker Forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Feeding SynthEyes - Shot input performance

 
Post new topic   Reply to topic    www.ssontech.com Forum Index -> Russ's Rants
View previous topic :: View next topic  
Author Message
ssontech
Site Admin


Joined: 16 Mar 2005
Posts: 611
Location: Valley Forge, Pennsylvania

PostPosted: Wed Jun 25, 2008 12:25 pm    Post subject: Feeding SynthEyes - Shot input performance Reply with quote

This thread has two main points: to discuss the fastest ways to feed footage into SynthEyes, and to serve as a place for discussion of the new 8-core-optimized version overall.

The issue of how/what to feed into SynthEyes is especially important now, where with a modern 8-core CPU, it can take longer to load the footage from disk than to track it. Load performance is also important if your shots will not fit into RAM --- SynthEyes must re-load individual frames as you move about in the shot. More on that at the end.

First, there has been a recurring issue with the kinds of footage people feed, or want to feed, into SynthEyes, especially with some of the newer cameras. It is important to distinguish between acquisition/distribution formats and intermediate working formats.

An acquisition/distribution format is what you get from a camera, or what you give to a customer for broadcast or posting on a website etc. These formats are designed to be as compact as possible, and only played back in a sequential manner. They use interframe prediction methods----any given frame can depend on completely different frames that must be decompressed first. Sometimes, the only way to get the last frame of a movie is to decompress the entire movie, in order. Examples: MPEG, Sorensen, etc --- where there is a "key every" compression setting required.

These formats are not well suited for VFX work, certainly not in SynthEyes, because frequently access can be required to any frame at any time. If much of the movie must be re-decompressed to get to each frame, you can guess that performance is very very bad.

By contrast, there are codecs that are intended to be used for working on the footage. They provide less compression, but the same footage can be recompressed several times if needed with little further degradation. And each frame is an island and can be decoded separately. Apple's ProRes is an example, and it is designed to take advantage of all your processor cores to increase performance. I'm not sure of Cineform's details but it is intended for the same purpose.

Back to cameras----many cameras, especially at the consumer end of pricing, output pseudo-24 fps footage using a field repeat pattern to make the images compatible with standard 29.97 tape and data formats. "24 fps" is really 23.976 fps, which is 4/5 of 29.97. You should NEVER try to track this kind of footage without first removing the repeat pattern. You should use the Cinema Tools in Final Cut Pro (or equivalent) to remove the repeat pattern and get the underlying frames for ALL of your further work. You should consider this as part of the footage acquisition process. We will NOT be adding features to read various camera-specific acquisition compression formats directly, it is the wrong way to go.

IMAGE SEQUENCES

Image sequences are the most reliable way of working with most software in the post process. Sequences work well with SynthEyes's prefetch engine also, because it can work on each frame separately. With a QT or AVI, only one frame can be worked on at a time, to a substantial extent.

You can achieve high SynthEyes performance using JPEG sequences with light compression, because there will be less data to pull from disk, and SynthEyes can decompress them in parallel on all cores. BMP is a low-overhead uncompressed format.

With the (mostly) uncompressed formats (BMP, TGA, TIFF, PNG, Cineon, etc), the key limiting factor in how fast you can load shots will be the speed of your disk drive. If you are handling large film sequences, a RAID drive will substantially improve performance.

LOAD PERFORMANCE AND RAM SIZE

It's easiest to work on shots if they fit into RAM, so you can scrub around however you want, and SynthEyes already has the footage. If SynthEyes has to constantly reload large film frames, it can take quite a bit of time.

This is one of the reasons to run a 64-bit operating system (XP-64 or Vista-64) and get the 64-bit SynthEyes and many GB of RAM --- you can put big shots in RAM without problem.

Otherwise, a RAID drive and JPEG sequences can ease your pain. Or ProRes on an 8-core machine.

I know that many SynthEyes OS X customers with Mac Pros get machines with quite a lot of RAM, even though there is astonishingly little 64-bit Mac software, due to Apple's policies. There is one place where that extra RAM can help you, though --- it will act as a disk cache, so that if you have a 12 GB machine and a 6 GB shot, for example, you have a chance that much of your 6 GB shot will be in the operating system's disk cache after you've read it once, even though SynthEyes won't have it directly. It's still fairly slow for SynthEyes to get to, but it's better than going to disk, and at least all that RAM is helping you a bit Wink
Back to top
View user's profile Send private message Visit poster's website
CineGobs



Joined: 16 Jan 2007
Posts: 29
Location: Denmark

PostPosted: Thu Jun 26, 2008 9:17 am    Post subject: Reply with quote

I don't have an 8 core machine, but on my Q6600/Vista32 machine the new version is ridiculously fast. That's some amazing optimizations. Shocked
Back to top
View user's profile Send private message Visit poster's website
yemzaw



Joined: 14 Oct 2010
Posts: 3

PostPosted: Thu Oct 14, 2010 10:20 am    Post subject: Reply with quote

Hi,

I am a student and very new to SynthEyes. I shot a footage with Canon 7D in 24p.
and then I converted it into .jpeg sequences in AE. then I input those sequences into SynthEyes 2008 32bit to track. They are all imported. but for some reasons when I played back in SynthEyes with Normal playback mode selected, it did not play smoothly and it played jagged although I let it play
the whole footage once to cache or whatever. Can someone please help me?

Sincerely
Back to top
View user's profile Send private message
GraphicsKid



Joined: 25 May 2009
Posts: 484

PostPosted: Fri Oct 15, 2010 1:56 am    Post subject: Reply with quote

Start a new topic for that buddy, and post up your system specs.
Back to top
View user's profile Send private message
Gorf



Joined: 10 Mar 2007
Posts: 111

PostPosted: Fri Oct 15, 2010 4:20 am    Post subject: Reply with quote

What he said ^

It could be interlaced footage, and you have the field order the wrong way round.
Back to top
View user's profile Send private message
yemzaw



Joined: 14 Oct 2010
Posts: 3

PostPosted: Fri Oct 15, 2010 10:01 am    Post subject: Reply with quote

Hi GraphicsKid: My system specs:BOXX, Dual Quad Cores, 18G of RAM, Quadro FX 3800 1GB.

Hi Gorf: Can you please tell me how I do fix the the field order. So the footage plays smoothly in SynthEye. I am sorry I am very new to this field.

Thank you all!

Best
Back to top
View user's profile Send private message
Gorf



Joined: 10 Mar 2007
Posts: 111

PostPosted: Fri Oct 15, 2010 12:02 pm    Post subject: Reply with quote

Odd or even - when you load the footage and tell it the aspect ratio, framerate etc.

Incorrectly specified interlacing is just one of many reasons why your video might be jerky. If it doesn't play back well in a software video player, it definitely won't play back well in SE. However, anything exported by SE will be fine.
Back to top
View user's profile Send private message
yemzaw



Joined: 14 Oct 2010
Posts: 3

PostPosted: Fri Oct 15, 2010 12:06 pm    Post subject: Reply with quote

Thanks Gorf!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    www.ssontech.com Forum Index -> Russ's Rants All times are GMT - 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group