3 ms·
I wanted to use my new Sony DSLR (a6700) in the same way as I use my server: by ssh'ing into it. This is a one day hackaway helper built on Sony’s official Cam
by beligum 1y ago
I wanted to use my new Sony DSLR (a6700) in the same way as I use my server: by ssh'ing into it.
This is a one day hackaway helper built on Sony’s official Camera Remote SDK. It sort of mimics an ssh session by connecting to my Sony over Wi-Fi, listens for new photos or specific events... and runs scripts on them.
Thank you Sony, for not forgetting the Linux fan base.
And thank you ChatGPT for freshening up my c++ skills!
- SAI_Peregrinus 1y agoNitpick: that's a DSLM, or just "mirrorless" camera. There's no reflex mirror, so it's not a DSLR.
- delta_p_delta_x 1y agoThe more common initialism/abbreviation is MILC, or mirrorless interchangeable-lens camera.
- Lammy 1y agoI'm sad that Electronic Viewfinder, Interchangeable Lens (EVIL) didn't catch on
- anArbitraryOne 1y agoOoh that's funny. And I say that as an EVF lover
- simondotau 1y agoWrong words are commonplace in English, perhaps my favourite being “modern art” referring to art from 100 years ago. Long story short: don’t worry about it.
- a96 1y agohttps://en.wikipedia.org/wiki/Modern_art https://en.wikipedia.org/wiki/Modern_art https://en.wikipedia.org/wiki/Contemporary_art https://en.wikipedia.org/wiki/Contemporary_art
- JdeBP 1y agoI wouldn't thank ChatGPT too enthusiastically. As always for LLMs, it has given you code that is rife with common pitfalls (because, after all, they massively plagiarize sources where people post poor code). For examples: It does not follow the Linux rules for pathname separators, but mixes in Windows-isms. It doesn't properly check whether std::atomic<bool> is actually signal safe on the target architecture. Its unique filename generation has an all-too-common failure mode. It passes by reference only to then make local value copies anyway. It does not correctly follow the XDG Base Directory Specification.
- beligum 1y agoLast time I hand started a c++ project was 10+ years ago so let's say it got the ball moving ;) Feel free to help cleanup a bit of my mess if you want, would love to work on this project together with others!
- pjmlp 1y agoSome stuff that could be improved with modern C++, Instead of static bool file_exists(const std::string &p) { struct stat st{}; return ::stat(p.c_str(), &st) == 0; } Use the filesystem API, std::filesystem::exists(path); -- https://en.cppreference.com/w/cpp/filesystem.html https://en.cppreference.com/w/cpp/filesystem.html
- beligum 1y agoty!