~ubuntu-branches/ubuntu/utopic/lebiniou/utopic

« back to all changes in this revision

Viewing changes to src/cmapfader.c

  • Committer: Package Import Robot
  • Author(s): Olivier Girondel
  • Date: 2012-04-22 22:07:40 UTC
  • mfrom: (6.1.7 sid)
  • Revision ID: package-import@ubuntu.com-20120422220740-xncgwhc3g71nopnu
Tags: 3.18-1
* New upstream release 3.18.
* Support older libswscale.
* Add missing Build-Depends: libfreetype6-dev, libasound2-dev,
  libpulse-dev. (Closes: #669437)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 *  Copyright 1994-2011 Olivier Girondel
 
2
 *  Copyright 1994-2012 Olivier Girondel
3
3
 *
4
4
 *  This file is part of lebiniou.
5
5
 *
31
31
  cf->on = 0;
32
32
  cf->cur = Cmap8_new();
33
33
  cf->dst = colormaps->cmaps[0];
34
 
  cf->fader = Fader_new(256*3);
 
34
  cf->fader = Fader_new(256*4);
35
35
  cf->shf = Shuffler_new(size);
36
36
  Shuffler_set_mode(cf->shf, BS_RANDOM);
37
37
#ifdef XDEBUG
65
65
        
66
66
  for (i = 0; i < 256; i++) {
67
67
    /* TODO pointer chain optim */
68
 
    const _rgba_t col_src = cf->cur->colors[i].col;
69
 
    const _rgba_t col_dst = cf->dst->colors[i].col;
 
68
    const RGBA_t col_src = cf->cur->colors[i].col;
 
69
    const RGBA_t col_dst = cf->dst->colors[i].col;
70
70
 
71
71
    /* delta values */
72
72
/*     cf->fader->delta[i*3+0] = */
87
87
    fader->delta[i*3+2] = (long)
88
88
      ((float)col_dst.b-(float)col_src.b)
89
89
      / (float)(fader->max)*MFACTOR;
 
90
    fader->delta[i*3+3] = (long)
 
91
      ((float)col_dst.a-(float)col_src.a)
 
92
      / (float)(fader->max)*MFACTOR;
90
93
                
91
94
    /* initial values */
92
95
/*     cf->fader->tmp[i*3+0] = (float)col_src.r; */
95
98
    fader->tmp[i*3+0] = (u_long)col_src.r*MFACTOR;
96
99
    fader->tmp[i*3+1] = (u_long)col_src.g*MFACTOR;
97
100
    fader->tmp[i*3+2] = (u_long)col_src.b*MFACTOR;
 
101
    fader->tmp[i*3+3] = (u_long)col_src.a*MFACTOR;
98
102
  }
99
103
 
100
104
  Fader_start(fader);
131
135
      cur->colors[i].col.b =
132
136
        (u_char)((fader->tmp[i*3+2] +=
133
137
                  elapsed*fader->delta[i*3+2])/MFACTOR);
 
138
 
 
139
      /* FIXME alpha fading seems broken */
 
140
      cur->colors[i].col.a = 255;
 
141
      /* cur->colors[i].col.a = */
 
142
      /*        (u_char)((fader->tmp[i*3+3] += */
 
143
      /*                  elapsed*fader->delta[i*3+3])/MFACTOR); */
134
144
    }   
135
145
  }
136
146
  Cmap8_findMinMax(cur);