Config file

The configuration file exists to enhance the app user control over GUI themes and other
more advanced functionalities.
It’s a non-mandatory file but if exists, it should be named ‘RawImageAnalyser.ini‘ and
resides at the application’s execution path.
As the app doesn’t touch the Registry, you can put the app where you wish (fire and
forget style).

 

Short description Default
gui Affects GUI related properties like
colors and view modes
ruler_color Set a ruler color list red, white
ruler_font Set a ruler font Arial, 16, 12
ruler_type_matrix Set the ruler mode to be indent/matrix 0
tab_font Set the tab font Arial, 16, 12
tab_color_fg_bg_hl Set the tab color white, <150;30;20>, <200;70;0>
pixel_display_base Pixel value base dec/hex dec
value_comma_decorate Decorate decimal values comma 0
histogram_max_height Max histogram height (in pixels) 80
histogram_transparent Histogram transparent background 0
histogram_transparent_fg_color Histogram transparent FG color white, black
histogram_transparent_shadow Histogram high contrast shadow 0
def_zoom Initial app zoom-factor 0
ruler_mode Initial app ruler mode 0
grid_mode Initial app grid mode 0
pixel_value_mode Initial app pixel value mode 0
image Affects image manipulation or
semantic of action taken on images
trans_yuv_to_rgb YUV to RGB color transform ITU-R BT.2020 (JPEG)
trans_rgb_to_yuv RGB to YUV color transform ITU-R BT.2020 (JPEG)
diff_type Initial app diff type all_bin
system Affects app behavior and
path related options
work_path App log files path Execution path
format_file_path Path of RAW formats file RawImageAnalyser.fmt
ieval_file_path Path of saved I-Eval list ria.ieval.txt
ieval_load_saved_startup_only Load I-Eval list only on init 0
reload_dialogs_edit_history Reload previous sessions edit
boxes history
0
max_comparison_party Max allowed images to compare 6
ignore_file_extern_modify Ignore file modifications 0
auto_file_naming Auto file naming when saving 1
app_close_prompt Prompt the user when quitting new_created_image
max_process_threads Max processing worker threads 0 (unlimited)
auto_check_updates Auto check for app new versions 1
developer Designed for debugging and
more advanced verbose info
debug_load_format_log Log load RAW formats process 0
debug_batch_error_log Log batch run-time errors 0
log_app_msg Log app actions / errors 0
save_image_text_hex_c_array Save hexa-text as C array 0
force_thread_per_core Force thread per-core 0
favor_low_mem_over_speed Reduce memory usage in
trade-off of performance
0
dialog_convert Affects dialog ‘Convert raw’
initial controls state
type yuv444, yuv422, yuv420, gray, rgb gray
packing planner, interleave planner
bpp 8b, 16b, 32b 8b
little_end Boolean 1
custom_color_trans_on Boolean 0
def_trans_c1 String
def_trans_c2 String
def_trans_c3 String
resize_on Boolean 0
def_resize_size String
def_resize_pos_ofs String
resize_tiled_on Boolean 0
dialog_filter Affects dialog ‘Filter colors’
initial controls state
def_filter String
def_neg String
apply_to_all Boolean 0
apply_to_new Boolean 0
all_3_must_pass Boolean 0
separate_comp Boolean 0
dialog_ieval Affects dialog ‘Image evaluator’
initial controls state
def_ieval_expr String
def_out_of_range_val String
def_output_overwrite String
out_replace_image Boolean 0
apply_on_roi Boolean 0
output_channels context, context_as_yuv, single context
bpp by_input, 8b, 16b, 32b by_input
overwrite_saved_ieval Boolean 0
compare_mode_auto_new Boolean 1
dialog_open Affects dialog ‘Open raw’
initial controls state
def_width String
def_height String
type yuv444, yuv422, yuv420, gray, rgb gray
ascii Boolean 0
packing planner, interleave planner
bpp 8b, 16b, 32b 8b
little_end Boolean 1
def_offset String
dialog_ruler Affects dialog ‘Ruler config’
initial controls state
crd_screen Screen coordinate initial data 100, 100
crd_image Image coordinate initial data 10, 10, 0, 0
cfg_type screen, image screen
dialog_file_modify Affects dialog ‘File modify’
initial controls state
try_relaod_same_file_cfg Boolean 1

 

