New plugin - export to movie

mirek's picture

I'd like to announce availability of new plugin/patch - Export to Movie

http://quartzcomposer.com/plugins/1-export-to-movie

You can put your composition inside "Render to Image" patch and send it's output as image input to "Export to Movie" patch.

Example composition using this patch: http://quartzcomposer.com/patches/332-export-to-movie-example

Mirek Rusin

gtoledo3's picture
Re: New plugin - export to movie

FWIW, there's already a stock movie exporter patch that does the same thing. This one doesn't seem to load in QC3 either.

mirek's picture
Re: New plugin - export to movie

Thanks, where can i find it?

cwright's picture
Re: New plugin - export to movie

I think it used to be here: http://developer.apple.com/mac/library/navigation/index.html?section=Res...

Otherwise, /Developer/Examples/Quartz Composer/PlugIns/MovieExporter/ on 10.5

.lov.'s picture
Re: New plugin - export to movie

Anyway, a version of this plugin which working in multi-threaded situations would be awesome. Do you think it is possible?

cybero's picture
Re: New plugin - export to movie

Well, I can get the plugin [thanks BTW :-)] to load when placed into /Library/Graphics/Quartz Composer Plug-Ins, but not from my home directory.

That said, where does it export to ?

Thus far I can only obtain the patches use as a consumer / renderer.

Interesting idea for a 64 bit renderer, is that what you've got here , or is it a Universal 32 bit?

Nice to see another QC focussed site.

Update

Once I stopped the render in QC, then I got a file movie.mov at HDD root level - so that answers question one - where it exports to, and also the unasked question, when does it export - at the very end of one's render

[and then it crashed when being asked to render in image to to a 1280 * 720 dimension - perhaps one should set dimensions when render is off - something I didn't do]

BTW- any plans to extend the codec possibilities ?

cybero's picture
Re: New plugin - export to movie

Hi Mirek, another question, does your plugin stop at 1090 * 1090 bounds ? - I set the RII to 1280 * 720 to make an HD sizd .mp4 export via your plugin [congrats BTW] and got a stubbornly square 1090 * 1090 .mp4 resulting :-).

Update

Just to answer that question above , it was the setting on the Image Resize that needed to be set to Stretch / Always and all went well - except it doesn't seem to take having the billboard masked - just outputs the 1280 * 720 movie frames.

I was trying to mask the movie frame with a sphere - which renders fine in QC4.

cybero's picture
Comparisons of Quartz Crystal and Export to Movie - Masking

Both these movies were exported using the same .qtz, but only one honours the live render setting of a Sphere mask.

Excuse the lower than usual quality of output, bit of a rushed job.

Am I doing something wrong ?

Export to Movie

Quartz Crystal

As it happens the Developer examples Movie Exporter plugin also does the self same thing, i was kind of hoping to update with a self contradictory message about how Blend With Mask Image fed into the Movie Exporter patch cured the masking image blues and applied to the Export to Movie plugin too, sadly though, I do not get the masking image honoured, except in Quartz Crystal [thanx for that Kineme] at present.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

thanks, that's great

do you mind sharing this composition with us? i dont mind making this exporter better than quartz crystal.

my tests look like this, any idea what am i doing wrong:

Mirek Rusin's Movie Exporter:

Quartz Crystal:

same composition.

mirek's picture
Re: New plugin - export to movie

what do you mean? you want to export 2x different movies at the same time or it's crashing something?

it should work fine with multi-threaded patches.

cwright's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I think there's a bug with unregistered QuartzCrystal where it only renders the first frame (before the camera has kicked in) -- so the "movie" is actually just the same frame over and over again.

Can you provide the composition (info@kineme.net), and I'll make sure to address that for the next update of QuartzCrystal?

mirek's picture
Re: New plugin - export to movie

it's 32/64bit

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

attached.

can you share yours, it's beautiful (and a good test case).

ps. also this default composition when you're starting quartz crystal... 70% of cpu? isnt it better to use something lighter

PreviewAttachmentSize
Teapot Mirror.qtz6.84 KB

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Sure - can make that comp available - but funnily enough - some several hours later on in the day and without doing anything other than stop and restart QC 4 - I get no such problems as captured previously.

Ah well at least that means I'll be able to set up some more meaningful cross comparisons.

[Cache I'm pretty sure of it. Must have been previously good to go, but that seems to be the problem with OpenCL sessions, they can sometimes drag other stuff along in its wake, even non OpenCL based / derived stuff, kludges things up perhaps]

The cause of your problem has already been correctly addressed by cwright. Unregistered QC defaults.

PreviewAttachmentSize
332-export-to-movie-example2.qtz.zip38.48 KB

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

thats very ambitious to make a plug-in better than quartz crystal....

one quartz crystal is an application not a plug_in... that provides far superior renders than you get out of qc plug_in. now most times apples movie export or just a screen capture will suffice for me but when i want quality quartz crystal kicks ass. crystal really does wonders for gl lines and stuff... far superior than any plug-in or screen shot in my humble opinion.

my first day with crystal i cranked up the anti-aliasing and motion blur. lets say 12 hours later i was still waiting for a 3 min animation. hey i have been rendering for years and a 12 hour render isn't much but then again quartz is a real time environment. well needless to say with anti-aliasing on 1 as well as motion blur things hum along really fast.

once you have a legitimate copy of quartz crystal do a test with lets say h264 on standard setting and then compare that to your plug_in there will be a big difference. now its not really fair to compare an offline renderer to a realtime render plugin but im all for being able to chose specific formats, motion blur and anti-aliasing inside a plugin real-time.

.lov.'s picture
Re: New plugin - export to movie

The plugin didn't working 'outside' QC in multi-threaded apps just like CoGe or VDMX, because QTMovie needs to initialize on the main thread.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I'm with Dust on this one... and was going to say it earlier today. It's pretty outlandish to think that a realtime render is going to look as good as a Quartz Crystal offline render. The idea that you can engineer it into doing that isn't even possible. It's apples/oranges.

Number one, the second you kick off a plugin like that, the frame rate drops. So, it's not even as good as what you were looking at before you start using it.

Fail.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Echo, Echo :-)

