Thanks for the example code, everything helps. I was interested in
your comment,
"the Macbook is much faster than the Powerbook", can you be more
specific?
I'm looking for an excuse to buy a mactel, and went to a store
recently, but was
a little disappointed. The only video app which was easily
accessible was something
called "photobooth", it ran at 15 fps max, with stutters, and had a
video latency of
at least 1/4 second. Of course, that program may have extra
buffering, etc.
I've been using PPC 8500's for real-time video processing, for video
installations
and image processing applications, but these machines are now ten
years old,
and I'm looking for replacement hardware, either mac or linux.
However, so far
I haven't found anything that approaches the performance of those old
machines,
when it comes to video latency. Here are a few rough numbers, just
measuring
the time it takes for an image placed in front a camera to appear on
the screen.
(one frame equals 1/30 second)
sony camcorder direct analog to monitor
1 frame
PPC 8500 120 MHz circa 1995, analog video in
(can be upgraded to 1 GHz G3 or 800 MHz G4)
2.2 frames
12" Powerbook 1.5 GHz circa 2005, firewire DV in
6.3 frames - "BTV Pro"
6.0 frames - "seeSaw"
6.0 frames - "isight_texture"
12" Powerbook 1.5 GHz circa 2005, isight IIDC in
5.5 frames - "isight_texture"
13" Macbook 1.8 GHz circa 2006, isight USB built-in
> 7 frames(?) - "photobooth"
Mac Mini 1.5 GHz PPC, DFG1394, Aupperle driver, BTV Pro
3.8 frames - 640 x 480
3.0 frames - 320 x 240
There are a couple of interesting points here. The first is that
nothing comes close
to the 8500/8600's, which are real video machines, with hardware
video conversion
on the motherboard. Another is that your code uses the sequence
grabber, while
Hackenberg's "seeSaw" uses the vdig directly, and there's basically
no difference
in speed. Both programs achieve very fast graphics output by using
"client storage"
OpenGL calls, so the dogmeat is somewhere in quicktime's video-in.
A ray of hope is seen in using the DFG1394, which is an analog-to-
firewire converter.
I'm pretty sure that I could get performance approaching the 8500 by
bypassing
quicktime, using either the Aupperle SDK, or starting at the bottom
with the apple
firewire SDK. But this requires time and/or money, neither of which
I have in abundance.
Also, PPC's have been declared obsolete, so I would be continuing to
construct systems
off of ebay. Further, current fast software video decoders use
altivec to do the required
byte swapping quickly and in parallel. It is my understanding that
any intel SSE replacement
is half the speed of altivec on a clock cycle basis, there are no
appropriate byte swapping
instructions, and it is harder to use. So in what sense can the
mactel machines be "faster"?.
Another possibility might be to use a PCI frame grabber card.
However, the current
apple desktop machines use exclusively "PCI Express". There seem to
be a few
PCI express frame grabber cards available, but for many thousands of
dollars, in
contrast to the less than 100 dollars for which you can get a
standard PCI frame grabber
card for a linux box.
So any information about video performance on any hardware platform
would be
most welcome. How do I escape from 1995?
Thanks,
rob
_______________________________________________
Do not post admin requests to the list. They will be ignored.
QuickTime-API mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quicktime-api/email@hidden