Browse Source

sws: do not use av_pix_fmt_descriptors directly

Signed-off-by: Paul B Mahol <onemda@gmail.com>
tags/n1.1
Paul B Mahol 13 years ago
parent
commit
a291345b1e
2 changed files with 3 additions and 3 deletions
  1. +2
    -2
      libswscale/swscale.c
  2. +1
    -1
      libswscale/utils.c

+ 2
- 2
libswscale/swscale.c View File

@@ -73,7 +73,7 @@ static void hScale16To19_c(SwsContext *c, int16_t *_dst, int dstW,
int bits = desc->comp[0].depth_minus1;
int sh = bits - 4;

if((isAnyRGB(c->srcFormat) || c->srcFormat==AV_PIX_FMT_PAL8) && av_pix_fmt_descriptors[c->srcFormat].comp[0].depth_minus1<15)
if((isAnyRGB(c->srcFormat) || c->srcFormat==AV_PIX_FMT_PAL8) && desc->comp[0].depth_minus1<15)
sh= 9;

for (i = 0; i < dstW; i++) {
@@ -99,7 +99,7 @@ static void hScale16To15_c(SwsContext *c, int16_t *dst, int dstW,
int sh = desc->comp[0].depth_minus1;

if(sh<15)
sh= isAnyRGB(c->srcFormat) || c->srcFormat==AV_PIX_FMT_PAL8 ? 13 : av_pix_fmt_descriptors[c->srcFormat].comp[0].depth_minus1;
sh= isAnyRGB(c->srcFormat) || c->srcFormat==AV_PIX_FMT_PAL8 ? 13 : desc->comp[0].depth_minus1;

for (i = 0; i < dstW; i++) {
int j;


+ 1
- 1
libswscale/utils.c View File

@@ -1234,7 +1234,7 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,

// try to avoid drawing green stuff between the right end and the stride end
for (i = 0; i < c->vChrBufSize; i++)
if(av_pix_fmt_descriptors[c->dstFormat].comp[0].depth_minus1 == 15){
if(desc_dst->comp[0].depth_minus1 == 15){
av_assert0(c->dstBpc > 14);
for(j=0; j<dst_stride/2+1; j++)
((int32_t*)(c->chrUPixBuf[i]))[j] = 1<<18;


Loading…
Cancel
Save