]> git.sesse.net Git - nageru/log
nageru
5 years agoMake the UI programmatically dependent on NUM_CAMERAS.
Steinar H. Gunderson [Sun, 16 Dec 2018 21:33:18 +0000 (22:33 +0100)]
Make the UI programmatically dependent on NUM_CAMERAS.

5 years agoFix a Clang warning.
Steinar H. Gunderson [Sun, 16 Dec 2018 18:10:39 +0000 (19:10 +0100)]
Fix a Clang warning.

5 years agoFix a Clang error.
Steinar H. Gunderson [Sun, 16 Dec 2018 18:10:13 +0000 (19:10 +0100)]
Fix a Clang error.

5 years agoDocument that we need SQLite for Futatabi.
Steinar H. Gunderson [Sun, 16 Dec 2018 09:14:26 +0000 (10:14 +0100)]
Document that we need SQLite for Futatabi.

5 years agoAdd a stop button.
Steinar H. Gunderson [Sat, 15 Dec 2018 22:59:34 +0000 (23:59 +0100)]
Add a stop button.

5 years agoFix interpolation quality of exported clips.
Steinar H. Gunderson [Sat, 15 Dec 2018 22:16:32 +0000 (23:16 +0100)]
Fix interpolation quality of exported clips.

5 years agoPersist quality settings in the database.
Steinar H. Gunderson [Sat, 15 Dec 2018 20:54:36 +0000 (21:54 +0100)]
Persist quality settings in the database.

5 years agoImplement undo/redo.
Steinar H. Gunderson [Sat, 15 Dec 2018 15:08:51 +0000 (16:08 +0100)]
Implement undo/redo.

5 years agoSupport exporting multiple clips of a playlist, with fades and all.
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.

5 years agoFix an issue where fade times would be zero seconds if the next clip was less than...
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.

5 years agoFactor out estimated time left calculation into its own function.
Steinar H. Gunderson [Fri, 14 Dec 2018 23:17:52 +0000 (00:17 +0100)]
Factor out estimated time left calculation into its own function.

5 years agoInstall futatabi on ninja install.
Steinar H. Gunderson [Fri, 14 Dec 2018 20:25:44 +0000 (21:25 +0100)]
Install futatabi on ninja install.

5 years agoAdd Shift and Alt modifiers for scrubbing.
Steinar H. Gunderson [Fri, 14 Dec 2018 20:11:15 +0000 (21:11 +0100)]
Add Shift and Alt modifiers for scrubbing.

5 years agoMake Futatabi output frame rate adjustable.
Steinar H. Gunderson [Fri, 14 Dec 2018 19:15:06 +0000 (20:15 +0100)]
Make Futatabi output frame rate adjustable.

5 years agoThere's no point in having Player in export_interpolated_clip() be allocated on the...
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.

5 years agoFix another shutdown hang.
Steinar H. Gunderson [Thu, 13 Dec 2018 19:38:15 +0000 (20:38 +0100)]
Fix another shutdown hang.

5 years agoFix 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:32:45 +0000 (20:32 +0100)]
Fix an issue where pts would get clamped to zero if we had not read any frames yet.

5 years agoSupport exporting interpolated singletrack video. Probably tickles leaks in Player...
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.

5 years agoAdd a multitrack export action.
Steinar H. Gunderson [Wed, 12 Dec 2018 23:57:53 +0000 (00:57 +0100)]
Add a multitrack export action.

5 years agoAdd some binary search helpers.
Steinar H. Gunderson [Wed, 12 Dec 2018 23:36:03 +0000 (00:36 +0100)]
Add some binary search helpers.

5 years agoFix some Futatabi shutdown problems.
Steinar H. Gunderson [Wed, 12 Dec 2018 21:30:51 +0000 (22:30 +0100)]
Fix some Futatabi shutdown problems.

5 years agoChange default Futatabi port so that it does not conflict with Nageru.
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.

5 years agoSupport turning off interpolation.
Steinar H. Gunderson [Wed, 12 Dec 2018 20:55:11 +0000 (21:55 +0100)]
Support turning off interpolation.

