On Sat, Aug 18, 2012 at 11:22:14PM +0600, Mashiat Sarker Shakkhar wrote:
> On 8/18/2012 11:06 PM, Kostya Shishkov wrote:
> >On Sat, Aug 18, 2012 at 10:57:12PM +0600, Mashiat Sarker Shakkhar wrote:
> >>Current scaling code is buggy and twisted. This patch re-implements it.
> >>This fixes visible artifacts in a number of samples.
> >>
> >>The code in scale_field_mv follows corresponding code from reference
> >>decoder. I do not take credit for the code itself.
> >
> >Too bad, one should have an idea what he's doing.
> 
> Agreed.
> 
> [...]
> >>+            frfd = get_bits(gb, 2);
> >>+            if (frfd == 3)
> >>+                frfd += get_unary(gb, 0, 16);
> >>+            if (frfd > 3)
> >>+                frfd = 3;
> >
> >lolwut? Read an escape value and ignore it immediately?
> 
> Yes FRFD is clipped at 3. It is in the current code too, in case you
> did not notice. I don't know why they designed it this way.

Maybe  they had plans for it but scratched them.

> [...]
> >in general - please redo till you understand what you're doing besides 
> >pasting
> >reference decoder pieces
> 
> It's a good advice; but technically speaking, what's wrong with
> pasting reference code? Is it license conflict or non-optimal code
> or missing copyright or something else?

all three, I fear
 
> If you insist on it, I might go and give it another try sometime later.

Yes, please. It will be much easier to debug if you understand what the code
does (and how) too. Also it _might_ make you realize that there's a mistake in
passing parameters to it (purely hypothetical case).
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to