MCPcopy Create free account
hub / github.com/cisco/openh264 / SetRectBlock

Function SetRectBlock

codec/decoder/core/src/mv_pred.cpp:48–130  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

46namespace WelsDec {
47
48static inline void SetRectBlock (void* vp, int32_t w, const int32_t h, int32_t stride, const uint32_t val,
49 const int32_t size) {
50 uint8_t* p = (uint8_t*)vp;
51 w *= size;
52 if (w == 1 && h == 4) {
53 * (uint8_t*) (p + 0 * stride) =
54 * (uint8_t*) (p + 1 * stride) =
55 * (uint8_t*) (p + 2 * stride) =
56 * (uint8_t*) (p + 3 * stride) = (uint8_t)val;
57 } else if (w == 2 && h == 2) {
58 * (uint16_t*) (p + 0 * stride) =
59 * (uint16_t*) (p + 1 * stride) = size == 4 ? (uint16_t)val : (uint16_t) (val * 0x0101U);
60 } else if (w == 2 && h == 4) {
61 * (uint16_t*) (p + 0 * stride) =
62 * (uint16_t*) (p + 1 * stride) =
63 * (uint16_t*) (p + 2 * stride) =
64 * (uint16_t*) (p + 3 * stride) = size == 4 ? (uint16_t)val : (uint16_t) (val * 0x0101U);
65 } else if (w == 4 && h == 2) {
66 * (uint32_t*) (p + 0 * stride) =
67 * (uint32_t*) (p + 1 * stride) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
68 } else if (w == 4 && h == 4) {
69 * (uint32_t*) (p + 0 * stride) =
70 * (uint32_t*) (p + 1 * stride) =
71 * (uint32_t*) (p + 2 * stride) =
72 * (uint32_t*) (p + 3 * stride) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
73 } else if (w == 8 && h == 1) {
74 * (uint32_t*) (p + 0 * stride) =
75 * (uint32_t*) (p + 0 * stride + 4) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
76 } else if (w == 8 && h == 2) {
77 * (uint32_t*) (p + 0 * stride) =
78 * (uint32_t*) (p + 0 * stride + 4) =
79 * (uint32_t*) (p + 1 * stride) =
80 * (uint32_t*) (p + 1 * stride + 4) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
81 } else if (w == 8 && h == 4) {
82 * (uint32_t*) (p + 0 * stride) =
83 * (uint32_t*) (p + 0 * stride + 4) =
84 * (uint32_t*) (p + 1 * stride) =
85 * (uint32_t*) (p + 1 * stride + 4) =
86 * (uint32_t*) (p + 2 * stride) =
87 * (uint32_t*) (p + 2 * stride + 4) =
88 * (uint32_t*) (p + 3 * stride) =
89 * (uint32_t*) (p + 3 * stride + 4) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
90 } else if (w == 16 && h == 2) {
91 * (uint32_t*) (p + 0 * stride + 0) =
92 * (uint32_t*) (p + 0 * stride + 4) =
93 * (uint32_t*) (p + 0 * stride + 8) =
94 * (uint32_t*) (p + 0 * stride + 12) =
95 * (uint32_t*) (p + 1 * stride + 0) =
96 * (uint32_t*) (p + 1 * stride + 4) =
97 * (uint32_t*) (p + 1 * stride + 8) =
98 * (uint32_t*) (p + 1 * stride + 12) = size == 4 ? val : (uint32_t) (val * 0x01010101UL);
99 } else if (w == 16 && h == 3) {
100 * (uint32_t*) (p + 0 * stride + 0) =
101 * (uint32_t*) (p + 0 * stride + 4) =
102 * (uint32_t*) (p + 0 * stride + 8) =
103 * (uint32_t*) (p + 0 * stride + 12) =
104 * (uint32_t*) (p + 1 * stride + 0) =
105 * (uint32_t*) (p + 1 * stride + 4) =

Callers 1

GetColocatedMbFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected