- High output quality; Lanczos3 scaling, subpixel precision everywhere,
white balance adjustment, mix of 16- and 32-bit floating point
- High output quality; Lanczos3 scaling, subpixel precision everywhere,
white balance adjustment, mix of 16- and 32-bit floating point
- Proper sound support: Syncing of multiple unrelated sources through
high-quality resampling, multichannel mixing with separate effects
- Proper sound support: Syncing of multiple unrelated sources through
high-quality resampling, multichannel mixing with separate effects
pipelines, running transitions etc., so that the visual look is
consistent between operators.
pipelines, running transitions etc., so that the visual look is
consistent between operators.
[1] For reference, that is: Core i7 4600U (dualcore 2.10GHz, clocks down
to 800 MHz after 30 seconds due to thermal constraints), Intel HD Graphics
4400 (ie., without the extra L4 cache from Iris Pro), single-channel DDR3 RAM
(so 12.8 GB/sec theoretical memory bandwidth, shared between CPU and GPU).
[1] For reference, that is: Core i7 4600U (dualcore 2.10GHz, clocks down
to 800 MHz after 30 seconds due to thermal constraints), Intel HD Graphics
4400 (ie., without the extra L4 cache from Iris Pro), single-channel DDR3 RAM
(so 12.8 GB/sec theoretical memory bandwidth, shared between CPU and GPU).
- An Intel processor with Intel Quick Sync, or otherwise some hardware
H.264 encoder exposed through VA-API. Note that you can use VA-API over
DRM instead of X11, to use a non-Intel GPU for rendering but still use
- An Intel processor with Intel Quick Sync, or otherwise some hardware
H.264 encoder exposed through VA-API. Note that you can use VA-API over
DRM instead of X11, to use a non-Intel GPU for rendering but still use
- Two or more Blackmagic USB3 or PCI cards, either HDMI or SDI.
The PCI cards need Blackmagic's own drivers installed. The USB3 cards
are driven through the “bmusb” driver, using libusb-1.0. If you want
zerocopy USB, you need libusb 1.0.21 or newer, as well as a recent
kernel (4.6.0 or newer). Zerocopy USB helps not only for performance,
- Two or more Blackmagic USB3 or PCI cards, either HDMI or SDI.
The PCI cards need Blackmagic's own drivers installed. The USB3 cards
are driven through the “bmusb” driver, using libusb-1.0. If you want
zerocopy USB, you need libusb 1.0.21 or newer, as well as a recent
kernel (4.6.0 or newer). Zerocopy USB helps not only for performance,
- libmicrohttpd for the embedded web server.
- x264 for encoding high-quality video suitable for streaming to end users.
- libmicrohttpd for the embedded web server.
- x264 for encoding high-quality video suitable for streaming to end users.
- Working OpenGL; Movit works with almost any modern OpenGL implementation.
Nageru has been tested with Intel on Mesa (you want 11.2 or newer, due
to critical stability bugfixes), and with NVIDIA's proprietary drivers.
- Working OpenGL; Movit works with almost any modern OpenGL implementation.
Nageru has been tested with Intel on Mesa (you want 11.2 or newer, due
to critical stability bugfixes), and with NVIDIA's proprietary drivers.
- libzita-resampler, for resampling sound sources so that they are in sync
between sources, and also for oversampling for the peak meter.
- libzita-resampler, for resampling sound sources so that they are in sync
between sources, and also for oversampling for the peak meter.
- - Lua, for driving the theme engine.
+ - LuaJIT, for driving the theme engine. You will need at least version 2.1.
+
+ - SQLite, for storing Futatabi state.
+
+ - libjpeg, for encoding MJPEG streams when VA-API JPEG support is not
+ available.
+
+ - Zita-resampler, for adjusting audio to be in sync with video.
+
+ - Protocol Buffers (protobuf), for storing various forms of settings and
+ state.
-If on Debian stretch or something similar, you can install everything you need
+ http://opensource.spotify.com/cefbuilds/index.html
+
+ Simply download the right build for your platform (the “minimal” build
+ is fine) and add -Dcef_dir=<path>/cef_binary_X.XXXX.XXXX.XXXXXXXX_linux64
+ on the meson command line (substituting X with the real version as required).
+
+
+If on Debian buster or something similar, you can install everything you need
- apt install qtbase5-dev libqt5opengl5-dev qt5-default pkg-config libmicrohttpd-dev \
- libusb-1.0-0-dev liblua5.2-dev libzita-resampler-dev libva-dev \
- libavcodec-dev libavformat-dev libswscale-dev libavresample-dev \
- libmovit-dev libegl1-mesa-dev libasound2-dev libx264-dev libbmusb-dev \
- protobuf-compiler libprotobuf-dev libpci-dev
+ apt install qtbase5-dev libqt5opengl5-dev qt5-default libqcustomplot-dev \
+ pkg-config libmicrohttpd-dev libusb-1.0-0-dev libluajit-5.1-dev \
+ libzita-resampler-dev libva-dev libavcodec-dev libavformat-dev \
+ libswscale-dev libavresample-dev libmovit-dev libegl1-mesa-dev \
+ libasound2-dev libx264-dev libbmusb-dev protobuf-compiler \
+ libprotobuf-dev libsqlite3-dev meson libjpeg-dev
- - libusb 1.0.21 is not yet in stretch; you need to fetch it from sid.
- Same with a bmusb version built against it.
+ - Debian does not carry CEF (but it is optional). You can get experimental
+ (and not security-supported) CEF Debian packages built for unstable at
+ http://storage.sesse.net/cef/, and then configure Nageru with
The patches/ directory contains a patch that helps zita-resampler performance.
It is meant for upstream, but was not in at the time Nageru was released.
It is taken to be by Steinar H. Gunderson <sesse@google.com> (ie., my ex-work
email), and under the same license as zita-resampler itself.
The patches/ directory contains a patch that helps zita-resampler performance.
It is meant for upstream, but was not in at the time Nageru was released.
It is taken to be by Steinar H. Gunderson <sesse@google.com> (ie., my ex-work
email), and under the same license as zita-resampler itself.
-To start it, just hook up your equipment, type “make” and then “./nageru”.
+Nageru uses Meson to build. For a default build, type
+
+ meson obj && cd obj && ninja
+
+To start it, just hook up your equipment, and then type “./nageru”.
+
It is strongly recommended to have the rights to run at real-time priority;
it will make the USB3 threads do so, which will make them a lot more stable.
(A reasonable hack for testing is probably just to run it as root using sudo,
It is strongly recommended to have the rights to run at real-time priority;
it will make the USB3 threads do so, which will make them a lot more stable.
(A reasonable hack for testing is probably just to run it as root using sudo,