• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..18-Nov-2021-

README.mdH A D18-Nov-20212.8 KiB8072

aloadimage.1H A D18-Nov-20213.1 KiB8667

aloadimage.cH A D18-Nov-202124.8 KiB926714

imgload.cH A D18-Nov-202110.4 KiB350237

imgload.hH A D18-Nov-20211.6 KiB6728

nanosvg.hH A D18-Nov-202178.3 KiB3,0092,495

nanosvgrast.hH A D18-Nov-202137.3 KiB1,4531,080

stb_image.hH A D18-Nov-2021272.8 KiB7,8985,772

stb_image_resize.hH A D18-Nov-2021113.8 KiB2,6351,863

README.md

1Introduction
2============
3Aloadimage is a simple command-line imageviewer for arcan, built on the image
4parsers provided by stb (https://github.com/nothings/stb). Image loading is
5performed in the background as a separate, sandboxed processes and should be
6reasonably safe against maliciously crafted input sources.
7
8The primary purpose is to provide an arcan- specific replacement for
9xloadimage, and to serve as a testing ground for advanced image output such as
10full HDR- paths. The secondary purpose is to craft the image- loading worker
11pool to be secure and efficient enough to act as a building block for other
12components within the Arcan umbrella.
13
14For more detailed instructions, see the manpage.
15
16Building/use
17============
18the build needs access to the arcan-shmif library matching the arcan instance
19that it should connect to. It can either be detected through the normal
20pkgconfig, or by explicitly pointing cmake to the
21-DARCAN\_SOURCE\_DIR=/absolute/path/to/arcan/src
22
23The appl- that arcan is running will also need to expose an appropriate
24connection point (where you point the ARCAN\_CONNPATH environment variable)
25
26         mkdir build
27         cd build
28         cmake ../
29         make
30         ARCAN_CONNPATH=something ./aloadimage file1.png file2.jpg file3.png
31
32Optional Dependencies include:
33- Exempi-2, used for VR180 in JPG decoding
34- Seccomp, used for sandboxing on linux
35
36Status
37======
38 - [x] Basic controls
39 - [p] Multiprocess/sandboxed parsing
40   - [x] Expiration timer
41	 - [x] Upper memory consumption cap (no gzip bombing)
42	 - [x] Seccmp- style syscall filtering
43	 - [x] Pledge port
44	 - [ ] Capsicum port
45 - [ ] Playlist
46   - [x] Read/load-ahead
47   - [ ] Handover launch everything at once
48 - [ ] VR image formats
49   - [x] left-right eye mapping
50	 - [ ] projection metadata (fov + geometry)
51	 - [ ] auto-sbs detection
52	 - [ ] packed image format support (adobe metadata)
53 - [ ] Color Accuracy
54   - [ ] sRGB to Linear swapping
55	 - [ ] full FP16 format with scRGB
56	 - [ ] ICC profile output
57	 - [ ] HDR metadata (range, ...)
58 - [ ] Up/downsample filter controls
59 - [ ] Subpixel hinting for vector formats
60 - [ ] GPU acceleration toggle
61 - [ ] Per image transformations (rotate, flip, ...)
62 - [ ] Internationalization
63 - [ ] Interactive mode
64   - [ ] Placeholder 'reset' playlist entry
65   - [ ] Drag/zoom/pan input
66	 - [ ] Scrolling (CONTENTHINT)
67	 - [ ] Announce extensions
68   - [ ] Handle BCHUNKSTATE/drag'n'drop/paste
69   - [ ] Window clone action
70   - [ ] Expose command-line options as ARCAN\_ARG
71 - [ ] Stream-status/Content-position-hint
72 - [ ] State support (save playlist, configuration)
73 - [ ] Thumbnail window
74 - [x] Basic Raster Images (via stbimage)
75 - [ ] Formats support
76   - [ ] Animated GIF
77   - [ ] Vector contents support
78   - [x] Load/Draw Simple SVG (need refactor, assumes endianness)
79   - [ ] Redraw / invalidate on DISPLAYHINT
80