nageru
2 years agoRelease Nageru 1.7.1. 1.7.1
Steinar H. Gunderson [Mon, 26 Mar 2018 21:43:48 +0000 (23:43 +0200)]
Release Nageru 1.7.1.

2 years agoSimplify the timebase conversion in mux.cpp.
Steinar H. Gunderson [Sat, 24 Mar 2018 17:02:59 +0000 (18:02 +0100)]
Simplify the timebase conversion in mux.cpp.

2 years agoFix an FFmpeg deprecation warning.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:53:01 +0000 (17:53 +0100)]
Fix an FFmpeg deprecation warning.

2 years agoFix a buffer overrun when compiled without CEF.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:49:52 +0000 (17:49 +0100)]
Fix a buffer overrun when compiled without CEF.

2 years agoSync bmusb (got inadvertedly rewound earlier).
Steinar H. Gunderson [Sat, 24 Mar 2018 16:40:54 +0000 (17:40 +0100)]
Sync bmusb (got inadvertedly rewound earlier).

2 years agoFix a Clang warning.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:38:51 +0000 (17:38 +0100)]
Fix a Clang warning.

2 years agoFix some compiler warnings.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:31:57 +0000 (17:31 +0100)]
Fix some compiler warnings.

2 years agoFix some Clang warnings.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:59:46 +0000 (16:59 +0100)]
Fix some Clang warnings.

2 years agoFix a thread race in X264Encoder. Found by GCC TSan.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:33:20 +0000 (16:33 +0100)]
Fix a thread race in X264Encoder. Found by GCC TSan.

2 years agoFix a thread race in QuickSyncEncoder. Found by GCC TSan.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:33:11 +0000 (16:33 +0100)]
Fix a thread race in QuickSyncEncoder. Found by GCC TSan.

2 years agoFix compilation without CEF.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:17:46 +0000 (16:17 +0100)]
Fix compilation without CEF.

2 years agoYet another CEF-from-system tweak; assume libcef.so needs no rpath.
Steinar H. Gunderson [Wed, 21 Mar 2018 22:02:19 +0000 (23:02 +0100)]
Yet another CEF-from-system tweak; assume libcef.so needs no rpath.

2 years agoFix a crash bug when trying to send disconnected frames for Y'CbCr FFmpeg inputs.
Steinar H. Gunderson [Wed, 21 Mar 2018 17:19:13 +0000 (18:19 +0100)]
Fix a crash bug when trying to send disconnected frames for Y'CbCr FFmpeg inputs.

2 years agoDo not link kaeru against CEF.
Steinar H. Gunderson [Tue, 20 Mar 2018 22:07:11 +0000 (23:07 +0100)]
Do not link kaeru against CEF.

2 years agoWhen using CEF_BUILD_TYPE=system, do not take a private copy of CEF.
Steinar H. Gunderson [Tue, 20 Mar 2018 20:42:42 +0000 (21:42 +0100)]
When using CEF_BUILD_TYPE=system, do not take a private copy of CEF.

2 years agoClean kaeru on make clean.
Steinar H. Gunderson [Tue, 20 Mar 2018 20:17:27 +0000 (21:17 +0100)]
Clean kaeru on make clean.

2 years agoSync bmusb to 0.7.1 (no real changes).
Steinar H. Gunderson [Sun, 18 Mar 2018 22:45:10 +0000 (23:45 +0100)]
Sync bmusb to 0.7.1 (no real changes).

2 years agoFix an issue where we could discard a CEF frame in a situation where no new one would...
Steinar H. Gunderson [Sun, 18 Mar 2018 22:26:00 +0000 (23:26 +0100)]
Fix an issue where we could discard a CEF frame in a situation where no new one would come, and thus be stuck on an old frame forever.

2 years agoWhen dropping CEF frames, ask for invalidation only a bit later.
Steinar H. Gunderson [Sun, 18 Mar 2018 22:10:24 +0000 (23:10 +0100)]
When dropping CEF frames, ask for invalidation only a bit later.

2 years agoFix a bug when looping FFmpeg inputs that have no audio.
Steinar H. Gunderson [Sat, 17 Mar 2018 15:14:41 +0000 (16:14 +0100)]
Fix a bug when looping FFmpeg inputs that have no audio.

2 years ago(Hopefully! :-) ) fix some deadlocks during CEF shutdown.
Steinar H. Gunderson [Tue, 13 Mar 2018 17:56:31 +0000 (18:56 +0100)]
(Hopefully! :-) ) fix some deadlocks during CEF shutdown.

2 years agoDo not wait for OnBrowserDestroyed.
Steinar H. Gunderson [Tue, 13 Mar 2018 17:36:10 +0000 (18:36 +0100)]
Do not wait for OnBrowserDestroyed.

Evidently, there's no guarantee that this will ever come; see

  http://magpcss.org/ceforum/viewtopic.php?f=6&t=14687

We were seemingly saved by our own inverted logic here earlier.

2 years agoSupport building against system CEF, if one should be so lucky as to have such a...
Steinar H. Gunderson [Sat, 10 Mar 2018 23:38:35 +0000 (00:38 +0100)]
Support building against system CEF, if one should be so lucky as to have such a thing.

2 years agoRelease Nageru 1.7.0. 1.7.0
Steinar H. Gunderson [Thu, 8 Mar 2018 18:31:41 +0000 (19:31 +0100)]
Release Nageru 1.7.0.

2 years agoSmall hack; reject unknown /channels/foo instead of giving out the video stream.
Steinar H. Gunderson [Wed, 7 Mar 2018 20:26:59 +0000 (21:26 +0100)]
Small hack; reject unknown /channels/foo instead of giving out the video stream.

2 years agoExpose the absolute path to the theme in Nageru.THEME_PATH.
Steinar H. Gunderson [Thu, 1 Mar 2018 19:08:59 +0000 (20:08 +0100)]
Expose the absolute path to the theme in Nageru.THEME_PATH.

Presumably useful if the theme wants to open up CEF stuff that is relative
to its own path (perhaps even in the same directory).

Also don't let themes return values (with LUA_MULTRET); they'd just hit the
assert one line further down anyway.

2 years agoAdd resize(), so that HTML inputs do not need to be locked to the video resolution.
Steinar H. Gunderson [Thu, 1 Mar 2018 08:30:23 +0000 (09:30 +0100)]
Add resize(), so that HTML inputs do not need to be locked to the video resolution.

2 years agoProperly take the Lua lock when processing menu callbacks.
Steinar H. Gunderson [Thu, 1 Mar 2018 08:27:55 +0000 (09:27 +0100)]
Properly take the Lua lock when processing menu callbacks.

2 years agoFix compilation with LuaJIT 2.0 (which Debian stretch ships).
Steinar H. Gunderson [Tue, 27 Feb 2018 17:47:26 +0000 (18:47 +0100)]
Fix compilation with LuaJIT 2.0 (which Debian stretch ships).

Reported by Marcus Nilsen.

2 years agoFix an issue where you could not give an absolute path to a theme.
Steinar H. Gunderson [Mon, 26 Feb 2018 23:58:20 +0000 (00:58 +0100)]
Fix an issue where you could not give an absolute path to a theme.

2 years agoAdd a system where themes can present a simple menu to the user.
Steinar H. Gunderson [Mon, 26 Feb 2018 23:50:02 +0000 (00:50 +0100)]
Add a system where themes can present a simple menu to the user.

2 years agoMake execute_javascript_async() wait for any pending reload().
Steinar H. Gunderson [Mon, 26 Feb 2018 23:49:48 +0000 (00:49 +0100)]
Make execute_javascript_async() wait for any pending reload().

2 years ago2018 README updates.
Steinar H. Gunderson [Mon, 26 Feb 2018 19:04:51 +0000 (20:04 +0100)]
2018 README updates.

2 years agoFix an issue where the mixer lagging too much behind CEF would cause us to display... cef
Steinar H. Gunderson [Mon, 26 Feb 2018 17:54:01 +0000 (18:54 +0100)]
Fix an issue where the mixer lagging too much behind CEF would cause us to display an old frame forever.

