_1024_NETWORK plugin / send & receive anything QC

franz's picture

Hi everyone. I just made a plugin that sends and receives QCstructures through the local network. It currently accepts any datatype within the passed structure, even images.

Download from : 1024 blog Then it is in the box on the right.

Any comments welcome.

gtoledo3's picture
Re: _1024_NETWORK plugin / send & receive anything QC

This is excellent Franz. I think I love you.

vade's picture
Re: _1024_NETWORK plugin / send & receive anything QC

Interesting. Do you compress images or how are they handled? Fast enough for video framerates, ah, I see on your blog post. Nice work!

mattgolsen's picture
Re: _1024_NETWORK plugin / send & receive anything QC

This is amazing. Thank you.

mattgolsen's picture
Re: _1024_NETWORK plugin / send & receive anything QC

Back off my man I saw him first!

franz's picture
Re: _1024_NETWORK plugin / send & receive anything QC

Thanks. Images are uncompressed unfortunately i assume. They should be sent as QCimages (what the hell are QCimages anyway ?). This plugin should accept without complaining any NSDictionary containing -quote- "any classes that implement the NSCoding protocol".

As of framerates, i tested a 160*120 isight feed, 60 FPS on the receiver side. Network calls are not on the main thread, so receiving should not affect performance of the comp. On the sending side, i guess this is all about what a NSDictionary can handle with plain QCimagesfull res at 60fps ... choke ?

vade's picture
Re: _1024_NETWORK plugin / send & receive anything QC

Are you locking buffer representation on the images or just passing them in as a pointer and the framework magically serializes them?

QCImages are opaque, and are actually a conglomerate of various different image types wrapped depending on how they were used last, as far as I understand it. They can be CVImageBuffers (of any type, PixelBuffer, OpenGLPBuffer or OpenGLTextureRef), raw textures, CIImages (which are also 'opaque' recipes), CGImages, NSBitmapImageRep, on and on.

Nice stuff. I did not see any info on the networking framework you used, have alink? Im just idly curious?

If you lock Buffer Rep, email me. bangnoise and I have a reallyyyyyy optimal GL readback class that can be done asynchronously and with much less overhead. QCs readback is really poor. Ill play with this soon, seems nice!

cybero's picture
Re: _1024_NETWORK plugin / send & receive anything QC

Brilliant stuff.

franz's picture
Re: _1024_NETWORK plugin / send & receive anything QC

they're passed in as a pointer. Serialization is automatic, so cutting-edge performance is out of the way.

.lov.'s picture
Re: _1024_NETWORK plugin / send & receive anything QC

Awesome man, thanks for sharing!

dust's picture
Re: _1024_NETWORK plugin / send & receive anything QC

this is interesting, what are you using for a tho mo protocol identifier ? i would like to try and network this to my ipad as well.