Crates.io | pixelpwnr-server |
lib.rs | pixelpwnr-server |
version | 0.0.1 |
source | src |
created_at | 2022-08-18 17:04:24.048658 |
updated_at | 2022-08-18 17:04:24.048658 |
description | Blazingly fast GPU accelerated pixelflut server |
homepage | https://timvisee.com/projects/pixelpwnr-server |
repository | https://github.com/timvisee/pixelpwnr-server |
max_upload_size | |
id | 648243 |
size | 105,651 |
Note: This project is in the prototype phase, and is in development and tested with. Further optimization of this server for high performance use will be done at a later time.
A blazingly fast GPU accelerated pixelflut (video) server in Rust.
For installation, Git and Rust cargo are required. Install the latest version of Rust with rustup.
Then, clone and install pixelpwnr-server
with:
# Clone the project
git clone https://github.com/timvisee/pixelpwnr-server.git
cd pixelpwnr-server
# Install pixelpwnr server
cargo install --path server -f
# Start using pixelpwnr server
pixelpwnr-server --help
# or run it directly from Cargo
cargo run --bin pixelpwnr-server --release -- --help
Or just build it and invoke the binary directly (Linux/macOS):
# Clone the project
git clone https://github.com/timvisee/pixelpwnr-server.git
cd pixelpwnr-server
# Build the project (release version)
cargo build --release
# Start using pixelpwnr-server
./target/release/pixelpwnr-server --help
This implementation adds a new command to the protocol, which is laid out as follows:
PBxyrgba
where:
x
and y
are Little-Endian u16 values describing the X and Y coordinate of the pixel to set.r
, g
, b
and a
are single-byte values describing the R, G, B, and A components of the color to set the pixel to.If you wish to disable the binary pixel command, pass the --no-default-features
flag to cargo
build-essential
)freetype2
development files (Ubuntu package: libfreetype6-dev
)Here are some points that help with the pixelflut server performance, under heavy load:
--release
build.This project is released under the GNU GPL-3.0 license. Check out the LICENSE file for more information.