]>
git.sesse.net Git - nageru/log
Steinar H. Gunderson [Fri, 28 Dec 2018 10:15:50 +0000 (11:15 +0100)]
Remove one level of indentation from Player::thread_func.
Steinar H. Gunderson [Fri, 28 Dec 2018 09:48:14 +0000 (10:48 +0100)]
Move from unique_lock to lock_guard everywhere we can. Perhaps ever so slightly clearer to read the intent.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:31:45 +0000 (00:31 +0100)]
Fix a minor unneeded unlock/lock.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:30:31 +0000 (00:30 +0100)]
Fix some silly indentation.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:22:08 +0000 (00:22 +0100)]
Update a comment after the previous commit.
Steinar H. Gunderson [Thu, 27 Dec 2018 22:02:25 +0000 (23:02 +0100)]
Move the to-play playlist into Player.
This eradicates the ugly callback into MainWindow to get the next clip,
gives Player much more control, and in general makes things a lot more
predictable. Right now, this means you can no longer edit the playlist
while it's playing, but we're going to reintroduce that (in a somewhat
limited form) fairly soon.
Steinar H. Gunderson [Wed, 26 Dec 2018 22:45:12 +0000 (23:45 +0100)]
Fix an indentation issue.
Steinar H. Gunderson [Tue, 25 Dec 2018 11:35:18 +0000 (12:35 +0100)]
Simplify timebase handling in Mux a bit.
Steinar H. Gunderson [Mon, 24 Dec 2018 22:12:39 +0000 (23:12 +0100)]
Remove the redundant with_audio parameter from the Mux constructor.
Steinar H. Gunderson [Mon, 24 Dec 2018 13:26:44 +0000 (14:26 +0100)]
Cache computed flow between textures.
Flow computation is over half the computational burden for making a frame,
and in super-slow cases (more than 2x), we'll reuse the same flow many times.
Steinar H. Gunderson [Mon, 24 Dec 2018 11:07:10 +0000 (12:07 +0100)]
Remove a metric that's irrelevant for Futatabi.
Steinar H. Gunderson [Mon, 24 Dec 2018 11:00:42 +0000 (12:00 +0100)]
Add metrics for JPEG decoding.
Steinar H. Gunderson [Mon, 24 Dec 2018 10:17:55 +0000 (11:17 +0100)]
Add a summary for received frame sizes.
Steinar H. Gunderson [Mon, 24 Dec 2018 10:07:19 +0000 (11:07 +0100)]
Add metrics for reading frames from disk.
Steinar H. Gunderson [Mon, 24 Dec 2018 00:27:50 +0000 (01:27 +0100)]
Add some metrics for HTTP output.
Steinar H. Gunderson [Sun, 23 Dec 2018 23:39:17 +0000 (00:39 +0100)]
Prefix all the Futatabi Prometheus metrics by futatabi_ instead of nageru_.
Steinar H. Gunderson [Sun, 23 Dec 2018 23:33:41 +0000 (00:33 +0100)]
Add a Futatabi metric for number of received frames.
Steinar H. Gunderson [Sun, 23 Dec 2018 17:27:21 +0000 (18:27 +0100)]
Localize DeckLink warning suppression to only the DeckLink headers and sources.
Steinar H. Gunderson [Sun, 23 Dec 2018 00:18:34 +0000 (01:18 +0100)]
When exporting interpolated files, make sure they are seekable.
Steinar H. Gunderson [Sun, 23 Dec 2018 00:11:54 +0000 (01:11 +0100)]
If the Futatabi source URL is empty or /dev/null, don't bother trying to open it.
Steinar H. Gunderson [Fri, 21 Dec 2018 23:37:57 +0000 (00:37 +0100)]
Fix a follow-up error introduced when fixing a Coverity Scan issue.
Steinar H. Gunderson [Fri, 21 Dec 2018 23:13:46 +0000 (00:13 +0100)]
Avoid a time-to-check-versus-time-of-use error on mkdir().
Found by Coverity Scan. Not relevant in practice, since we do not
support running on untrusted data.
Steinar H. Gunderson [Fri, 21 Dec 2018 23:11:36 +0000 (00:11 +0100)]
Make Ebu_r128_proc::Ebu_r128_proc() not move uninitialized variables around.
It doesn't matter since init() will be called immediately afterwards,
but it silences Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 23:08:10 +0000 (00:08 +0100)]
In Theme::get_chain(), send InputState by reference instead of value.
It's ~2 kB, and we also don't have to fiddle as many refcounts around.
It's only once per channel per frame, though.
Found by Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 22:53:51 +0000 (23:53 +0100)]
Check VAStatus of some destroyed objects.
Irrelevant, but still good style. Found by Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 22:52:42 +0000 (23:52 +0100)]
Fix some more very unlikely Coverity Scan issues.
Steinar H. Gunderson [Fri, 21 Dec 2018 22:42:34 +0000 (23:42 +0100)]
Fix a leak in test code.
Found by Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 22:42:31 +0000 (23:42 +0100)]
Unbreak embedded bmusb.
Steinar H. Gunderson [Fri, 21 Dec 2018 21:39:21 +0000 (22:39 +0100)]
Remove an unneeded check.
Found by Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 21:38:42 +0000 (22:38 +0100)]
Remove an unneeded nullptr check.
Indirectly found by Coverity Scan.
Steinar H. Gunderson [Fri, 21 Dec 2018 21:36:26 +0000 (22:36 +0100)]
Silence another Coverity Scan warning.
Steinar H. Gunderson [Fri, 21 Dec 2018 18:23:19 +0000 (19:23 +0100)]
Fix another Coverity Scan issue that really should not happen in practice.
Steinar H. Gunderson [Fri, 21 Dec 2018 18:14:01 +0000 (19:14 +0100)]
Fix another Coverity Scan issue that really should not happen in practice.
Steinar H. Gunderson [Fri, 21 Dec 2018 16:15:55 +0000 (17:15 +0100)]
Fix a Coverity Scan issue that is irrelevant in practice.
Steinar H. Gunderson [Fri, 21 Dec 2018 15:13:41 +0000 (16:13 +0100)]
Add libjpeg-dev to the apt list.
Steinar H. Gunderson [Fri, 21 Dec 2018 14:17:47 +0000 (15:17 +0100)]
Add cue point padding, where a clip is elongated (in both directions) by some given time to compensate for operator reaction time and fades.
Steinar H. Gunderson [Thu, 20 Dec 2018 15:52:41 +0000 (16:52 +0100)]
Use get_pkgconfig_variable() instead of calling pkg-config manually.
Steinar H. Gunderson [Thu, 20 Dec 2018 15:50:30 +0000 (16:50 +0100)]
Make the SDL dependencies optional.
Steinar H. Gunderson [Thu, 20 Dec 2018 15:17:04 +0000 (16:17 +0100)]
Update the textual list of dependencies in the README.
Steinar H. Gunderson [Thu, 20 Dec 2018 14:42:53 +0000 (15:42 +0100)]
Remove the LuaJIT 2.0 compatibility shims.
Steinar H. Gunderson [Thu, 20 Dec 2018 14:41:57 +0000 (15:41 +0100)]
Move to FFmpeg 4.0 APIs, fixing the deprecation warnings.
Steinar H. Gunderson [Thu, 20 Dec 2018 14:30:46 +0000 (15:30 +0100)]
Drop stretch compatibility, now that buster is nearing freeze.
Steinar H. Gunderson [Thu, 20 Dec 2018 14:30:07 +0000 (15:30 +0100)]
Add a missing #include.
Steinar H. Gunderson [Wed, 19 Dec 2018 23:01:20 +0000 (00:01 +0100)]
Release Nageru and Futatabi 1.8.0.
Steinar H. Gunderson [Wed, 19 Dec 2018 23:22:34 +0000 (00:22 +0100)]
Default to two cameras instead of one, since otherwise, the UI looks pretty borked.
Steinar H. Gunderson [Wed, 19 Dec 2018 22:55:26 +0000 (23:55 +0100)]
Document the undocumentedness of Futatabi.
Steinar H. Gunderson [Wed, 19 Dec 2018 19:30:26 +0000 (20:30 +0100)]
Improve frame snapping in difficult cases.
Steinar H. Gunderson [Tue, 18 Dec 2018 23:34:14 +0000 (00:34 +0100)]
Fix some GCC warnings.
Steinar H. Gunderson [Tue, 18 Dec 2018 23:30:23 +0000 (00:30 +0100)]
Add support for querying tally information from Nageru.
Steinar H. Gunderson [Tue, 18 Dec 2018 22:53:49 +0000 (23:53 +0100)]
Fix a variable conflict in the Meson build files.
Steinar H. Gunderson [Tue, 18 Dec 2018 21:46:47 +0000 (22:46 +0100)]
Remove a duplicate dependency.
Steinar H. Gunderson [Tue, 18 Dec 2018 14:04:11 +0000 (15:04 +0100)]
Support per-clip variable speed.
Steinar H. Gunderson [Mon, 17 Dec 2018 23:29:07 +0000 (00:29 +0100)]
Make the number of cameras dynamic as the frames come in.
Steinar H. Gunderson [Sun, 16 Dec 2018 21:44:49 +0000 (22:44 +0100)]
When previewing the playlist time, use compute_time_left().
Less code duplication, and also fixes an issue where the fade time
would not be counted correctly.
Steinar H. Gunderson [Sun, 16 Dec 2018 21:33:18 +0000 (22:33 +0100)]
Make the UI programmatically dependent on NUM_CAMERAS.
Steinar H. Gunderson [Sun, 16 Dec 2018 18:10:39 +0000 (19:10 +0100)]
Fix a Clang warning.
Steinar H. Gunderson [Sun, 16 Dec 2018 18:10:13 +0000 (19:10 +0100)]
Fix a Clang error.
Steinar H. Gunderson [Sun, 16 Dec 2018 09:14:26 +0000 (10:14 +0100)]
Document that we need SQLite for Futatabi.
Steinar H. Gunderson [Sat, 15 Dec 2018 22:59:34 +0000 (23:59 +0100)]
Add a stop button.
Steinar H. Gunderson [Sat, 15 Dec 2018 22:16:32 +0000 (23:16 +0100)]
Fix interpolation quality of exported clips.
Steinar H. Gunderson [Sat, 15 Dec 2018 20:54:36 +0000 (21:54 +0100)]
Persist quality settings in the database.
Steinar H. Gunderson [Sat, 15 Dec 2018 15:08:51 +0000 (16:08 +0100)]
Implement undo/redo.
Steinar H. Gunderson [Fri, 14 Dec 2018 23:39:05 +0000 (00:39 +0100)]
Support exporting multiple clips of a playlist, with fades and all.
Steinar H. Gunderson [Fri, 14 Dec 2018 23:32:39 +0000 (00:32 +0100)]
Fix an issue where fade times would be zero seconds if the next clip was less than a second.
Steinar H. Gunderson [Fri, 14 Dec 2018 23:17:52 +0000 (00:17 +0100)]
Factor out estimated time left calculation into its own function.
Steinar H. Gunderson [Fri, 14 Dec 2018 20:25:44 +0000 (21:25 +0100)]
Install futatabi on ninja install.
Steinar H. Gunderson [Fri, 14 Dec 2018 20:11:15 +0000 (21:11 +0100)]
Add Shift and Alt modifiers for scrubbing.
Steinar H. Gunderson [Fri, 14 Dec 2018 19:15:06 +0000 (20:15 +0100)]
Make Futatabi output frame rate adjustable.
Steinar H. Gunderson [Thu, 13 Dec 2018 19:47:13 +0000 (20:47 +0100)]
There's no point in having Player in export_interpolated_clip() be allocated on the heap.
Steinar H. Gunderson [Thu, 13 Dec 2018 19:38:15 +0000 (20:38 +0100)]
Fix another shutdown hang.
Steinar H. Gunderson [Thu, 13 Dec 2018 19:32:45 +0000 (20:32 +0100)]
Fix an issue where pts would get clamped to zero if we had not read any frames yet.
Steinar H. Gunderson [Thu, 13 Dec 2018 19:27:52 +0000 (20:27 +0100)]
Support exporting interpolated singletrack video. Probably tickles leaks in Player, though.
Steinar H. Gunderson [Wed, 12 Dec 2018 23:57:53 +0000 (00:57 +0100)]
Add a multitrack export action.
Steinar H. Gunderson [Wed, 12 Dec 2018 23:36:03 +0000 (00:36 +0100)]
Add some binary search helpers.
Steinar H. Gunderson [Wed, 12 Dec 2018 21:30:51 +0000 (22:30 +0100)]
Fix some Futatabi shutdown problems.
Steinar H. Gunderson [Wed, 12 Dec 2018 21:04:05 +0000 (22:04 +0100)]
Change default Futatabi port so that it does not conflict with Nageru.
Steinar H. Gunderson [Wed, 12 Dec 2018 20:55:11 +0000 (21:55 +0100)]
Support turning off interpolation.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:58:16 +0000 (22:58 +0100)]
When adding a new clip, scroll to the bottom.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:13:12 +0000 (22:13 +0100)]
Make width/height configurable in Futatabi.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:06:27 +0000 (22:06 +0100)]
Fix a 1280x720 hardcoding, replacing it by another one.
Steinar H. Gunderson [Sun, 9 Dec 2018 23:11:47 +0000 (00:11 +0100)]
Make the apt line include Meson.
Steinar H. Gunderson [Mon, 10 Dec 2018 19:27:35 +0000 (20:27 +0100)]
Fix a bad snapping bug that was introduced with the change to the new storage format.
Steinar H. Gunderson [Mon, 10 Dec 2018 19:27:19 +0000 (20:27 +0100)]
Fix an issue where we would lose track of the time scale during fades, causing us to output too many frames and build up delay over time.
Steinar H. Gunderson [Sun, 9 Dec 2018 22:21:13 +0000 (23:21 +0100)]
Move another file left behind during the directory move.
Steinar H. Gunderson [Sun, 9 Dec 2018 17:28:40 +0000 (18:28 +0100)]
If the input stream ends or errors out, restart it.
Steinar H. Gunderson [Sun, 9 Dec 2018 17:25:49 +0000 (18:25 +0100)]
Fix a hang when storing frame files.
Steinar H. Gunderson [Sat, 8 Dec 2018 21:10:16 +0000 (22:10 +0100)]
Don't die on libjpeg errors.
Makes everything significantly more robust to broken JPEGs.
Steinar H. Gunderson [Fri, 7 Dec 2018 18:56:24 +0000 (19:56 +0100)]
Flatten Meson build files.
If we have subdir('nageru'), we get ./nageru/nageru, which is really
annoying. Flatten out everything; it's uglier, but much more pleasant
to work with from the user side.
Steinar H. Gunderson [Thu, 6 Dec 2018 19:29:03 +0000 (20:29 +0100)]
Give Futatabi an about/license dialog, and the same manual link as Nageru.
Steinar H. Gunderson [Thu, 6 Dec 2018 18:42:13 +0000 (19:42 +0100)]
Make the Nageru version settable from the Meson configuration.
Steinar H. Gunderson [Sun, 11 Nov 2018 16:58:24 +0000 (17:58 +0100)]
Make VA-API encoded MJPEGs be encoded asynchronously.
This also frees up the mixer thread, which was stuck locking on the mutex
whenever something was under encoding.
Steinar H. Gunderson [Mon, 12 Nov 2018 00:02:42 +0000 (01:02 +0100)]
Add an option to control the mapping of streams to export to MJPEG (or turn it off entirely, although that is probably not very useful).
Steinar H. Gunderson [Sun, 11 Nov 2018 17:29:45 +0000 (18:29 +0100)]
Only bother doing MJPEG encoding if there are any connected clients that want the stream.
Steinar H. Gunderson [Thu, 6 Dec 2018 17:39:02 +0000 (18:39 +0100)]
Fix a cleanup issue.
In newer Qt, evidently when using the close button on the window
(not when calling close() as a result of a menu item!), the GLWidgets'
contexts will be gone by the time app.exec() returns, preventing us
from doing proper cleanup. Do the mixer cleanup in closeEvent() instead,
fixing the issue.
Steinar H. Gunderson [Thu, 6 Dec 2018 16:55:57 +0000 (17:55 +0100)]
Fix some leaks in MJPEGEncoder.
Steinar H. Gunderson [Wed, 5 Dec 2018 19:20:08 +0000 (20:20 +0100)]
Add a hack to FFmpegCapture for decoding Futatabi's Y'CbCr streams correctly.
Steinar H. Gunderson [Tue, 4 Dec 2018 23:41:21 +0000 (00:41 +0100)]
Switch to Matroska for Futatabi's output video stream, as it is much better at preserving Y'CbCr details.
Steinar H. Gunderson [Tue, 4 Dec 2018 23:40:11 +0000 (00:40 +0100)]
Stop setting nobuffer for FFmpeg inputs; it seems it only really affects buffering during probing, and messes up probing of some colorspace information permanently.
Steinar H. Gunderson [Tue, 4 Dec 2018 22:15:05 +0000 (23:15 +0100)]
Set a FFmpeg-private JPEG marker to signal some Y'CbCr information.
Steinar H. Gunderson [Tue, 4 Dec 2018 17:58:56 +0000 (18:58 +0100)]
Bump bmusb requirement.