2 years agoWhen asked to execute JavaScript, defer until the current page load is done.
Steinar H. Gunderson [Sun, 25 Feb 2018 22:30:49 +0000 (23:30 +0100)]
When asked to execute JavaScript, defer until the current page load is done.

2 years agoUpdate the README for CEF.
Steinar H. Gunderson [Sun, 25 Feb 2018 17:40:20 +0000 (18:40 +0100)]
Update the README for CEF.

2 years agoCopy and install CEF pack dependencies together with Nageru.
Steinar H. Gunderson [Sun, 25 Feb 2018 17:36:29 +0000 (18:36 +0100)]
Copy and install CEF pack dependencies together with Nageru.

2 years agoMake compiling with CEF optional.
Steinar H. Gunderson [Sun, 25 Feb 2018 14:49:37 +0000 (15:49 +0100)]
Make compiling with CEF optional.

2 years agoImplement HTMLInput::execute_javascript_async().
Steinar H. Gunderson [Sun, 25 Feb 2018 15:26:58 +0000 (16:26 +0100)]
Implement HTMLInput::execute_javascript_async().

2 years agoImplement HTMLInput::set_max_fps().
Steinar H. Gunderson [Sun, 25 Feb 2018 14:33:50 +0000 (15:33 +0100)]
Implement HTMLInput::set_max_fps().

2 years agoImplement HTMLInput::reload().
Steinar H. Gunderson [Sun, 25 Feb 2018 14:21:52 +0000 (15:21 +0100)]
Implement HTMLInput::reload().

2 years agoImplement HTMLInput::set_url().
Steinar H. Gunderson [Sun, 25 Feb 2018 12:45:43 +0000 (13:45 +0100)]
Implement HTMLInput::set_url().

2 years agoImplement basic support for CEF.
Steinar H. Gunderson [Sat, 24 Feb 2018 17:49:36 +0000 (18:49 +0100)]
Implement basic support for CEF.

Having CEF directly into the process is less cumbersome than calling out
to CasparCG over a pipe, and typically yields higher performance.

2 years agoAdd ui_analyzer.h to .gitignore.
Steinar H. Gunderson [Sat, 24 Feb 2018 17:49:59 +0000 (18:49 +0100)]
Add ui_analyzer.h to .gitignore.

2 years agoAdd kaeru to .gitignore.
Steinar H. Gunderson [Sat, 24 Feb 2018 00:08:32 +0000 (01:08 +0100)]
Add kaeru to .gitignore.

2 years agoFix a stray debugging printf.
Steinar H. Gunderson [Mon, 19 Feb 2018 16:48:52 +0000 (17:48 +0100)]
Fix a stray debugging printf.

2 years agoCreate QApplication after setting the OpenGL default format. Fixes a warning in newer Qt.
Steinar H. Gunderson [Mon, 19 Feb 2018 08:39:35 +0000 (09:39 +0100)]
Create QApplication after setting the OpenGL default format. Fixes a warning in newer Qt.

2 years agoDo not try to subscribe to our own MIDI port; causes some warnings on the console.
Steinar H. Gunderson [Mon, 19 Feb 2018 08:38:01 +0000 (09:38 +0100)]
Do not try to subscribe to our own MIDI port; causes some warnings on the console.

2 years agoFix a dependency.
Steinar H. Gunderson [Mon, 19 Feb 2018 08:17:00 +0000 (09:17 +0100)]
Fix a dependency.

2 years agoAdd a CORS policy to the channel endpoints, so that external applications can query...
Steinar H. Gunderson [Sun, 18 Feb 2018 19:08:45 +0000 (20:08 +0100)]
Add a CORS policy to the channel endpoints, so that external applications can query the tally light.

2 years agoEnable the video grid display for simple video mode, too.
Steinar H. Gunderson [Sun, 18 Feb 2018 18:12:38 +0000 (19:12 +0100)]
Enable the video grid display for simple video mode, too.

2 years agoSupport a video grid view (ie., no audio controls at all) as third audio display...
Steinar H. Gunderson [Sun, 18 Feb 2018 09:14:56 +0000 (10:14 +0100)]
Support a video grid view (ie., no audio controls at all) as third audio display option.

