VideoNative
High-performance video rendering in Python powered by C++, FFmpeg, and miniaudio.
Overview
VideoNative is a lightweight, low-level Python extension designed for efficient video and audio decoding. By leveraging native C++ bindings, it bridges high-performance media frameworks directly into Python applications.
Core Dependencies
- FFmpeg - Industry-standard library for video decoding and scaling.
- miniaudio - Single-file audio playback and management library.
Runtime requirements
Financial Support
Build and Install Instructions
Select your operating system below for step-by-step setup instructions.
Windows
1. Prerequisites
Install the necessary C++ build tools and CMake using Windows Package Manager (winget):
# Install Visual C++ Build Tools
winget install Microsoft.VisualStudio.BuildTools
# Install CMake
winget install Kitware.CMake
2. Install FFmpeg Shared Libraries
Download and extract the required FFmpeg master builds:
cd "$env:USERPROFILE\Downloads"
wget https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl-shared.zip -OutFile ffmpeg.zip
Expand-Archive -Path ffmpeg.zip -DestinationPath . -Force
Rename-Item -Path "ffmpeg-master-latest-win64-gpl-shared" -NewName "ffmpeg"
3. Installation
Option A: Direct installation via pip
pip install https://github.com/Novfensec/VideoNative/archive/main.zip --no-cache
Option B: Build the extension locally
pip install -e .
# OR using CMake directly
mkdir build
cd build
cmake ..
cmake --build . --config Release
Linux
1. Prerequisites
Install the necessary development headers and media libraries:
sudo apt update
sudo apt install build-essential pkg-config ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev
pip install ninja cmake
2. Installation
Option A: Direct installation via pip
pip install https://github.com/Novfensec/VideoNative/archive/main.zip --no-cache
Option B: Build the extension locally
pip install -e .
# OR using CMake directly
mkdir build
cd build
cmake ..
make
Android
Using the python-for-android Toolchain
To use VideoNative within Android environments, configure your buildozer.spec to use the appropriate fork and branch containing Android-specific patches:
-
Add
ffmpeg,videonativeandnumpyto your application requirements:requirements = python3, kivy, ffmpeg, videonative, numpy
-
To follow the latest development configure the toolchain source or you can proceed with
p4a.branch=developand skip this configuration:p4a.fork = novfensec p4a.branch = videonative
License
This project is licensed under the MIT License. Please review the license files of the upstream dependencies FFmpeg and miniaudio for their respective licensing terms.
Metadata
Release files for videonative 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| videonative-1.0.0.tar.gz | 64.8 MB | Without provenance | Details for videonative-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| videonative-1.0.0-cp313-cp313-manylinux_2_39_x86_64.whl | CPython 3.13 | CPython 3.13 | Linux glibc 2.39+ x86-64 | Details for videonative-1.0.0-cp313-cp313-manylinux_2_39_x86_64.whl |
Total release size: 129.3 MB
Release files / videonative-1.0.0.tar.gz
| Download URL | videonative-1.0.0.tar.gz |
|---|---|
| Size | 64.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c58b70f3634a626f5d7b3d698b968db74789d854b57f6999b65ec4f661bcff77
|
|
BLAKE2b-256 checksum How to use checksums |
d68d34b2f38c3eac56327304b90b17ef38bc5931a31b1188eec8dbfe8e34ab26
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / videonative-1.0.0-cp313-cp313-manylinux_2_39_x86_64.whl
| Download URL | videonative-1.0.0-cp313-cp313-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 64.6 MB |
| Tags | CPython 3.13 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
234c2c483c5e67c249562f6a5cb8d02df5b72f26735ac0b32c3b652997df3c34
|
|
BLAKE2b-256 checksum How to use checksums |
1d3b1f8d37cf31af2c24bbbe541ea259ed4d61a51659cee3c0da0cfcdc341bf1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Security for videonative 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.