LensChanger Application

LensChanger is a software application that allows you to change lenses registered within xmp files (sidecar files for Raws), jpeg files, and tiff files through exif metadata.

LensChanger has been designed as a standalone, lightweight, portable and very easy to use application. It can work with whatever software you are using for xmp sidecar files with raw files, like LightRoom, ApertureOne, etc… So, you can keep it on an USB drive and run it with a few clicks to get all your files applied with the correct lenses.

I wrote this application for myself when I switched to a Sony A7R to use with my Canon lenses (Sony A7R for Canon users). A lot of alternative bodies, adapters, lenses etc do not report the right lenses, if any. Therefor, in Lightroom or whatever software you use, you end up with files with incorrect lens data, or different names of the same lens, or no lens at all which can be problematic when sorting files by lens and applying profiles.
Even in Canon bodies, mostly older ones (like 1DsII) report older lens names. For example, 135mm F2 instead of EF135mm f/2L USM. When using the A7R, for same lens, the lens reported is 135.0 mm and also say the 24-70mm F2.8 OSS instead of EF24-70mm f/2.8L II USM.

Here is an example of different names for same lenses in LightRoom, and the exact same EXIF data after LensChanger is run :

As I only have some Windows x64 PCs for my photography and same for my other activity (Computer Generated Images and Animations), I wrote a simple application, designed specifically for this. I talked briefly about it in a previous article, and a few people asked me for a copy of this app and now have used it for several months.

Recently, we got a Mac at work just to test our productions on OS X systems. So I had a look at porting this application on OS X, and after a lot of headaches I finally managed to compile it into an OS X app ! I have polished it up, added error checks here and there, and finally release it for everyone.

LensChanger is fully portable, requires no installation, and can be run without copying any files anywhere onto your system. It even doesn’t touch your raw files, or Lightroom files (like a plugin storing their presets into Lightroom main preferences file, huh!).
Pure stealth … 🙂 Don’t like it ? Just remove the app folder !


I always try to keep things simple and clear, even if things can be complex under the hood. Basically, LensChanger will scan a folder for xmp, jpg and tiff files, read the lens data stored in each file, and compare it with a list of your lenses and change them if necessary. You can also choose to override whatever lens is with a lens of your choice.

Here is schema showing the full UI of LensChanger.

Basically, you can use ‘Rewrite’ after having set a list of lenses to change to and which folder to work on or you can manually select a few files and override a custom lens into them.

With Lightroom, xmp files are not always synced with catalog, so here is how to be sure to not lost anything (of course, LensChanger isn’t related to Lightroom and all Raw editing software using xmp files would benefit from it).

– In Lightroom, select some or all your photographs (library module, Catalog/All Photographs).
– Press ctrl+S : This will ensure all xmp files will be synced with the actual datas in your catalog.

Step2 :
Start LensChanger :
– Set Dir : select the directory where your raws and xmp files are located.
– Check Recursive if you want to update the xmp files into sub-folders.
– Set your lens list according to what you want to change.
– Run ‘Rewrite lenses’ or ‘Override’ and wait for it to finish.

Step3 :
– In Lightroom, select all of the photographs you have updated in library module.
– Right click one and select Metadata/Read Metadata from File.
All your raws files should now display lenses according to what you chose in LensChanger.

Ok, back to LensChanger:

– Set Dir:
This button will open a window so you can indicate the main folder where your files are.

– Rewrite:
The rewrite function allows you to rewrite lenses into the xmp files, jpg files, and tiff files. Just check the correct option. For example, if your folder contains some RAW with their xmps, some jpgs and some tiffs, if you only check ‘xmps’, the LensChanger won’t analyse your jpg or tiff files.
LensChanger won’t change anything apart lens name information. For xmp files, it will of course keep all your develop settings from Lightroom, tags, rating, keywords etc …

– The « ? » button is an help button, which can direct you to this page or display the full version number of LensChanger (for later updates).

– Options:
The recursive option gets LensChanger to also scan  into sub-folders of the main folder you have set  with ‘Set Dir’.
LensChanger will read the lens information in your files, and if you check the ‘Backup’ option, before changing the lens in the file, it will duplicate the ***.xmp into ***_LensChanger.xmp. Note that LensChanger never accesses the raw file.

– Edit lenses:

This button will give you access to your lens list. By default, I’ve included a list of some lenses I work with, as they are reported by my bodies, and how they should be reported. You can of course delete all these and make your own.
On the left, you have the lenses as reported by the camera. This is what LensChanger will look at in your files. If LensChanger finds any of these, it will replace it by the right lens name. For each line, you can click the name fields to modify them, and have also a ‘Del’ button to remove it from the list. At the bottom, an ‘Add lens’ button is present to add a new line to the table. And finally, a ‘Save’ option which should be pretty obvious… Note that closing the list won’t automatically save it !

– Rewrite lenses:

LensChanger will start to analyses files in your folder, check in each file the lens registered, compare it with your lenses list, and change it if necessary. A log window will appear to show you what LensChanger is doing at each step, and finally let you know when it is finished.

Editing of the xmp files is fast, as these files are a few Kb. Editing jpgs and especially tiffs is lot slower, because LensChanger has to load each file to read their metadatas. If you check the backup option, it will also be slower, as it will duplicate these larger files before modify them. The backup of xmp files is also really fast.

– Override:

LensChanger will override any lens in your file to a new lens from your choice. Once override is selected, a popup windows will ask you for the lens to override to. You can select one from your lenses list, or enter a new one.
– If no lens is specified in the xmp, jpg or tiff file, it will specify it.
– For RAW files in folder(s) which have no xmp file (if it was never imported into a RAW editing software yet), it will create a new simple xmp file with the lens data inside. This xmp will be taken by Lightroom when you import the raw file.
Tips: When using Override, it will set it to the first lens from your lens list. You can set your top lens in the list to « 0_Override » / « Your lens » so it is the default, and doesn’t interfere with Rewrite function.
– Manual Set : Lets you select some files manually instead of an entire folder.

Lightroom tips:
For Lightroom lens correction, select the right ‘Make’ in Develop/Lens Corrections. If you have set new name right it should apply the right lens profile. Or select ‘Model’ manually. If you want Lightroom to automatically select this lens for other raws with same lens name, go to ‘Setup’ popup and select ‘Save New Lens Profile Defaults’.


Windows x64 : Just download the zip file, unzip, put folder where you want, and double click LensChanger.exe inside the folder. Then right click on exe file to make a shortcut, put in start menu, task bar etc …

OS X : Just download the zip file, unzip, and put the LensChanger.app into your Application folder or where you want. You can then create an alias on desktop or put it in the dock like any other app. If double clicking the app pop up a message saying this developer isn’t certified, just right click the app, and click ‘open’.


LensChanger Store two files in its own folder:
ini.json file store LensChanger window position and options you set. lensTable.json is your lenses list.
So, if you need to update later to a newer version, copy these files on your desktop, unzip new version in its right place, and just overwrite these files with your previous ones.
– On Windows, it is as simple as copying files in a folder.
– On OSX, you will have to show context menu on the app file and select « Show Package Contents », and find these files in Contents/MacOS.

Change log:

LensChanger v2.23 : 22/04/2015
– New custom algorithm for xmp analyzing and lens changing due to a bug on a few OSX. jpg and tiff can still cause crash on a few OSX systems, in this case the app crash without touching jpg/tiff files.
– Minor enhancements.
– Fixed lens list sorting.
LensChanger v2.2 : 27/02/2015

– Override : New manual selection of files.
– More consistent log.
LensChanger v2.1 : 26/02/2015
– New Override function : Override lens! If LensChanger find a raw file without xmp, it create a very simple xmp file with lens type inside.
– Some improvements in xmp algorithm, should be even faster.
LensChanger v2.0 : 23/02/2015
– First public version!


LensChanger- (12.3Mo)
Tested on Windows 7/SP1 Pro x64

LensChanger- (12.5Mo)
Tested on OS X Yosemite.

Downloads since 23/02/2015: 393
Please, test it on a duplicated folder once to check all works like it should on your OS. This would prevent any unreported bug causing data loss.


This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright holder or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

LensChanger is totally ad free / spyware free and doesn’t ask any license. Development and maintenance of softwares is a really time consuming task. If you like and use LensChanger, you can donate whatever you want to support current and future development.

Make a Donation Button

Publié par

Nicolas Genette

Auteur Photographe

7 réflexions au sujet de « LensChanger Application »

  1. Nicolas, thanks for adding the override function to allow a lens ID to be added when there is nothing. Very useful!

  2. Interesting on both Windows and Mac this would suggest using Qt, Xamarin, or Java. Can you tell us which?

Postez un commentaire