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
