Opened 14 years ago

Closed 13 years ago

Last modified 13 years ago

#343 closed defect (fixed)

Software scaling crash with altivec

Reported by: andrea@… Owned by: diego@…
Priority: important Component: vf
Version: unspecified Severity: major
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: Analyzed by developer:

Description

there are 2 bugs i've found in this function (included in
postproc/yuv2rgb_altivec.c).

i have a crash on software scaling. I've checked and the problem is in line 867:

out_rgba (R,G,B,out);

dumping the values the variables out and R are swapped. And not only in this
function. even in this function: altivec_yuv2_bgra32 i have same problem.
This can derive from a wrong aligment. don't know if from vf_scale or from
another file.

Change History (4)

comment:1 Changed 14 years ago by andrea@…

void
altivec_yuv2packedX (SwsContext? *c,

int16_t *lumFilter, int16_t lumSrc, int

lumFilterSize,

int16_t *chrFilter, int16_t chrSrc, int

chrFilterSize,

uint8_t *dest, int dstW, int dstY)

{
[...]snip[...]

cvtyuvtoRGB (c, Y0,U0,V0,&R0,&G0,&B0);
cvtyuvtoRGB (c, Y1,U1,V1,&R1,&G1,&B1);

R = vec_packclp (R0,R1);
G = vec_packclp (G0,G1);
B = vec_packclp (B0,B1);

out_rgba (R,G,B,out);

and it crash here. Most probably for the wrong "out" parameter.
the dump is:

R:804CC5C0 G:00004140 B:00000018 out:00004190

comment:2 Changed 14 years ago by andrea@…

  • Priority changed from normal to important
  • Severity changed from normal to major

comment:3 Changed 13 years ago by diego@…

  • Owner changed from alex@… to diego@…

comment:4 Changed 13 years ago by diego@…

  • Resolution set to fixed
  • Status changed from new to closed

Several fixes for the AltiVec? software scaler have made their way into CVS.
This issue should be solved, if it isn't, reopen this bug.

Note: See TracTickets for help on using tickets.