Really? Hours?
For reference, the depth map is embedded within the image as XMP metadata as specified here. It shouldn't be too hard to extract that since it's basically just a base64 encoded PNG image, and this should allow people to do a lot more interesting post-processing with something like GIMP.
I also noticed that a lot of EXIF information (camera model, exposure time, ISO, etc) aren't tagged when you take a photo in lens blur mode. I hope this is just an oversight and is going to be fixed in the next version.
The next question is when we are getting RAW images from our phones. ;)
EDIT: For those who are interested and have exiftool
, base64
and any sh
-compatible shell, you can use:
exiftool -xmp-gdepth:data -b photo.jpg | base64 -d > depth.png
to extract the depth image, and run
exiftool -xmp-gimage:data -b photo.jpg | base64 -d > image.jpg
to extract the original image.
EDIT: For those on Windows, you need to grab exiftool from here and a base64 decoder from here. Extract both and place the executables somewhere in %PATH%
or just your current directory. Rename the exiftool-(k)
executable to exiftool
(or just adjust the command accordingly), open a command prompt and follow the commands as described above.
Details about how the cellphone was hidden is worded oddly (just imagine someone saying that out loud while composing a frantic 'SOS' message). The last sentence also seems to provide irrelevant information, which is meant to confuse the reader, at best.
If the person texting feels as if he cannot think clearly why would he bother with details like "open parenthesis - blindfolded - close parenthesis, period" while dictating the SOS message? Seems like a helluva' lot of work for someone who's allegedly drugged.
The idea that there is cellphone service that is unrestricted on a secure military base also seems like a crazy stretch.
I'd bet that this is a prank from 4chan (since this apparently originated from there) as it seems like a lot of bull shit... + you can manipulate metadata (EXGIF data).
There is a lot more data in EXIF than finder shows. If you PM me the original files I can send you the full EXIF data. If you want to do it yourself exiftool is a great tool.
Assuming the tags are decently consistent, exiftool might be useful here. Has a bit of a learning curve though.
Edit I've only used it for images, but ran a quick test and it seems to work:
exiftool -r '-TestName</testdir/${Artist;}/${Album;}/${Title}.%le' *.mp3
Outputs:
'02 Do You Feel Loved.mp3' --> '/testdir/U2/Pop/Do You Feel Loved.mp3' '05 Staring At The Sun.mp3' --> '/testdir/U2/Pop/Staring At The Sun.mp3' '06 Last Night On Earth.mp3' --> '/testdir/U2/Pop/Last Night On Earth.mp3' '07 Gone.mp3' --> '/testdir/U2/Pop/Gone.mp3'
Sorry, it was EXIFTool that I use... here is the script I use. Basically I create a root folder where all of the images will eventually reside, then run this command from within that folder:
exiftool -d %Y\%m\%d "-directory<${model}\${datetimeoriginal}" -v -r C:\SourceDir
This will move files into the folder it it executed from.
If you wish to be a bit more cautious, you can run the following command to perform a copy, rather than a move:
exiftool -o . -d %Y\%m\%d "-directory<${model}\${datetimeoriginal}" -v -r C:\SourceDir
Link to EXIFTool:
If you're comfortable with the command line, you could use ExifTool to remove some or even all of the metadata. To remove everything it would be as simple as:
ExifTool -All= <DIR/FILE>
To remove just the preview images, it might depend upon the camera. My Nikon, for example, has two preview images and to remove both I'd need to use :
ExifTool -PreviewImage= -ThumbnailImage= <DIR/FILE>
One thing to take note of is that this will not change the base image. It only affects the metadata.
EXIFTool is what you need.
Assuming you are using Windows, if you rename exiftool(-k).exe to exiftool(-overwrite_original -all=).exe you can simply drag and drop your photos onto the EXE and it will automatically strip all of the metadata from the image(s).
This is really powerful. I've used it to install Perl and then ExifTool, which in turn is accessible in Tasker via the Termux plug-in. This means I can e.g. auto-write any EXIF metadata on the fly, share-to-correct the date stamps of photos/videos according to their file name, etc.
It's a command line tool, but ExifTool will do it all in one shot.
So, from what I understand, the clock is set 12 hours ahead. You can use this command which will subtract 12 hours from exif time and date:
exiftool -alldates-=12 DIR
You can add -r to recurse into subdirectories. Additional options to look into are -P (preserve filesystem modification date/time of the original file) and -overwrite_original (the default command saves a backup with "_original" added on the end, this option doesn't save a backup).
EXIFTool is super powerful and cross platform. It will let you view and edit metadata.
Metadata Anonymisation Toolkit is good if your on linux.
Metanull is a windows application, but the developer's blog is gone and it's not on github anymore, but is still on softpedia.
ImageMagick's convert -strip doesn't remove the colour profile data; you need to use convert -thumbnail for that.
(I use both, in different stages, in my online photo publishing scripts.)
Anyhow, there's always ExifTool, which can do the same thing but without triggering any phobias about recompression, as someone else has mentioned in this thread.
http://www.sno.phy.queensu.ca/~phil/exiftool/
Edit: By way of explanation, I use convert -strip to remove EXIF data in published images because I'm already running convert -auto-orient on them, so I might as well kill two birds with one stone. (Also, running auto-orient is bad without running strip, because some image viewers will re-orient based on camera orientation EXIF data, and some won't.)
If it is still not working for anyone, it's most likely because you created the original jpg using Photoshop or something else that added extra metadata.
I had a jpg that was saved using PS and the extra metadata was causing it to say "Character Photo upload failed due to unsupported media type." even after using this tool.
~~One way to get around this is to first clean the jpg using exiftool(download the executable) and then run (replace image.jpg with your filename).~~
An easier way is to open and save the jpg over itself using Paint. Then use the tool OP provided.
EDIT: Just PM me the image and I can do it for you. It's probably easier that way lol and I've already done it for some people.
Were they Canon? Most Canon models do not store shutter activations in the EXIF data; if you were using a tool to count the shutter activations from an image's EXIF data, it'll most likely come up as zero since the EXIF data doesn't exist. Or if it's counting the "image number", that number is easily reset, I would expect a reseller to reset it because a buyer doesn't expect the camera to start at IMG_8775.
You can check the EXIF data yourself by downloading ExifTool. Scroll through the EXIF data and you won't see anything about the shutter count.
EOSInfo used to work connected to some Canons, but I think the author said he couldn't extract the count from newer models. Guess Canon really doesn't want you to know.
Illegal? I can't imagine there are any laws against it, since the average user would not be able to check, and indeed Canon doesn't want you to check. Unethical? Again, who thinks to check? Resetting the file numbering to zero? I think that's perfectly acceptable.
Oh, it's also possible that the shutter was replaced, I've heard that resets the shutter count for obvious reasons.
If you're comfortable with the command line, you could use ExifTool to quickly do it. (install instructions).
You could then use a command like this to move any file that is wider than it is tall to a new directory:
exiftool -if "$XResolution>$YResolution" "-directory=C:\path\to\wallpapers" C:\path\to\current\location
If you want to make copies instead of moving the files or want them to be at least a certain ratio (say 3:2), that can also be done.
http://www.sno.phy.queensu.ca/~phil/exiftool/
Date/Time Shift Feature
Have you ever forgotten to set the date/time on your digital camera before taking a bunch of pictures? ExifTool has a time shift feature that makes it easy to apply a batch fix to the timestamps of the images (eg. change the "Date Picture Taken" reported by Windows Explorer). Say for example that your camera clock was reset to 2000:01:01 00:00:00 when you put in a new battery at 2005:11:03 10:48:00. Then all of the pictures you took subsequently have timestamps that are wrong by 5 years, 10 months, 2 days, 10 hours and 48 minutes. To fix this, put all of the images in the same directory ("DIR") and run exiftool:
exiftool "-DateTimeOriginal+=5:10:2 10:48:0" DIR
The example above changes only the DateTimeOriginal tag, but any writable date or time tag can be shifted, and multiple tags may be written with a single command line. Commonly, in JPEG images, the DateTimeOriginal, CreateDate and ModifyDate values must all be changed. For convenience, a shortcut tag called AllDates has been defined to represent these three tags. So, for example, if you forgot to set your camera clock back 1 hour at the end of daylight savings time in the fall, you can fix the images with:
exiftool -AllDates-=1 DIR
See Image::ExifTool::Shift.pl (download in PDF format) for details about the syntax of the time shift string.
Note: Not all date/time information is covered by the AllDates shortcut. Specifically, the filesystem date/time tags are not included, and this command will reset FileModifyDate to the current date/time as it should when the file is modified, unless either the -P option is used, or FileModifyDate is set to something else. To shift FileModifyDate along with the other tags, add -FileModifyDate-=1 to the command above.
Exiftool. No need to script anything. Exiftool can batch process time shifts or other tag editing.
For example, if you need to subtract 1 day, 3 hours, and 5 minutes, then your command would be
exiftool -time:all-="1 3:5" -ext nef /target/dir
Change the -=
to +=
to add time.
Exiftool is incredibly powerful when it comes to editing metadata. The exiftool forums are very helpful if you need more advice.
Thunar has a good bulk-file operation tool, IIRC. However, nothing with a GUI will be as powerful and flexible as the GNU Findutils.
Oh, and for sorting large numbers of digital-media files, exiftool is extremely useful, since it can rename or move files based on information in the files' meta-information header, like EXIF creation date, or ID3 tags. Re: redd.it/2yiked.
Yeah, save the photo from the comparison webpage, and then in Terminal, type "exiftool the-name-of-the-file.jpg".
But you have to have exiftool installed: http://www.sno.phy.queensu.ca/~phil/exiftool/index.html
There are other Exif readers. Firefox and Chrome plugins that will let you see it. Most people probably don't want to use a command line. I think there's probably on-line sites that you can upload the photos to, and it will show Exif data. I'm too lazy to look it up, though.
Edit: /u/charonn0 suggestion is much better if you want to increase the file size.
I don't think you can increase the disk space of a file without increasing the file size. That would something controlled by the underlying file system.
It's easy enough to pad out a jpeg to take up more space, but that would increase the file size, which it seems you don't want to do.
If you don't mind increasing the file size, then you could use ExifTool to increase the file size like this:
ExifTool "-Comment<${filename;$_='0' x (BytesToPad-2)}" FILE
Just replace BytesToPad
with the number of bytes you want to increase the file size with. The -2 is because the Comment tag has an overhead of 2 bytes.
If you have a formula to figure out how many bytes to add, then it could be added to the above command and you could recurse it over whole directory trees.
But like the other comments, I can really see no reason why you would want to do this.
The one problem with the command on that page is that it doesn't include the directional references. In the EXIF spec, gps latitude and longitude are unsigned and require GPSLatitudeRef and GPSLongitudeRef to figure out the correct location. Using the command in that page, pulling up one picture I have geolocated, the location returned is 36 6' 36.08", 115 9' 12.90", which is somewhere in China. Luckily, ExifTool is smart and will normally figure out the reference for you as long as you don't specify a specific chuck to grab the data from. So if I use ExifTool -CSV -GPSLatitude -GPSLongitude >target.csv /path/to/target/dir
instead, it'll return 36 6' 36.08" N, 115 9' 12.90" W (Vegas Baby!!) (Ok, technically Paradise).
To the OP, if you are comfortable with the command line, then try out ExifTool. If you want to use a CSV, your command would be something like:
ExifTool -CSV -GPSLatitude -GPSLongitude >target.csv /path/to/target/dir
To use XML:
ExifTool -X -GPSLatitude -GPSLongitude >target.xml /path/to/target/dir
To use JSON:
ExifTool -json -GPSLatitude -GPSLongitude >target.json /path/to/target/dir
I've always liked exiftool and there is a GUI for it you can download as well, but these might be some easier options:
http://diggfreeware.com/free-utilities-to-remove-exifiptcxmp-metadata-from-images/
First you need to remove the EXIF data from the image.
EXIF data normally contains camera models (your phone if it's a phone camera), lens, color encoding, etc. but it also regularly contains GPS coordinates of where the picture was taken. To manually remove EXIF data use "Exiftool". (In case someone reading this isn't using a linux distro, use "Free Exif Eraser" for Windows, "ImageOptim" for OSX). You can use the tool called MAT to check if an image is clean or dirty and from here scour the image clean.
Next, hosting.
Infotomb.com has a onion address and doesn't require JavaScript.
Last, use PGP to encrypt the message including a link to your image & send.
>I wrote this to rename *.jpeg and *.nef files…. Uses the tool exiftool
which is easily installed through your distribution's package manager.
Impressive BASH-fu, but if you've got exiftool
installed, you can just use something like:
exiftool -d %y-%m-%d_%H%:M%:S%%c.%%e "-FileName<CreateDate" [filename]
.
See: www.reddit.com/r/linuxquestions/comments/2yiked/i_want_to_batch_extract_the_exif_datetime_from_10.
From what I see, there should be nothing stopping you. Reading through a description of the CRW format and CR2 format there doesn't seem to be any kind of signature or authentication and the image data itself is just TIFF.
That said, it's usually possible to detect a fake because the sensors themselves have particular subtle characteristics that can result in an edited image not possibly being produced by that sensor.
As to why nobody has done it, it's likely because nobody wants to. Other than faking or manipulating a photo deliberately for fraudulent purposes, I can't think of a single reason why a photographer would want to modify a RAW and even if you are faking an image, it's unlikely to pass given the above.
Well you can optimize one image and check later in Preview about metadata.
If you're paranoid you also can use this ExifTool that definitely remove metadata. But it's command line app.
Exiftool does it. For free.
http://www.sno.phy.queensu.ca/~phil/exiftool/geotag.html
And there are many free Androïd apps that record your GPS tracks.
If you're comfortable with the command line, check out Phil Harvey's ExifTool. It will give you details about the image as well as reading all the metadata. Flickr uses it to read the metadata on uploaded images.
Went and exported a shot from lastnight with all metadata in LR. Nothing showed up in CameraShutterCount.com, didn't try the first one as it didn't list the D7100 as supported. I found this ExifTool by Phil Harvey, however: http://www.sno.phy.queensu.ca/~phil/exiftool/
Drag the image to the command line .exe once it's extracted from the Zip file (on windows of course) and look for Image Number.
There are many ways to geotag photos on Linux. You can use digiKam's excellent geotagging capabilities, or you can opt for a dedicated application like Geotag. You can also use ExifTool to geotag photos from the command line (see Easy Geotagging with ExifTool for more info).
EXIF data is stored in the binary image file itself. Some cameras have options that allow you to choose whether it is stored, particularly for the GPS data since it has privacy implications.
There are lots of programs that will let you view/edit the information stored in your files. I, personally, like EXIFTool because it is powerful, but it may be difficult to use for somebody unfamiliar with the EXIF format. PhotoME is also a application to edit EXIF data.
There is a lot of data in the EXIF.
If customers are reporting faults, they can send in photos and the engineers can see if it is a manufacturing run problem, a firmware problem, user problem etc.
Another scenario. A wedding photographer and her assistant photographer have the same camera and same lens, if all the photos are in the same directory and you want to sort them by camera (and therefore photographer) you can use the serial number.
A command-line tool (e.g. exiftool or ImageMagick) is probably the best solution, because:
adjustment means calibrating the lens to the camera.
DSLR's use a separate sensor to focus the lens. In a perfect lens, the focus sensor and the image sensor are aligned so that when the focus sensor says it's focused, the image sensor is also focused. However, the realities of the physical world and manufacture mean that there is a certain range of tolerance. Some lenses and cameras which are all "just fine" can simply not work well together, and that's what the focus adjustment is there to fix.
Setting that focus adjustment is a pretty involved process, and if the guy is bitching about the camera 'not being as good', he's definitely not the kind of person who would be willing or able to solve a focus adjustment problem.
Most cameras do include serial numbers in the EXIF data of the image, however, not all of them do. This program, http://www.sno.phy.queensu.ca/~phil/exiftool/ can show you all the metadata in a jpeg, so if the serial is there, it'll show it.
To be honest I really doubt he's lying about which camera the image is being taken on. He's probably just using a crappy lens, taking a crappy snapshot in crappy light, zooming to 100%, and then wondering why he's not seeing some kind of magic on the screen.
The problem you may end up with is that there is absolutely nothing wrong with the camera, it's just that he's unreasonable, and it may end up being escalated to an ebay issue, and you're going to have to hope that ebay will realize that if the camera is taking photos, it's not broken.
I think you're just gonna have to cross your fingers and hope that he doesn't force the escalation, and if he does that ebay doesn't decide to bone you.
Best way I know is to use exiftool to see what the white balance was set at. Flickr also has a display of the exif data.
I just looked at your Flickr page and the white balance was set to auto.
It's not like it hasn't been done. See this Nikon emulator.
Though if I were actually going to do this in real life, I would probably just use something like ExifTool. Since it can extract metadata, it should be possible to:
If you're comfortable with the command line, ExifTool has some very powerful sorting abilities. You could use something like this command:
ExifTool -d "C:\Path\To\Target\%Y\%m" "-directory<$DateTimeOriginal" DIR
And it would move everything in DIR into separate directories based upon the year and month.
If you're working with images, <code>exiftool</code> can be useful for bulk renaming. It lacks the UI you want, but I mention it because it can rename (and reorganize) based on embedded metadata, such as creation date, which is gnifty.
I use exiftool, to read exif data from images. Many times it will include gps location of where image was taken.
Keep in mind that imgur strips that data out of the images, so you will have to save it to your hard drive directly from the phone, through email, Dropbox, etc.
http://www.sno.phy.queensu.ca/~phil/exiftool/
I'm sure there are also other tools that read exif data that do no require the terminal.
It's possible through the command line using ExifTool. Here's a similar question on StackExchange. Since you said you already added the Date, all you would need to do is run the the second command. But you would need to figure out what is the actual date tag you set.
If you decide to go this route and need more help, let me know.
I believe imagemagick can batch process exif data including gps, but I've never tried it.
Edit: Also found this https://github.com/notfrancois/GPicSync
Edit2: And this http://www.sno.phy.queensu.ca/~phil/exiftool/geotag.html <--- this might be your best option
>Is there a tool that already exists that does what I'm looking for?
Maybe.
There's a pretty gnifty utility available for many distros called “exiftool
”. It's (horrifying!) homepage is at: www.sno.phy.queensu.ca/~phil/exiftool/index.html.
More important/useful is this page: Writing "FileName" and "Directory" tags. I've been fiddling with it, and it works. The examples are probably going to need to be tweaked a little to work on your particular system.
I got this to do something useful:
exiftool -d %y%m%d_%H%M%S%%c.%%e "-FileName<CreateDate" [filename]
That renamed files to:
080110_203534.jpg 110614_095743.jpg 110614_0957431.jpg
The strings are the concatenated year, month, day and hour, minute, second of the creation timestamp. The interesting part is the "1" added onto the duplicate. That's apparently what the “%%c
” does.
Assuming that the current filenames are meaningless, you can do that. If you want to retain the filenames, there are examples for assigning files into a directory tree by year/month/day.
You can use find
to iterate over a bunch of files, or apparently exiftool
will take a directory name as input and automagically operate on all the files in that directory.
So, it seems like exiftool
is probably the program you want. The adventure is going to be in figuring out how to work it. I recommend that you MAKE BACKUPS OF ALL YOUR FILES, then play around with it.
Photos will have EXIF data. This is additional metadata about the image, what camera took it, sometimes where it was taken.
Here's the Wikipedia for that:
http://en.wikipedia.org/wiki/Exchangeable_image_file_format
You can look up exiftool, or try something else, but the link to that is here:
http://www.sno.phy.queensu.ca/~phil/exiftool/exiftool_pod.html
I would try adding something simple, and see if just adding any exif data is enough. Start by outputting something from an image that you know works, so you have an idea what it normally looks like.
Then try adding something reasonable to your image and see if it behaves the way you expect.
Get ready to learn a bit if this is all new to you.
To remove all metadata:
exiftool -all= *.jpg
Or, to only remove GPS data:
exiftool -gpslatitude= -gpslongitude= *.jpg
Multiple date fields may exist. If clearing all metadata is not an option, check the exiftool manual for the specific parameters.
Yes, I now see exactly what you mean. Those dates are the Created, Modified, and Accessed attributes that your operating system saves with every file, not just pictures. These timestamps can change with filesystem operations, and say something about the file itself, not necessarily about when a picture contained inside the file was taken.
Inside most jpeg files is an additional set of metadata, called Exif. This contains the capture time of an image along with the settings of the camera, and loads of other stuff.
Ideally, your image browser should support sorting by Exif tag "DateTimeOriginal". You mentioned trying out Lightroom in another comment, this program sorts by this tag by default.
If your image don't contain the date inside the Exif data, and all you have is the date recorded in the filename, the long term solution is to programmatically extract the correct date from the filename and insert it into the Exif data. This can be done in a Unix oneliner calling Unix tools like find
, sed
, and exiftool
, or in some scripting language. I don't know of any graphical applications that can do this. Lightroom, most certainly, cannot.
As I mentioned, I'm still using v3.6, which I don't think is available anymore, so most of what I mention will be based upon that.
Imatch has pretty powerful tagging (categories in the program) ability. They can be directly created by you in a hierarchy of your design or they can be data driven based upon metadata or other categories. It handles large databases pretty well. My largest db currently has over 350k images, 9,600 categories, and it still performs well. It has powerful search abilities. It can handle just about any image format you throw at it, including old IFF images from my Amiga days. It has pretty strong metadata editing ability.
The cons:
* For your situation, there isn't any facial recognition ability. The version I use, I can search on the metadata if it's in the file. The newer version has better ability to recognize the tags in the file, I think.
* The price. It's expensive. I paid about $60 many years ago for the first version I used, but the new version is $110.
One additional point about the new version. For metadata, it uses Phil Harvey's ExifTool. This means that it has very powerful abilities with regards to metadata. It won't screw stuff up, it can read even obscure stuff. But it is also a performance hit, as ExifTool is a bit slow. It takes time to read in metadata, so it's done as a background process.
While it's nice to have a Python package, I'd recommend the Perl-based Exiftool. It's very popular, works well, and is used in a number of third-party applications and scripts.
> I've found Exiftool which is a command line software for modifying exif data but I couldn't figure out if I can use it to create eg. a CSV file where there's one column of the source file name and another contains the time the photo is taken and a third empty with the keywords.
Reading the exiftool documentation might help: That's exactly the feature the -csv flag provides.
exiftool -CreateDate -Keywords -csv FILENAMES/DIRECTORY
Just make sure you select the right tags (JPEG,IPTC,XMP,whatever). JPEGs don't have a Keywords fields, just a Comment. IPTC has Keywords, for example.
HINT: You can reimport (modify files accordingly) a csv file with -csv=FILE.csv BUT READ THE DOCUMENTATION BEFORE!
Okay, here is my exiftool batch file:
> exiftool.exe -exif:FocalLength=35 -exif:FocalLengthIn35mmFormat=35 -exif:FNumber=2.8 -exif:SubjectDistance=10.5 *.jpg
What it does: FocalLength is your focal length, in mm. FocalLengthIn35mmFormat is the equivalent focal length in 35mm format- if you have a crop factor it should be calculable from these two numbers (FocalLengthIn35mmFormat/FocalLength). FNumber is your F stop, and is used to calculate your APEX Aperture Value (2*Log[FNumber] in base 2). SubjectDistance is distance to your focal plane, in meters.
I haven't looked at the exact same commands on Windows, however here are the Windows versions of the tools used in the post. If I get some time I'll test the Windows tools and update the post for Win users.
http://www.sno.phy.queensu.ca/~phil/exiftool/ https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ https://sourceforge.net/projects/qpdf/
I don't think there is EXIF data in movies...never heard of that. Either way, vimeo uses a conversion to flash format and compresses the video - so I think it's unlikely there would be any data left.
Either way, you can use a program like mediainfo to check the file to see if any XMP or EXIF data is present initially...
I'd then try and download the vimeo file using some program and check it again.......other than that - I would assume vimeo videos contain none of that even if it was present initially.
If you need to remove it - my program in the [wiki](/r/DankNation/wiki/review-template) only works for images; but I know EXIFTool can read and write all types. Might be worth checking out. I've added it to the wiki, too, [here](/r/DankNation/wiki/review-template#wiki_non-windows)
I have a simple import-photos script for my camera (Canon 6D) that:
YYYY/YY-MM-DD/YYMMDD-{camera serial no.}-{4 digit auto-incrementing number}.{extension}
It's largely based on exiftool, which is an amazing piece of software and came highly recommended. I also only shoot in RAW, so I filter the files to only sort by CR2
format (Canon RAW)
Caveats: It doesn't directly access the camera, in order to do that, I'd probably have to pull in another dependency like gphoto. I currently just copy the DCIM folder from my camera to my computer & let the script run wild on that folder. My bash scripting isn't the best, so there's definitely better ways to implement a similar script.
To clarify, you want to replace spaces in your filenames with underscores "_", correct? (Underscores are used for formatting on reddit, so you need to put a backslash in front of them "\_").
If you're comfortable with the command line, Exiftool can do this quickly in one shot with this command (assuming it's all jpegs or other image files):
exiftool "-filename<${filename;s/ /_/g}" DIR
Add -r
to recurse into subdirectories.
If there are files other than jpgs or image files, the command can be altered to accommodate them.
You might be able to find that info and append it to the filename using exiftool
; see: redd.it/2yiked and www.sno.phy.queensu.ca/~phil/exiftool.
Did you use an undelete utility to recover the file? If you haven't tried that it might still be an option provided there haven't been any writes to the file system. That is me being hopeful that 'quick format' was used to unlink files which might make them recoverable (I could be wrong).
Vlc was a good effort and what I would have suggested. Bummer.
If you sleep on piles of money there may be some professional data recovery services you could explore. It's black magic to me.
Can you install exiftool on your operating system? It's a little command line utility that can output info about media (not a player). If you are using new codecs maybe it's not great, but flv/mov containers have been around for ages. I use exiftool on Linux, looks like you can get a standalone windows version here: http://www.sno.phy.queensu.ca/~phil/exiftool/
Exiftool is a Hail Mary pass. Godspeed sir! :)
Edit: are the file sizes of the videos look like they are appropriately large as videos tend to be (compared to jpg image files)? Hopefully you aren't being trolled by a 0 byte recovered file.
Edit2: try some transcoding with ffmpeg or handbreak. Try and extract each frame to its own file and recombine the image sequence, try extracting the audio but not video (and vice versa), or find some 'skip errors' kind of option if they exist and just see if anything can be recovered (warning: might not exist).
I use exiftool to get metadata from pretty much any filetype. It's a pretty amazing program.
It's not PHP, but it should be in most Linux repos, and covers every common format with a heap of useful metadata fields. Use the -j switch to have it output in JSON so you can parse it into a PHP array.
Okay, here's the tool: http://www.sno.phy.queensu.ca/~phil/exiftool/
Here's the script:
cd C:\Data\Photography\Scans\35mm
exiftool -make="Leica" -model="Leica M6" -focallength=35 -lens="Voigtlander 35mm f1.4 Nokton Classic S.C." -overwrite_original *.jpg
This can be typed in manually, but it's easier to type it once in to notepad and then save it with a .bat extension. This will then run the script whenever you double-click it. I have various versions saved for the various camera/lens combos I use.
This updates the proper exif data, so will be picked up automatically via Flickr etc. e.g. https://www.flickr.com/photos/mr_will/21505451464/
I used something called "exiftool" on my linux box because I personally like to muck around with my mac as little as possible, but maybe I'll install it on mac one day I'm away from my linux box; I used it to remove GPS data; however, it can change data instead of wiping it out. The use of wildcards (like *), allows changes to entire directories via one command. You may find a better guide than this one, but I doubt it. I suspect this is the best exif editor out there, but I didn't google more than an hour or so.
I had a similar issue, it looked to me that OSX Photos did not really change the time in the EXIF data of the photo (but hey, perhaps I was doing it wrong).
I did a search on reddit, found this thread and used which was suggested there:
http://www.sno.phy.queensu.ca/~phil/exiftool/
I actually used the command line tool myself as I wrote a little script, but there looks to be a version with a GUI.
As a side note, although may not very convenient, you can adjust the date/time on individual photos directly in your library online. Select a photo, click the Info icon and then click the date.
Good luck!
> Change the filename to this: exiftool(-k -a -u -g1 -w xml).exe
Holy cow. I did not know it supported that. but here it is in the manual - thanks for this!
While not a solution to your problem, whenever I import pictures to my machine, I run a script that makes use of exiftool (http://www.sno.phy.queensu.ca/~phil/exiftool/) to rename the file to a timestamp based on the file creation date.
exiftool.exe "-FileName<CreateDate" -d "bbyboi_%%Y%%m%%d_%%H%%M%%S_%%%%f.CR2" *.CR2
(cr2 for canon raw files, but you could use mov, jpg, jpeg, orf, etc)
This renames a file named img_1234.cr2 to bbyboy_20151119_120111_img_1234.cr2.
A lot of information can often be gained from all sorts of data stored in headers among other places. Sometimes something like imageMagick and/or http://www.sno.phy.queensu.ca/~phil/exiftool/ can grab info that appears otherwise unavailable or scrubbed.
MP3's contain ID3 metadata where the cover images are stored. You can extract it using ExifTool (easily available through the libimage-exiftool-perl
linux package which provides the exiftool
command). This post explains how to use it to extract images from mp3's.
The following worked for me:
sudo apt-get install libimage-exiftool-perl exiftool -picture -b MyTotallyLegitematelyDownloaded.mp3 > cover.jpg
Photoshop does not include much metadata in it's exported jpegs, and in Light room I include all metadata. Even stripping all metadata from the Lightroom jpeg, using exiftool, only reduced a 17.8Mb file by 35Kb. The same file outputted from Photoshop is only 7.2Mb.
I am making a big assumption that 100% quality in Photoshop is equivalent to 100% quality in Lightroom but have not found any reference to make a direct comparison between the two but even when comparing pixel-by-pixel on screen I just can't see any difference between the 2 outputs. And it's the same behavior for any tiff file I pick so it's not content-specific.
Exiftool might be for you: http://www.sno.phy.queensu.ca/~phil/exiftool/
You could try making a bash script with it. Then perhaps use Automator to set it as a schedule?
If you're using TAILS it comes with a tool called MAT which can also be installed if you run Linux.
If not, you can use this command-line tool:
http://www.sno.phy.queensu.ca/~phil/exiftool/
To use: exiftool -all= yourfile.jpg
I just did a quick test with exif metadata tool. It'll pull metadata from doc / docx, and other Microsoft Office formats, as well. Well, it'll pull metadata from almost anything, then you could pipe out and handle removing other file types on the back end. There's also some conditional processing options as well.
The tag names data here indicates there might be many places the serial number is stored, especially under the Canon-specific tags. But I don't know if those tag descriptions are up to date, not all the tags in my photos appear in that list and vice versa, and I am not even confident that the Exif viewers I'm using are actually displaying all the Exif data. So far ExifPro and Jeffrey's viewer appear to be the most complete.
I have no idea how to interpret the data next to some of these tags either.
Is it the EXIF timestamp you want changed or the filesystem timestamp?
If you're comfortable with the command line this is a great tool for batch EXIF edits - http://www.sno.phy.queensu.ca/~phil/exiftool/
If you're comfortable with the command line, you could take a look at ExifTool. It's very powerful and flexible, but could definitely sort things by XMP:Subject, thought that could get complicated depending upon how you setup your keywords.
Adobe created XMP:HierarchicalSubject for keeping a hierarchy for keywords which has become the defacto standard. There are a fair number of programs which will read and use this, Lightroom being one of the most popular.
While Picasa has some good abilities (I use it for it's facial recognition), it's a pretty poor DAM (Digital Asset Management). Wikipedia has a decent list to check out.
TIFF can hold EXIF, XMP, and EXIF metadata. In fact, the main image is stored in IFD0 of the EXIF (see ExifTool FAQ 7).
The process of converting might not copy metadata, depending upon the program.
If you're comfortable with the command line, you can use ExifTool to fix this.
The command would be:
ExifTool "-FileCreateDate<FileModifyDate" FILE/DIRECTORY
Replace "FILE/DIRECTORY" with the path to the file or directory you wish to process.
http://www.sno.phy.queensu.ca/~phil/exiftool/
Exiftool is cross platform and allows you to rename based on the exif date (or any other exif info) rather than the file timestamp. It can also do tons of other useful stuff with the exif data.
ExifTool is the best tool for dealing with image metadata, but it's a command line program and can be complicated.
Also, as cyncicle said, the metadata my no longer be in the image. For example, Imgur clears out the metadata of any image posted.
If you have to do it on your Mac (which I did because I haven't set up iCloud for Photos), the easiest (or cheapest) way is probably to export the photos and use ExifTool, which runs on the command line but is very simple to use and free.
For example, to change all photos in the current directory to a particular longitude and latitude, this is the command to use: exiftool -exif:gpslatitude="50 55 58.3" -exif:gpslatituderef=N -exif:gpslongitude="1 23 34.1" -exif:gpslongituderef=W *.jpg
To get co-ordinates in Google Maps, right-click on the location and press "What's Here". Then copy and paste the co-ordinates it gives you into the search box to get degrees north and west (and therefore the right format for the command above).
Exiftool and FOCA is another good tool but their site is down and I don't know if it is still in dev or where a safe download can be found.
One would also want to look into google dorking as that is another method of finding relevant information for doing correlation work.
Have you tried iPhoto (or the new "Photos" app)? You can add text to images with that...not sure about "dropping files" and if you can do that with services or not though. You could select multiple files in iPhoto and add keywords, I'm pretty sure.
Or one of these maybe (haven't tried them...):
https://itunes.apple.com/us/app/photo-meta-edit/id553760117?mt=12
ExifTool is fantastic for this. It's a command line tool and takes a bit of study to figure out, but is very well documented and works great.
For example, here is how I rename my photos to have initials followed by date and time like ABC_2015_02_12_09_08_01.jpg
exiftool -d ABC_%Y_%m_%d_%H_%M%S_%%-c.%%e "-filename<CreateDate" *.JPG
No need for any batch or scripting, ExifTool as mentioned by /u/masheduppotato will do the whole thing by itself. The command would look something like this.
Exiftool -r -d "D:\path\to\target\directory\%Y" "-Directory<$DateTimeOriginal" c:\SourceDirectory
-r
is the recursion option, remove if you don't need it. Files without a DateTimeOriginal exif tag will not be moved.
This is assuming that they are digital camera images, which is why I used the DateTimeOriginal tag, since (almost?) all digital cameras will set that. If they're not, check out the ExifTool docs for what tag you might want to use.
Of course, test the command out on a test file before running it on the main directory of photos you want to move.
Further reading
Exiftool's Filename and directory tags
What language do you want to do this in? There are a lot of ways to do this, you will want to use a utility called exiftool:
http://www.sno.phy.queensu.ca/~phil/exiftool/
I am unsure of how easily this can be performed utilizing windows batch scripting, but probably utilizing power shell you can put together something to find an image, check to see it's creation date utilizing exiftool and then move it to where ever it is you want.
Here is a resource for powershell:
It wont be easy, but I think you'll enjoy putting a little elbow grease into this project to get it the way you want.
To rename photos based on the date they were taken I normally use an EXIFTool script.
@Echo Off SETLOCAL ENABLEDELAYEDEXPANSION SET SCRIPTDIR=%~dp0 SET SCRIPTDIR=%SCRIPTDIR:~0,-1%
FOR %%i IN (*.jpg) DO "%SCRIPTDIR%\EXIFTool.exe" -d "%%Y-%%m-%%d_%%H-%%M-%%S.jpg" "-FileName<DateTimeOriginal" "%%i"
The photos will be named like this: 2015-01-24_13-00-00.jpg
Exiftool is my favorite. To remove exif data from an image, type the following at the command line:
exiftool -all= /path/to/image.jpg
Or if you have a directory of images you want to remove exif data from:
exiftool -all= /path/to/*.jpg
Edit: If you look at the docs, there's a way to strip all data except copyright.
You might try ExifTool. While it's main function is reading and editing metadata for a variety of files, it also has pretty good renaming ability. This command will add extensions to any file type it can identify:
exiftool "-filename<$filename.$filetype" -ext * <FILE/DIR>
The camera reads the lens' ID if its and A or newer lens, and puts the numerical value in the EXIF field. The post processing or viewing utility translates that numerical value into an human viewable string and displays it. If the post processing or viewing utility does not have an identity for the numerical value it does nothing with it. Try updating your post processing software.
You can try ExifTool. Download the windows executable, extract it on to the desktop and drop the video on it. A window will open up a ton of details about the file.
Why not just use one of the wrappers? You would get your properties already correctly formatted and in a reliable way. No string funny business necessary.
I don't know about a batch script, but you can do this with ExifTool. While it's technically a program to work with metadata in images, it can adjust the timestamps you mention.
The command line I came up that seems to work is this:
exiftool -tagsFromfile C:\path\to\files\%f.mov -FileAccessDate -FileCreateDate -FileModifyDate -ext mp4 C:\Destination\Directory
Under Windows, it's throwing me an error that says "Warning: Sorry, fileaccessdate is not writable" but it still seems to be adjusting the File Access Date.
yeah...so "Ducky" : http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/APP12.html#Ducky and EXIF it's just " a standard that specifies the formats for images, sound, and ancillary tags used by digital cameras (including smartphones), scanners and other systems handling image and sound files recorded by digital cameras " http://en.wikipedia.org/wiki/Exchangeable_image_file_format
So I think it's nothing finaly :(
The last time I was searching I didn't find anything that would quite do what I wanted, then I found exiftool which worked great. You shouldn't be afraid of the command line, though there might be some sort of GUIs for it.
Also, if it helps, I have been using Bibble for a little while and find that it has some pretty nice metadata editing features as well. Though it's not as good for managing copyright on a library of thousands of images as exiftool is.
Image::ExifTool is a good (Perl) library to extract metadata from almost anything.
It comes with a command-line tool (with computer-readable output as an option) if you don't want to write Perl code :)