Skip to content
This repository has been archived by the owner on Oct 19, 2018. It is now read-only.

Add option to do a native read/write of half float data packed as uint16 matrices #3

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

irieger
Copy link

@irieger irieger commented Sep 12, 2018

This extends exrreadchannels and exrwritechannels to allow passing half float data packed into uint16 matrices. It is implemented to keep it as simple as possible while not changing to much of the original code.
If this is of interest but you don't like the way it is implemented I'm open for suggestions. This was the first time I worked on mex extensions myself and I'm sure there might be a better way for some things. (I especially don't like the way the read as uint16 is passed in exrreadchannels but as all string style parameters after the filename are expected to be channel names I thought this is the easiest way.)

To simplify use of those functions I added two wrapper functions (exrreadhalf and exrwritehalf) which set a default set of parameters.

Additionally I did a small change in the make.m file assuming running on default folder structure like the one on Debian/Ubuntu.

…nexr development packages installed in system default directories and tested on Ubuntu 18.04
… is stored as uint16 with correct IEEE 754-2008 half float bit layout. Also offering a wrapper function (exrwritehalf) to allow easy access of half float writer to allow easy use.
…red with a helper function to read all channels as packed half data and resort channels to correct order.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant