Coder Social home page Coder Social logo

raw-viewer's Introduction

๐Ÿ“ธ raw viewer

github actions CI github-version.svg github-downloads.svg

RAW Viewer is a desktop app which allows you to quickly cull your photos. You can view, rate, manage, and delete all your RAW photos straight out of camera without requiring conversion or importing, allowing you to get to editing your best photos as fast as possible. This application focuses on ease of use and speed, removing all the lag your culling workflow.

All ratings are saved directly to the RAW file, so when you are done culling, you can import the remaining photos into Lightroom (or any other software) and all the ratings will show up.

Maybe you are under the impression that viewing RAW photos in your favorite program is already fast? Or maybe you've been told that RAW photos are really hard to work with and slow is just the nature of RAW photos? Well, RAW viewer is here to tell you that all of that is a lie and culling your photos can be fast!

Download

You can get the latest Windows and MacOS versions here: https://github.com/catdad/raw-viewer/releases/latest

Windows

This is a self-contained portable app. Unzip the download and run Raw Viewer.exe.

If you no longer wish to use this app, you can just delete the folder where you unzipped it -- but don't worry, all your photos as well as their ratings will stay right where you left them.

MacOS

This is a self-contained portable app. Unzip the download and run Raw Viewer.

The first time you run it, it will fail to verify the app and show a message saying "Raw Viewer can't be opened because it is from an unidentified developer". If this happens, open System Preferences > Security & Privacy. There, you will see a message at the bottom saying "Raw Viewer was blocked from opening because it is not from an identified developer" with an "Open Anyway" button next to it. Click that button and now you will able to run the app. You will only need to do this once on your computer.

If you are a developer and know more about how to sign the application or wish to sponsor this effort, please let me know at issue #191.

If you no longer wish to use this app, you can just delete the folder where you unzipped it -- but don't worry, all your photos as well as their ratings will stay right where you left them.

Linux

Linux support is not quite there yet. If you would like to help, please see this issue.

raw-viewer's People

Contributors

catdad avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

raw-viewer's Issues

resolve issues with quick scrolling through filmstrip

If you quickly scroll to the end of a long list, and scroll back (when there are multiple mouse wheel turns involved), once you get to the end, you will see that the visible thumbnails are discarded and reloaded a few times, likely executing existing resolveVisible calls. Make this experience better.

allow selecting multiple photos

  • select individual with Ctrl + click
  • select all photos in range with Shift + click
  • select all photos filtered in filmstrip using Ctrl + A
  • delete all selected
  • rate all selected

zoom position is not preserved consistently

Most notably, it is completely broken when navigating between vertical photos. But also, when navigating between horizontal photos, sometimes the position is not preserved.

try to parse jpeg out manually

JpgFromRawLength: 8557491
JpgFromRawStart: 422630

This sure looks like the place where the jpeg is embedded within the raw file, right?

what is this error?

This one made the whole window go white... had to restart:

[13292:0909/131036.097:ERROR:texture_manager.cc(3369)] [.RenderWorker-0000011636F0EAC0.GpuRasterization]GL ERROR :GL_OUT_OF_MEMORY : glTexImage2D:
[13292:0909/131036.812:ERROR:gles2_cmd_decoder.cc(2523)] [.RenderWorker-0000011636F0EAC0.GpuRasterization]GL ERROR :GL_OUT_OF_MEMORY : BackFramebuffer::Destroy: <- error from previous GL command

fix MaxListenersExceededWarning

(node:15524) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added. Use emitter.setMaxListeners() to increase limit
MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added. Use emitter.setMaxListeners() to increase limit
    at _addListener (events.js:280:19)
    at Writable.addListener (events.js:297:10)
    at Writable.once (events.js:341:8)
    at Promise (D:\Git\raw-viewer\node_modules\node-exiftool\src\lib.js:110:19)
    at new Promise (<anonymous>)
    at Object.executeCommand (D:\Git\raw-viewer\node_modules\node-exiftool\src\lib.js:106:25)
    at ExiftoolProcess._executeCommand (D:\Git\raw-viewer\node_modules\node-exiftool\src\index.js:133:20)
    at ExiftoolProcess.readMetadata (D:\Git\raw-viewer\node_modules\node-exiftool\src\index.js:150:21)
    at execWithHooks (D:\Git\raw-viewer\lib\exiftool.js:27:30)
    at exec (D:\Git\raw-viewer\lib\exiftool.js:51:10)
(node:15524) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added. Use emitter.setMaxListeners() to increase limit
MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added. Use emitter.setMaxListeners() to increase limit
    at _addListener (events.js:280:19)
    at Writable.addListener (events.js:297:10)
    at Writable.once (events.js:341:8)
    at Promise (D:\Git\raw-viewer\node_modules\node-exiftool\src\lib.js:117:19)
    at new Promise (<anonymous>)
    at Object.executeCommand (D:\Git\raw-viewer\node_modules\node-exiftool\src\lib.js:113:24)
    at ExiftoolProcess._executeCommand (D:\Git\raw-viewer\node_modules\node-exiftool\src\index.js:133:20)
    at ExiftoolProcess.readMetadata (D:\Git\raw-viewer\node_modules\node-exiftool\src\index.js:150:21)
    at execWithHooks (D:\Git\raw-viewer\lib\exiftool.js:27:30)
    at exec (D:\Git\raw-viewer\lib\exiftool.js:51:10)

Put this in the main process (that's where it's coming from):

process.on('warning', (w) => {
  console.log(w.stack);
});

base layout

drag folder into view and show all images

  • filmstrip on the bottom (progressively load thumbs)
  • main view
  • info view on the right side

auto-rotate in main view

Filename: raw_buf
Timestamp: Sat Jul 28 17:29:48 2018
Camera: Canon EOS Rebel SL2
DNG Version: 1.4.0.0
ISO speed: 6400
Shutter: 1/80.0 sec
Aperture: f/5.6
Focal length: 250.0 mm
Embedded ICC profile: no
Number of raw images: 1
Thumb size:  6000 x 4000
Full size:   6288 x 4056
Image size:  6024 x 4020
Output size: 4020 x 6024
Raw colors: 3
Filter pattern: RG/GB
Daylight multipliers: 1.864162 0.931875 1.370170
Camera multipliers: 1.759767 1.000000 2.322265 0.000000

zoom image

  • + and - zoom
  • zoom by holding z and dragging mouse left/right

update to electron 4

When doing so, sharp cannot be loaded, even after rebuilding with electron-rebuild. It can be loaded in the actual version of node 10, but not in electron apps.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.