Skip to content

Commit 773e415

Browse files
committed
Code refactoring for v4l2 device
1 parent 879ef60 commit 773e415

File tree

2 files changed

+17
-15
lines changed

2 files changed

+17
-15
lines changed

pkg/v4l2/device/README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# Video For Linux Two
2+
13
Build on Ubuntu
24

35
```bash
@@ -7,11 +9,11 @@ sudo apt install gcc-aarch64-linux-gnu binutils
79
sudo apt install gcc-arm-linux-gnueabihf
810
sudo apt install gcc-mipsel-linux-gnu
911

10-
x86_64-linux-gnu-gcc -w -static arch.c -o arch_x86_64
11-
i686-linux-gnu-gcc -w -static arch.c -o arch_i686
12-
aarch64-linux-gnu-gcc -w -static arch.c -o arch_aarch64
13-
arm-linux-gnueabihf-gcc -w -static arch.c -o arch_armhf
14-
mipsel-linux-gnu-gcc -static arch.c -o arch_mipsel
12+
x86_64-linux-gnu-gcc -w -static videodev2_arch.c -o videodev2_x86_64
13+
i686-linux-gnu-gcc -w -static videodev2_arch.c -o videodev2_i686
14+
aarch64-linux-gnu-gcc -w -static videodev2_arch.c -o videodev2_aarch64
15+
arm-linux-gnueabihf-gcc -w -static videodev2_arch.c -o videodev2_armhf
16+
mipsel-linux-gnu-gcc -w -static videodev2_arch.c -o videodev2_mipsel
1517
```
1618

1719
## Useful links
Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
#define printstruct(str) printf("type %s struct { // size %lu\n", #str, sizeof(struct str))
88
#define printmember(str, mem, typ) printf("\t%s %s // offset %lu, size %lu\n", #mem == "type" ? "typ" : #mem, typ, offsetof(struct str, mem), sizeof((struct str){0}.mem))
99
#define printunimem(str, uni, mem, typ) printf("\t%s %s // offset %lu, size %lu\n", #mem, typ, offsetof(struct str, uni.mem), sizeof((struct str){0}.uni.mem))
10-
#define printalign1(str, mem2, mem1, siz1) printf("\t_ [%lu]byte // align\n", offsetof(struct str, mem2) - offsetof(struct str, mem1) - siz1)
11-
#define printfiller(str, mem1, siz1) printf("\t_ [%lu]byte // filler\n", sizeof(struct str) - offsetof(struct str, mem1) - siz1)
10+
#define printalign1(str, mem2, mem1) printf("\t_ [%lu]byte // align\n", offsetof(struct str, mem2) - offsetof(struct str, mem1) - sizeof((struct str){0}.mem1))
11+
#define printfiller(str, mem) printf("\t_ [%lu]byte // filler\n", sizeof(struct str) - offsetof(struct str, mem) - sizeof((struct str){0}.mem))
1212

1313
int main() {
1414
printf("const (\n");
@@ -51,9 +51,9 @@ int main() {
5151

5252
printstruct(v4l2_format);
5353
printmember(v4l2_format, type, "uint32");
54-
printalign1(v4l2_format, fmt, type, 4);
54+
printalign1(v4l2_format, fmt, type);
5555
printunimem(v4l2_format, fmt, pix, "v4l2_pix_format");
56-
printfiller(v4l2_format, fmt, sizeof(struct v4l2_pix_format));
56+
printfiller(v4l2_format, fmt.pix);
5757
printf("}\n\n");
5858

5959
printstruct(v4l2_pix_format);
@@ -74,7 +74,7 @@ int main() {
7474
printstruct(v4l2_streamparm);
7575
printmember(v4l2_streamparm, type, "uint32");
7676
printunimem(v4l2_streamparm, parm, capture, "v4l2_captureparm");
77-
printfiller(v4l2_streamparm, parm, sizeof(struct v4l2_captureparm));
77+
printfiller(v4l2_streamparm, parm.capture);
7878
printf("}\n\n");
7979

8080
printstruct(v4l2_captureparm);
@@ -106,14 +106,14 @@ int main() {
106106
printmember(v4l2_buffer, bytesused, "uint32");
107107
printmember(v4l2_buffer, flags, "uint32");
108108
printmember(v4l2_buffer, field, "uint32");
109-
printalign1(v4l2_buffer, timecode, field, 4);
109+
printalign1(v4l2_buffer, timecode, field);
110110
printmember(v4l2_buffer, timecode, "v4l2_timecode");
111111
printmember(v4l2_buffer, sequence, "uint32");
112112
printmember(v4l2_buffer, memory, "uint32");
113113
printunimem(v4l2_buffer, m, offset, "uint32");
114-
printalign1(v4l2_buffer, length, m, 4);
114+
printalign1(v4l2_buffer, length, m.offset);
115115
printmember(v4l2_buffer, length, "uint32");
116-
printfiller(v4l2_buffer, length, 4);
116+
printfiller(v4l2_buffer, length);
117117
printf("}\n\n");
118118

119119
printstruct(v4l2_timecode);
@@ -141,7 +141,7 @@ int main() {
141141
printmember(v4l2_frmsizeenum, pixel_format, "uint32");
142142
printmember(v4l2_frmsizeenum, type, "uint32");
143143
printmember(v4l2_frmsizeenum, discrete, "v4l2_frmsize_discrete");
144-
printfiller(v4l2_frmsizeenum, discrete, sizeof(struct v4l2_frmsize_discrete));
144+
printfiller(v4l2_frmsizeenum, discrete);
145145
printf("}\n\n");
146146

147147
printstruct(v4l2_frmsize_discrete);
@@ -156,7 +156,7 @@ int main() {
156156
printmember(v4l2_frmivalenum, height, "uint32");
157157
printmember(v4l2_frmivalenum, type, "uint32");
158158
printmember(v4l2_frmivalenum, discrete, "v4l2_fract");
159-
printfiller(v4l2_frmivalenum, discrete, sizeof(struct v4l2_fract));
159+
printfiller(v4l2_frmivalenum, discrete);
160160
printf("}\n\n");
161161

162162
return 0;

0 commit comments

Comments
 (0)