5 years agoWhen adding a new clip, scroll to the bottom.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:58:16 +0000 (22:58 +0100)]
When adding a new clip, scroll to the bottom.

5 years agoMake width/height configurable in Futatabi.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:13:12 +0000 (22:13 +0100)]
Make width/height configurable in Futatabi.

5 years agoFix a 1280x720 hardcoding, replacing it by another one.
Steinar H. Gunderson [Mon, 10 Dec 2018 21:06:27 +0000 (22:06 +0100)]
Fix a 1280x720 hardcoding, replacing it by another one.

5 years agoMake the apt line include Meson.
Steinar H. Gunderson [Sun, 9 Dec 2018 23:11:47 +0000 (00:11 +0100)]
Make the apt line include Meson.

5 years agoFix a bad snapping bug that was introduced with the change to the new storage format.
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.

5 years agoFix an issue where we would lose track of the time scale during fades, causing us...
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.

5 years agoMove another file left behind during the directory move.
Steinar H. Gunderson [Sun, 9 Dec 2018 22:21:13 +0000 (23:21 +0100)]
Move another file left behind during the directory move.

5 years agoIf the input stream ends or errors out, restart it.
Steinar H. Gunderson [Sun, 9 Dec 2018 17:28:40 +0000 (18:28 +0100)]
If the input stream ends or errors out, restart it.

5 years agoFix a hang when storing frame files.
Steinar H. Gunderson [Sun, 9 Dec 2018 17:25:49 +0000 (18:25 +0100)]
Fix a hang when storing frame files.

5 years agoDon't die on libjpeg errors.
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.

5 years agoFlatten Meson build files.
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.

5 years agoGive Futatabi an about/license dialog, and the same manual link as Nageru.
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.

5 years agoMake the Nageru version settable from the Meson configuration.
Steinar H. Gunderson [Thu, 6 Dec 2018 18:42:13 +0000 (19:42 +0100)]
Make the Nageru version settable from the Meson configuration.

5 years agoMake VA-API encoded MJPEGs be encoded asynchronously.
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.

5 years agoAdd an option to control the mapping of streams to export to MJPEG (or turn it off...
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).

5 years agoOnly bother doing MJPEG encoding if there are any connected clients that want the...
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.

5 years agoFix a cleanup issue.
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.

5 years agoFix some leaks in MJPEGEncoder.
Steinar H. Gunderson [Thu, 6 Dec 2018 16:55:57 +0000 (17:55 +0100)]
Fix some leaks in MJPEGEncoder.

5 years agoAdd a hack to FFmpegCapture for decoding Futatabi's Y'CbCr streams correctly.
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.

5 years agoSwitch to Matroska for Futatabi's output video stream, as it is much better at preser...
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.

5 years agoStop setting nobuffer for FFmpeg inputs; it seems it only really affects buffering...
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.

5 years agoSet a FFmpeg-private JPEG marker to signal some Y'CbCr information.
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.

5 years agoBump bmusb requirement.
Steinar H. Gunderson [Tue, 4 Dec 2018 17:58:56 +0000 (18:58 +0100)]
Bump bmusb requirement.

5 years agoUnbreak lld support.
Steinar H. Gunderson [Tue, 4 Dec 2018 17:45:35 +0000 (18:45 +0100)]
Unbreak lld support.

5 years agoMerge branch 'mjpeg'
Steinar H. Gunderson [Tue, 4 Dec 2018 17:39:41 +0000 (18:39 +0100)]
Merge branch 'mjpeg'

