X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=README;h=9a7e121f1965e98a03cc4314012543f1625a57f5;hb=d35a697e031264d9102a52b5f41d9f4c057e9f11;hp=cd85e54fa12759449cdb77893ac0e5ccef4bd375;hpb=503db38359dad57d06121988943634e3eddc6b54;p=nageru diff --git a/README b/README index cd85e54..9a7e121 100644 --- a/README +++ b/README @@ -1,8 +1,8 @@ Nageru is a live video mixer, based around the standard M/E workflow. -Futatabi is a multicamera slow motion video server (currently undocumented). +Futatabi is a multicamera slow motion video server. -Features: +Nageru features: - High performance on modest hardware (720p60 with two input streams on my Thinkpad X240[1]); almost all pixel processing is done on the GPU. @@ -46,15 +46,13 @@ Nageru currently needs: 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, - but also for stability. You need at least version 0.7.3. + but also for stability. You need at least version 0.7.4. - Movit, my GPU-based video filter library (https://movit.sesse.net). You will need at least version 1.5.2. - Qt 5.5 or newer for the GUI. - - QCustomPlot for the histogram display in the frame analyzer. - - libmicrohttpd for the embedded web server. - x264 for encoding high-quality video suitable for streaming to end users. @@ -72,7 +70,11 @@ Nageru currently needs: - 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. + + - Protocol Buffers (protobuf), for storing various forms of settings and + state. - Meson, for building. @@ -86,18 +88,36 @@ Nageru currently needs: is fine) and add -Dcef_dir=/cef_binary_X.XXXX.XXXX.XXXXXXXX_linux64 on the meson command line (substituting X with the real version as required). + - Optional: libsrt, for SRT inputs (by default, Nageru will listen on + port 9710, although you can change this port on the command line, + turn it off with --srt-port -1, or turn it off live in the UI). + If you build with libsrt, make sure it is not linked to OpenSSL, + for license reasons. + + - Optional: SVT-AV1, for encoding high-quality video suitable for streaming to + end users (higher quality than using x264, but not nearly as mature). + You will need at least version 1.0.0. + + +Futatabi also needs: + + - A fast GPU with OpenGL 4.5 support (GTX 1080 or similar recommended for + best quality at HD resolutions, although 950 should work). -If on Debian buster or something similar, you can install everything you need + - SQLite, for storing state. + + +If on Debian bullsey or something similar, you can install everything you need with: - apt install qtbase5-dev libqt5opengl5-dev qt5-default libqcustomplot-dev \ + apt install qtbase5-dev libqt5opengl5-dev qt5-default \ 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 + libprotobuf-dev libsqlite3-dev meson libjpeg-dev libsrt-gnutls-dev -Exceptions as of December 2018: +Exceptions as of July 2022: - Debian does not carry CEF (but it is optional). You can get experimental (and not security-supported) CEF Debian packages built for unstable at @@ -105,16 +125,22 @@ Exceptions as of December 2018: meson obj -Dcef_dir=/usr/lib/x86_64-linux-gnu/cef -Dcef_build_type=system -Dcef_no_icudtl=true + - Debian's SVT-AV1 is too old, so you will need to compile it yourself + if you wish to use it for streaming. + + 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 (ie., my ex-work email), and under the same license as zita-resampler itself. -Nageru uses Meson to build. For a default build, type +Nageru and Futatabi use Meson to build. For a default build (building both), +type meson obj && cd obj && ninja -To start it, just hook up your equipment, and then type “./nageru”. +To start Nageru, just hook up your equipment, and then type “./nageru”. +For Futatabi documentation, please see https://nageru.sesse.net/doc/. 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. @@ -155,6 +181,9 @@ The name “Nageru” is a play on the Japanese verb 投げる (nageru), which m to throw or cast. (I also later learned that it could mean to face defeat or give up, but that's not the intended meaning.) +The name “Futatabi” comes from the Japanese adverb 再び (futatabi), which means +“again” or “for the second time”. + Nageru's home page is at https://nageru.sesse.net/, where you can also find contact information, full documentation and link to the latest version. @@ -170,6 +199,7 @@ Portions Copyright (C) 2010-2015 Fons Adriaensen . Portions Copyright (C) 2012-2015 Fons Adriaensen . Portions Copyright (C) 2008-2015 Fons Adriaensen . Portions Copyright (c) 2007-2013 Intel Corporation. All Rights Reserved. +Portions Copyright (C) 2019 Yngve Molnes. This program is free software: you can redistribute it and/or modify