[Ffmpeg-devel] [PATCH/RFC] 1-7 and 9-15 bits per pixel PGM files
Ivo
ivop
Sat Apr 7 15:43:40 CEST 2007
On Friday 06 April 2007 21:13, Justin Ruggles wrote:
> Ivo wrote:
> > OK. I think it is reasonable to assume only maxvals of (2^n)-1 for
> > 0<n<=16 are used in the wild. I have never seen anything other than
> > 255, 1023, 2047, 4095, 16383 and 65535.
>
> I have seen others in the wild. For example, when the dcraw program
> converts raw camera images formats to pnm it uses the camera's native
> raw format maximum value, which is sometimes a very odd non-power-of-two
> number. My guess is that it's either due to the A/D converter and/or to
> give some headroom for in-camera postprocessing.
I see. I have thought about it and I think the shift/or "upgrading" to
8/16-bits per component is better than multiply/division, even in this
case, because it won't introduce rounding errors and can be downgraded
losslessly (simple shift). With odd non-power-of-two maxvals the image will
be a little bit darker than it is supposed to be, but a lot less than it
used to be with the old code. A future filter layer could compensate for
those cases (luminance filter).
Attached is a new patch that implements this. I could merge the 8 and 16
bits cases, but that would be slower and degrade readability of the code,
so I left them separately.
It does not handle >8 bits/component RGB images yet, as there is no suitable
PIX_FMT for that (yet).
--Ivo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: maxval.patch
Type: text/x-diff
Size: 1798 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070407/6d4a9889/attachment.patch>
More information about the ffmpeg-devel
mailing list