diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-05-14 12:49:48 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-05-14 12:51:22 +0200 |
commit | 6b13f54262b64036272ddd2b4b1dda191e635913 (patch) | |
tree | b946a48526c07215523380f09bfad26c5a928533 /libavfilter | |
parent | f268727a8fa2d1496a1dfe665ca88119351a4aa9 (diff) | |
download | ffmpeg-streaming-6b13f54262b64036272ddd2b4b1dda191e635913.zip ffmpeg-streaming-6b13f54262b64036272ddd2b4b1dda191e635913.tar.gz |
vf_colorchannelmixer: round lut entries to nearest
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/vf_colorchannelmixer.c | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/libavfilter/vf_colorchannelmixer.c b/libavfilter/vf_colorchannelmixer.c index ff383f2..c187c20 100644 --- a/libavfilter/vf_colorchannelmixer.c +++ b/libavfilter/vf_colorchannelmixer.c @@ -113,25 +113,25 @@ static int config_output(AVFilterLink *outlink) cm->lut[i][j] = buffer; for (i = 0; i < size; i++) { - cm->lut[R][R][i] = i * cm->rr; - cm->lut[R][G][i] = i * cm->rg; - cm->lut[R][B][i] = i * cm->rb; - cm->lut[R][A][i] = i * cm->ra; - - cm->lut[G][R][i] = i * cm->gr; - cm->lut[G][G][i] = i * cm->gg; - cm->lut[G][B][i] = i * cm->gb; - cm->lut[G][A][i] = i * cm->ga; - - cm->lut[B][R][i] = i * cm->br; - cm->lut[B][G][i] = i * cm->bg; - cm->lut[B][B][i] = i * cm->bb; - cm->lut[B][A][i] = i * cm->ba; - - cm->lut[A][R][i] = i * cm->ar; - cm->lut[A][G][i] = i * cm->ag; - cm->lut[A][B][i] = i * cm->ab; - cm->lut[A][A][i] = i * cm->aa; + cm->lut[R][R][i] = round(i * cm->rr); + cm->lut[R][G][i] = round(i * cm->rg); + cm->lut[R][B][i] = round(i * cm->rb); + cm->lut[R][A][i] = round(i * cm->ra); + + cm->lut[G][R][i] = round(i * cm->gr); + cm->lut[G][G][i] = round(i * cm->gg); + cm->lut[G][B][i] = round(i * cm->gb); + cm->lut[G][A][i] = round(i * cm->ga); + + cm->lut[B][R][i] = round(i * cm->br); + cm->lut[B][G][i] = round(i * cm->bg); + cm->lut[B][B][i] = round(i * cm->bb); + cm->lut[B][A][i] = round(i * cm->ba); + + cm->lut[A][R][i] = round(i * cm->ar); + cm->lut[A][G][i] = round(i * cm->ag); + cm->lut[A][B][i] = round(i * cm->ab); + cm->lut[A][A][i] = round(i * cm->aa); } return 0; |