Even if one forgave the frame rate and went for maybe doubling the movie time or adjusting the output rate I'm still stuck at 1090 * 1090 :-).

Image Space - it's an irrevocable thing.

Plus , so far as I've found out, some finer touches, such as using RII / Depth clearing / Masking aren't always honoured consistently in either Movie Exporter or Export to Movie.

Surely having a secondary GPU card or firewire video rendering rig to provide the actual output might prove to be a far more useful and effective way of doing a live render?

More expensive.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

can you render interactive compositions with quartz crystal?

smokris's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Not directly, but a common practice is to use Value Historian to record an interactive session and then render it (at higher quality settings if desired) using QuartzCrystal.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Yeah, but what you have to do is use the Value Historian plugin (which has WAY more uses than just offline rendering.... my favorite plugin hands down).

What you do is, to put a value historian patch on your editor surface, go into settings, and add input ports. Connect your mouse, keyboard, etc., outputs, into the inputs of the Value Historian, and then connect the outputs coming out of the VH to wherever they were going originally.

Then, turn on your Viewer and go into "record" mode. From that point on, Value Historian will record all of the movements you do. When you are done, shift it into playback mode, and watch your "performance". When you render in Crystal, make sure your qtz was saved in playback mode, and all will be well.

Personally, I find the VH so indispensable because it's a killer way of recording all kinds of motion sequences, and is a really quick animation shortcut. For instance, if I setup a body with some arms that are attached to audio, I can tap on my desktop and have the use my wrapping on my desk to "animate" that arm movement, and record it with the Value Historian. Then, I go onto the next piece I want to animate. One can have multiple Value Historians in a composition.

Also, you can setup an interpolate/round on non repeat mode, so that you have a delay before your "recording" starts. You can also "trim" your recording by controlling patch time externally, after the fact.

So in essence, yeah, the offline QC/Quartz Crystal system is very refined if you know the tools at your disposal. I STILL use stuff like screengrabs or the original Apple Movie Exporter (err, not the seemingly redundant one posted here to a site with tons of out of date info...not a hard jab, but it seems to me that I don't want to use a plugin made by someone who isn't actually aware of what plugins are already available, especially standard API Apple examples, and who also thinks that a realtime render could EVER be the quality of an offline one), but everytime I do that I feel like I've sold myself short on what the qtz REALLY looks like.

The thought of encoding to something like H264 in realtime, HD, and not having it take a toll is crazy... I bet it can't do it, and/or would crash, except that it doesn't load into QC3 for me anyway.

All this said, it's cool to see more people trying to make plugins for QC.

leegrosbauer's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Man, I've been waiting a long time to find out how the heck to use Value Historian. phew!!!! Thank. You.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Quote:

seemingly redundant one posted here to a site with tons of out of date info

which site BTW ?

which seemingly redundant example ?

One thing's for sure - you can give yourself a pat on your patch proselytising back, GT :-), I've just downloaded the Value Historian and am going to start giving it a spin and maybe a few loops too.

Might be getting access to a video media suite soon, so I might well see what sort of results I get rendering upon such a rig.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

cool.

you can't use your camera, or speach to control compositions then?

btw. just uploaded new version of "Export to Movie", soon-to-be-better-than-crystal, real-time-recording patch:

http://quartzcomposer.com/plugins/1-export-to-movie

just make sure to delete the old plugin version

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Like the export bar :-) - now I have a variant of a FLAC style audio mix sending its data to a value historian patch and then the export to movie patch that does a pretty crisp job of a simple VH animation / replication that I simply fail to get working at all in Quartz Crystal - perhaps it needs an external timebase or something,

Now working in Quartz Crystal too :-)

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

does anybody know what happened to the export quicktime feature of QC3. i was messing around with someone on campus today and said how big do you think this HD 5 min long quicktime file will be. (using qc3) the answer i got was 2gb... the file size of course was like 100k. i was then asked if interactivity worked with the quicktime movie and immediately replied yes but it seems this is only a qt 7 feature. is this negated now because it can be deemed unsafe to have an interactive quicktime movie ? i know the quality wasn't up to par with a quartz crystal but it was pretty cool to HD movie files that people could open in quicktime maybe for just mock up purposes.

cwright's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Unsafe patches have never worked in QuickTime (unless you go back to 10.4, 3+ years ago). This means mouse/keyboard patches will "work" (assuming QT passes the events along), but other input (video, file on local machine) will not.

