5 ms·
A Desktop App Idea That You Can Develop and Even Sell
I often hear people saying they don't know what to build, so here's a desktop application idea that solves a real problem for people who create screencast style videos.
Rather than explain it, I've demonstrated the problem on video (~3min):
https://www.youtube.com/watch?v=pUmGFiAZA0s
The TL;DR is when your desktop resolution > recording resolution you lose a lot of common Windows functionality and have to manually pixel align windows inside of recording tool constraints. I'm sure there's Windows APIs and methods to restrict windows operations to a customized rectangle, and that's the app you could potentially build.
- Zekio 8y agoNever experienced this with OBS(1) since you can just capture each Window and position them in OBS then have different scenes bound on hotkeys. 1: https://obsproject.com/ https://obsproject.com/
- nickjj 8y agoWith OBS it's even easier because you can down sample your 2560x1440 desktop to 1920x1080 in real time at record time. That's how I ended up recording my entire screen in the explanation video. My main problem is I really don't like using OBS for pre-recorded content since the work flow to record a video is much less efficient than with Camtasia. Also when editing the video, Camtasia really chokes compared to using its format as a source file and you lose out on being able to highlight your cursor.
- lichenwarp 8y agoSpeaking of 1995, just turn on mouse marquee.
- nickjj 8y agoGood call, and also make sure you turn on the jungle sound effects.
- slashink 8y agoInteresting problem and a good video describing what you are looking for! Although i think this is solved by using a dual monitor setup, keep your notes on the secondary monitor and just capture the first monitor. That way you get all the windows helpers.
- nickjj 8y agoI do have dual monitors. With the way I have everything set up, it would be very uncomfortable to record my second monitor's screen (it's positioned in a bad spot relative to my mic), but it would also be really bad for reading notes off of since it's so far off to the side of where I am looking. I could always drop my native res from 2560x1440 down to 1920x1080 on the main recording monitor and that would 100% work, but I really like having my notes 3 inches away from where my eyes are facing when I do live coding or am explaining something. It really makes a difference when you're recording for ~100 hours (less neck strain, less eye strain, easier to ensure good mouth to mic positioning, etc.).
- mygo 8y ago>Although i think this is solved by using a dual monitor setup having to get a second monitor just to record a video easier... is a problem in and of itself.
- some1else 8y agoAlso, you could make an app that helps hungry people get a free meal. The software would align all the desktop windows to pixel perfect layouts, and funnel all the profits to soup kitchens. Edit: To clarify, I've tried streaming with OBS and never experienced this problem. I can use the trackpad and resize handles effectively. From the business side of things, I think the scale of the problem is so minute, there isn't a viable revenue flow to support a single developer working on this. Seriously, let's have a count of everyone who would purchase this app. Reply with commitment to buy if you're interested.
- sanlyx 8y agoIt seems to me it would require to hook the window procedures of all processes, which is an ugly hack at best.
- arendtio 8y agoMaybe you should try using a VM with special recording settings.
- Jaruzel 8y agoTo do what you want, you'd hook the windows resize messaging hooks, and override them. I'm not sure you can get the application to 'look' maximised though, as you'd probably have to abort the maximise event, and override with a resize to your constraints event. Additionally, it's possible to lock the mouse inside a defined rectangle on the screen, using the Windows API.
- MrLeap 8y agoI used to love writing stuff like this back in highschool, when I "knew" c++. Now, if you were one of my customers I'd just write you an autohotkey script to solve your problem. Monetizing 20 line AHK scripts seems sketchy, so I'll just try to help. Here's handy documentation that'll help you achieve what you're after. https://autohotkey.com/docs/commands/WinMove.htm https://autohotkey.com/docs/commands/WinMove.htm <- the main function that you'll use for window adjustment. Can bind it to a hotkey or whatever you want. Look at events if you want it to be automatic. https://autohotkey.com/board/topic/54443-box-ie-draw-simple-gui-based-boxes-on-screen/ https://autohotkey.com/board/topic/54443-box-ie-draw-simple-... <- would help visualize your snap box https://www.autohotkey.com/docs/commands/Gui.htm https://www.autohotkey.com/docs/commands/Gui.htm <- So you can configure your snap area. Should be an hour or two job if you're reasonably familiar with AHK.
- kilian 8y agoThe fact that something is a 20 line AHK script that takes you two hours should never keep you (or anyone doing this) from monetizing the result.
- MrLeap 8y agoI mean, I'd happily charge 100$ an hour to write this for someone, but to set up a web page / stripe or whatever / splash webpage, bleh. Something in me wants the a solution I sell to take more effort to create than the checkout aisle. I get what you're saying though. My attitude definitely stymies my earnings potential. Maybe someday I'll meet a partner to aggressively monetize things that I do that would normally be helpful freebies on the internet ;)
- nickjj 8y agoI'd be down for paying you $100 to do this if you can get it to work flawlessly as per the specifications of the explanation video. I'd also be cool with hopping on a Hangouts to go over a more formal spec list and expectations. The only stipulation I have is it needs to be released under an MIT license. I wouldn't monetize it, but I would like to openly share and distribute the script with others (giving you credit of course). If you're interested email me at nick.janetakis@gmail.com.
- mindfulplay 8y agoSysinternals has this exact tool iirc.... https://docs.microsoft.com/en-us/sysinternals/ https://docs.microsoft.com/en-us/sysinternals/
- amazert 8y agoMake a kick ass app and sync it with desktop app. it will sell like fire.
- __m 8y agoIs it really a problem that hasn’t been solved though? Seems like a big gamble to build a complete screencapturing app around a minor feature that’s easily implemented by your competitors
- nickjj 8y ago> Seems like a big gamble to build a complete screen capturing app around a minor feature that’s easily implemented by your competitors It wouldn't need to record or compete with existing screen capturing tools. It would just be something that restricts windows sizes and your mouse cursor from being able to escape a rect of your choosing. The tricky part would be also supporting built in Windows functionality like maximizing and splitting windows. It would be something you'd use in addition to existing screen recording tools.
- wruza 8y agoIf I got the idea right, I used MaxTo to easily position windows and restrict their maximization to specified rectangles. Unfortunately, it is $20 and I’m not used to pay on random sites, neither have throwaway paypals or cards. Edit after watching video: not sure about full-size vs split-view in that window, but probably achievable with alt-layout, I didn’t test it. Otherwise, it is for you exactly.
- oldsklgdfth 8y agoI made a tool like this in C# a few years ago. I made it cause at the time I was using 4k displays with lots of real estate and the snap tool was limited. It's not really something that's worth $20. How much would you throw at something like that?
- wruza 8y agoI don’t know since I’m not really their client (and also rarely buy such microtools). It is nice when you position windows at predefined grid, but moving to linux+i3/awesome/etc would be a huge gain even against $1. I’m just too lazy until it becomes a real hassle. Also my coworker has no drivers for linux and managing that would add extra costs. That said, I’m not in “you have to earn hard” camp. If something solves a critical disadvantage, then it is worth a hundred in that particular case.
- nickjj 8y agoMaxTo is pretty close. I didn't come across this one in my travels. It does support the ability to ensure windows don't go beyond a certain region. But the problem I see with this app is you can't define the region size and where it's located. It only gives you an option to vertically / horizontally split evenly in sections. Like, cutting your screen in half, and then in half again. Not so much picking the size and area. Really close tho!
- ploy_XIV 8y ago...or, just change your desktop resolution for the duration of the recording. Unless your recording resolution is smaller than 1080p, I wouldn't expect this to create usability issues with a common operating system.
- ken 8y agoI foresee two problems. 1. It's a feature, not a product. The only use described, or that occurs to me, is screen recording. You could spend the time to make the best possible fit-windows-in-a-rectangle application, and the Camtasia folks could build it in to their application and make it fully integrated (align with their magic recording rectangle), and all your effort was for naught. (In the Apple world, this has a name: "Sherlocking".) 2. Resizing a window is literally a single command -- at least on the Mac, and I assume also on other modern platforms (wmctrl, etc). I've got a bunch of these in the "Release" folder of my application for positioning windows for automated screenshots: osascript -l JavaScript -e 'Application("Safari").windows[0].bounds = {x: 100, y: 100, width: 1200, height: 800};' It's not as easy to use as "click a button" but I bet I could position 3 windows faster than you could buy and download an app online. I can queue up preset sizes/positions of windows before a screencast, too, and change them during the recording. Unless you specifically want to show off the maximization animation ("Welcome to 1995!"), you can just segue over it ("Now let's look at something else...") while you double-click that shell script off-screen. (I say this not to suggest that everyone using a GUI app should just write shell scripts, but to point out how easy it would be for competitors. This would be the opposite of PG's "run upstairs" advice.) I know what software should be written, but, like this idea, they're usually specific features of existing software that I don't have the source code for. What I have trouble figuring out is something to build which also has a viable revenue stream attached.
- nickjj 8y ago1. True but Camtasia could also never release that feature. For me personally I don't mind spending $20 or whatever if it solves a problem that affects me on almost a daily basis (my business involves recording software development related screencasts). 2. Resizing is only half the battle. I already rigged up an AHK script months ago to position things initially, but in a live coding session you often want to be able to move windows around freely or switch between layouts (editor, editor + terminal, terminal, editor + browser, etc.). This is where things fall apart because it's so easy to move them out of the recording zone or end up with a recording where a window has like a 2 pixel gap and looks off. I suppose I could wire up about 6 or 8 hotkeys to statically position and size those different layouts as a last resort. It's not important that people see the animation or me resizing windows manually.
- dabockster 8y agoThis doesn't seem like a software problem, but an editing one. You could cut to different recordings of the screen using a fade effect in whatever NLE you're using to edit the video. No need to write a program for this. Basically film the portion in the rectangle, stop, expand to full screen, then start a new recording where you left off. Bring it all together in a video editor like Premier or Resolve.
- nickjj 8y agoWay too much effort. I'm recording for hundreds of hours, things really need to be streamlined. Another strategy would be to record at 2560x1440 (the full screen) and then zoom / pan into a specific region when editing but this comes with its own set of other problems. Mainly recording at 1440p uses a ton of disk space and drops frames on my box.
- jamexcb 8y agoOr you can use two monitors. One to record, and other to something else!