2 years agoStop trying to re-probe ALSA cards if they are not capture cards. Reduces the debug...
Steinar H. Gunderson [Sun, 18 Feb 2018 10:13:35 +0000 (11:13 +0100)]
Stop trying to re-probe ALSA cards if they are not capture cards. Reduces the debug spew a bit.

2 years agoAdd an HTTP endpoint for enumerating channels and one for getting only their colors...
Steinar H. Gunderson [Thu, 15 Feb 2018 18:23:46 +0000 (19:23 +0100)]
Add an HTTP endpoint for enumerating channels and one for getting only their colors. Intended for remote tally applications.

2 years agoRelease Nageru 1.6.4. 1.6.4
Steinar H. Gunderson [Thu, 25 Jan 2018 17:25:11 +0000 (18:25 +0100)]
Release Nageru 1.6.4.

2 years agoAPI fix for the upcoming FFmpeg 3.5 release.
Steinar H. Gunderson [Wed, 24 Jan 2018 23:31:24 +0000 (00:31 +0100)]
API fix for the upcoming FFmpeg 3.5 release.

2 years agoFix an issue where we'd count jitter history from the wrong side.
Steinar H. Gunderson [Fri, 10 Nov 2017 17:23:26 +0000 (18:23 +0100)]
Fix an issue where we'd count jitter history from the wrong side.

Would not only give horribly wrong results, but also consume tons
of CPU power.

2 years agoCut a few more allocations.
Steinar H. Gunderson [Fri, 10 Nov 2017 17:05:11 +0000 (18:05 +0100)]
Cut a few more allocations.

2 years agoSwitch to LuaJIT; faster, less allocation-heavy and no real downsides.
Steinar H. Gunderson [Fri, 10 Nov 2017 16:19:34 +0000 (17:19 +0100)]
Switch to LuaJIT; faster, less allocation-heavy and no real downsides.

2 years agoFix a crash if exiting while we are still trying to re-find an ALSA card from a loade...
Steinar H. Gunderson [Thu, 9 Nov 2017 20:01:13 +0000 (21:01 +0100)]
Fix a crash if exiting while we are still trying to re-find an ALSA card from a loaded mapping.

2 years agoRemove some random unneeded memory allocations.
Steinar H. Gunderson [Thu, 9 Nov 2017 20:00:03 +0000 (21:00 +0100)]
Remove some random unneeded memory allocations.

2 years agoCut some unneccessary allocations.
Steinar H. Gunderson [Thu, 9 Nov 2017 18:49:46 +0000 (19:49 +0100)]
Cut some unneccessary allocations.