It's also buggy on 10.6 -- completely broken in 64bit mode.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I meant the website that hosts the offsite link to the plugin, and by redundant, I meant that the utility of the concept already exists in a stock Developer plugin example, and that this is more of the same with no bonus - in fact, as is, it's not even as good as the already not so good stock Movie Exporter (Apple's), since it doesn't load in QC3.

I don't know, not trying to be a big downer, this one just struck me as really odd.

cwright's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

To the developers' credit, I think you're likely a bit spoiled by using our plugins (generally -- we're not without our faults and bugs, of course).

We've had so much experience with QC that we're usually pretty good about handling some of the smaller quirks that beginner QC plugin developers deal with that end up being Really Annoying (regarding compiling against 10.5 when possible, handling PPC, Intel, and 64bit all at once, handling GC (though we haven't stress-tested that much, never the less it'll at least try), usually handling threading issues sensibly, and hurdling namespace issues in a single bound). That stuff all comes from just writing a lot of code, doing lots of tests, listening to lots of users, and being somewhat obsessive-compulsive :)

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

cant find apple's movie exporter using google, apple search, http://developer.apple.com/mac/library/navigation/index.html#topic=Sampl... and /Developer/Examples/Quartz Composer doesn't exist on my 10.6 with latest xcode sdk for snow leopard.

do you have this plugin by hand, i'd like to try it.

leegrosbauer's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Links to quite a few of the previously existing developer examples for Quartz Composer are indeed now missing from the indices at the Mac OS X Reference Library. I posted an inquiry to the dev mailing list last week about that. There was no response from anyone to that inquiry.

The only thing I have called Movie Exporter is an Xcode plugin project for OS X 10.5. You are welcome to it, if desired. (leegrosbauer at gmail.com)

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

to get these examples you need an older x-code like one that shipped before snow leopard not sure on the build numbers maybe 2.5 or something. i'm sure you can find a download link as well. more than likely you will not be able to install it over x-code 3.2 so i suggest to extract the developer example packages with a program like pacifist. i'm not really sure why they have been negated. its not like x-code 3.x is any smaller or anything. its not just quartz plug-ins but all the developer examples. personally i want them back so i'm going to scrounge up a leopard disc and extract some of the examples because there are times i'm not on the net and times i don't want to search and browse the mac dev site.

the movie exporter plug is essentially like yours with limited controls. the two things is has is location of exported movie and a trigger. these two things make it better than yours regardless of the quality because you can choose when and where to save the file. lets say you want to do make a security program or something and save a video file of an intruder to a remote disk or something based of motion detection. i don't know there are all kinds of uses for the trigger. sometimes its fun to do time delays and what not feeding the movies in based on a clock or something. you need a trigger for this.

it would be very simple to implement this into your plugin with a NSString and Bool if you opened your source someone could modify for you. i don't suggest trying to compete with kineme on the plug_in front because you will loose. chris/smorkis are very talented programmers. there may be some people out there making sicker visuals then them but i almost guarantee the people that are doing this are using kineme plugs so regardless of how talented the kineme team is they are given mad respect not only for the code they make but for the tools they give away that let people do incredible things.

im new to the whole developing thing so i mix and mash things from users on this forum all the time and forget to give proper credits etc.. which has caused heated relays and insulting controversies that we have all grown from, but i have never seen anybody from the kineme team be explicitly insulting even with the most frustrating things. hey sometimes there can be a implicitly snarky comment when a subject has been discussed to death or someone asks a really dumb question (my self included) but generally there is a respect thing going on here. its like chris just started the whole mac thing like in 2007 or something and he codes like he has decades of experience and there isn't many questions he can't answer.

so i find it rather un-cooth of you to dub your plug-in the soon to be better than kineme quartz crystal plug when crystal isn't even a plug-in especially on the kineme forum. i don't care what you do on other forums. tear kineme apart if you got the skillz to back it. the concept is all in the proof. poney up the 20 bucks for quartz crystal and see what it can do. if you got mad skillz then hack that $hit. i mean you could make the diamond crusted holy grail of plug_ins what ever that is ? i don't know the plug-in that grants you 3 wishes or something and that would be impressive... people would probably kiss your feet, but making that plug-in would not have been possible if kineme didn't do it first with the skanky sdk.

hey don't worry im not being harsh just trying to point out that there is slightly a bit of a condescending overtone with your new name for the plug. i can't tell if its worse to dub it the better than quartz crystal plug or to actually name the plug-in soon to be Better Than Quartz Crystal. actually at this point it would be funny if you did that even if it was a lie. there are not many people out there making plug-ins so i welcome you. im just trying to point out how that sounds to me.

i have gotten flack for naming plug_ins etc.. so i have been in this boat. i hardly think the kineme team even cares and i think your intentions are to improve what you thought was non existent. i wish someone pointed these things out to me when i was young and arrogant. you could have written two books on obj-c for all i know. the one thing i do know is that if your going to make better than quartz crystal plug then your going to need help from kineme. you may have mad KVC skills or what ever but there will come a point that you will hit a wall with qc and its lack of documentation that only a few people will be able to answer for you.

im just trying to get you started off right. don't take any of this the wrong way im just going off on a crazy rant. that happens with me from time to time. usually its me on the other end, so maybe im equally excited to bring attention the finer details of QC etiquette as you are excited to share your plug-in.

i remember my first plug-in... an apple script plug-in i was so excited to post it. i thought it was the greatest thing since the atari and all kinds of people where going to do amazing things with it and share with the rest of the world. well an apple script plug-in was old news and before my time so i don't know if i gets any use and don't care. i just thought people would like as im sure you have thought. the thing is no one is going to care about a plug-in that most everyone has. there will be a core few of us that test it and post the bug reports because thats what we do.

don't get discouraged though and don't get me wrong. i'm sure there are some new qc4 users out there that are in needs of your plug-in and for that your providing a great service. i know personally i have pushed out maybe 50 new qc users last semester and hopefully more soon. its my hopes that just a few of those people fall in love with qc as i have and help push it forward.

so instead of ripping the examples off an x code disc i decided to go on a rant. so here is apples movie exporter plug. try it compare it. i will find the source for you later unless someone else posts it.

PreviewAttachmentSize
MovieExporter.plugin.zip17.21 KB

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I agree with that synopsis, but I will add that you (and Steve) are both good at abstract conceptualization at the start of an idea, and discerning the best route to the finish line. I'm less annoyed with someone compiling something wrong, than the concept that a realtime image grab to movie, could EVER be as good as an offline render. That is what triggers the knee jerk reaction (in addition to the fact that it's an already existing plugin, in stock example).

