Releases: Tom94/tev
Version 2.5.2
Changes Since Last Release
Bugfixes
- Fixed "All Images" filter in file dialog. (Thanks to @Jebbly.)
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.5.1
Changes Since Last Release
Features
- Support for CICP tags embedded in ICC color profiles (found in the wild as ImageMagick / Discord converts from HDR PNG images; see #351)
- Reintroduced shortcut for toggling LDR clipping mode:
U
Bugfixes
- Fixed crash when loading WEBP images with embedded ICC color profiles
- Fixed incorrect keyboard shortcut tooltips for the LDR button and the image search field
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.5.0
Changes Since Last Release
Features
- Support for loading RAW images from major camera manufacturers. (Sony, Olympus, Leica, etc.)
- Significant speed-ups
- Having hundreds of images open no longer leads to UI stuttering
- Selecting an image for the first time is more responsive on macOS (async texture upload)
- Support for loading TIFF images with double precision data (IEEE 64-bit floating point)
Bugfixes
- Fixed occasional UI flickering on macOS
- Fixed broken ICC color profile handling when loading grayscale images
- Fixed broken ICC color profile handling when loading HEIC or AVIF images with alpha channel
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.4.1
Changes Since Last Release
Minor Features:
- Linux: dragging and dropping files into tev now works via desktop portals, paving the way for future snap / flatpak releases. (Thanks to @bash.)
- Slightly faster image switching performance when switching to an image for the first time.
Bugfixes:
- Fixed regression in loading images with non-default EXIF orientation metadata (only affected UHDR-JPG, PNG, and TIFF).
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.4.0
Changes Since Last Release
Major Features:
- tev now uses about half as much RAM as before, both on the CPU and GPU, by internally representing images at half-precision if the image data had low enough bitwidth to begin with.
Minor Features:
- Support changing system HDR settings while tev is running
- Support JPEG-compressed HEIF images
- Support JPEG-compressed TIFF images with 2-12 bits per pixel (previously was just 8 and 12 bits)
- Support WebP- and deflate-encoded TIFF images
- Support DNG images from iPhone 15 series
- Support native file pickers (via xdg-desktop-portal) without having
zenityinstalled on Linux - Support copy & pasting images without having
xcliporwl-clipinstalled on Linux - Ctrl+F now pre-selects the current search string if present
- Several miscellaneous performance improvements
Bugfixes:
- Fixed incorrect content scale on startup on Windows
- Fixed crash on macOS when loading images larger than 8k in either dimension on a retina screen.
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.3.2
Changes Since Last Release
This release contains bugfixes and minor changes to tev's versioning and release scheme.
Features:
- Added an ARM Linux .appimage to the released binaries
- Adopted SemVer versioning starting with this release
Bugfixes:
- Fixed occasional incorrect brightness when rendering on Wayland (both in SDR and HDR modes)
- Fixed occasional failed compilation due to a race condition when using Ninja
- Fixed flake.nix builds across the board
- Now builds and installs on Linux & Darwin, both x86_64 and aarch64
- Factored package logic out of flake.nix into package.nix
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binaries (.appimage) for Linux: one for x86_64 (tev.appimage) and one for ARM (tev-arm.appimage)
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.3
Changes Since Last Release
HDR rendering on all operating systems
tev can now render HDR on Windows and Linux!
Together with tev's existing support for HDR on macOS (called EDR by Apple), this finally completes the trifecta of operating systems.
Windows' HDR support was surprisingly straightforward (similar to macOS) while Linux was quite a rabbit hole. tev now runs natively in Wayland and it also implements most of Wayland's recently merged color management protocol which is the closest thing Linux currently has to an HDR standard. Wayland compositors that already support HDR via this protocol include Gnome, KDE, and Hyprland. More are sure to follow soon.
I'm also taking this chance to rebrand tev from being "The EXR viewer" to being "The EDR viewer", borrowing Apple's HDR moniker to keep the acronym intact. ;)
Other new features
- APNG (animated PNG) images are now supported
- Animated WEBP images with blended frames are now supported
- tev no longer auto-maximizes when images are passed via the command line. Use
--maximizeif you want this behavior. There are multiple reasons for this change:- Maximization does not play well with certain window managers -- particularly tiled ones -- too many for tev to automatically detect. It is better for maximization to be opt-in for the sake of those systems.
- Internal consistency: tev does not maximize when images are input via drag and drop or via other means. tev instead automatically resizes to the first image that it loads. This behavior is now consistent across all ways to open tev.
- External consistency: there pretty much no other applications that auto-maximize on startup.
Bugfixes
- Fixed tev being unresizeable when auto-resizing to full screen on Windows.
- Fixed broken keyboard shortcuts when in Gamma mode.
- Fixed crash when opening .dds files.
- Inverted h/j/k/l controls to match other programs with h/j/k/l based scrolling.
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binary (.appimage) for x64 Linux systems
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.2
Changes Since Last Release
New features
- PNG now supports HDR (and cICP-defined color spaces in general)
- See the new PNG 3.0 spec
- JPEG XL, AVIF, and HEIC images now also support CICP color information
- This is an alternative mechanism for HDR besides tev's existing support for floating point pixel values or gainmaps
- Sample .jxl and .avif images involving CICP can be found here: https://people.csail.mit.edu/ericchan/hdr/
- You can now disable channel grouping by passing
--no-channel-groupingto tev - The Python IPC client has been moved into its own repository https://github.com/tom94/tevclient
- It also comes with a few small improvements like full typing and an async API
Bugfixes
- Fixed wrong interpretation of the gAMA chunk when loading PNG. (Rarely relevant.)
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binary (.appimage) for x64 Linux systems
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.1
Changes Since Last Release
This is a hotfix release that fixes a regression in IPC networking code causing tev to crash.
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS: one for ARM (tev.dmg) and one for Intel (tev-intel.dmg)
- Pre-built binary (.appimage) for x64 Linux systems
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.
Version 2.0
Changes Since Last Release
Major changes
-
tev now supports many new image formats:
- Ultra HDR JPEG (e.g. pictures from newer Android phones)
- JPEG XL (lossy and lossless, LDR and HDR; shoutout to @zalo for adding initial support)
- AVIF
- WEBP
- TIFF (including partial support for DNG raw images)
- HEIC w/ HDR gainmaps (e.g. pictures from iPhones)
- Note: HEIC support is disabled by default. You must build tev yourself with the
TEV_SUPPORT_HEICCMake option. Check patent laws in your jurisdiction before enabling this feature.
- Note: HEIC support is disabled by default. You must build tev yourself with the
-
tev now also reads color space metadata of all image formats it supports and converts images to sRGB before displaying them. (ICC color profile if available. Otherwise, matmul conversion based on primaries, if present.)
- My motivation for adding general color space support and all the above formats was to be able to view photo collections from various phones and cameras in HDR, in a unified colorspace in all operating systems. This is, admittedly, a bit of a departure from tev being a research-oriented viewer, but I don't think it does any harm. However, one consequence is the next major change:
-
tev is now licensed under GPLv3 to stay compatible with all its new dependencies
- This backwards-incompatible license change is the reason for the major version bump to 2.0
- tev versions 1.29 and below remain licensed under BSD 3-clause
- Commits
4d23e11b39f698f44d3e4304c8b65ed72ff0192aand earlier also remain licensed under BSD 3-clause
-
What does this mean for users?
- Nothing changes. You can keep using tev for whatever you like.
-
What does this mean for developers?
- If you use tev code in your own project, and you release your project anywhere (whether in binary form or source code), then you must also release the source of your project under the GPLv3 license (with attributions to tev in the relevant places).
- However, if you don't release your project anywhere, you are free to keep using tev source code in it without any requirements.
- If you use tev as a tool to help develop your project without basing any of your code on tev's code, that's also fine. Although a shoutout is, of course, always appreciated.
Minor changes
- Added a window for viewing image metadata (shoutout to @Wagyx for the initial implementation)
- Displays EXIF metadata if present
- Displays EXR header contents if present
- Added a tab in the help window that shows IPC networking information (just localhost by default)
- Useful when wrangling multiple instances of tev, each with their own hostname/port
- Added dithering to hide banding when viewing HDR images on LDR displays
- Added a button to auto-fit images to the screen upon selection
- Useful when browsing a photo collection where full-screen is preferred over a 1:1 pixel correspondence to the monitor
- The h, j, k, l keys translate the image left, down, up, and right, respectively.
- Various new CLI options
- Hide GUI on startup
- Control playback on startup
- Gainmap control
- Regex support in channel selector
- Min/mag filter control (e.g. to disable mipmapping)
- Square icon for macOS (thanks to @zacnoo )
Bugfixes
- Too many to list. If interested in details, please check the commits in between tags
v1.29andv2.0
Released Files
- Pre-built installer (.msi) and portable binary (.exe) for Microsoft Windows
- Pre-built installers (.dmg) for macOS (one for ARM and one for Intel)
- Pre-built binary (.appimage) for x64 Linux systems
- Source code of tev excluding submodules. If you would like to build tev from source, please follow the build instructions in the project readme instead.