Since he hadn't used the SD card yet, we were able to restore the files with "TestDisk", a companion tool that ships with PhotoRec. Under "Advanced" there is an "Undelete" tool. This will let you browse the filesystem, find your missing files, and copy them to another drive.
For those old enough to remember, MSDOS came with undelete.exe which worked the same way.
I've never felt so happy to be a techie.
Available in MS-DOS >= 5.0. If you had MS-DOS 3.3, you didn't get any cool stuff like that. Couldn't even see hidden files!
I also have a policy where I don’t delete the files on the SD card until the very last moment when new files need to be written again. This gives me a window of time in which there is an extra backup in case of issues with replication from my initial local storage on my computer, to an external drive, to the RAID array, or to the cloud.
rm -rf after the initial copy from the SD card onto the computer is a bad idea, especially if the card isn’t immediately needed for new footage.
I really wish modern cameras could stream over WiFi 6 or 7 (since it's just H.265 compressed, 50-100 Mbps) so I could either do NDI or a video stream off to my NAS. Still save to the card in the body, but also record over the network directly in-body!
My inner product manager is screaming.
I think the key point is that cameras don't write the video files in one long contiguous block on disk. They internally split it up and write in an interleaved fashion. It even mentions low-level tricks like manipulating the FAT table so the moov atom which is written last appears at the beginning of the file.
Honourable mentions to ExplainingComputers and "Platima Tinkers".
Just got Elonized by you
1. Accepts no parameters.
2. Looks for an SD card with a bunch of Sony-structured folders.
3. Copies the media from that to the NAS folder directly and fsyncs.
4. Checks that the files are there and look ok.
5. Maybe triggers a ZFS snapshot? Why not.
6. Only then deletes the files from the source.
Because managing files is not only error prone, deleting files should be avoided to the extent your budget allows...
...and if you are shooting still (and not video) there's really no good reason to ever delete an image off an SD card because SD cards are cheap (because photos don't require highest speed cards). SD cards can be used as "film" in a digital camera.
Then they moved to iCloud or manual sync and your forced to manage individual files again. Delete in iCloud, it’s gone everywhere. Want to keep your bad shots, but not have them on every device? Figure out how to move photos between multiple libraries while only being allowed to have one open at a time.
I don’t understand that. If you use iCloud, the cloud is primary storage, and your disk caches recently accessed cloud data.
So, just keep everything in a single library, and if your disk fills up iCloud will remove pictures you haven’t accessed recently from your disk.
That hypothesis is certainly getting tested these days in specific niches. With high megapixel sensors, pre-capture, and cameras capable of pushing between 30fps and 120fps worth of compressed raws or high quality JPEGs, you can obliterate your camera's write buffer and CFExpress write bandwidth. You can make many bad photos of an animal, bird, or athlete with extreme ease -- and hopefully find that one winner in the haystack.
I would say the line between movies and photos is getting blurred, but it's unlikely you're using a shutter speed that allows for motion blur with these bursts of photos!
Surely those are buffered in the RAM first, then flushed to the card. When the buffer is full, cameras either stop recording or have to flush continuously, which reduces the burst rate.
There are tons of good reasons.
When downloading images off the card, software has to read all the files on it - which can take a very long time if the card is full of photos you've already processed in a previous session.
Then there's that you shouldn't be keeping most of the shots you take. Unless you're a still life artiste, most people (including professionals) take multiple pictures to account for blinking, moving objects, slightly different angles, etc. You should keep the best shots and delete the rest - storage is cheap but having to go back through all the garbage to find the good shots in the future is pointless.
Modern cameras have large sensors that produce large files. It's wasteful to keep buying more and more SSD cards. Just build a NAS or pay for cloud storage.
A RAW file from a Nikon Z8 is generally 50-70MB. If I left 300 photos on the card before going out for a shoot, that's tens of gigabytes of data to transfer and analyze before the software can get to the images I'm actually interested in. If it's hundreds of gigabytes the problem is even worse.
Best practice is to dump, back up, and format. If you’re doing photos and you’re not shooting several gigs per shot hundreds of times then sure you can hold onto those SD cards, but then you need to take them out of rotation.
Ultimately boils down to the kind of user we are talking about, which is incredibly varied
Yeah, a kind of rotating workflow seems necessary when you doing professional camera stuff.
Of course, something like this can always happen; however, it's just as likely that an SD card will fail at some point.
The camera should record redundantly, and many semi-pro cameras already do this if you want them to. Then you can leave the second card untouched and have a spare one and rotate only the spares.
I photograph birds in flight at 25 or 50 FPS.
Even if I didn't do something that demands fast cards and fills them up quickly, I don't see much reason to keep photos on SD cards rather than my laptop's SSD with an external HDD as backup. I import and cull the photos, run a backup, and reformat the cards.
I'm a big believer in thinking you have backups being worse than knowing you don't, so anything that encourages people to believe $(flash memory) is suitable as long-term cold storage is actually, really bad.
I agree there's no need to copy & wipe cards immediately, but treating them as "film" is inherently flawed and setting yourself up for failure. The amount of people that turn up in data recovery forums unable to access old, important, "backed up" (memory card/ssd on a shelf) photos is depressingly high.
https://security.stackexchange.com/questions/264642/are-andr...
What's needed is USB-C host on iPhone. Then USB MTP or MSC to extract and upload. Which, is arguably already there. I think what's really missing is iOS/Android side willingness to ingest offline files.
And I've seen modern Android devices cold-boot in 2 seconds.
But also, manufacturers could do apps and support APIs without adding a whole Android OS with all the downsides that it entails.
But maybe we're talking about different kind of cameras.
That's why it's _still_ easier to just pop the SD-card and copy files. So even Apple had to add the SD slot back to Mac Books.
That does exist. Samsung used to make android interchangeable lens cameras, and now Yongnuo does.
It was awesome for its time, I could make pictures at a party, upload them to Picassa right away, and share them with a friend. It had a GPS receiver (a thing that cameras STIL!!!!! lack) so I had automatic geotagging.
I tried to get YN455, but they don't sell them in the US and apparently it doesn't even have proper English localization. I do speak some Mandarin, but I still want something localized.
Or maybe it's just the matter of someone writing a single executable installer to set up the host for those but I don't know...