Another plus side, is that you listen to totally out of the box ideas, and actually implement them! That's expanded the capabilities of QC tremendously since I've been using it. It's a whole other ball of wax now.

Beating a dead horse, but if someone actually THINKS that a realtime movie capture could be better in image result than an offline renderer that's had a great deal of updates and refinements since it's inception and they are doing plugin programming for QC and haven't looked at all of the examples, then it sends off a great deal of warning signs (like, don't even use this, because your system is likely to go f.u.b.a.r). My take is that someone should be fairly familiar with the basic principles of QC before jumping into making plugins for it.

Marginal plugins can be cute in non demanding scenarios, but there's nothing worse than investing time into something that hinges on an ill conceived or buggy plugin, and finding yourself having to lop it out and find another solution once you realize it's all messed up.

All that said, congrats on the plugin Mirek. It's nice to see more people trying to do plugins for QC, and I think that a really good starting point would be for you to get ahold of the 10.5 Developer examples. If you have a blank HD somewhere, you can just format the whole disk as a bootable drive, and include the Developer Tools on it.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

& here's the source code you would require :-)

PreviewAttachmentSize
MovieExporter Plugin Source Code Project3.44 MB

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I'm going to say "not a big deal" on this one.... but I'm not sure that we actually have the rights to redistribute/rebundle Apple files like this (it's explicitly against what you agree to when you install Xcode). Best done off board.

cwright's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

example code can be used as such (as far as I know), so long as its Apple origin isn't obfuscated (or something like that) -- bundling apps or frameworks, on the other hand, is probably a bad idea.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Ah, that IS right! Example code is a-ok (but if you've done anything to it, you have to make sure to explicitly say so).

I only had one cup of coffee... what can I say :)

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

thank you, i'll have a look at it...

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Not to worry GT, all above board - anyhow :-) - the upload contained the licensing information.

Interestingly enough though, running v002 Screen Capture provides one with a better fps on export as is achievable by default to either the Apple Movie Exporter - love those additional codecv options , etc, & to the currently basically to movie patch from Mirek - using either plugin otherwise results in a very low frame rate.

Default w/o v002 inclusion 3 to 6 fps , with v002 12 to 19 fps - note to those who don't already know, v002 Screen Capture is a beta plug in but it only works in QC4.

I guess one could re - timecode the resulting movie render and double or quadruple its frame rate and then resync the audio in something like GarageBand.

I shall find out in due course, but thus far some promising results.

Would be really nice to see what is already built in as defaults for codec selection in Apple's movie exporter being available in your patch. Mirek :-)

BTW - which site has out of date info ?

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

If you have a grab at low fps, and try to speed it up, it's just going to look like the Benny Hill show, which may be just the cool effect for some gag ;) If you just resample at higher fps, it's still going to look choppy, like the original would.

What do you mean though... you're taking the v002 in another qtz, making the screengrab, and then exporting using the v002 qtz (v002->movie export?).

Soooo.... again, what exactly is the upside of the "Mirek" movie export? I think I'm missing something.

