]>
git.sesse.net Git - nageru/log
Steinar H. Gunderson [Fri, 10 Aug 2018 15:47:32 +0000 (17:47 +0200)]
Unbreak Kaeru.
Steinar H. Gunderson [Fri, 10 Aug 2018 15:46:39 +0000 (17:46 +0200)]
Add support for lift/gamma/gain in the theme.
Patch by Alexandre Thomazo, taken from the Breizhcamp repository.
Steinar H. Gunderson [Sat, 23 Jun 2018 10:54:34 +0000 (12:54 +0200)]
Fix a use of an uninitialized stack variable. Found by Clang 7.
Steinar H. Gunderson [Mon, 11 Jun 2018 07:30:30 +0000 (09:30 +0200)]
Fix a missing #include.
Steinar H. Gunderson [Sun, 3 Jun 2018 10:51:36 +0000 (12:51 +0200)]
Move memcpy_interleaved into its own file.
Steinar H. Gunderson [Sat, 2 Jun 2018 19:20:49 +0000 (21:20 +0200)]
Kaeru is not experimental anymore.
Steinar H. Gunderson [Sat, 2 Jun 2018 08:07:19 +0000 (10:07 +0200)]
Add a mode to run in full screen.
I wondered if it should be full screen, full-screen or fullscreen,
but VLC uses the option --fullscreen, and it's good to be consistent
with that.
Adapted from a patch by Yoann Dubreuil.
Steinar H. Gunderson [Sat, 2 Jun 2018 07:57:32 +0000 (09:57 +0200)]
Default to SDI inputs instead of HDMI.
This is generally a more useful default; if you have a card that takes
in both, you're more likely to use SDI than HDMI. Add an option
--default-hdmi-input to revert to the old behavior.
Adapted from a patch by Yoann Dubreuil.
Steinar H. Gunderson [Wed, 23 May 2018 17:31:47 +0000 (19:31 +0200)]
Redo x264 speed control presets without B-frame settings.
Seemingly, these can not be changed runtime, which kills our strategy
entirely for the lowest presets. Thus, these (unfortunately!) have to go;
they had no actual effect.
One _can_ set B-frame bias to -90, which gives much of the same effect,
but this is only picked up during reconfig if we have --sync-lookahead 0,
which seems to be much slower, so that won't really help either.
Steinar H. Gunderson [Tue, 22 May 2018 21:47:23 +0000 (23:47 +0200)]
Fix the LIBAVFORMAT_VERSION_INT test for skip_trailer (updated to the actual 3.3 version number).
Steinar H. Gunderson [Tue, 22 May 2018 21:36:31 +0000 (23:36 +0200)]
Fix non-transcoded audio in Kaeru in streams where the audio does not have index 1.
Steinar H. Gunderson [Tue, 22 May 2018 18:59:22 +0000 (20:59 +0200)]
Release Nageru 1.7.3.
Steinar H. Gunderson [Sun, 20 May 2018 10:45:14 +0000 (12:45 +0200)]
Make VA-API be less noisy when probing cards.
Steinar H. Gunderson [Sun, 13 May 2018 15:57:47 +0000 (17:57 +0200)]
Improve the “dropped N frames before this” warning.
Steinar H. Gunderson [Sat, 12 May 2018 23:34:24 +0000 (01:34 +0200)]
In FFmpegCapture, fix downmixing of surround signals to stereo.
Steinar H. Gunderson [Sun, 29 Apr 2018 10:10:05 +0000 (12:10 +0200)]
Remove unused should_quit member.
Steinar H. Gunderson [Sun, 29 Apr 2018 10:09:34 +0000 (12:09 +0200)]
Make for faster shutdown of DeckLink cards.
Steinar H. Gunderson [Wed, 9 May 2018 22:23:58 +0000 (00:23 +0200)]
Force --http-coarse-timebase on.
This isn't really something the user should have to think about;
it's hard to see a situation where having this off would give
a real advantage.
Steinar H. Gunderson [Sat, 5 May 2018 17:25:57 +0000 (19:25 +0200)]
Fix an issue where 1080i inputs would be autodetected as Rec. 601.
Steinar H. Gunderson [Tue, 1 May 2018 08:50:13 +0000 (10:50 +0200)]
Make some more space for the new audio control.
Steinar H. Gunderson [Tue, 1 May 2018 08:36:14 +0000 (10:36 +0200)]
If the channel is mono anyway (same source for left and right), don't bother applying stereo width, and don't enable it in the UI.
Steinar H. Gunderson [Mon, 30 Apr 2018 23:11:23 +0000 (01:11 +0200)]
Add support for stereo width on the audio bus.
Steinar H. Gunderson [Sun, 29 Apr 2018 11:18:36 +0000 (13:18 +0200)]
Document where to get CEF Debian packages.
Steinar H. Gunderson [Sun, 29 Apr 2018 11:18:12 +0000 (13:18 +0200)]
Update the bmusb copy.
Steinar H. Gunderson [Sat, 28 Apr 2018 20:47:47 +0000 (22:47 +0200)]
Remove the reference to en-US.pak.info, which newer CEF no longer carries.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:55:38 +0000 (16:55 +0200)]
Release Nageru 1.7.2.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:53:20 +0000 (16:53 +0200)]
Add a GPU memory eviction counter to the Grafana dashboard.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:51:07 +0000 (16:51 +0200)]
Add the GPU memory metrics to the Grafana dashboard.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:47:31 +0000 (16:47 +0200)]
Upgrade the Grafana dashboard to 5.1.0.
In particular, this allows us to fix the x264 speed control heat map.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:48:48 +0000 (16:48 +0200)]
Fix the names for the GPU memory metrics.
Steinar H. Gunderson [Sat, 28 Apr 2018 14:19:16 +0000 (16:19 +0200)]
Expose metrics about used GPU memory (and also print to stdout), for GPUs that expose such information.
Steinar H. Gunderson [Sat, 28 Apr 2018 13:04:15 +0000 (15:04 +0200)]
Try to autodetect a suitable DRM node for VA-API if needed.
This should help user-friendliness for initial setup a fair bit.
It also removes the dependency on libpci-dev, since outputting all
the candidate nodes probably isn't so useful anymore.
Steinar H. Gunderson [Sat, 28 Apr 2018 12:45:49 +0000 (14:45 +0200)]
Remove some stray debugging code in the theme.
Steinar H. Gunderson [Fri, 27 Apr 2018 20:26:25 +0000 (22:26 +0200)]
Loosen up an assert that would sometimes trigger when resetting FFmpeg sources.
Steinar H. Gunderson [Fri, 27 Apr 2018 18:49:18 +0000 (20:49 +0200)]
Make channel labels ignore their horizontal size policy.
This fixes an issue where the aspect ratio of the videos would be
all messed up due to the labels dictating the size. This could even
keep the window from being maximized if there were too many long
labels.
The best here would probably be some sort of marquee, but this is
an OK fix for now.
Steinar H. Gunderson [Fri, 27 Apr 2018 16:03:57 +0000 (18:03 +0200)]
Fix a crash when there are zero audio buses in multichannel mode.
Steinar H. Gunderson [Thu, 26 Apr 2018 20:43:43 +0000 (22:43 +0200)]
Fix a crash if somebody is trying to get metrics (or perhaps also tally) while we are shutting down.
Steinar H. Gunderson [Thu, 26 Apr 2018 20:31:27 +0000 (22:31 +0200)]
When grabbing the white balance, grab a single pixel instead of the entire framebuffer.
Steinar H. Gunderson [Thu, 26 Apr 2018 20:20:12 +0000 (22:20 +0200)]
Make the white balance picker more robust.
Earlier the change to neutral white balance could go out of sync
with when we wanted to sample, so we could come too early or too
late and get an already-corrected value.
This is also helped by the previous theme fixes for storing the
neutral_colors array as an upvalue in prepare_chain().
Steinar H. Gunderson [Thu, 26 Apr 2018 17:31:25 +0000 (19:31 +0200)]
In the example Lua scripts, package up the state in the prepare function.
Fixes issues where there are changes between get_chain() and callback
of the prepare (especially relevant with the planned upcoming changes
to white balance picking).
Steinar H. Gunderson [Thu, 26 Apr 2018 17:11:30 +0000 (19:11 +0200)]
Make the included Lua themes use strict-compliant.
Steinar H. Gunderson [Tue, 24 Apr 2018 20:47:35 +0000 (22:47 +0200)]
Make the FFmpegCapture disconnected frames proper black.
Less disturbing, more consistent between BGRA and Y'CbCr, and the
all-zero Y'CbCr frame causes out-of-gamut (negative) RGB values that
ended up confusing white balance adjustment a lot.
Steinar H. Gunderson [Tue, 24 Apr 2018 19:21:29 +0000 (21:21 +0200)]
If the user inadvertedly calls connect_signal() on an FFmpeg or CEF card, print out a friendly warning instead of crashing with an assertion failure.
Steinar H. Gunderson [Tue, 24 Apr 2018 18:26:20 +0000 (20:26 +0200)]
Add the busy/dead bus labels more consistently.
Steinar H. Gunderson [Tue, 24 Apr 2018 18:19:23 +0000 (20:19 +0200)]
Fix an issue where an ALSA card that was dead on boot could not be plugged in.
Steinar H. Gunderson [Mon, 23 Apr 2018 21:08:09 +0000 (23:08 +0200)]
In measure-x264.pl, allow single-digit SSIM levels.
Steinar H. Gunderson [Mon, 23 Apr 2018 19:37:03 +0000 (21:37 +0200)]
Unbreak the context menu for non-FFmpeg channels.
Steinar H. Gunderson [Mon, 23 Apr 2018 18:09:04 +0000 (20:09 +0200)]
Allow changing FFmpeg URL from the context menu.
Steinar H. Gunderson [Sun, 22 Apr 2018 21:00:52 +0000 (23:00 +0200)]
Make the right-click menu legal on signals connected to FFmpeg cards.
Steinar H. Gunderson [Sun, 22 Apr 2018 20:47:33 +0000 (22:47 +0200)]
Simple audio inputs are on cards, not signals.
Steinar H. Gunderson [Sun, 22 Apr 2018 13:23:35 +0000 (15:23 +0200)]
Add support for using FFmpeg video sources as audio.
Steinar H. Gunderson [Sun, 22 Apr 2018 13:22:00 +0000 (15:22 +0200)]
Unbreak benchmark_audio_mixer.
Steinar H. Gunderson [Sun, 22 Apr 2018 10:47:32 +0000 (12:47 +0200)]
Make FFmpegCapture reset the origin if it falls too far behind.
Steinar H. Gunderson [Fri, 20 Apr 2018 07:28:54 +0000 (09:28 +0200)]
Correct FFmpeg capture audio timestamps for non-locked audio.
Reduces jitter by a _lot_ when playing regular video files.
Steinar H. Gunderson [Wed, 18 Apr 2018 22:59:47 +0000 (00:59 +0200)]
Correct FFmpeg audio PTS.
The PTS should come from received (decoded) samples, not what we send
into the codec -- if there's codec delay, the difference could be
significant.
Steinar H. Gunderson [Wed, 18 Apr 2018 22:43:54 +0000 (00:43 +0200)]
Deliver more precise timestamps from FFmpegCapture.
Steinar H. Gunderson [Wed, 18 Apr 2018 21:13:45 +0000 (23:13 +0200)]
Reset audio resampler when FFmpeg inputs restart due to errors.
Not relevant for Kaeru, but will be relevant when Nageru gets FFmpeg
audio inputs soon.
Steinar H. Gunderson [Wed, 18 Apr 2018 20:08:09 +0000 (22:08 +0200)]
When outputting debug messages for an audio device, refer to the device spec instead of the internal card index.
Steinar H. Gunderson [Sun, 22 Apr 2018 13:17:13 +0000 (15:17 +0200)]
Fix a crash when trying to load/save files and CEF is active.
Steinar H. Gunderson [Sat, 21 Apr 2018 11:03:11 +0000 (13:03 +0200)]
Fix an issue where video inputs could send invalid Y'CbCr settings.
This would happen in the case where we had never sent a valid frame
(so we hadn't set luma coefficients) but wanted to send a disconnect frame,
tripping up a Movit assert.
Steinar H. Gunderson [Sat, 21 Apr 2018 10:01:26 +0000 (12:01 +0200)]
Fix a few Clang warnings.
Steinar H. Gunderson [Sat, 21 Apr 2018 09:36:42 +0000 (11:36 +0200)]
Add a concurrency TODO on RefCountedFrame.
Steinar H. Gunderson [Sat, 21 Apr 2018 09:34:34 +0000 (11:34 +0200)]
Make so that the 0 key maps to preview of the 10th input.
Steinar H. Gunderson [Sat, 21 Apr 2018 09:29:55 +0000 (11:29 +0200)]
Fix a problem where the previews would flicker.
When setting up a new frame, we'd set LiveInputWrapper state
(ie., which textures should FlatInput girender from) for all
chains, even preview chains which were just about to get rendered.
Those could then render from the wrong texture number -- and worse,
that texture was still in the process of being uploaded, causing
corrupted display.
There are probably still concurrency bugs left here, but this was
the biggest and most annoying one.
Steinar H. Gunderson [Fri, 20 Apr 2018 20:30:38 +0000 (22:30 +0200)]
Small refactoring in PBOFrameAllocator.
Steinar H. Gunderson [Sat, 14 Apr 2018 21:47:13 +0000 (23:47 +0200)]
Add a feature on VideoInput to interrupt the playing video.
Useful for when using FFmpeg sources to play network streams,
since FFmpeg can sometimes hang forever if the remote server
goes away.
Steinar H. Gunderson [Wed, 11 Apr 2018 22:34:48 +0000 (00:34 +0200)]
Remove an erroneous assert in ResamplingQueue.
Steinar H. Gunderson [Wed, 11 Apr 2018 18:06:38 +0000 (20:06 +0200)]
Ask for no buffering when opening FFmpeg streams; we do our own buffering, and the stream could be a live one.
Steinar H. Gunderson [Wed, 11 Apr 2018 17:03:03 +0000 (19:03 +0200)]
Make FFmpegCapture send semi-reasonable timestamps with its audio data.
Steinar H. Gunderson [Sat, 7 Apr 2018 21:11:28 +0000 (23:11 +0200)]
Revert "Simplify the timebase conversion in mux.cpp."
We should use the pts and dts from the function parameters, not from the
packet. Would cause all wrong durations in some cases.
This reverts commit
bcaf94e7f9a10925a86b8f7e03e5e184550ae9f5 .
Steinar H. Gunderson [Wed, 4 Apr 2018 22:48:13 +0000 (00:48 +0200)]
In Metacube, mark each keyframe with a pts metadata block (for easier HLS segmentation).
Steinar H. Gunderson [Mon, 26 Mar 2018 21:43:48 +0000 (23:43 +0200)]
Release Nageru 1.7.1.
Steinar H. Gunderson [Sat, 24 Mar 2018 17:02:59 +0000 (18:02 +0100)]
Simplify the timebase conversion in mux.cpp.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:53:01 +0000 (17:53 +0100)]
Fix an FFmpeg deprecation warning.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:49:52 +0000 (17:49 +0100)]
Fix a buffer overrun when compiled without CEF.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:40:54 +0000 (17:40 +0100)]
Sync bmusb (got inadvertedly rewound earlier).
Steinar H. Gunderson [Sat, 24 Mar 2018 16:38:51 +0000 (17:38 +0100)]
Fix a Clang warning.
Steinar H. Gunderson [Sat, 24 Mar 2018 16:31:57 +0000 (17:31 +0100)]
Fix some compiler warnings.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:59:46 +0000 (16:59 +0100)]
Fix some Clang warnings.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:33:20 +0000 (16:33 +0100)]
Fix a thread race in X264Encoder. 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.
Steinar H. Gunderson [Fri, 23 Mar 2018 15:17:46 +0000 (16:17 +0100)]
Fix compilation without CEF.
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.
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.
Steinar H. Gunderson [Tue, 20 Mar 2018 22:07:11 +0000 (23:07 +0100)]
Do not link kaeru against 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.
Steinar H. Gunderson [Tue, 20 Mar 2018 20:17:27 +0000 (21:17 +0100)]
Clean kaeru on make clean.
Steinar H. Gunderson [Sun, 18 Mar 2018 22:45:10 +0000 (23:45 +0100)]
Sync bmusb to 0.7.1 (no real changes).
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.
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.
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.
Steinar H. Gunderson [Tue, 13 Mar 2018 17:56:31 +0000 (18:56 +0100)]
(Hopefully! :-) ) fix some deadlocks during CEF shutdown.
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.
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.
Steinar H. Gunderson [Thu, 8 Mar 2018 18:31:41 +0000 (19:31 +0100)]
Release Nageru 1.7.0.
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.
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.
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.
Steinar H. Gunderson [Thu, 1 Mar 2018 08:27:55 +0000 (09:27 +0100)]
Properly take the Lua lock when processing menu callbacks.
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.