performance

Ticker Performance

adamfenn28's picture

I've been hanging around these forums for some time now, and it's been very helpful. I get the clear impression though, that I'm using QC for something wildly different than what most of you are doing.

I've built a suite of video effects, to be used a graphic overlays to web streamed broadcasts of amateur wrestling. The primary user is USA Wrestling, the national governing body for the sport. I've got a live scoreboard, and some other effects.

I've been working on a ticker, that would show results, on deck information, team scores, headlines, etc. I have it mostly done, although it could probably use a little clean up. I have a big issue I need your help with. The effect doesn't run perfectly smoothly. That is, it's jittery. With scrolling text, that's very obvious and almost gives you a headache. It sometimes runs perfectly until the CPU is a little bit taxed.

I'll attach my composition, and the plugin I created that it needs, and the source code for that plugin. I really feel like the problem is somewhere in the QC code, rather than in my plugin, as my patches only run once in a while. I've tried to replace a significant portion of the QC code with a custom patch, but that seemed to only make things worse. That code is in the attached project also.

Can you please help me find a way to make this ticker run more smoothly?

Additional info. Because the information in the ticker is somewhat time sensitive, I built it this way so that I can refresh the info just before each segment is displayed. When I tried to do that with other tickers I saw, I kept having problems with the width of a segment changing causing positioning issues.

Kinect performance performance

boya's picture

Got the Kinect with the intention to track actors from 6-7 meters above in a performance. Preliminary results seems a bit disappointing regards to dept range and artifacts. I do not know if my living room is more messy than others, but it is freaking out on lamps, windows and sharp contrasts giving 0 depth all over the place. Also the fidelity at 5-7 meters depth accounts for only about 5% of the total z depth, so some serious clamping is due. Seem to me the Kinects cameras should have been a bit more separated to get better readings at these ranges. But could someone point me at how to clamp the z to get rid of the unwanted ranges, and also how to connect "stuff".

Disable VBL sync for better performance (if you don't mind tearing..)

psonice's picture

Just tried this out as I have a comp that does offline rendering (yeah.. without quicktime or quartz crystal ;) and it's taking many hours to render. And I'm inpatient.

If you disable VBL sync (it's in the hidden preferences under editor), the rendering now longer has to wait for the screen to refresh before starting the next frame, meaning it can start sooner and doesn't spend any time just waiting around.

This makes QC's rendering quite a bit quicker. My estimated render time for this comp was 2 hours 40 minutes, it's looking like it'll finish in 1 hour 40 with VBL off. That's over 30% faster!

The comp is running at ~35fps on average, so the reason is pretty obvious: with VBL on, it can only render at max. 30fps as it never reaches 60. If it drops below 30fps, the next limit is 20, so it's fluctuating between 20 and 30fps.

The downside is that with VBL turned off it can draw a frame while the screen is refreshing, which causes nasty tearing. If tearing isn't an issue, turn VBL off!

I'll post some details of this project once the video is done. It's kind of a good showcase of what can be done with QC :) Nothing too stunning to look at, but it's handled a tough project extremely well.

HD video performance

sbn..'s picture

Hello all!

I'm doing an installation where I have to drive a full HD display. I need to play a short loop, and then trigger another loop once in a while (from a sensor). Both loops are short (a few seconds to a minute). Simple stuff, or should be.

The challenge is that I need both HD performance and immediate the ability to switch vids instantly.

From an installation / practical point of view, the Mac Mini looks really tasty. Affordable, small, and quiet. This older Macbook Pro is pretty similar in specs to that one, and I've gotten 1080p to play on this machine without dropping frames as far as I can tell. I've not yet tried the triggering in-depth.

Does anyone out there have a current Mini? How's HD performance?

Or does anyone have other ideas for other soft- / hardware that could do this? Windows or Linux is fine. Or ideas for the most efficient codec to choose?

Video input patch - capture size?

Gummibando's picture

Hi everybody,

I've been working on some (really basic :) augmented reality stuff for the last few days which I want to be presented in a POS style fashion, e.g. a portrait oriented display with a mounted, external (USB) camera.

For some reason the Quartz Composer "Video Input" patch captures the signal from external USB video class (UVC) cameras in their native video size, for instance 1600x1200 (high-end OSX Logitech something) or 1280x960 (XBox Camera) pixels. Which - as this is obviously an uncompressed YCrCb 4:2:2 video stream - easily saturates the USB bus, which leads to slow frame rates and/or image tearing. As UVC is generally supported in OSX since 10.4.9 there is no prefs app or setting to reduce the capture size. The image of the built-in iSight is captured at 640x480 pixels in QC, even though the iSight has a higher native video size (1280x1024 if I remember correctly).

So, pretty long story, short question.

Is there an alternative video input patch where you can modify the capture/output size?

The QC built-in "Video Input" patch once had such settings but unfortunately this was removed in QC3/OSX 10.5, according to the QC3 release notes.

Thanks in advance. Take care, Oli