Re: 10 bit? why not 16?
"Greg Blair" <[email protected]> Sat, 25 Oct 2008 14:19:41 -0400
| Newsgroups | gmane.comp.video.cinepaint.devel |
|---|---|
| Message-ID | <[email protected]> |
There are two things at play here:
1. blitting the data across to the GPU.
2. pounding on the data with the GPU prior to blitting it to the
output hardware.
If all you have is 10 bit data, by all means, pack the 10 bits into a
typedef struct {unsigned short r:10, g:10, b:10, a:2;} pix10bit;
32 bit pixel and blit it across to the GPU.
The GPU's expect floating point data. The graphics driver does the
expensive conversion from pix10bit on the host side to floating point
on the GPU side during the blit. It is is the unpacking of the
pix10bit data in the driver code running on the host that takes the
time.
However, 10 bit integer data (likely Cineon based at one point in its
lifespan) is hardly HDR.
If you have OpenEXR HDR, you need to pound on it to generate a mapping
from HDR to display format.
Fast Bilateral filtering using a fragment shader running on a GPU is
the current state of the art for real time HDR render to display
resolutions, whether that be 8, 10, or 12 bit output hardware. The
host processors just cannot match the computational horsepower
available on the modern GPU's.
Who has 12 bit output devices? You guess, I can't say.
If the output is HD SDI, SMPTE 372M defines how to move 12 bit RGB or
X'Y'Z' 4:4:4 data over a pair of SMPTE 292M HD SDI links.
Dual link 372M output solutions are available.
If using Nvidia GPU's you can blit the FBO data to a pair of HD SDI
hardware devices on a daughter board attached to late model Quadro
NVidia cards. The daughter board uses the SLI interface. (ATI calls
SLI CrossFire)
ATI has no interest in the HD SDI output marketplace. So if using ATI
GPU's, you must blit the FBO data back to a host buffer, do the 372M
bit assemble and blit it to your HD SDI output solution, likely a dual
link input/output HD SDI AJA XENA card.
There is an Aussie company, Blackmagic Design out of Melbourne, also
with HD SDI cards but they didn't support 372M 12 bit 444 or
simultaneous operation of a pair of dual link 272M the last time I
looked. They were expensive.
I just spent the last three years of my life processing DCP's to drive
a pair of dual 2K x 1080 10/12 bit RGB/X'Y'Z' HD SDI video devices in
real time using GPU's and a 4 computer MPI based cluster doing exactly
the same thing at 4K x 2180 resolution.
It all depends on what you want to do, where you want to go, and what
you mean by HDR.
Greg Blair
greg.blair-OjBhqg/[email protected]
References:
NVidia HD SDI toolkit
AJA HD SDI Toolkit
Bilteral Filtering class at SIGGRAPH'08
google "12 bit HD SDI 372M display devices"
--
Please update your address book. My email address has changed.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/