Cybero, I mean the Quartzcomposer.com site, though I should have said something more like "incomplete". I also find the whole site to be in extremely bad taste, in it's repackaging of Apple's software and name choice (in this case, it's NOT stated where the qtz's are coming from, and has an air of being official that is fake - this ISN'T an Apple site... it just leaves a really bad taste).

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

The primary upside I have found thus far is that employing v002 Screen Capture usually gives at least 15 to 30 fps of what is being captured and then exported via either plugin - requires a tricky setup but thus far has produced reasonably good results, although it can and does crash and doesn't really like VH as much as I'd like.

v002 Screen Capture is capturing the live render from another composition's live render, though, as you can see from the attached compositions, I have also used it to output to a movie export file, rather than a QC window.

Of course quality wise it can be a little hit and miss and the more the graphics / animations depend upon reacting to dynamically altered data - like audio - the slower the frame rate - it's all overheads really.

Just rendering some complex compositions results in a far lower frame rate.

I'd agree about the Benny Hill show analogy [echoes of comedy reel music in my ears :-)] - although that's especially important with things like human movement and doesn't seem to make too much difference to some plain animations IMHO.

The actual structure of the Screen Capture is RII to Billboard [ & also to Export plugins - typically un-enabled when capturing from Billboard ].

Crashing and / or beach balling sometimes though.

Find attached a Capture container [based upon v002 / vade's example patch], plus a couple of movie exporting and screen capturing variants I cooked up - one based upon the graphic animation template.

The other attached, sans audio mix files [please do bring your own] , is the slightly more complex FLAC style animation and includes the patches to screen capture from another source.

VH wise the idea was to record the audio fed graphics generated, then playback, but this has proven to be a trifle hit and miss for export or screen capture - probably all my doing methinks.

As for quartzcomposition.com name wise, that seems way too close to quartzcompositions.com - itself a site of some real vintage that has a huge legacy of older comps and is actually beginning to get some newer uploads too. [now with added RSS too :-)] .

Content wise, I could do with seeing a clear distinction made between the Apple and 3rd Party patches.

Still, that all being said,like you, I do applaud Mirek's experimentation and I also welcome his venture into providing another source of real reference about Quartz Composer.

I can't help but wonder if it isn't at all possible to get a composition rendering to a movie export via a dedicated video rig, thus unburdening the GPU / CPU of the current host machine. [Probably not].

Caveat

One will need to associate some audio files with the 'FLAC-Style' example, otherwise it will spit its dummy out.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Note that it's actually Quartzcomposer.com, not quartzcomposition or quartzcompositions.

It seems like a combo of a weird pseudo-official vibe that doesn't ring true, as well as name squatting. To me, the only one that belongs running a site like that is Apple, ESPECIALLY given that tons of Apple qtz's in the OS that are posted. I mean, something in the Developer folder is sample code, but if it's in compositions, is it? I don't know... never have been able to get a clear answer.

I know this sounds harsh, but I hope the site gets nuked swiftly.

As far as recording on another rig, yeah that's possible.

leegrosbauer's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I use QuartzCrystal if I want it to look really really good.

But, I guess I'd be remiss if I didn't point out that compositions can be run in CamTwist, either as effects or in the movie source area and recordings can then be made of Camtwist's output with QuickTime 7 (QT Pro required). An app called BearsHand can also record the output. Numerous CamTwist resolutions are available: 320x240, 640x360, 640x480, 720x480, 1280x720 and 'Custom', which pretty much means ... whatever you want. Additionally, the output from CamTwist can be sent to a second monitor, so I'm guessing that it could be somehow recorded from that output as well (not certain, however).

Alternatively, ManyCam has a plugin that can be added to a composition that can send composition output to ManyCam which can then be recorded by the same applications mentioned for CamTwist. There are no resolution options that I know of.

One advantage to recording in this manner, with virtual cameras as intermediaries, is that there is access to manipulation of composition inputs during recording. It's all realtime so ... the stronger the computer, the better.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

BearHand you say - just downloaded that - what a mine of useful info you are, Lee :-)

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

You're right, it is indeed named QuartzComposer.com, still pretty close to quartzcompositions.com.

I woud say that all the Developer examples are meant to be sample code and those within the System & ~/Library Composition Repositories are, in fact, part and parcel of the installed version of OS X [&, in some cases, the Developer Tools]. That is partly what confuses the situation, of course.

After all, these System/Library/Graphics/Quartz Composer Patches repository items are meant to be available within QC as part of the QC patch library.

Thus exploitable, employable, examinable, 'explodable'.

I think in the final analysis,sample code or in built patch or 3rd party patch, it's largely a matter of credit where credit is due. If one integrates some patch or another, bound to happen with QC of course, then intrinsically the credit for those component[s] goes to the original author[s], whilst the credit for the original composition goes directly to the author of that composition [or plug-in for that matter] .

Curious to think though that Apple have not sought to defend one of their brand names, perhaps they see it all as a form of forward marketing, [not as though they seem to need it ;-)].

I'm really looking forward to finding out about recording QC renders to or through a live rig.

leegrosbauer's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

As you see, BearsHand is a beta. I stumbled across it, tested it, it worked. I don't know much about it beyond the fact that it's highly adjustable. It's got more settings options than rice has white. Good luck. Let us know how it works.

leegrosbauer's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I don't know about all the composition archive locations mentioned above but most, if not all, of the Apple compositions at System/Library/Compositions have a copyright specifically designated in the composition's Information, ie "(c) 2003-2008 by Apple Inc., all rights reserved." Interestingly perhaps, these do include many outdated copyright references. It probably doesn't add much to the general discussion, but it's nice to be aware of nonetheless I think.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

checkout 1.3 version http://quartzcomposer.com/plugins/1-export-to-movie

dv ntsc (720x480) practically no frame drops.

with the next release framedrop will be nil, stay tuned

ps. thanks for the apples exporter src, i didn't had a chance to look at it (but tested binary and it's got 18fps with the same movie).

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

H.264, anti-aliasing, and motion blur... and then better, in realtime. Thaaaat's your claim.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

it's going to be much better than just that :))

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

So, I'm going to actually be able to have your plugin increase my frame rate past what is possible in realtime, add antialiasing, do all available codecs, and have motion blur? Sweet. I'm really looking forward to that one.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

you'll have much better output quality than crystal, you'll see. i've got special update dedicated to you @gtoledo3 almost ready, hope you'll like it... but i'm too tired now, lets catch up when i wake up. see ya guys

.lov.'s picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

is there any plans to make this working outside QC?

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

very tricky my friend. this plugin actually gives a decent frame rate comparative to apples plugin. the difference is apples plug-in is real-time. what i mean by real time is that it records to disk while your composition is playing i think apple choose to negate the export plugin because various codecs just don't work. it seems like your doing a gl buffer dump offline after you hit the stop button. by your message "this may take some time depending on how much you paid for your computer" which is totally ok. technically its a plug-in but i think where the confusion is that apples plugin queue's up frames and dumps it to disk while your composition is playing. the down side to that is you take a hit on fps but the upside to that is your not really limited on the length of your recording.

so technically you have built a plug-in but its still working in the offline context. but given that context and given enough time you could make something totally comparable quartz crystal. maybe even better if your given time. the one essential component for me like i mentioned before is a trigger. why this is important is that lets say you want to take advantage of quartz builders multi-sampling to get a better frame rate on your recording or you want to share your app with someone who doesn't have qc ? as far as i can tell there is no button to stop rendering in qb.. which is essential to make your app dump the buffer and save the file.

