9 ms·
Show HN: Multi-display screen sharing with CoScreen
Good to be back on HN with all-new CoScreen, a little more than 3 years after it launched over here!
With CoScreen 5.0, you can now share your windows from multiple displays at the same time, a long standing request by our most avid users and impossible in other apps. It also has a lightning-fast, Rust-based window compositing, scaling, and streaming engine now.
CoScreen was always meant to be different so that you and your team can share your screens simultaneously and multi-directionally, and to be able to control what is being shared. We saw it as a natural extension and closely coupled with your OS — instant, fast, and seamless. A better way to pair program, debug tough incidents, or jam on great ideas by sharing multi-modal information like code, commands, graphs, or logs.
All that made a lot of sense conceptually but to be frank, it was hard to get it right. Now a part of Datadog and with major parts of our app rewritten in Rust, we feel we’re closer than ever.
Here’s what pair programmers liked about CoScreen, so we made it even better:
- High definition code sharing: Windows are video-streamed in real-time at their native resolution whenever possible. You never have to search for your IDE anymore or be anxious to share the wrong window.
- Multi-directional collaboration: You can share, while Alice shares, while Bob shares. Side-by-side, across multiple displays. With built-in crisp audio and video chat.
- 60FPS+ super smooth mouse pointers. Type, click, and draw on any shared window as if it was your own.
What some of you did NOT like, so we fixed it in CoScreen V5:
- CPU utilization and latency have been reduced drastically as various parts of our desktop client are now implemented in Rust, building on crates such as cxx, rust-skia, iced, as well as Neon for our native remote control plugins.
- No more accidental clicking into remote windows through the new remote window toggles.
- You’re no longer bound by your displays, can share windows from multiple of them at the same time and even move them across displays while sharing without stopping.
- You’ll also soon be able to join meetings from your browser from any platform.
CoScreen runs on macOS (x64 and Apple Silicon), Windows, soon also on the web and is currently free. We’re planning to charge for larger teams and enterprise features in the future. Hopefully - finally - we’ll also have a Linux version one day. Tell us if you need it urgently and if you have any other requirements!
- mrleinad 3y agoIs there a way to share a portion of the screen if I want to? Or is it just entire windows?
- coscreen 3y agoCurrently only entire displays and specific windows (one or multiple of them). But happy to look into this - what would you share only partially for example?
- mrleinad 3y agoSpecifically, I have a 49" ultrawide monitor and a VM in it. If I share the entire VM, other people with smaller monitors see it too small and have to zoom. If I resize the VM, I have to reposition my windows inside it. It's easier to share a portion of the screen, it's what I do in Zoom. A portion of a window would work too.
- seinfish 3y agoMax here from CoScreen. I'm with you, sharing a portion of the screen or window would be very useful for this scenario. I can also imagine running CoScreen from the VM itself, but that would only work for Mac and Windows VMs at this point (Audio and video could still go through your physical machine —— i.e. you would connect with two users). We also have a headless Linux client in the pipeline that could serve to connect the VM directly.
- mrleinad 3y agoConnecting with 2 users would work. I would still need to resize the window I'm sharing (the reason I have that big ass monitor is to use VS maximized and have everything open), but it's easier than resizing all windows.
- rkagerer 3y agoI do this all the time in Zoom, to share PowerPoint presentations at the correct scale and without exposing my speaker notes, and to share YouTube videos from Firefox without showing the "chrome" portion surrounding the video. My side monitors are oriented vertically, so if I put those windows in fullscreen and try to share the whole monitor it doesn't come out correctly proportioned. This also provides a smoother experience without the "flicker" of going fullscreen and back (which can happen when you switch focus between windows). It's a similar use-case to the one bentcorner described above. The "share region" solution is admittedly a bit of a hack but it works. Love to find an easier solution to this scenario (especially a way to break out speaker notes into a floating window I could position right under my webcam). BTW apropos to nothing, I always loved the way the old Spy++ tool let you drag a reticle onto a control hWnd (reminiscent of how "Select an Element" works in Chrome DevTools) - that was a neat mechanism to quickly select a perfectly carved out region of an app without having to draw a box, but alas these days with so many going Electron, and other non-standard presentation surfaces, it wouldn't be as useful anymore.