diff options
| author | Mattias Andrée <maandree@kth.se> | 2017-07-15 17:08:02 +0200 |
|---|---|---|
| committer | Mattias Andrée <maandree@kth.se> | 2017-07-15 17:08:02 +0200 |
| commit | 3569a10c97d41913dbf7cf3114cb4d2d5f17dc7f (patch) | |
| tree | e8b08fe9b0cdc208f66582309377bc3c1817fe1f /src/blind-matrix-transpose.c | |
| parent | Generate USING_BINARY{32,64} (diff) | |
| download | blind-3569a10c97d41913dbf7cf3114cb4d2d5f17dc7f.tar.gz blind-3569a10c97d41913dbf7cf3114cb4d2d5f17dc7f.tar.bz2 blind-3569a10c97d41913dbf7cf3114cb4d2d5f17dc7f.tar.xz | |
Some improvements and fixes
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'src/blind-matrix-transpose.c')
| -rw-r--r-- | src/blind-matrix-transpose.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/blind-matrix-transpose.c b/src/blind-matrix-transpose.c index 5c417db..f24d0a7 100644 --- a/src/blind-matrix-transpose.c +++ b/src/blind-matrix-transpose.c @@ -10,9 +10,9 @@ static int per_channel = 0; typedef TYPE pixel_t[4];\ pixel_t matrix[9];\ pixel_t buf;\ - int i;\ + size_t i;\ \ - for (i = 0; i < 4; i++) {\ + for (i = 0; i < stream->n_chan; i++) {\ matrix[0][i] = 1, matrix[1][i] = 0, matrix[2][i] = 0;\ matrix[3][i] = 0, matrix[4][i] = 1, matrix[5][i] = 0;\ matrix[6][i] = 0, matrix[7][i] = 0, matrix[8][i] = 1;\ @@ -20,13 +20,14 @@ static int per_channel = 0; \ while (eread_frame(stream, buf)) {\ if (per_channel) {\ - for (i = 0; i < 4; i++) {\ + for (i = 0; i < stream->n_chan; i++) {\ matrix[3][i] = matrix[1][i] = buf[i];\ matrix[4][i] = matrix[0][i] = 1 - buf[i];\ }\ } else {\ - for (i = 0; i < 4; i++) {\ - matrix[3][i] = matrix[1][i] = buf[1] * buf[3];\ + buf[1] *= buf[3];\ + for (i = 0; i < stream->n_chan; i++) {\ + matrix[3][i] = matrix[1][i] = buf[1];\ matrix[4][i] = matrix[0][i] = 1 - matrix[3][i];\ }\ }\ @@ -64,9 +65,9 @@ main(int argc, char *argv[]) fprint_stream_head(stdout, &stream); efflush(stdout, "<stdout>"); - if (!strcmp(stream.pixfmt, "xyza")) + if (stream.encoding == DOUBLE) process = process_lf; - else if (!strcmp(stream.pixfmt, "xyza f")) + else if (stream.encoding == FLOAT) process = process_f; else eprintf("pixel format %s is not supported, try xyza\n", stream.pixfmt); |