@ .lov. the only way to get this to work outside of qc at the moment is to use play and stop buttons in your xib as there is no other way to stop save the recording.

i did notice there was something funky going on with your settings panel. when you choose settings in your parameters the plug-in just gets huge like to big to fit on the screen. so you have some issues with your kvc binding or in your xib. i suggest to make as many of those settings exposed for users to be able to publish.

on the most basic level you need a stop and start button and user defined path and name so you are not always overwriting the movie in your movies folder. if you just put the code your using to dump the buffer in.

  • (void) disableExecution:(id)context

and not

  • (void) stopExecution:(id)context

using the enable as a trigger will work fine.

now if you can do spatial super sampling, codecs, motion blur, quality, anti-aliasing and a user defined fps you will have something comparable to quartz builder.

now i know you like your free apps as you have commented on mrmr and your building a plug-in because you have ran out of free quartz crystal renders and you see a need for your plug-in which is great. i think you should go open source with it or at least give it away. but if you can wrap up all the features of quartz crystal + more ( like maybe other compressions ?)

i would donate some $ to the cause as i have with quartz crystal and i'm sure others will... if its not just to be able to add high def recording to a performance. i think putting it out beta getting feedback like you are now is essential because it works 60% of the time for me.

with quartz crystal i can output at 1980 x 1080 @ 60 fps if i want... so that my friend is a tall order, but if you stay positive nothing is impossible. i have to remind myself that a lot. i know i dwelled on the negative a bit in my last post but i'm thinking if anything people skepticism will push you harder to succeed.

now crystal always works.. and its not that difficult to dump a structure of time stamped mouse coordinates that can be played back and rendered in crystal @ what ever size i want. this takes little memory and there is less chance of crashing during performance.

as of right now with v 1.3 i can get a stable image of 1440 x 900. im not sure on the length of recording as i have not tested that.

but anything bigger 1440 x 900 i get this.....

...crash report...

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Well, I'll for one shall be looking forward to your updates, Mirek :-) .

At present, using your latest plugin version I get some things happening with some regularity.

The settings panel expands but is blank - seems odd.

The point of export is now associated with semi-regular crashes, although it's about 50 / 50 , as in 50% approx. - I get an exported movie, otherwise it just crashes.

Once exported [and this might have nothing to do with your plugin as far as I can see], the resulting movie renders beautifully glitched up, but defies screen capture and the glitchiness ceases upon re-opening the movie.

Opening the movie immediately often results in such an odd rendering - if I get a screen capture I'll post it up.

BTW

That's some huge and informative post, dust. Did I read it right, you actually have got some settings available in the Settings panel for Mirek's plugin. Sadly , I just get a big blank gray panel :-).

Echo, Echo your comments regarding path facilities and such, dust.

P.S

Have tried your v.3 plugin in both System and User Libraries, Mirek.

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

no i get blank on settings as well but the fact that setting pane jumps off my screen leads me to think that he is going to incorporate some codecs or something which i think would be nice if they where exposed so people could utilize them via a quartz builder app or something. i have been trying your v002 screen trick or some sort of variation i wasn't able to get your file to run on my system ?

i put together a little screen capture patch to test your theory with. i get around 15-25+ fps @ 1440x900 i want to try in quartz builder as i usually get better fps out of that but can't figure out how to stop and save the recording as the app terminates.

i did do some testing with an interface build mireks plug is hit and miss in a application context. v002 works pretty good. the new interactive window features seem to focus from the qc bundle but not mine so im not sure whats going but at least he gives the source to poke around. i tried to replicate a quartz builder app by sending the viewer to the desktop - 1 level or behind the desktop icons like qb does so that might be messing with window focus setting not sure but both plugins do function in an app build. unfortunately i have no idea how kineme is optimizing the qb builds so i wasn't able to get any better frame rate.

here is the qc and app if you want to try. i think it would be great to make a decent screen capture recording program with the advantage of the qc effects. i haven't found screen capture program yet that can handle my rants and record for an hour + without things getting messed. i suppose i should just use a hardrive cam or another computer/ mic and interleave the audio with the screen capture once i'm done.

PreviewAttachmentSize
mirekScreenCapture.qtz5.5 KB
screen.zip2.02 MB

fsk's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

i really dont want this to sound rude or anything but i think its not nice of you to use those big letters with background. its really confusing. what i mean is, it makes the page harder to read. the different sizes of text are there for a practical reason. when you read through a page the titles of comments are bigger so its easier to see where something ends and another thing begins. think of it as grips for the eye when it climbs the wall that is this thread. the big letters you use act as distractions/obstacles in this climb;).

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Sorry to report, dust - that links obtains is an Object not found! message.

However, I now have some real screen grabs / movies that show what the Export to Movie plugin [sometimes] does when used.

for instance, this is a picture that shows a grab of the QT Trim bar, but the frames are from another movie that wasn't even open. When this movie was uploaded to YouTube it then rendered the clouds and not what i showing in the YouTube clip in this post.

This is what that movie was supposed to be doing

If you go to http://www.youtube.com/user/cyberoproductions#p/c/1680359D28389358 you can find a couple of other buggy results captured.

At the time of writing, I'm still waiting for the embedded movie above to become available.

.lov.'s picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

dust wrote:
@ .lov. the only way to get this to work outside of qc at the moment is to use play and stop buttons in your xib as there is no other way to stop save the recording.

