A performant web native pixel delivery pipeline for diverse sources, blending VNC-inspired parallel processing of pixel buffers with flexible modern encoding formats.
Project description
pixelflux
A performant web native pixel delivery pipeline for diverse sources, blending parallel processing of pixel buffers with flexible modern encoding formats.
This module provides a Python interface to a high-performance capture library supporting both X11 and Wayland environments. It captures pixel data, detects changes, and encodes modified stripes into JPEG or H.264.
It supports CPU-based encoding (libx264, libjpeg-turbo) as well as hardware-accelerated H.264 encoding via NVIDIA's NVENC and VA-API for Intel/AMD GPUs. The Wayland backend features a zero-copy pipeline, passing GPU buffers directly to the encoder to minimize latency and CPU usage.
Installation
This module relies on native C++ (X11) and Rust (Wayland) extensions that are compiled during installation.
1. Prerequisites
Ensure you have a C++ compiler (g++), the Rust toolchain (cargo), and development files for Python and the underlying graphics libraries.
Base Dependencies (Debian/Ubuntu):
sudo apt-get update && \
sudo apt-get install -y \
g++ \
git \
curl \
python3-dev \
libavcodec-dev \
libavutil-dev \
libjpeg-turbo8-dev \
libx264-dev \
libyuv-dev
X11 Backend Dependencies:
sudo apt-get install -y \
libx11-dev \
libxext-dev \
libxfixes-dev
Wayland Backend Dependencies: To build the Rust-based Wayland backend, you need the Rust toolchain and Wayland/DRM libraries:
# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Install Libraries
sudo apt-get install -y \
libgbm-dev \
libdrm-dev \
libwayland-dev \
libinput-dev \
libxkbcommon-dev \
libva-dev \
libclang-dev
2. Hardware Acceleration (Optional but Recommended)
- NVIDIA (NVENC): The library detects the NVIDIA driver at runtime. No extra compile-time packages are needed.
- Intel/AMD (VA-API): Ensure
libva-devandlibdrm-devare installed. You must also have the correct drivers (e.g.,intel-media-va-driver-non-freeormesa-va-drivers).
3. Install the Package
Option A: Install from PyPI
pip install pixelflux
Option B: Install from local source
# From the root of the project repository
pip install .
Usage
Backend Selection
By default, pixelflux loads the legacy X11 backend. To enable the Wayland backend (built on Smithay), set the following environment variable before importing the module:
export PIXELFLUX_WAYLAND=true
To test launching programs into this backend simply add WAYLAND_DISPLAY=wayland-1 before launching them:
WAYLAND_DISPLAY=wayland-1 glmark2-es2-wayland -s 1920x1080
Capture Settings
The CaptureSettings class configures both backends.
from pixelflux import CaptureSettings, ScreenCapture
settings = CaptureSettings()
# --- Core Capture ---
settings.capture_width = 1920
settings.capture_height = 1080
settings.capture_x = 0
settings.capture_y = 0
settings.capture_cursor = True
settings.target_fps = 60.0
settings.scale = 1.0 # Fractional scaling (Wayland only)
# --- Encoding Mode ---
# 0 for JPEG, 1 for H.264
settings.output_mode = 1
# Force CPU encoding and ignore hardware encoders
capture_settings.use_cpu = False
# --- Debugging ---
settings.debug_logging = False # Enable/disable the continuous FPS and settings log to the console.
# --- JPEG Settings ---
settings.jpeg_quality = 75 # Quality for changed stripes (0-100)
settings.paint_over_jpeg_quality = 90 # Quality for static "paint-over" stripes (0-100)
# --- H.264 Settings ---
settings.h264_crf = 25 # CRF value (0-51, lower is better quality/higher bitrate)
settings.h264_paintover_crf = 18 # CRF for H.264 paintover on static content. Must be lower than h264_crf to activate.
settings.h264_paintover_burst_frames = 5 # Number of high-quality frames to send in a burst when a paintover is triggered.
settings.h264_fullcolor = False # Use I444 (full color) instead of I420 for software encoding
settings.h264_fullframe = True # Encode full frames (required for HW accel) instead of just changed stripes
settings.h264_streaming_mode = False # Bypass all VNC logic and work like a normal video encoder, higher constant CPU usage for fullscreen gaming/videos
settings.h264_cbr_mode = False # Switches to CBR mode and ignores CRF value. Used in conjunction with h264_bitrate_kbps.
settings.h264_bitrate_kbps = 4000 # Target bitrate for CBR mode. Required when h264_cbr_mode is enabled.
settings.h264_vbv_buffer_size_kb = 400 # Optional VBV buffer size in kilobits for custom buffer size.
settings.auto_adjust_screen_capture_size = True # Allow pixelflux to adjust its capture width and height.
# --- Hardware Acceleration ---
# >= 0: Enable GPU Encoding on /dev/dri/renderD(128 + index)
# -1: Disable GPU Encoding (System will try NVENC if available when using the x11 backend, Wayland needs this set to a render node)
settings.vaapi_render_node_index = -1
# --- Change Detection & Optimization ---
settings.use_paint_over_quality = True # Enable paint-over/IDR requests for static regions
settings.paint_over_trigger_frames = 15 # Frames of no motion to trigger paint-over
settings.damage_block_threshold = 10 # Consecutive changes to trigger "damaged" state
settings.damage_block_duration = 30 # Frames a stripe stays "damaged"
# --- Watermarking ---
# Must be a bytes object. The path to your PNG image.
settings.watermark_path = b"/path/to/your/watermark.png"
# 0:None, 1:TopLeft, 2:TopRight, 3:BottomLeft, 4:BottomRight, 5:Middle, 6:Animated
settings.watermark_location_enum = 4
Input Injection (Wayland Only)
In Wayland mode, pixelflux acts as the compositor. You cannot use external tools like xdotool. Instead, use the input injection methods provided by the ScreenCapture instance:
capture = ScreenCapture()
capture.start_capture(settings, my_callback)
# Inject Mouse Motion (Absolute coordinates)
capture.inject_mouse_move(x=500.0, y=300.0)
# Inject Mouse Button (1=Left, 2=Middle, 3=Right, etc.)
# State: 1 = Pressed, 0 = Released
capture.inject_mouse_button(btn=1, state=1)
# Inject Scroll (Vertical/Horizontal)
capture.inject_mouse_scroll(x=0.0, y=10.0)
# Inject Keyboard Key
# scancode: Linux raw keycode (e.g., 17 for 'w')
# state: 1 = Pressed, 0 = Released
capture.inject_key(scancode=17, state=1)
Stripe Callback
Your callback receives a ctypes.POINTER(StripeEncodeResult).
def my_callback(result_ptr, user_data):
result = result_ptr.contents
# Access data
# result.type (0=H264, 1=JPEG)
# result.frame_id
# result.stripe_y_start
# Copy data to Python bytes
encoded_data = ctypes.string_at(result.data, result.size)
# Send encoded_data to client...
Zero-Copy Pipeline (Wayland)
The Wayland backend implements a Zero-Copy architecture for hardware encoding.
- Rendering: The compositor renders the desktop to a GPU buffer (GBM).
- Export: This buffer is exported as a
Dmabuf(file descriptor). - Encoding: The
Dmabufis imported directly into the encoder context (NVENC or VA-API) without ever copying pixel data to system RAM (CPU).
Performance Note: Enabling watermarking or utilizing a render node different from the encoding node will force a "Readback" fallback, copying pixels to the CPU and breaking the zero-copy chain. This increases latency and CPU load.
Recording Sink (Wayland)
The Wayland backend can output the raw H.264 video stream directly to a Unix domain socket for external recording.
Note: This feature requires full-frame H.264 encoding (CPU, VA-API, or NVENC) and does not work with JPEG or striped H.264 modes.
# Enable the unix socket (forces IDR frames every 30 frames and on connect)
settings.recording_socket = "/tmp/pixelflux_record"
You can then capture the stream using ffmpeg:
# Raw copy
ffmpeg -f h264 -i unix:///tmp/pixelflux_record -c:v copy test.h264
# Re-encode for a clean MP4
ffmpeg -f h264 -framerate 60 -i unix:///tmp/pixelflux_record -c:v libx264 -preset fast -crf 23 -pix_fmt yuv420p test.mp4
Features
- Hybrid Backend:
- X11 (C++): Legacy support using XShm.
- Wayland (Rust): Modern, secure, headless compositor based on Smithay.
- Flexible Encoding:
- Software: libx264 (H.264) and libjpeg-turbo (JPEG) with multi-threaded striping.
- Hardware: NVIDIA NVENC and VA-API (Intel/AMD) with Zero-Copy support.
- Smart Bandwidth Management:
- Change Detection: Encodes only changed stripes (Software/JPEG mode).
- Paint-Over: Automatically improves quality for static regions.
- Damage Throttling: Limits processing during high-motion scenes.
- Input Handling: Built-in input injection for mouse and keyboard (Wayland).
- Cursor Compositing: Hardware cursor planes or software rendering options.
- Dynamic Watermarking: Overlay PNGs with static positioning or DVD-screensaver style animation.
- Recording Sink: Direct Unix socket output of full-frame H.264 streams for local capture.
License
This project is licensed under the Mozilla Public License Version 2.0. A copy of the MPL 2.0 can be found at https://mozilla.org/MPL/2.0/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pixelflux-1.6.3-cp314-cp314t-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314t-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.14t, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1be1b0bf94530bb2b9411bdb367681147abf17197d5c729fc040f34af28529c
|
|
| MD5 |
57fa6857e77d34c13c512bd2db9f95fe
|
|
| BLAKE2b-256 |
cd2b10dee34db31fc33af9ac643f1b292aeb04425c4d262a3a6ba3de0427b7ca
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314t-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314t-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.14t, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
576a68a83260904d773af25a6616cf7b6def839f5c1f56fe1a20b6d7bb343cab
|
|
| MD5 |
9eacacc43e746ab17614578919549463
|
|
| BLAKE2b-256 |
8497e92a3afcdd286a625b8651e35e9eafbac861afd6183467fabea69042219f
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314t-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314t-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.14t, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2081f7e210c99c43913c16f5ab643a41dff03edaa8ba1d9ae5c4898ec6c32068
|
|
| MD5 |
f34fdd7ec97534904a9ff6a641bb1441
|
|
| BLAKE2b-256 |
31a0ab9a987defbca07ed5f102a131f64056d2deefe5c2e6e9c323c50ebd9a0e
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314t-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314t-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.14t, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8f5c04760f418c34b8ca894a498825377927d354bc5f9b19ce0ad18b0eebc0b
|
|
| MD5 |
f63d6ad62f099055dcadce9d78c11a13
|
|
| BLAKE2b-256 |
07c156664e5a91471450692c8f76e15bd855c9757a9f58cc146ec66b97c81f9e
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.14, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de41aee79f39908d86b6dfe8a38078a5bc94948c1865cc22fa769f04fa45fb03
|
|
| MD5 |
f5b0efcb7911c42f2242683f578f7afd
|
|
| BLAKE2b-256 |
1118d3f817862e1b1f42105d857306ba3eef08a0676fe8cea0e4dae03777beeb
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.14, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd48fadfa0e9377f587ba9680f7c8b842b27593ec9b3a776b02135bd4ed55ad2
|
|
| MD5 |
0a1a288b19a2a419f7b0fe5754bc25dd
|
|
| BLAKE2b-256 |
b5b56d20baa9bb440fec477ab639743ac6e76334059ca83db56f3b6fd9f6dac0
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.14, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9ffd4830cb029bbb5c5f03d8891a313c7fc3acd8214c1b972680dd815114d11
|
|
| MD5 |
bfbdb02f918192fa8bafe8a549769c01
|
|
| BLAKE2b-256 |
257076a91c0232ca5b624689f28bd3f29006aa27ba173412b749a030e6c16a8f
|
File details
Details for the file pixelflux-1.6.3-cp314-cp314-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp314-cp314-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.14, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e69f17194f05a564555cf1ce0512148ea7e45e8984cd753b9a9533ff19d5d4d
|
|
| MD5 |
970707eba8569f878da37aa3280aad00
|
|
| BLAKE2b-256 |
76ede261af7223961c52a6dc45306a96a4eaaaf5ee0fa1ec26b776307b12a2b5
|
File details
Details for the file pixelflux-1.6.3-cp313-cp313-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp313-cp313-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f230ebf147e5b43baba8bdb539ff8ca1a4b1d5ca3f06c0d8dc64cc8239be283
|
|
| MD5 |
a787bb718a9746d0677a92e5a443da7e
|
|
| BLAKE2b-256 |
2f85746a50764622eb615559a0ad2b557119d90d2a510289ee7bf314ac5a5de0
|
File details
Details for the file pixelflux-1.6.3-cp313-cp313-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp313-cp313-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.13, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5399448a068331b3d22dc0d7732651f315507be526ae6914b2b64896c54098ca
|
|
| MD5 |
379fe3e68228700a7371f205b43a74c7
|
|
| BLAKE2b-256 |
4141b7de49c96806d924dccb74ce56e76b25387b703425de00cbc612fa286cc1
|
File details
Details for the file pixelflux-1.6.3-cp313-cp313-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp313-cp313-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.13, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad394ce5645f009f3d25b29dc73144c9ace00bacb3cb386fcc12111d9f917d4e
|
|
| MD5 |
dd42196e46831fc69e264c5d15edc5c2
|
|
| BLAKE2b-256 |
5f8ec56ed33c098848f6cdee0e8715d5945a4d26e778948240f1f989e120e5c8
|
File details
Details for the file pixelflux-1.6.3-cp313-cp313-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp313-cp313-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.13, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
738bb15c3fc9d7dd8e9002bed1be507dc16a539d5e7b438a7bde58fe620642d0
|
|
| MD5 |
12cdb6bfbb7f8d877560c35ef0fd1fe2
|
|
| BLAKE2b-256 |
5f7416cb834df45e5575d0777f356e4da37ea303ecc7a2503ef1027240ced96e
|
File details
Details for the file pixelflux-1.6.3-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbb05018ebc96e221f0c85e555cd86a33350ba989713f270e45321d04abd13af
|
|
| MD5 |
239e32e262d628ba37dd874ea027b186
|
|
| BLAKE2b-256 |
5b7febded3d8afbb61623986e281302973d3854ed1364e010a633a7f8d723b41
|
File details
Details for the file pixelflux-1.6.3-cp312-cp312-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp312-cp312-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.12, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00b9f8c94876e0b2835b2ecea0254388831e96d25393d316ad73a17024761439
|
|
| MD5 |
6904c153ee9534ea59c9059fa318db5d
|
|
| BLAKE2b-256 |
0f1b3b618e8bb6a4ce21d6ceee4acb2f55ca27c2c096d4db4bf58d42e2831f89
|
File details
Details for the file pixelflux-1.6.3-cp312-cp312-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp312-cp312-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48a25b89b4e4fe93dc7835901be32d9ea82f6f945f85249aa8e4f41cd52f4ffc
|
|
| MD5 |
6e8ab34327b13f63a896f10ba44c5ba1
|
|
| BLAKE2b-256 |
9f9b6d40f16bcd1afa283ce10a59e42892c1c9847706f36b9c7f8c39c5c87104
|
File details
Details for the file pixelflux-1.6.3-cp312-cp312-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp312-cp312-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.12, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d61828145a42e9aedf919d4d59537793005748b106275e948631366138bb767e
|
|
| MD5 |
3694c76784aafdef31dfd7bb768db9a2
|
|
| BLAKE2b-256 |
bee553e1da7a51dea091ecbba2518c44ff9de4fa34e44ccb75a0e5092e665b3a
|
File details
Details for the file pixelflux-1.6.3-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6fcf5d713e336603deefce55031d2811248211422bc111daca0a1c3c8841704
|
|
| MD5 |
a04ab1584fd7d9aaf8fe7d846ba0663e
|
|
| BLAKE2b-256 |
8e134cdff7a1845fa857f3bd55bcecafe3cf74884c843ded0b6b4f94d3649c41
|
File details
Details for the file pixelflux-1.6.3-cp311-cp311-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp311-cp311-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.11, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7ad260d7b17e5e20cae0db5c267fd6d246fce52fc5642f2f3dc900fb476434e
|
|
| MD5 |
50a3bd8b74b364508144c068e9a4782a
|
|
| BLAKE2b-256 |
1ef4b5718875081d9a0349b55bd6e0a7c354a2b47a7216c71547e6211b0054d5
|
File details
Details for the file pixelflux-1.6.3-cp311-cp311-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp311-cp311-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1158040733ed81887d0429cf6e569bee4893da281cf840edb85a1767343ebead
|
|
| MD5 |
a610901b3df31ed893cd76f9e4563b20
|
|
| BLAKE2b-256 |
9104c97b1e94c5510f6ec72f1fe248c91481a102d675dc783aba5ad06e6e7e4b
|
File details
Details for the file pixelflux-1.6.3-cp311-cp311-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp311-cp311-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.11, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57de252cae3b3dc6f9a25743c2af15d7fb14ef4b9050b341a4909d090972f424
|
|
| MD5 |
01749518ecbcdfc581b44cc9070226ed
|
|
| BLAKE2b-256 |
3c45ee9c7c9ddeb6e88fdd80d6489168bee4382a9f361430421295c64299daaf
|
File details
Details for the file pixelflux-1.6.3-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fc1f2d5d90e53eed5535bdc325376e57f0c7caf762a0effe91deb2f08e443cf
|
|
| MD5 |
22a48be21c698b5d45337a3e228d064e
|
|
| BLAKE2b-256 |
7f0224c9b6eb20654cbbaf54608273d92e776ea86fde86ee3132d4f6afd16d48
|
File details
Details for the file pixelflux-1.6.3-cp310-cp310-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp310-cp310-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.10, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
604a334dc33a9b1ac44323da5660cbbe14a6b279c1be706e512be3756ef99cde
|
|
| MD5 |
fd4a68f681f1c0997bc3379f8b9b7db1
|
|
| BLAKE2b-256 |
d82d64879a27642532130bf3e8960accd3e5595907dc75dc1d41bdf4d0ca1991
|
File details
Details for the file pixelflux-1.6.3-cp310-cp310-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp310-cp310-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5753069e75be00ebc0884fcdba3936eb6238def0ac12e658bea8007c4ec94156
|
|
| MD5 |
c9dbd2ee0937974b89ebd1f980a4af3d
|
|
| BLAKE2b-256 |
4687cc3b0128945a8ba7cb03a74743bb30e6fff6bebcb2baf7afe0ad11ed50c1
|
File details
Details for the file pixelflux-1.6.3-cp310-cp310-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp310-cp310-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0189b92d7d7ddcc417deacd79ef1a2860c9e1f9b2ab15bc295672cf312e0315d
|
|
| MD5 |
5c835cdd798b66254c03d6b7cc85a8e8
|
|
| BLAKE2b-256 |
162e34ba382bdea7639a0ab0d212dda2ae8344414b35994792e74ed0bdaa47d5
|
File details
Details for the file pixelflux-1.6.3-cp39-cp39-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp39-cp39-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.9, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3a0979697a6daa9d9ee0dbefdb5f174c787d3a3a34ae9222684c00422a64dd1e
|
|
| MD5 |
ad6384d26ea162a17c9795fe0fb44955
|
|
| BLAKE2b-256 |
a5b4fe2c7890a662a63d19e316e11eb677c035696ac3b4e254073f85a8d9cba8
|
File details
Details for the file pixelflux-1.6.3-cp39-cp39-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp39-cp39-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.9, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d28dd7470ea64fa6736656fd8cf8cb309eec859aed3f1895028bd2457133708f
|
|
| MD5 |
678699dd47038da6ce863724a6209fc9
|
|
| BLAKE2b-256 |
b510a00afc5a83bb6e3d007b200c0c55f7352199acf326e5aca4cac4f2623d3f
|
File details
Details for the file pixelflux-1.6.3-cp39-cp39-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp39-cp39-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.9, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6ce2900d841f801cede09b9e2fdc94a945528a8c2466d3dd56cd0ef5e2767c1
|
|
| MD5 |
aa819876c66458ebdb3aaed5ce6cf63a
|
|
| BLAKE2b-256 |
6d27e3a1f8c44d28259795f5e7527a3a0ec2f7efddc8e7eb3e856cf6bbe9b284
|
File details
Details for the file pixelflux-1.6.3-cp39-cp39-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp39-cp39-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.9, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75f65307abff573416e708bed70f66fcf201ad2c942541e2b1cbf8bda354bda7
|
|
| MD5 |
3f453dbc7b3c5f4c70b6028d9b39d89b
|
|
| BLAKE2b-256 |
1e6ab8317292959e05f95d02567b13d8deddc04d590d6d739fb0730d87a451f1
|
File details
Details for the file pixelflux-1.6.3-cp38-cp38-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp38-cp38-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 40.5 MB
- Tags: CPython 3.8, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
105352102c2000a35326d144ab6e9743cdd18ac3bf0c5644393da8c81232235b
|
|
| MD5 |
e31e32d18b29cad4028eeb3d79935443
|
|
| BLAKE2b-256 |
ebefa81b7a9298e2364aa010fc047ed7042190c4b71d9c22dd27b2749aef3406
|
File details
Details for the file pixelflux-1.6.3-cp38-cp38-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp38-cp38-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 37.9 MB
- Tags: CPython 3.8, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e21a4a240327d2a634db0f2ce5d6722a0c9f1228f3c9bd232d842ff979bb6436
|
|
| MD5 |
2aef8d7578608eab03e7e2bc337fb353
|
|
| BLAKE2b-256 |
5e254bf29fe991b581bbed4941e9947c9c00be4dd4e7ee991f5bf1a39c05ab04
|
File details
Details for the file pixelflux-1.6.3-cp38-cp38-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp38-cp38-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.8, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
399121d4c5a7075f25678c588d24e4b716e97a5e92f890c1c75801aedf85d74d
|
|
| MD5 |
d596441d3d035215d44e3a40d87c6e8d
|
|
| BLAKE2b-256 |
d89ae79033fa4d1afdb59f995401b4be2bce0c9b0e68ccbd5ac3bd5b06a4a4d9
|
File details
Details for the file pixelflux-1.6.3-cp38-cp38-manylinux_2_34_aarch64.whl.
File metadata
- Download URL: pixelflux-1.6.3-cp38-cp38-manylinux_2_34_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.8, manylinux: glibc 2.34+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36d760b873c17221d9b53106c012bcc448f1fb36e43b1c593d823c4d529dd339
|
|
| MD5 |
267403635b4e5ab2bc19b5d0131b8a3b
|
|
| BLAKE2b-256 |
28d0f1a25776683c0c0ba27d1d3e805b559b2adbda6b98a920a924df689e5e98
|