Silicon Graphics Motion Video Compressor 1 & 2 decoder.
More...
#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "bytestream.h"
#include "internal.h"
|
| #define | PIX16(target, true, false) |
| |
| #define | ROW16(row, a1, a0, b1, b0) |
| |
| #define | PIX32(target, true, false) |
| |
| #define | ROW32(row, a1, a0, b1, b0) |
| |
| #define | MVC2_BLOCK |
| |
Silicon Graphics Motion Video Compressor 1 & 2 decoder.
§ MVC2_BLOCK
Value:ROW32(0, 1, 0, 3, 2); \
ROW32(1, 1, 0, 3, 2); \
ROW32(2, 5, 4, 7, 6); \
ROW32(3, 5, 4, 7, 6);
§ PIX16
| #define PIX16 |
( |
|
target, |
|
|
|
true, |
|
|
|
false |
|
) |
| |
Value:i = (mask & target) ? true : false; \
AV_WN16A(dst, v[i] & 0x7FFF); \
dst += 2;
§ PIX32
| #define PIX32 |
( |
|
target, |
|
|
|
true, |
|
|
|
false |
|
) |
| |
Value:AV_WN32A(dst, (mask & target) ? v[true] : v[false]); \
dst += 4;
§ ROW16
| #define ROW16 |
( |
|
row, |
|
|
|
a1, |
|
|
|
a0, |
|
|
|
b1, |
|
|
|
b0 |
|
) |
| |
Value:dst = dst_start + (y + row) * linesize + x * 2; \
PIX16(1 << (row * 4), a1, a0) \
PIX16(1 << (row * 4 + 1), a1, a0) \
PIX16(1 << (row * 4 + 2), b1, b0) \
PIX16(1 << (row * 4 + 3), b1, b0)
§ ROW32
| #define ROW32 |
( |
|
row, |
|
|
|
a1, |
|
|
|
a0, |
|
|
|
b1, |
|
|
|
b0 |
|
) |
| |
Value:dst = dst_start + (y + row) * linesize + x * 4; \
PIX32(1 << (row * 4), a1, a0) \
PIX32(1 << (row * 4 + 1), a1, a0) \
PIX32(1 << (row * 4 + 2), b1, b0) \
PIX32(1 << (row * 4 + 3), b1, b0)