[gui]

ruler_color

Default: red, white
Set a ruler color (up to 8).
Set color by selecting either from a predefined values or give some RGB value (each
component should be in [0,255], e.g. <128; 0; 255>).
When entering RGB tuples, avoid putting space between values i.e. <100;80;60> and not
<100 ; 80; 60> or variants.
Values can be given also in Hexa or mixed form e.g. <0xff,0x80,255>.
Predefined color values are:
black, silver, gray, white, maroon, red, purple, fuchsia,
green, lime, olive, yellow, navy, blue, teal, aqua, orange

ruler_font

Default: Arial, 16, 12
Set a ruler font (name, size normal, size smaller).
If the font name have spaces, use ‘_’ (underscore) to sign word separator.
Note that if normal size is given but smaller size isn’t, we presume it’s 0.75 of the
normal size.

ruler_type_matrix

Default: 0
Set the ruler type to be either indent (0) that shows small bold bars to the image’s
top-left or matrix (1) that will set a dotted matrix all over the image to sign the
rulers position (very good for objects alignment).

tab_font

Default: Arial, 16, 12
Set a tab font (name, size normal, size smaller).
If the font name have spaces, use ‘_’ (underscore) to sign word separator.
Note that if normal size is given but smaller size isn’t, we presume it’s 0.75 of the
normal size.

tab_color_fg_bg_hl

Default: white, <150;30;20>, <200;70;0>
Tab color tuple: Foreground, Background and Highlight colors.

pixel_display_base

Default: dec
Set either to dec / hex (or base notation 10/16).

value_comma_decorate

Default: 0
For better UX, you can decorate large values (decimal only) with conventional comma
grouping (1234 –> 1,234). Doesn’t affect any text file output.
Mutable also via the View menu.

histogram_max_height

Default: 80
For histogram (tool-tip) view, values range: [50,120].

histogram_transparent

Default: 0
It’s possible to make the histogram overlay mode with transparent background so it will
be less intrusive by covering image data. When set to 0, it will use the opaque mode
with white rectangle and with more visual context (different data colors for different
channels).

histogram_transparent_fg_color

Default: white, black
When working with transparent histogram background mode, you can rotate the visual
foreground color (fixed for all datum) which can help dealing with blending colors. Note
that the bar (bin indicator) vertical line is always displayed with either white or
black color, depending on the selected color contrast (the app always aims to use the
color with the highest luminance contrast). You can set up to 6 colors.

histogram_transparent_shadow

Default: 0
When working with transparent histogram background mode, you can add a high contrast
shadow (white or black, depending on the fg color) that can help emphasizing the text
even if blended partially with the background.

def_zoom

Default: 1.0
Startup zoom-factor, 0 for Fit-To-Window. Range: [0.25, 100].

ruler_mode

Default: 0
Supply app startup modes for Ruler view (active or not).

grid_mode

Default: 0
Supply app startup modes for Grid view.

pixel_value_mode

Default: 0
Supply app startup modes for Pixel Value view.

[image]

trans_yuv_to_rgb
trans_rgb_to_yuv

Default: ITU-R BT.2020 (JPEG)
Supply user-defined color 3×4 transforms s.t. 3 first components per row are some
double and the last is an integer offset (-255..255).
The user may still defer these transformations via dialog menus or batch command line.

diff_type

Default: all_bin
Select from this set: all_bin, all_abs_delta, mask_bin, mask_abs_delta
xxx_bin state that the difference result is either 0 or 1 (255)
xxx_delta state that we perform ABS(A-B) (with a saturated value of 255).
In all/mask_xxx state we refer to the all image or just to non-masked pixels
respectively.

[system]

work_path

Default: Application execution path
Directs the app where to save log files. See [developer] section for further info.

format_file_path

Default: RawImageAnalyser.fmt (at local path)
Specifies the path / file name of where the RAW format loader rules are managed.
Do note that if only a file name is supplied, the app will first try and load the file
from the local path and then from the execution path. This is done deliberately to
enable flexible positioning of RAW format file in different folders, as an example.

ieval_file_path

Default: ria.ieval.txt (at local path)
Specifies the path / file name to load/store the I-Eval (see Image Evaluator) saved
expressions.

ieval_load_saved_startup_only