It is not what i mind. QTMovie needs to be initialized on the application main thread, so, this plugin will not working in QC capable apps like CoGe or VDMX.

It's same problem with our CoGeWebKit plugin, but looks like if we init the WebView on the main thread via performSelectorOnMainThread it is working. I hope this method also working in this plugin. And if it is, maybe i could put it to the master fx and record my set...

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

I'll be giving it a look see a little later on today, dust. Thanks for the example problem cases.

fsk's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

imho a crash log of this size would have been better served as an attached text file:)

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Ah well, maybe because of some differences between v1, v2 and v3 of Mirek's plugin, but using either your composition and mine I just don't get anywhere near a level of consistency with movie exports, lots of black empty space, some glitchy movies and the odd movie that really does look pretty much like the live rendering file.

Will look at this again later on today.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

fsk,

When you put a "#" sign in a post here, it just does that. I don't think it was meant on purpose (I know it wasn't the first time I did it).

usefuldesign.au's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

So I'm pulling a 404 on that URL dust. Is that a sometimes-on-sometimes-off server or something?

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Received & Understood , fsk :-) .

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

@gtoledo3 added time scale for you

example composition in the zip.

if you set time scale to 0.5, it'll increase fps density by 2 time scale 0.1 -> fps dens 10x and so on...

PreviewAttachmentSize
export-to-movie-1.3.1-with-timescale.zip202.75 KB

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

yeah your right after i posted i thought i should have just put that log in a text file as attachment. man it was long. man it was long didn't realize till after glad the admin cleared that up. it was cluttering this thread. i must have got about of those crash logs while testing this plug-in. its weird usually kcore catches any exceptions raised or crashes but with this plug nothing.

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

the big letters don't bother me. i usually zoom in on text anyways. my email client defaults to 9 point and it bugs me because i can no longer read 9 point comfortably. i actually make xcode 14 or 16 point something ridiculously large so i don't strain my eyes to read. i'm near sighted so technically things close up should be fine but lever since i fell asleep with my glasses on and woke up with them broken i have a hard time. its not like my laptop isn't a few inches from my face. another weird thing is if i use a HD tv at regular monitor viewing range my eyes get really tired. i think it has something to with interlacing as i am pretty sure my tv is not progressive because my eyes don't get fatigued at the same rate on standard computer monitors although i still like to zoom in on text in the browser. kinemes site actually works well with the zooming some sites get all screwed up. haven't really paid to much attention to the markdown syntaxt with the exception of vimeo embedding. its kind of like obj-c with the all the brackets. i have to look up the syntax. not used to the markdown. must be a drupal thing. i guess im used to bbedit i think its called. anyways im going to practice and quote my self.

Quote:
the big letters don't bother me. i usually zoom in on text anyways
i got to practice that ive noticed kineme like to keep things tidy plus using the markdown makes things look better.
Quote:
im going to practice and quote my self

edit<<< (note to self) looks much nicer when answering questions. i will have a go someday with the code and line numbering as when i ever i past code into here it gets all messed up.

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

actually yeah i don't know whats going on with the server on campus. i asked my professor if i could just lock my mac book up that i use for my home server in his server closet to utilize the 26 mbit wifi upload rate so i could run content management system. instead of letting me do that my professor made a mysql database for me so i can just use the schools. subsequently by doing so my professor conned me into trying to figure out how to migrate a mambo database to a joomla build. i guess thats what you get with independent study. i spent the whole day yesterday taking apart ikea and putting furniture's together. im supposed to be teaching myself how to make multi-touch 3D games in unity and building course curriculum for next semester but instead i find myself in the movie karate kid doing labor.

Quote:
wax on wax off
the worst part is that i'm paying for it.

so for what ever reason the server on campus is funky. i will upload something and then it will tell me i don't have permissions for my own file. i can chmod to my hearts content but i will just get directories that i can not delete and somedays i will get an email saying all my files have been backed up or something. my professor has a bunch of young kids running the servers some of them are real competent some are first year students etc... but i sometimes get flack for posting links to my home server so i decided to use my edu as downloading should be faster on a 75 mb file.

now normally if i just put a zip file in a directory it will automatically download this is how i like to do things as it doesn't require making buttons to download etc...

so last night i was getting the 404 error on pelican but the file was still downloading. but today it seems fine and shows blank page like normal.

so this link will most likely give you the best speed. http://pelican.asap.um.maine.edu/~oconnordw/dev/DevExamples.pkg.zip

this link is fastest for me to upload because its my home network, even though its still faster for me to copy files to flash disk then manually put on my server.

http://si02.info/dev/DevExamples.pkg.zip

and this links speed is arbitrary as its my dev machine that goes where i go. i have been using it for a media server lately because i got one of those 3m mobile projectors that i let my daughter use to watch toons with because i turned her tv into a multi-touch table. when i let her use my server for a tv my two year all of sudden thinks she is a web developer and starts messing with my system so i just plug the projector to the ipod and let her mess with that to watch her toons now but have run out of space, i should have got a bigger pod but i have to many as it is plus the ipad is out now so that kind of makes my ipod obsolete but needless to say just using a bit of dashcode and java script makes it easy for me to stream toons for my daughter.

so if all else fails. use this link.

http://dmbp.no-ip.info:8888/dev/DevExamples.pkg.zip

i turned my i touches into web servers as well but that is just ridiculous for me to serve a file that can be downloaded from apples site or ripped off any os x disc.

