History

split bw/color branches

Sigrid Solveig Haflínudóttir committed 5 years ago

Commit 6d3d3081 parent 29ac3d11 file · +15 −10Browse files

Unified · Split

main.c+15−10
@@ -13,7 +13,7 @@ · 12 unmodified lines
13int mainstacksize = 128*1024;13int mainstacksize = 128*1024;
14 14
15static Image *curim;15static Image *curim;
16static u8int *rgb;16static u8int *curpx;
17static uvlong lastframe;17static uvlong lastframe;
18static int audiofd = -1;18static int audiofd = -1;
19static Channel *audiosync;19static Channel *audiosync;
@@ -81,21 +81,26 @@ drawframe(Frame *f) · 61 unmodified lines
81 if(curim != nil && (Dx(curim->r) != f->w || Dy(curim->r) != f->h)){81 if(curim != nil && (Dx(curim->r) != f->w || Dy(curim->r) != f->h)){
82 freeimage(curim);82 freeimage(curim);
83 curim = nil;83 curim = nil;
84 free(rgb);84 free(curpx);
85 rgb = nil;85 curpx = nil;
86 }86 }
87 r = Rect(0,0,f->w,f->h);87 r = Rect(0,0,f->w,f->h);
88 if(curim == nil)
89 curim = allocimage(display, r, bw ? GREY8 : RGB24, 0, DNofill);
90 if(rgb == nil)
91 rgb = malloc(f->w*f->h*(bw ? 1 : 3));
92 if(bw){88 if(bw){
89 if(curim == nil)
90 curim = allocimage(display, r, GREY8, 0, DNofill);
91 if(curpx == nil)
92 curpx = malloc(f->w*f->h);
93 for(y = 0; y < f->h; y++)93 for(y = 0; y < f->h; y++)
94 memmove(rgb+f->w*y, f->yuv[0]+f->ystride*y, f->w);94 memmove(curpx+f->w*y, f->yuv[0]+f->ystride*y, f->w);
95 loadimage(curim, r, curpx, f->w*f->h);
95 }else{96 }else{
96 yuv420_rgb24(f->w, f->h, f->yuv[0], f->yuv[1], f->yuv[2], f->ystride, f->uvstride, rgb, f->w*3);97 if(curim == nil)
98 curim = allocimage(display, r, RGB24, 0, DNofill);
99 if(curpx == nil)
100 curpx = malloc(f->w*f->h*3);
101 yuv420_rgb24(f->w, f->h, f->yuv[0], f->yuv[1], f->yuv[2], f->ystride, f->uvstride, curpx, f->w*3);
102 loadimage(curim, r, curpx, f->w*f->h*3);
97 }103 }
98 loadimage(curim, r, rgb, f->w*f->h*(bw ? 1 : 3));
99 104
100 dispdelay = nanosec() - x;105 dispdelay = nanosec() - x;
101 106

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t