2 years agoFix a leak when streaming. Requires FFmpeg 3.3, though. (See FFmpeg bug #6520.)
Steinar H. Gunderson [Thu, 9 Nov 2017 16:44:52 +0000 (17:44 +0100)]
Fix a leak when streaming. Requires FFmpeg 3.3, though. (See FFmpeg bug #6520.)

2 years agoGive a warning before quitting if there are clients connected.
Steinar H. Gunderson [Wed, 8 Nov 2017 21:30:03 +0000 (22:30 +0100)]
Give a warning before quitting if there are clients connected.

2 years agoFix so that you can't right-click on non-signal channels anymore.
Steinar H. Gunderson [Wed, 8 Nov 2017 19:54:30 +0000 (20:54 +0100)]
Fix so that you can't right-click on non-signal channels anymore.

Was broken during the making of the frame analyzer in 1.6.0.

2 years agoRelease Nageru 1.6.3. 1.6.3
Steinar H. Gunderson [Wed, 8 Nov 2017 17:49:33 +0000 (18:49 +0100)]
Release Nageru 1.6.3.

2 years agoPut the quick-cut keys behind a command-line flag; I hate more switches, but they...
Steinar H. Gunderson [Sun, 29 Oct 2017 14:08:51 +0000 (15:08 +0100)]
Put the quick-cut keys behind a command-line flag; I hate more switches, but they are just too easy to hit during normal operation.

2 years agoMake the HTTP port settable.
Steinar H. Gunderson [Sat, 28 Oct 2017 11:44:27 +0000 (13:44 +0200)]
Make the HTTP port settable.

2 years agoFix compilation with older FFmpeg.
Steinar H. Gunderson [Sat, 28 Oct 2017 11:01:15 +0000 (13:01 +0200)]
Fix compilation with older FFmpeg.

2 years agoAdd a missing #include.
Steinar H. Gunderson [Sat, 28 Oct 2017 11:00:16 +0000 (13:00 +0200)]
Add a missing #include.

2 years agoDeal with FFmpeg returning unknown audio channel layouts.
Steinar H. Gunderson [Wed, 25 Oct 2017 18:47:58 +0000 (20:47 +0200)]
Deal with FFmpeg returning unknown audio channel layouts.

2 years agoAdd back support for input-only DeckLink cards.
Steinar H. Gunderson [Wed, 25 Oct 2017 18:08:05 +0000 (20:08 +0200)]
Add back support for input-only DeckLink cards.

2 years agoFix an issue with Quick Sync in newer VA-API.
Steinar H. Gunderson [Fri, 20 Oct 2017 22:36:15 +0000 (00:36 +0200)]
Fix an issue with Quick Sync in newer VA-API.

2 years agoAdd quick-cut keys (Q, W, E, etc.) below the preview keys.
Steinar H. Gunderson [Fri, 20 Oct 2017 22:29:12 +0000 (00:29 +0200)]
Add quick-cut keys (Q, W, E, etc.) below the preview keys.

2 years agoSpecify sRGB transfer characteristics in the x264 output, too.
Steinar H. Gunderson [Sun, 20 Aug 2017 19:07:21 +0000 (21:07 +0200)]
Specify sRGB transfer characteristics in the x264 output, too.

2 years agosetChecked() takes a bool, not an enum.
Steinar H. Gunderson [Tue, 8 Aug 2017 16:05:06 +0000 (18:05 +0200)]
setChecked() takes a bool, not an enum.

2 years agoSave a glGetIntegerv() call every time we draw.
Steinar H. Gunderson [Tue, 8 Aug 2017 16:04:38 +0000 (18:04 +0200)]
Save a glGetIntegerv() call every time we draw.

2 years agoSpecify sRGB transfer characteristics in the H.264 files (added in newer versions...
Steinar H. Gunderson [Mon, 7 Aug 2017 19:31:26 +0000 (21:31 +0200)]
Specify sRGB transfer characteristics in the H.264 files (added in newer versions of H.264).

2 years agoConvert some NULL instances to nullptr.
Steinar H. Gunderson [Mon, 7 Aug 2017 19:30:54 +0000 (21:30 +0200)]
Convert some NULL instances to nullptr.

2 years agoRework the x264 speedcontrol presets.
Steinar H. Gunderson [Fri, 21 Jul 2017 11:11:36 +0000 (13:11 +0200)]
Rework the x264 speedcontrol presets.

Since speedcontrol was made, x264 has adjusted its “slower” preset,
so follow suit. This influences some of the other presets as well.

Unfortunately, I couldn't reproduce my previous results using
“Tears of Steel”, and the original scripts to do so have been lost;
when testing, the SSIM improves way too slowly. Switch to
“Elephants Dream” instead, even though --trellis 1 seems to yield
a slight SSIM _decrease_ for this clip, and check in the new scripts
to increase reproducibility of results. The measurements are on the
same machine. The timings have shifted around a bit (it looks like
the two fastest modes are faster, relatively speaking); potentially
due to x264 optimizations, but more likely due to differing content
and bitrate flags.

This is measured at the x264 version which is in Debian stretch,
which is r2748 (git 97eaef2).

2 years agoRelease Nageru 1.6.2. 1.6.2
Steinar H. Gunderson [Sun, 16 Jul 2017 01:35:49 +0000 (03:35 +0200)]
Release Nageru 1.6.2.

2 years agoSet the correct sample rate in the returned audio format if an ALSA device chose...
Steinar H. Gunderson [Sun, 16 Jul 2017 01:34:37 +0000 (03:34 +0200)]
Set the correct sample rate in the returned audio format if an ALSA device chose a different rate than the one we asked for.

2 years agoProperly flush the codecs when rewinding.
Steinar H. Gunderson [Wed, 12 Jul 2017 21:53:18 +0000 (23:53 +0200)]
Properly flush the codecs when rewinding.

2 years agoCorrect the signal name in a Kaeru message.
Steinar H. Gunderson [Tue, 11 Jul 2017 19:55:25 +0000 (21:55 +0200)]
Correct the signal name in a Kaeru message.

2 years agoUnbreak --no-audio-transcode.
Steinar H. Gunderson [Mon, 10 Jul 2017 22:32:33 +0000 (00:32 +0200)]
Unbreak --no-audio-transcode.

2 years agoFix some potential memory leaks in FFmpegCapture.
Steinar H. Gunderson [Mon, 10 Jul 2017 21:15:42 +0000 (23:15 +0200)]
Fix some potential memory leaks in FFmpegCapture.

2 years agoGive Kaeru slightly cleaner shutdown on Ctrl-C.
Steinar H. Gunderson [Mon, 10 Jul 2017 16:10:51 +0000 (18:10 +0200)]
Give Kaeru slightly cleaner shutdown on Ctrl-C.

2 years agoUpdate the x264 speedcontrol buffer size metric when the buffer changes.
Steinar H. Gunderson [Mon, 10 Jul 2017 11:35:19 +0000 (13:35 +0200)]
Update the x264 speedcontrol buffer size metric when the buffer changes.

2 years agoFactor the basic metrics (memory, uptime, etc.) into a separate class, so that Kaeru...
Steinar H. Gunderson [Mon, 10 Jul 2017 10:36:39 +0000 (12:36 +0200)]
Factor the basic metrics (memory, uptime, etc.) into a separate class, so that Kaeru can also use it.

2 years agoFix frame duration calculation in Kaeru; could throw speedcontrol off.
Steinar H. Gunderson [Mon, 10 Jul 2017 10:07:05 +0000 (12:07 +0200)]
Fix frame duration calculation in Kaeru; could throw speedcontrol off.

2 years agoAdd latency metrics to Kaeru.
Steinar H. Gunderson [Sun, 9 Jul 2017 13:37:16 +0000 (15:37 +0200)]
Add latency metrics to Kaeru.

2 years agoAdd mux metrics to Kaeru.
Steinar H. Gunderson [Sun, 9 Jul 2017 13:25:06 +0000 (15:25 +0200)]
Add mux metrics to Kaeru.

2 years agoAdd support for adjusting the x264 bitrate in Kaeru through sending SIGUSR1 and SIGUSR2.
Steinar H. Gunderson [Sun, 9 Jul 2017 13:22:06 +0000 (15:22 +0200)]
Add support for adjusting the x264 bitrate in Kaeru through sending SIGUSR1 and SIGUSR2.

2 years agoFix the kanji in Kaeru.
Steinar H. Gunderson [Sun, 9 Jul 2017 13:11:33 +0000 (15:11 +0200)]
Fix the kanji in Kaeru.

2 years agoUpdate the feature list, a bit overdue.
Steinar H. Gunderson [Sun, 9 Jul 2017 09:11:13 +0000 (11:11 +0200)]
Update the feature list, a bit overdue.

2 years agoRelease Nageru 1.6.1. 1.6.1
Steinar H. Gunderson [Sat, 8 Jul 2017 23:45:59 +0000 (01:45 +0200)]
Release Nageru 1.6.1.

2 years agoInclude an example Grafana dashboard.
Steinar H. Gunderson [Sat, 8 Jul 2017 23:45:02 +0000 (01:45 +0200)]
Include an example Grafana dashboard.

2 years agoInstall kaeru on make install.
Steinar H. Gunderson [Sat, 8 Jul 2017 23:43:17 +0000 (01:43 +0200)]
Install kaeru on make install.

2 years agoBuild Kaeru by default.
Steinar H. Gunderson [Sat, 8 Jul 2017 22:46:58 +0000 (00:46 +0200)]
Build Kaeru by default.

2 years agoAdd support for transcoding the audio in Kaeru (on by default).
Steinar H. Gunderson [Sat, 8 Jul 2017 16:43:39 +0000 (18:43 +0200)]
Add support for transcoding the audio in Kaeru (on by default).