Default: 0
When accessing the I-Eval dialog, you can select if the saved I-Eval list will be loaded
per dialog initialization or only at app’s startup phase. As the saved I-Eval file is
a simple text file, you can edit it freely outside of the app so if this is set to 0, you
can “refresh” the list by re-entering the dialog. If you prefer less file access
operations, set this to 1. Note that when set to 0, per dialog instance, you load on
initialization and save it back to the file (after modifications) when the dialog is
quited (unless user canceled or the applied I-Eval raised an error).

reload_dialogs_edit_history

Default: 1
Reload from RawImageAnalyser.dat a history of all drop-down edit boxes (up to last 40
per edit-box).
The file is a simple pseudo-ini file and must reside in the app execution path.

max_comparison_party

Default: 6
Set max allowed images to compare (2..8). This might be handy if you wish to use
the ‘cc’ key to quickly select the matching group and you need to push up your upper
limit (to avoid app error).

ignore_file_extern_modify

Default: 0
Ignore external file modification events. As the app acts as an image observer
(immutable) and not manipulator, only outside modifications can occur.

auto_file_naming

Default: 1
Should the app upon save, decide the file name by its context automatically. If 0, the
user will be prompted for a file name each save.

app_close_prompt

Default: new_created_image
When exiting the app, should it prompt the user, allowing him to forfeit the action?
You have 3 options here:
never – quits w/o prompting)
always – prompt, no matter what was done
new_created_image – in case the user has created a new image (duplicate or convert).

max_process_threads

Default: 0
The application is able to distribute work among logic cores when facing complex image
operations like diff, filter, convert and I-Eval (all under Actions menu). You can set
up to 32 worker-threads and let the app/OS use them as it sees fit.
Set to 0 if you wish to use max available logic cores. If you set a value like 6 but
you have only 4 logic-cores(hyper-threaded are included) then the app will use only the
max available (as using more will simply deteriorate the performance due to thread
context switch overhead).
If you for some reason, prefer to eliminate any thread spawning, non-soever,
set the value to -1
. This will also prevent you from canceling long operations.
Note that when you set a value 0..32 you will see a progress bar when a
computational / long operation is using the worker-thread pool to accelerate work.

auto_check_updates

Default: 1
If set, when the app will start, it will check in the background for new versions.
If not set, the user needs to explicitly visit “Help/Check for updates…” menu.
Do note that in batch non-gui mode, this setting is ignored (no checking is done).

 

[developer]

debug_load_format_log

Default: 1, ria.fmt_log.txt
When opening some RAW image files, you can log the traces that the app “open” flow
performs. This is very good if you write some regex that have some errors or you want
to fine-tune the loading precedence order.
The first argument indicate whether this feature is enabled or not and the later notes
the output file name. The output will be written to the work_path.

debug_batch_error_log

Default: 1, ria.log_batch.txt
Used to log Batch Mode (see command line section) in case there were parsing
errors. If not enabled, all errors will be directed to stderr (standard error stream).
To make it clear, this relates to app run-time parsing errors like giving non-existing
image id or any errors that can only be detected while executing the batch commands.
All other command line parsing errors that prevents the app from starting are ALWAYS
directed to stderr (like invalid switches and such).

log_app_msg

Default: 1, ria.log_app.txt
Logs all user actions or reported messages/errors. This is useful in case you want to
trace back your taken actions or understand why the app reported a specific set of
errors. In between app sessions, this log isn’t reset so it’s up to the user to erase
it in order to start a blank sheet.

save_image_text_hex_c_array

Default: 0
When saving via the hexa text option, the file will be saved as c-syntax array. This
is very handy when one wishes to deploy a raw image into some program (c, c++, c# or
java). Note that the file layout will preserve the format i.e. planner will lead to 3
arrays while interleave (mostly) 1 array.
When disabled, the file will be saved as a hexa-editor style (good for pseudo-binary
comparison).

force_thread_per_core

Default: 0
If you’re using worker-threads to optimize performance on image ‘actions’, it’s best to
let the app/OS decide where to put each work (core-wise speaking) but if you know what
you’re doing or doesn’t satisfied by the way the core distribution is working, you can
set this parameter to 1 which will force each thread to run on a specific core (up to
to the number of available logic-cores, obviously). Note that this feature is for expert
users that are aware of their system behavior and this might yield to a main-thread
periodic choking if applied improperly.

