|
HD video performanceHello 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? |
Hey,
i'm on a nVidia 9400M based Mac Mini. It runs good. If you need any specific data or need some test just let me know ;)
I have a pair of spring-2006 Mac Minis (Core One Solo, Intel GMA (cringe)). They handle 720p content just fine --- haven't tried 1080p though. I'd expect that more modern hardware (in particular, a real graphics chipset) would have no problem dealing with 1080p.
However I expect the larger issue to be with QuickTime, which requires videos to be initialized on the main thread --- so if you ever switch the Movie Location input on a
Movie Importer
patch, or cause aMovie Importer
patch to switch from off to on (by enabling theBillboard
it renders to, or switching aMultiplexer
input for example), it'll stutter.We've had a prototype Xvid movie loader patch working for a while now --- it's overall pixel throughput is slower than via QuickTime, but it doesn't suffer from the need-to-init-on-main-thread issue. It looks like, in the meantime, the underlying Xvid library has added some Mac-specific optimizations, so it might be better now. I'll try to update, clean up, and publish this in the near future. (Holy crap, way too much going on right now..)
(See also http://kineme.net/FeatureRequests/MovieLoaderFromMemory .)
Thanks for the info, guys!
We're still discussing whether full HD is even necessary for this project but there are still longer term considerations. The solution we find now should preferably be usable for future projects, so performance is still relevant.
Glad to hear that it's not necessarily impossible. I might take you up on the testing offer, thanks for that.
try my beta movie player:
http://002.vade.info/downloads/beta/v002%20MoviePlayer.plugin.zip
if you run it in QC 4.0 in 32 bit mode, it works well, and tends to be much faster than Apples movie importer.
I'd be curious if you see a performance delta with it.
For some reason I can't get this plugin to show up on an iMac running Snow Leopard (installed at /Library/Graphics/Quartz Composer Plug-Ins). All the other plugins installed there show up without issue. Is it compatible? It works fine on a G5 and MacBook Pro both on Leopard.
Search for Quartz Composer , Select QC in Finder.
Command + I - gets info - flag 32 bit radio button, you're good to go. Enjoy :-)
Ah, OK, the QC app itself. I was wondering about where I was supposed to set 32 bit mode. Now I've learned something new for Snow Leopard. Thanks!
Hello again.
We're still working on this project, and did indeed decide to get a Mini. I'm picking it up tomorrow or the day after.
The reason that I haven't taken you (.lov.) up on your kind offer to test HD performance is that the project turned out to be SD anyway. (We're going to pipe the video to an old CRT monitor through a scan converter). I'm certain the Mini can run the needed stuff as the patch runs without a hitch and with room to spare on this roughly-equivalent older macbook.
vade, thanks for your excellent movie player plugin. It works great in this application even though I've opted for the Kineme Audio file player for audio. It turned out to be difficult to trigger the second movie to run only once (loop mode off), so I've left it looping.
My typical monolithic JS controller (terrible, I know) syncs the audio (once per cycle) and ensures that the triggered clip only plays once. No multiplexers involved, just two billboards. I control the visibility of the second movie via alpha in stead.
Hardware-wise, it's very stable. The phototransistor I'm using is much more reliable than the LDR I've tried also. The sensor runs on a USB-powered Arduino mounted in an enclosure with a two knobs for controlling sensitivity and delay. The Arduino runs a custom script (no firmata, may have been easier), which talks serial to a small processing-applet whose only task is to bridge OSC on to QC.
All in all, it looks very stable. I'm planning on optimising the Mini and removing a lot of stuff that isn't needed. Then, I'll write a startup script to launch the applet and the QC patch. I'll try setting it up for remote desktop so I can just bring the macbook and an ethernet cable if I need to tweak. That should mean it can run headless and keyboardless in the installation.
Quick question: Does anyone have experience doing this? How long can QC run before things like patch time overflows?
Again, thanks guys!
Time is represented as a double-precision floating-point value, so it will effectively never overflow. However you will start losing frame-accurate
Patch Time
after a few thousand years.One thing to be aware of is that quartz composer will not launch without a monitor plug in. I think a DVI > Vga adapter might be enough I can't quite remember.
Might need to test this a little. Cheers Steve
I'll check with the show people how long they're expecting it to run then ;)
Of course that's the way it works, thanks.
Thanks for the heads up.
We have a few weeks before opening, so it should be time enough to iron out the kinks. I'm thinking I'll wrap the composition inside a full screen app anyway.