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
1313 int mainstacksize = 128*1024;
1414
1515 static Image *curim;
16−static u8int *rgb;
16+static u8int *curpx;
1717 static uvlong lastframe;
1818 static int audiofd = -1;
1919 static Channel *audiosync;
@@ -81,21 +81,26 @@ drawframe(Frame *f) · 61 unmodified lines
8181 if(curim != nil && (Dx(curim->r) != f->w || Dy(curim->r) != f->h)){
8282 freeimage(curim);
8383 curim = nil;
84− free(rgb);
85− rgb = nil;
84+ free(curpx);
85+ curpx = nil;
8686 }
8787 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));
9288 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);
9393 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);
9596 }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);
97103 }
98− loadimage(curim, r, rgb, f->w*f->h*(bw ? 1 : 3));
99104
100105 dispdelay = nanosec() - x;
101106

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