favor_low_mem_over_speed

Default: 0
In order to enable working with large-scale input or simply reducing the app memory
footprint, you can “tell” the application to use less memory per-loaded image with
performance-wise trade-off. Use this if you know your CPU limits and really need the
memory. Memory usage is especially high when working with filtered images to speed up
masking like operations. Pay attention you can dynamically enable/disable it via
the Developer sub-menu so it can be fined-tuned per loaded image for maximal user
control.

 

[dialog_convert]

type

Default: gray
Options: yuv444, yuv422, yuv420, gray, rgb

packing

Default: planner
Options: planner, interleave

bpp

Default: 8b
Options: 8b, 16b, 32b

little_end

Default: 1
Options: 0, 1 (boolean)

custom_color_trans_on

Default: 0
Options: 0, 1 (boolean)

def_trans_c1

Set a string, parsing is done in the dialog (default: empty input).

def_trans_c2

Set a string, parsing is done in the dialog (default: empty input).

def_trans_c3

Set a string, parsing is done in the dialog (default: empty input).

resize_on

Default: 0
Options: 0, 1 (boolean)

def_resize_size

Set a string, parsing is done in the dialog (default: empty input).

def_resize_pos_ofs

Set a string, parsing is done in the dialog (default: empty input).

resize_tiled_on

Default: 0
Options: 0, 1 (boolean)

 

[dialog_filter]

def_filter

Set a string, parsing is done in the dialog (default: empty input).

def_neg

Set a string, parsing is done in the dialog (default: empty input).

apply_to_all

Default: 0
Options: 0, 1 (boolean)

apply_to_new

Default: 0
Options: 0, 1 (boolean)

all_3_must_pass

Default: 0
Options: 0, 1 (boolean)

separate_comp

Default: 0
Options: 0, 1 (boolean)

 

[dialog_ieval]

def_ieval_expr

Set a string, parsing is done in the dialog (default: empty input).

def_out_of_range_val

Set a string, parsing is done in the dialog (default: empty input).

def_output_overwrite

Set a string, parsing is done in the dialog (default: empty input).

out_replace_image

Default: 0
Options: 0, 1 (boolean)

apply_on_roi

Default: 0
Options: 0, 1 (boolean)

output_channels

Default: context
Options: context, context_as_yuv, single

bpp

Default: by_input
Options: by_input, 8b, 16b, 32b

overwrite_saved_ieval

Default: 0
Options: 0, 1 (boolean)

compare_mode_auto_new

Default: 1
Options: 0, 1 (boolean)

 

[dialog_open]

def_width

Set a string, parsing is done in the dialog (default: empty input).

def_height

Set a string, parsing is done in the dialog (default: empty input).

type

Default: gray
Options: yuv444, yuv422, yuv420, gray, rgb

ascii

Default: 0
Options: 0, 1 (boolean)

packing

Default: planner
Options: planner, interleave

bpp

Default: 8b
Options: 8b, 16b, 32b

little_end

Default: 1
Options: 0, 1 (boolean)

def_offset

Set a string, parsing is done in the dialog (default: empty input).

 

[dialog_ruler]

crd_screen

Default: 100, 100
Set a ruler config profile for screen coordinate reference with a succeeding delta x,
delta y. The delta values are of unsigned values (> 0).
Non-entered values will be replaced by the default.

crd_image

Default: 10, 10, 0, 0
Set a ruler config profile for image coordinate reference with a succeeding delta x,
delta y, offset x, offset y.
Offset may be used to translate the ruler start position which is useful for alignment
of image’s data (like bitmaps and fonts). Offset is active for ZF 1+ as below the
image pixels are being interpolated.
Non-entered values will be replaced by the default.

cfg_type

Default: screen
Set the default active ruler profile: screen or image. ‘screen’ means the ruler uses
logical screen pixel (10 for x mean 10 screen pixels, if possible) while ‘image’ means
the ruler will indent by image pixels.

 

[dialog_file_modify]

try_relaod_same_file_cfg

Default: 1
Options: 0, 1 (boolean)
This is used either try to reload the input file with its last successful config or
to allow the user to enter a different image setup in case the load was unsuccessful.