Git Product home page Git Product logo

analog-film-emulator's People

Contributors

jwagner 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  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  avatar  avatar  avatar  avatar

Watchers

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

analog-film-emulator's Issues

Gamma encoded everywhere

Why do you always work with gamma encoded data? Is the performance difference that big?

For example line 182 in image-processing.js
let plum = (pmax + pmin) / 2;
should imo be
let plum = pow(pow(pmax,gamma) + pow(pmin,gamma), 1/ gamma) / 2;

The same for dithering. Photoshop does its dithering also gamma encoded, which leads to artefacts, especially when working with already dithered images. One might think that the difference is not noticeable , but this shows the difference.

// leave values gamma encoded, results are practically nicer

what do you mean, "nicer"? RGB to grayscale conversion is imo much more accurate when done unencoded, as this project demonstrates. However, you cant use [0.2126,0.7152,0.0722] any more when with unencoded data. I came up with [0.2,0.52,0.28] for unencoded data. Its not ideal, but much better than all the conversions that use gamma encoded RGB values.

Great project btw!

Need build instructions

Hi, great project! But can we please have some instructions on how to build and run this locally. I tried running:

npm install
grunt build

But got an error message from Grunt:

>> Tasks directory "tasks" not found.

Running "browserify:main" (browserify) task
>> Error: Cannot find module './clut.json' from '/Users/bibhas/Downloads/analog-film-emulator/src'
Warning: Error running grunt-browserify. Use --force to continue.

Aborted due to warnings.

Great source of inspiration

There are no issues with this project, just wanted to say many thanks! I was able to get this working on local machine and I'm following the code. Thanks!

Maybe I'll port to an electron app. What do you think?

No open source

I know I read the README. But the notion of fair use you talk about is irrelevant. Fair use is a concept that is not available in every jurisdiction - and that is somewhat too broad. Basically you are opening a can of worm of liability by telling people "it is not open source but you can look at it".

I was actually really looking forward to try to see how this could be reused to have this on Firefox OS.

Please, consider either making the source code really open source, or hiding it.

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.