don't worry about installing this. the only reason you need this file is because your dev/examples folder is empty so there is nothing to overwrite and this actually puts the examples in your hd root anyways.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Getting better and better, Mirek.

No crashes with v 1.3.1 - as yet :-) anyhow . Some very interesting results - see http://www.youtube.com/user/cyberoproductions#p/c/1680359D28389358 for latest uploads of export to movie comparatives.

Nice example .qtz too.

Only oddity is that if un-enabled the export patch still seeks to export what is effectively an empty .mov shell, thus leading to unwanted overwrites of nothingness - LOL - ah well - thanks for the plugin, Mirek, it does indeed seem to be getting better with each successive release.

gtoledo3's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Interesting...Does it work in QC3 yet?

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

so im getting less crashes which is nice. i did a test to see what render method gives me the best image and fps. you can have a look at the side by side screen grab comparisons of the first frame of my gl animation. i choose my illusion to test with as it has very defined lines. the comparison mirek vrs cyrstal vrs apple offline qc render vrs screenium. all renders where done @ dv ntsc 720x480. then funny thing is that all 4 tests produced different size images. very odd. its hard to say which one is best. can defiantly tell which one is the worst though.

apples offline qc render console application does a very nice job of exporting and keeping the alpha channels etc.. so the image quality seems to be the best for me but at what price. 3.5 mb per frame fills the buffer up real quick and limits the length of recording when you run out ram. i suppose there is a way to do some multi-threaded logic and dump you images and release and clear the buffer before you overun the stack at lets say 300 frames. so with modification some great quality can come out of apples offline render for qc, but modifications have to be done and it renders one frame per second so your talking a 30 min render to get 1 min at 30 fps.

i think we all know how crystal works.

that brings us to mireks plug. don't really know the specs yet.

so with the problems inherent to the standard offline render from apple mentioned above the winner for me is screenium. with a lossless straight animation dump i get a high quality uncompressed image in realtime without any hit on my fps. so no waiting to export = ;)

so the specs are.

offline QCRender

fps n/a codec tiff lzw time scale .2

mireks plug fps = 20; data rate = 32mbit/s codec = mpeg 4; time scale = 1

crystal fps = arbitrary; data rate = 32mbits/s codec = h.264 motion blur = 1 anti aliasing = 1 time scale = 1

screenium fps = 20; data rate = 100 mbit/s codec = animation;

check the screen shot for side by side comparison.

and mirek if you want to try a run with my gl flower you might find some hick ups on playback but i think it would be a good file for to test with etc...

PreviewAttachmentSize
Screen shot 2010-01-30 at 4.46.22 AM.png
Screen shot 2010-01-30 at 4.46.22 AM.png995.77 KB
illusion.qtz66.73 KB

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

persuasive and succinct :-), dust.

mirek's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

you can increase fps density by using time scale input - fps on mirek's plugin is arbitrary then, isn't it?

i know alpha does buu buu, to make things right place clear patch inside render to image and make sure clear's patch black color has opacity set to 100% (as default it's 0%)

how many fps you've got without capturing the output then?

dust's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

i dropped the time scale down to .2 on your plug mirek and i get an output of 100fps. so i exported a crystal render @ .2 time scale @ 100fps to compare. seeing that comparing h264 to a mpeg 4 isn't a fair comparison. as far as the actual fps i am little uncertain. normally without recording i get 60fps. take the screenium shot for example. the viewer reports 60fps but the fps patch reports 40fps inside the composition and the recording but the final uncompressed output of the animation codec is 20fps. now with your plug-in the fps actually gets cut off in the recording ?

but i took a screen shot while recording so the viewer reports 20fps inside the comp fps patch reports 17fps but the final output is 100fps. now with crystal the fps that is captured in the recording is 17fps like yours with the final output of 100fps in the quicktime movie. so im also including a side by side comparison of crystal vrs mirek. now like i said im uncertain as to the quality setting of your mpeg 4 dump as i dumped the crystal lossless. so without knowing the exact setting of your plug-in a true comparison is un attainable. now if you notice the comparison your plug-in is obviously at a low quality setting presumably to save resources. im not sure the color space used in kineme crystal or your plug-in but your colors are more vibrant in comparison where as crystal colors are true. so now that i think about it a user defined color space may be a cool option to have. that is something you don't normally have a choice of.

some generic constants are.

kCGColorSpaceGenericRGB kCGColorSpaceGenericCMYK kCGColorSpaceGenericRGBLinear kCGColorSpaceAdobeRGB1998 kCGColorSpaceSRGB

letting a user define a white point or maybe tristimulus value would be cool ? i don't know if thats even a feature people would care about.

i don't know for me quality is of the most importance as the only reason i really need an exported movie would be to integrate it it into a post production pipeline or environment with the exception of making a screen capture to share with people on vimeo or something.

so you plug-in is cool for now if i want to watch a composition on my ipod or something. i hope that doesn't sound jaded or anything i'm generally trying to help as you have put lots of time into this plugin and i would love to have a plug-in that is better than quartz crystal.

so thats about all the testing i can do for the moment. i generally don't even use crystal actually i have only used maybe three times and well for these examples but its nice to know that i have it my apps folder as well as it feels good to know that i have a legitimate license for something regardless of how much i use it.

so if you keep posting updates and what not i will send you comparisons or what have you as i would love to have a plug-in that is better than crystal.

cybero's picture
Re: Comparisons of Quartz Crystal and Export to Movie - ...

Wow, just got a hold of that Screenium app you mentioned and its got oodles of useful features. Thanks for the pointer indeed.