51 lines
1.5 KiB
Markdown
51 lines
1.5 KiB
Markdown
# filmout_display
|
|
|
|
This repo contains the source code for the `filmout_display` binary that displays images on a screen for the purposes of creating analog moving images from digital sources.
|
|
This application will take over the full screen when launched and display frames as instructed with JSON objects sent over a TCP socket.
|
|
|
|
## Features
|
|
|
|
* Display image full screen, maintaining aspect ratio of original
|
|
* Display image scaled for different capture requirements and stocks
|
|
* Display image for specified length of time in milliseconds
|
|
* Display image until instructed to stop
|
|
|
|
## Future Goals
|
|
|
|
* Display image one channel at a time (RGB) for specified lengths of time for color balancing to different stocks
|
|
* Display image inverted for print stocks
|
|
* Convert images from color to black and white with different profiles
|
|
|
|
## Dependencies
|
|
|
|
* [OpenGL](https://www.khronos.org/opengl/)
|
|
* [OpenCV](https://github.com/opencv/opencv)
|
|
* [nlohmann/json](https://github.com/nlohmann/json)
|
|
* [Tawee/args](https://github.com/Taywee/args)
|
|
|
|
### Submodules
|
|
|
|
To clone this project with the `nlohmann/json` and `Taywee/args` submodules included:
|
|
|
|
```
|
|
git clone --recursive https://git.sixteenmillimeter.com/16mm/filmout_display.git
|
|
```
|
|
|
|
If you have already cloned this repo:
|
|
|
|
```bash
|
|
git submodule init
|
|
git submodule update
|
|
```
|
|
|
|
### Installing on Debian-based systems
|
|
|
|
```bash
|
|
apt install cmake g++ freeglut3-dev libopencv-dev
|
|
```
|
|
|
|
### Installing on macOS with Homebrew
|
|
|
|
```bash
|
|
brew install freeglut glew glfw glm opencv
|
|
``` |