After some downtime I discovered I don't have that much time to improve my little braw player project right now so I put up current version for everyone to try. Maybe it is useful for someone, if not for something else then for quick viewing of braw files and their metadata.

Current version is built against BRAW SDK version 1.3, meaning it should be able to decode newer files also. Currently only CPU decode works, but player automatically changes decoding resolution behind the scenes if viewer size is smaller, so to get faster playback just resize the window. It is also possible to manually set decode resolution using combobox in UI.

INSTALLATIONJust run the application executable. For loading files, File->Open or drag-drop to application window.

USAGEPlay the file and fiddle with settings. If knob is active, values can be changed by scrolling mouse button. To reset a setting, right click on slider.

Press M for metadata overlay, it displays all meta read from file, including dynamically changing meta.Press D for debug data, it doesn't show much useful though.Press G for gamut plot. Not useful, also wrong with any other gamut-gamma than linear XYZ.Press V to toggle through viewer modes: full data, minimal player, video only. Has some layout issues.Press T to show timecode in playhead TC knob. Might be wrong, check metadata, there is correct tc for frame.

Use mouse scroll button for zooming and left button for panning the viewer. Double-click left button to reset view.

WHAT WORKSIt opens and plays braw files Most of development settings should work, also dynamic data from sidecar files (change "Update from sidecar" to "on every frame" for dynamic data). Dynamic data means that exposure, iso etc (not all, but some properties) can be animated in sidecar. There is little documentation about this feature, bang on BMD-s door for better docs.

WHAT DOES NOT WORKNo audio. No GPU decode (settings are there in decoder device combo but not effective). Might crash randomly. Might do something else wrong. Export of trimmed braw or sidecar do not work yet.

KNOWN BUGSDrag-drop something else than .braw will crash.Timecode value shown in knob is sometimes wrong.Gamut plot is incorrect for anything but linear XYZ.GPU decode not working.

OTHER STUFFFor customization of UI appearance, fiddle with stylesheet.txt file in application dir.

One of our machines has an AMD graphics card, and when we try to launch we get an error that says nvcuda.dll is missing and it won't launch. We tried just dropping in the dll into the sys32 folder, but now it just says it failed to launch.

Cameron Porter wrote:One of our machines has an AMD graphics card, and when we try to launch we get an error that says nvcuda.dll is missing and it won't launch. We tried just dropping in the dll into the sys32 folder, but now it just says it failed to launch.

Anything obvious I'm missing? Thanks!

I put up new version (find it from same link in first post), try that, hopefully it fixes the error. Some rudimentary GPU compute probing that was happening might have triggered the message.

Simple path messup bug prevented opening files directly through os by setting player as default application. Fixed the loading and also problems with stylesheet and icons. It should now work as expected.

Regarding shaders, as viewer surface is drawn with opengl, user can now use fragment shader to do any image processing one wishes, for example apply custom color transforms and whatnot. Just code them in fragment shader and fire away!

It works on that machine with AMD card also? Strange that it didn't work before though, I used sdk methods from example code for detecting if cuda pipeline processing is possible, this shouldn't need to use cuda itself...

Edit2: With the parade turned on it stutters on my machine. Seems to have a strong level of detail - maybe too much

I wonder how you run win executable on linux? Cuda decode does nothing, it falls back to cpu..cube luts not currently supported, it takes a bit of fiddling to get them workingYou can change the parade quantization in shader, see the line where 'decoderesolution' uniform is used and change that value. Something like 100 will give you an idea what it does:

[quote="Hendrik Proosa]I wonder how you run win executable on linux? Cuda decode does nothing, it falls back to cpu..cube luts not currently supported, it takes a bit of fiddling to get them workingYou can change the parade quantization in shader, see the line where 'decoderesolution' uniform is used and change that value. Something like 100 will give you an idea what it does:

About that parade, as is apparent from shader code, it samples a number of pixels in the same column as output pixel is and that line changed the step size of sampling. In original code it was every decoded line, when it is set lower loop runs faster thus making shader faster. But downside is that not all pixels are sampled anymore. In current code sampling and value binning were also tied, so with lower values, parade columns also got more "boxy".

WHATS NEW in v0.3.0 (released 190704)Rudimentary audio playback. There are buffering issues which must be sorted (audio is choppy and cracking) but speech is audible and thus somewhat usable. Audio plays during scrubbing too and conforms to framerate changes (plays slower or faster).

Removed notification about BMD Custom and development settings, it messed up the layout.