]> git.sesse.net Git - nageru/blob - NEWS
Release Nageru 1.7.3.
[nageru] / NEWS
1 Nageru 1.7.3, May 22nd, 2018
2
3   - When using multichannel audio, add a control for adjusting the
4     stereo width (from normal stereo to mono, all the way to
5     inverted stereo).
6
7   - Removed --http-coarse-timebase (it is now always on).
8
9   - Various bugfixes.
10
11
12 Nageru 1.7.2, April 28th, 2018
13
14   - Several improvements to video (FFmpeg) inputs: You can now use
15     them as audio sources, you can right-click on video channels
16     to change URL/filename on-the-fly, themes can ask for forced
17     disconnection (useful for network sources that are hanging),
18     and various other improvements. Be aware that the audio support
19     may still be somewhat rough, as A/V sync of arbitrary video
20     playout is a hard problem.
21
22   - The included themes have been fixed to properly make the returned
23     chain preparation functions independent of global state (e.g. if
24     the white balance for a channel was changed before the frame was
25     actually rendered). If you are using a custom theme, you may want
26     to apply similar fixes to it.
27
28   - In Metacube stream output, mark each keyframe with a pts metadata
29     block. This allows Cubemap 1.4.0 or newer to serve fMP4 fragments
30     for HLS from Nageru's output, without any further remuxing or
31     transcoding.
32
33   - If needed, Nageru will now automatically try to autodetect a
34     usable --va-display parameter by probing all DRM nodes for H.264
35     encoders. This removes the need to set --va-display in almost all
36     cases, and also removes the dependency on libpci.
37
38   - For GPUs that support querying available memory (in practice only
39     NVIDIA GPUs at the current time), expose the amount of used/total
40     GPU memory both on standard output and in the Prometheus metrics
41     (as well as included Grafana dashboard).
42
43   - The Grafana dashboard now supports heatmaps for the chosen x264
44     speedcontrol preset (requires Grafana 5.1 or newer). (There used to
45     be a heatmap earlier, but it was all broken.)
46
47   - Various bugfixes.
48
49
50 Nageru 1.7.1, March 26th, 2018
51
52   - Various bugfixes, mostly related to HTML and video inputs.
53
54
55 Nageru 1.7.0, March 8th, 2018
56
57   - Support for HTML5 graphics directly in Nageru, through CEF
58     (Chromium Embedded Framework). This performs better and is more
59     flexible than integrating with CasparCG over a socket. Note that
60     CEF is an optional component; see the documentation for more
61     information.
62
63   - Add an HTTP endpoint for enumerating channels and one for getting
64     only their colors. Intended for remote tally applications;
65     set the documentation.
66
67   - Add a video grid display that removes the audio controls and shows
68     the video channels only, potentially in multiple rows if that makes
69     for a larger viewing area.
70
71   - Themes can now present simple menus in the Nageru UI. See the
72     documentation for more information.
73
74   - Various bugfixes.
75
76
77 Nageru 1.6.4, January 25th, 2018
78
79   - Fix compilation with the upcoming FFmpeg 3.5.
80
81   - Switch to LuaJIT for the theme engine, which is faster.
82
83   - Various bugfixes and smaller optimizations.
84
85
86 Nageru 1.6.3, November 8th, 2017
87
88   - Add quick-cut keys (Q, W, E, etc.) below the preview keys.
89     Since it's easy to hit these by accident and put up a signal
90     you didn't want, they are disabled by default (they can be
91     enabled in the video menu, or with the command line flag
92     --quick-cut-keys).
93
94   - Rework the x264 speedcontrol presets to better match newer
95     x264 versions.
96
97   - Add an option for changing the HTTP port (--http-port).
98
99   - Various smaller bug and integration fixes.
100
101
102 Nageru 1.6.2, July 16th, 2017
103
104   - Various smaller Kaeru fixes, mostly around metrics. Also,
105     you can now adjust the x264 bitrate in Kaeru (in 100 kbit/sec
106     increments) by sending SIGUSR1 (higher) or SIGUSR2 (lower).
107
108
109 Nageru 1.6.1, July 9th, 2017
110
111   - Add native export of Prometheus metrics.
112
113   - Rework the frame queue drop algorithm. The new one should handle tricky
114     situations much better, especially when a card is drifting very slowly
115     against the master timer.
116
117   - Add Kaeru, an experimental transcoding tool based on Nageru code.
118     Kaeru can run headless on a server without a GPU to transcode a
119     Nageru stream into a lower-bitrate one, replacing VLC.
120
121   - Work around a bug in some versions of NVIDIA's OpenGL drivers that would
122     crash Nageru after about three hours (fix in cooperation with Movit).
123
124   - Fix a crash with i965-va-driver 1.8.x.
125
126   - Reduce mutex contention in certain critical places, causing lower tail
127     latency in the mixer.
128
129
130 Nageru 1.6.0, May 29th, 2017
131
132   - Add support for having videos (from file or from URL) as a separate
133     input channels, albeit with some limitations. Apart from the obvious use of
134     looping pause clips or similar, this can be used to integrate with CasparCG;
135     see the manual for more details.
136
137   - Add a frame analyzer (accessible from the Video menu) containing an
138     RGB histogram and a color dropped tool. This is useful in calibrating
139     video chains by playing back a known signal. Note that this adds a
140     dependency on QCustomPlot.
141
142   - Allow overriding Y'CbCr input interpretation, for inputs that don't
143     use the correct settings. Also, Rec. 601 is now used by default instead
144     of Rec. 709 for SD resolutions.
145
146   - Support other sample rates than 48000 Hz from bmusb.
147
148
149 Nageru 1.5.0, April 5th, 2017
150
151   - Support for low-latency HDMI/SDI output in addition to (or instead of) the
152     stream. This currently only works with DeckLink cards, not bmusb. See the
153     manual for more information.
154
155   - Support changing the resolution from the command line, instead of locking
156     everything to 1280x720.
157
158   - The A/V sync code has been rewritten to be more in line with Fons
159     Adriaensen's original paper. It handles several cases much better,
160     in particular when trying to match 59.94 and 60 Hz sources to each other.
161     However, it might occasionally need a few extra seconds on startup to
162     lock properly if startup is slow.
163
164   - Add support for using x264 for the disk recording. This makes it possible,
165     among other things, to run Nageru on a machine entirely without VA-API
166     support.
167
168   - Support for 10-bit Y'CbCr, both on input and output. (Output requires
169     x264 disk recording, as Quick Sync Video does not support 10-bit H.264.)
170     This requires compute shader support, and is in general a little bit
171     slower on input and output, due to the extra amount of data being shuffled
172     around. Intermediate precision is 16-bit floating-point or better,
173     as before.
174
175   - Enable input mode autodetection for DeckLink cards that support it.
176     (bmusb mode has always been autodetected.)
177
178   - Add functionality to add a time code to the stream; useful for debugging
179     latency.
180
181   - The live display is now both more performant and of higher image quality.
182
183   - Fix a long-standing issue where the preview displays would be too bright
184     when using an NVIDIA GPU. (This did not affect the finished stream.)
185
186   - Many other bugfixes and small improvements.
187
188
189 Nageru 1.4.2, November 24th, 2016
190
191   - Fix a thread race that would sometimes cause x264 streaming to go awry.
192
193
194 Nageru 1.4.1, November 6th, 2016
195
196   - Various bugfixes.
197
198
199 Nageru 1.4.0, October 26th, 2016
200
201   - Support for multichannel (or more accurately, multi-bus) audio,
202     choosable from the UI or using the --multichannel command-line
203     flag. In multichannel mode, you can take in inputs from multiple
204     different sources (or different channels on the same source, for
205     multichannel sound cards), apply effects to them separately and then
206     mix them together. This includes both audio from the video cards
207     as well as ALSA inputs, including hotplug. Ola Gundelsby contributed
208     invaluable feedback on this feature throughout the entire
209     development cycle.
210
211   - Support for having MIDI controllers control various aspects of the
212     audio UI, with relatively flexible mapping. Note that different
213     MIDI controllers can vary significantly in what protocol they speak,
214     so Nageru will not necessarily work with all. (The primary testing
215     controller has been the Akai MIDImix, and a pre-made mapping for
216     that is included. The Korg nanoKONTROL2 has also been tested and
217     works, but it requires some Korg-specific SysEx commands to make
218     the buttons and lights work.)
219
220   - Add a disk space indicator to the main window.
221
222   - Various bugfixes. In particular, an issue where the audio would pitch
223     up sharply after a series of many dropped frames has been fixed.
224
225
226 Nageru 1.3.4, August 2nd, 2016
227
228   - Various bugfixes.
229
230
231 Nageru 1.3.3, July 27th, 2016
232
233   - Various changes to make distribution packaging easier; in particular,
234     theme data can be picked up from /usr/local/share/nageru.
235
236   - Fix various FFmpeg deprecation warnings, now that we need FFmpeg
237     3.1 for other reasons anyway.
238
239
240 Nageru 1.3.2, July 23rd, 2016
241
242   - Allow limited hotplugging (unplugging and replugging) of USB cards.
243     You can use the new command-line option --num-fake-cards (-C) to add
244     fake cards that show only a single color and that will be replaced
245     by real cards as you plug them in; you can also unplug cards and have
246     them be replaced by fake cards. Fake cards can also be used for testing
247     Nageru without actually having any video cards available.
248
249   - Add Metacube timestamping of every keyframe, for easier detection of
250     streams not keeping up. Works with the new timestamp feature of
251     Cubemap 1.3.1. Will be ignored (save for some logging) in older
252     Cubemap versions.
253
254   - The included default theme has been reworked and cleaned up to be
255     more understandable and extensible.
256
257   - Add more command-line options for initial audio setup.
258
259
260 Nageru 1.3.1, July 1st, 2016
261
262  - Various display bugfixes.
263
264
265 Nageru 1.3.0, June 26th, 2016
266
267  - It is now possible, given enough CPU power (e.g., a quad-core Haswell or
268    faster desktop CPU), to output a stream that is suitable for streaming
269    directly to end users without further transcoding. In particular, this
270    includes support for encoding the network stream with x264 (the stream
271    saved to disk is still done using Quick Sync), for Metacube framing (for
272    streaming to the Cubemap reflector), and for choosing the network stream
273    mux. For more information, see the README.
274
275  - Add a flag (--disable-alsa-output) to disable ALSA monitoring output.
276
277  - Do texture uploads from the main thread instead of from separate threads;
278    may or may not improve stability with NVIDIA's proprietary drivers.
279
280  - When beginning a new video segment, the shutdown of the old encoder
281    is now done in a background thread, in order to not disturb the external
282    stream. The audio still goes into a somewhat random stream, though.
283
284  - You can now override the default stream-to-card mapping with --map-signal=
285    on the command line.
286
287  - Nageru now tries to lock itself into RAM if it has the permissions to do
288    so, for better realtime behavior. (Writing the stream to disk tends to
289    fill the buffer cache, eventually paging less-used parts of Nageru out.)
290
291  - Various fixes for deadlocks, memory leaks, and many other errors.
292
293
294 Nageru 1.2.1, April 15th, 2016
295
296  - Images are now updated from disk about every second, so that it is possible
297    to update e.g. overlays during streaming, although somewhat slowly.
298
299  - Fix support for PNG images.
300
301  - You can now send SIGHUP to start a new cut instead of using the menu.
302
303  - Added a --help option.
304
305  - Various tweaks to OpenGL fence handling.
306
307
308 Nageru 1.2.0, April 6th, 2016
309
310  - Support for Blackmagic's PCI and Thunderbolt cards, using the official
311    (closed-source) Blackmagic drivers. (You do not need the SDK installed, though.)
312    You can use PCI and USB cards pretty much interchangeably.
313
314  - Much more stable handling of frame queues on non-master cards. In particular,
315    you can have a master card on 50 Hz and another card on 60 Hz without getting
316    lots of warning messages and a 10+ frame latency on the second card.
317
318  - Many new options in the right click menu on cards: Adjustable video inputs,
319    adjustable audio inputs, adjustable resolutions, ability to select card for
320    master clock.
321
322  - Add support for starting with almost all audio processing turned off
323    (--flat-audio).
324
325  - The UI now marks inputs with red or green to mark them as participating in
326    the live or preview signal, respectively. Red takes priority. (Actually,
327    it merely asks the theme for a color for each input; the theme contains
328    the logic.)
329
330  - Add support for uncompressed video instead of H.264 on the HTTP server,
331    while still storing H.264 to files (--http-uncompressed-video). Note that
332    depending on your client, this might not actually be more CPU efficient
333    even on localhost, so be sure to check.
334
335  - Add a simpler, less featureful theme (simple.lua) that should be easier to
336    understand for beginners. Themes are now also choosable with -t on the command
337    line.
338
339  - Too many bugfixes and small tweaks to list. In particular, many memory leaks
340    in the streaming part have been identified and fixed.
341
342
343 Nageru 1.1.0, February 24th, 2016
344
345  - Support doing the H.264 encoding on a different graphics device from the one
346    doing the mixing. In particular, this makes it possible to use Nageru on an
347    NVIDIA GPU while still encoding H.264 video using Intel Quick Sync (NVENC
348    is not supported yet) -- it is less efficient since the data needs to be read
349    back via the CPU, but the NVIDIA cards and drivers are so much faster that it
350    doesn't really matter. Tested on a GTX 950 with the proprietary drivers.
351
352  - In the included example theme, fix fading to/from deinterlaced sources.
353
354  - Various smaller compilation, distribution and documentation fixes.
355
356
357 Nageru 1.0.0, January 30th, 2016
358
359  - Initial release.