Opened 19 years ago

Closed 19 years ago

Last modified 19 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: no Analyzed by developer: no

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 by andrea@…, 19 years ago

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 by andrea@…, 19 years ago

Priority: normalimportant
Severity: normalmajor

comment:3 by diego@…, 19 years ago

Owner: changed from alex@… to diego@…

comment:4 by diego@…, 19 years ago

Resolution: fixed
Status: newclosed

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.