5 years agoRemove unused muxer parameters from futatabi/defs.h (they are in the shared file...
Steinar H. Gunderson [Tue, 4 Dec 2018 00:04:43 +0000 (01:04 +0100)]
Remove unused muxer parameters from futatabi/defs.h (they are in the shared file now).

5 years agoUnbreak compilation with CEF.
Steinar H. Gunderson [Mon, 3 Dec 2018 23:31:44 +0000 (00:31 +0100)]
Unbreak compilation with CEF.

5 years agoFix software decoding of JPEGs in Futatabi.
Steinar H. Gunderson [Mon, 3 Dec 2018 22:42:10 +0000 (23:42 +0100)]
Fix software decoding of JPEGs in Futatabi.

5 years agoUpdate README for the move.
Steinar H. Gunderson [Mon, 3 Dec 2018 21:56:03 +0000 (22:56 +0100)]
Update README for the move.

5 years agoYet more moving into subdirectories.
Steinar H. Gunderson [Mon, 3 Dec 2018 21:52:03 +0000 (22:52 +0100)]
Yet more moving into subdirectories.

5 years agoMove a Futatabi file that escaped the initial moving.
Steinar H. Gunderson [Mon, 3 Dec 2018 21:50:27 +0000 (22:50 +0100)]
Move a Futatabi file that escaped the initial moving.

5 years agoMove most Nageru embedded shaders to the read_file() system.
Steinar H. Gunderson [Mon, 3 Dec 2018 21:48:21 +0000 (22:48 +0100)]
Move most Nageru embedded shaders to the read_file() system.

5 years agoMove bin2h and read_file into shared/, so that Nageru can also use it.
Steinar H. Gunderson [Mon, 3 Dec 2018 19:26:47 +0000 (20:26 +0100)]
Move bin2h and read_file into shared/, so that Nageru can also use it.

5 years agoUnify disk_space_estimator.cpp from Nageru and Futatabi.
Steinar H. Gunderson [Mon, 3 Dec 2018 19:03:40 +0000 (20:03 +0100)]
Unify disk_space_estimator.cpp from Nageru and Futatabi.

5 years agoRename nageru/db.h to decibel.h, since it is confusing to also have futatabi/db.h...
Steinar H. Gunderson [Mon, 3 Dec 2018 18:44:31 +0000 (19:44 +0100)]
Rename nageru/db.h to decibel.h, since it is confusing to also have futatabi/db.h that means database.

5 years agoUnify httpd.cpp from Nageru and Futatabi (whitespace differences, and metrics support).
Steinar H. Gunderson [Mon, 3 Dec 2018 08:32:51 +0000 (09:32 +0100)]
Unify httpd.cpp from Nageru and Futatabi (whitespace differences, and metrics support).

5 years agoUnify context.cpp from Nageru and Futatabi.
Steinar H. Gunderson [Sun, 2 Dec 2018 20:20:25 +0000 (21:20 +0100)]
Unify context.cpp from Nageru and Futatabi.

5 years agoRemove an extra copy of memcpy_interleaved.cpp.
Steinar H. Gunderson [Sun, 2 Dec 2018 16:25:28 +0000 (17:25 +0100)]
Remove an extra copy of memcpy_interleaved.cpp.

5 years agoUnify mux.cpp between Nageru and Futatabi.
Steinar H. Gunderson [Sun, 2 Dec 2018 16:24:43 +0000 (17:24 +0100)]
Unify mux.cpp between Nageru and Futatabi.

5 years agoCombine ref_counted_gl_sync.h from Nageru and Futatabi. (Only whitespace differences.)
Steinar H. Gunderson [Sat, 1 Dec 2018 23:40:54 +0000 (00:40 +0100)]
Combine ref_counted_gl_sync.h from Nageru and Futatabi. (Only whitespace differences.)

5 years agoCombine timebase.h from Nageru and Futatabi.
Steinar H. Gunderson [Sat, 1 Dec 2018 23:37:43 +0000 (00:37 +0100)]
Combine timebase.h from Nageru and Futatabi.

5 years agoCombine the Nageru and Futatabi files that are identical.
Steinar H. Gunderson [Sat, 1 Dec 2018 23:34:15 +0000 (00:34 +0100)]
Combine the Nageru and Futatabi files that are identical.

5 years agoMerge remote-tracking branch 'futatabi/master'
Steinar H. Gunderson [Sat, 1 Dec 2018 23:11:12 +0000 (00:11 +0100)]
Merge remote-tracking branch 'futatabi/master'

This merges Nageru and Futatabi, since they are fairly closely related
and also share a fair amount of code.

5 years agoMove everything into a separate futatabi/ subdir, for the upcoming merge with Futatabi.
Steinar H. Gunderson [Sat, 1 Dec 2018 23:06:05 +0000 (00:06 +0100)]
Move everything into a separate futatabi/ subdir, for the upcoming merge with Futatabi.

5 years agoMove everything into a separate futatabi/ subdir, for the upcoming merge with Nageru.
Steinar H. Gunderson [Sat, 1 Dec 2018 23:02:29 +0000 (00:02 +0100)]
Move everything into a separate futatabi/ subdir, for the upcoming merge with Nageru.

5 years agoRemove frame files that do not exist from the database.
Steinar H. Gunderson [Thu, 29 Nov 2018 19:53:07 +0000 (20:53 +0100)]
Remove frame files that do not exist from the database.

5 years agoFix more issues with paths in the database.
Steinar H. Gunderson [Tue, 27 Nov 2018 22:52:45 +0000 (23:52 +0100)]
Fix more issues with paths in the database.

5 years agoMove to a denormalized protobuf-based schema for frames; a bit faster (~2x), and...
Steinar H. Gunderson [Tue, 27 Nov 2018 22:51:24 +0000 (23:51 +0100)]
Move to a denormalized protobuf-based schema for frames; a bit faster (~2x), and much more compact (~2.5x).

5 years agoAllow symlinked frame files. Useful for testing.
Steinar H. Gunderson [Mon, 26 Nov 2018 23:55:36 +0000 (00:55 +0100)]
Allow symlinked frame files. Useful for testing.

5 years agoWhen storing frame files in the database, use the base name, so that -d does not...
Steinar H. Gunderson [Mon, 26 Nov 2018 23:55:26 +0000 (00:55 +0100)]
When storing frame files in the database, use the base name, so that -d does not matter.

5 years agoAdd a progress bar on startup.
Steinar H. Gunderson [Mon, 26 Nov 2018 23:35:29 +0000 (00:35 +0100)]
Add a progress bar on startup.

5 years agoUse SQLite to store metadata about finished frame files.
Steinar H. Gunderson [Sun, 25 Nov 2018 22:34:38 +0000 (23:34 +0100)]
Use SQLite to store metadata about finished frame files.

5 years agoSupposedly sqlite_prepare() is deprecated in favor of sqlite_prepare_v2().
Steinar H. Gunderson [Sun, 25 Nov 2018 17:29:26 +0000 (18:29 +0100)]
Supposedly sqlite_prepare() is deprecated in favor of sqlite_prepare_v2().

5 years agoCache file descriptors when reading frames, for better readahead and fewer syscalls.
Steinar H. Gunderson [Sat, 24 Nov 2018 21:48:44 +0000 (22:48 +0100)]
Cache file descriptors when reading frames, for better readahead and fewer syscalls.

5 years agoChange from file-per-frame to multiple files per frame.
Steinar H. Gunderson [Thu, 22 Nov 2018 23:48:15 +0000 (00:48 +0100)]
Change from file-per-frame to multiple files per frame.

This puts a lot less strain on the file system, and should hopefully
also make for much more sequential I/O, which is important when using
non-SSDs.

5 years agoSpeed up the database writes a bit, especially when I/O is busy.
Steinar H. Gunderson [Tue, 13 Nov 2018 23:45:32 +0000 (00:45 +0100)]
Speed up the database writes a bit, especially when I/O is busy.

5 years agoEmbed shaders into the binary.
Steinar H. Gunderson [Tue, 13 Nov 2018 23:27:44 +0000 (00:27 +0100)]
Embed shaders into the binary.

5 years agoRelease Nageru 1.7.5. 1.7.5
Steinar H. Gunderson [Sun, 11 Nov 2018 12:56:51 +0000 (13:56 +0100)]
Release Nageru 1.7.5.

5 years agoAdd functionality for MJPEG export.
Steinar H. Gunderson [Sun, 14 Oct 2018 22:14:22 +0000 (00:14 +0200)]
Add functionality for MJPEG export.

This simply exports all incoming frames under /multicam.mp4,
as one big 4:2:2 MJPEG multi-video stream. The intended use is
for multi-camera recording, or for instant replay.

5 years agoLink with lld if available.
Steinar H. Gunderson [Sun, 11 Nov 2018 12:40:06 +0000 (13:40 +0100)]
Link with lld if available.

5 years agoSwitch build systems to Meson.
Steinar H. Gunderson [Wed, 7 Nov 2018 23:11:37 +0000 (00:11 +0100)]
Switch build systems to Meson.

5 years agoRename ui_foo.ui to foo.ui; seemingly, it is more standard.
Steinar H. Gunderson [Wed, 7 Nov 2018 23:05:31 +0000 (00:05 +0100)]
Rename ui_foo.ui to foo.ui; seemingly, it is more standard.

5 years agoAdd a missing include guard.
Steinar H. Gunderson [Wed, 7 Nov 2018 22:33:27 +0000 (23:33 +0100)]
Add a missing include guard.

5 years agoFix some GCC 8 warnings.
Steinar H. Gunderson [Wed, 7 Nov 2018 22:19:07 +0000 (23:19 +0100)]
Fix some GCC 8 warnings.

5 years agoAdd some missing includes to quicksync_encoder_impl.h.
Steinar H. Gunderson [Wed, 7 Nov 2018 18:31:15 +0000 (19:31 +0100)]
Add some missing includes to quicksync_encoder_impl.h.

5 years agoUpdate .gitignore.
Steinar H. Gunderson [Wed, 7 Nov 2018 17:04:49 +0000 (18:04 +0100)]
Update .gitignore.

5 years agoFix a pretty bad JPEG decoding bug; VA-API expects its quantization matrix to be...
Steinar H. Gunderson [Wed, 7 Nov 2018 16:38:35 +0000 (17:38 +0100)]
Fix a pretty bad JPEG decoding bug; VA-API expects its quantization matrix to be in zigzag order.

5 years agoSwitch build systems to Meson.
Steinar H. Gunderson [Wed, 7 Nov 2018 16:38:03 +0000 (17:38 +0100)]
Switch build systems to Meson.

5 years agoFix a GCC warning.
Steinar H. Gunderson [Wed, 7 Nov 2018 16:36:34 +0000 (17:36 +0100)]
Fix a GCC warning.

5 years agoSupport changing the HTTP port.
Steinar H. Gunderson [Wed, 31 Oct 2018 23:45:17 +0000 (00:45 +0100)]
Support changing the HTTP port.

5 years agoAllow previewing playlist clips.
Steinar H. Gunderson [Wed, 31 Oct 2018 22:02:21 +0000 (23:02 +0100)]
Allow previewing playlist clips.

5 years agoFix an issue where switching play clips during a fade would mean reverting back to...
Steinar H. Gunderson [Wed, 31 Oct 2018 19:18:02 +0000 (20:18 +0100)]
Fix an issue where switching play clips during a fade would mean reverting back to the previous clip after the first new one was done.

5 years agoStop sending interpolated images through the cache.
Steinar H. Gunderson [Wed, 31 Oct 2018 17:16:08 +0000 (18:16 +0100)]
Stop sending interpolated images through the cache.

They're never actually reused anyway, so there's no point in polluting
the cache with them. Sending them directly to the display also takes away a
large chunk of complexity.

5 years agoMake the cache pruning work on bytes instead of number of images.
Steinar H. Gunderson [Wed, 31 Oct 2018 16:33:19 +0000 (17:33 +0100)]
Make the cache pruning work on bytes instead of number of images.

Especially when we have 1080p images in the mix, tihs causes much less
weird fluctuation in memory usage.

5 years agoFix some memory spikes.
Steinar H. Gunderson [Tue, 30 Oct 2018 18:17:26 +0000 (19:17 +0100)]
Fix some memory spikes.

5 years agoFix some more leaks on clear_queue().
Steinar H. Gunderson [Tue, 30 Oct 2018 17:29:35 +0000 (18:29 +0100)]
Fix some more leaks on clear_queue().

5 years agoThe video player only ever waited for original frames, never processed; fixed.
Steinar H. Gunderson [Tue, 30 Oct 2018 17:09:32 +0000 (18:09 +0100)]
The video player only ever waited for original frames, never processed; fixed.