[FFmpeg-soc] [PATCH] jpeg2k : support higher sample precision
Jai Menon
jmenon86 at gmail.com
Sat Jun 27 22:25:43 CEST 2009
On Thu, Jun 25, 2009 at 9:51 PM, Michael Niedermayer<michaelni at gmx.at> wrote:
> On Wed, Jun 24, 2009 at 05:59:19PM +0000, Jai Menon wrote:
>> On Wed, Jun 24, 2009 at 3:58 PM, Michael Niedermayer<michaelni at gmx.at> wrote:
>> > On Wed, Jun 24, 2009 at 01:42:08PM +0000, Jai Menon wrote:
>> >> On Wed, Jun 24, 2009 at 1:27 PM, Michael Niedermayer<michaelni at gmx.at> wrote:
>> >> > On Sun, Jun 21, 2009 at 04:35:20PM +0000, Jai Menon wrote:
>> > [...]
>> >> > [...]
>> >> >> @@ -806,6 +815,26 @@
>> >> >>
>> >> >> line += s->picture.linesize[0];
>> >> >> }
>> >> >> + } else {
>> >> >> + for (; y < tile->comp[0].coord[1][1] - s->image_offset_y; y++) {
>> >> >> + uint16_t *dst;
>> >> >> + x = tile->comp[0].coord[0][0] - s->image_offset_x;
>> >> >> + dst = line + x * s->ncomponents * 2;
>> >> >> + for (; x < tile->comp[0].coord[0][1] - s->image_offset_x; x++) {
>> >> >> + for (compno = 0; compno < s->ncomponents; compno++) {
>> >> >
>> >> >> + *src[compno] = av_rescale(*src[compno], (1 << 16) - 1,
>> >> >> + (1 << s->cbps[compno]) - 1);
>> >> >
>> >> > av_rescale is too slow
>> >>
>> >> So just (*src[compno]/((1 << s->cbps[compno]) - 1)) * ((1 << 16) - 1) ?
>> >
>> > * is slow
>> > / s slower
>> >
>> > "src" << C
>> > it should be
>>
>> <possibly dumb question ahead>
>>
>> I understand that * and / are slower but how can I achieve the same
>> effect with a single <<?
>
> well, not the same but close enough IMHO
> src<<C
> or
> (src<<C) + (src>>(16-C))
> should be close enough, my point was mainly that av_rescale() is too slow
> to be done per pixel and anything else is better
Okay, modified patch attached.
--
Regards,
Jai
-------------- next part --------------
A non-text attachment was scrubbed...
Name: high_precision.patch
Type: text/x-patch
Size: 2426 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-soc/attachments/20090627/b14d7523/attachment.bin>
More information about the FFmpeg-soc
mailing list