]> git.sesse.net Git - nageru/log
nageru
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.

5 years agoCheck the return status of vaDestroyBuffer.
Steinar H. Gunderson [Tue, 30 Oct 2018 16:56:37 +0000 (17:56 +0100)]
Check the return status of vaDestroyBuffer.

5 years agoStop crushing blacks for full-range sources.
Steinar H. Gunderson [Tue, 30 Oct 2018 08:01:41 +0000 (09:01 +0100)]
Stop crushing blacks for full-range sources.

5 years agoUnbreak preview.
Steinar H. Gunderson [Mon, 29 Oct 2018 23:45:29 +0000 (00:45 +0100)]
Unbreak preview.

5 years agoFix leaks in VABufferDestroyer.
Steinar H. Gunderson [Mon, 29 Oct 2018 22:15:13 +0000 (23:15 +0100)]
Fix leaks in VABufferDestroyer.

5 years agoFix displaying of progress bars and time remaining in the presence of fades.
Steinar H. Gunderson [Sun, 28 Oct 2018 16:17:00 +0000 (17:17 +0100)]
Fix displaying of progress bars and time remaining in the presence of fades.

5 years agoFix leaks of InterpolatedFrameResources on clear_queue(), by RAIIing it.
Steinar H. Gunderson [Sat, 27 Oct 2018 21:05:14 +0000 (23:05 +0200)]
Fix leaks of InterpolatedFrameResources on clear_queue(), by RAIIing it.

5 years agoFix fades into overly short clips.
Steinar H. Gunderson [Sat, 27 Oct 2018 20:18:17 +0000 (22:18 +0200)]
Fix fades into overly short clips.

5 years agoMove to RAII queue counting, to fix some underflows.
Steinar H. Gunderson [Sat, 27 Oct 2018 19:46:55 +0000 (21:46 +0200)]
Move to RAII queue counting, to fix some underflows.

5 years agoSome manual line breaking.
Steinar H. Gunderson [Sat, 27 Oct 2018 19:03:52 +0000 (21:03 +0200)]
Some manual line breaking.

5 years agoMove QueuedFrame instead of copying it around.
Steinar H. Gunderson [Sat, 27 Oct 2018 19:02:03 +0000 (21:02 +0200)]
Move QueuedFrame instead of copying it around.

5 years agoFix a deadlock in the new queueing logic.
Steinar H. Gunderson [Sat, 27 Oct 2018 17:07:03 +0000 (19:07 +0200)]
Fix a deadlock in the new queueing logic.

5 years agoFix a bug in the help output.
Steinar H. Gunderson [Sat, 27 Oct 2018 16:59:42 +0000 (18:59 +0200)]
Fix a bug in the help output.

5 years agoFix a leak that somehow only showed up on NVIDIA.
Steinar H. Gunderson [Tue, 23 Oct 2018 21:52:56 +0000 (23:52 +0200)]
Fix a leak that somehow only showed up on NVIDIA.

5 years agoPreload original JPEGs from disk.
Steinar H. Gunderson [Fri, 26 Oct 2018 16:13:37 +0000 (18:13 +0200)]
Preload original JPEGs from disk.

5 years agoAdd a queue of frames going into VideoStream.
Steinar H. Gunderson [Fri, 26 Oct 2018 16:10:38 +0000 (18:10 +0200)]
Add a queue of frames going into VideoStream.

Hopefully this smooths out disk jitter a fair bit, as we essentially
get a precalculation/preload process.

5 years agoDo not try to show a frame until we've computed it (do it in a callback instead).
Steinar H. Gunderson [Thu, 25 Oct 2018 17:39:14 +0000 (19:39 +0200)]
Do not try to show a frame until we've computed it (do it in a callback instead).

Gets rid of the ugly waiting for the cache, and sets the stage for
some further cleanups coming up.

5 years agoFix a crash in the sample driver.
Steinar H. Gunderson [Tue, 23 Oct 2018 20:44:58 +0000 (22:44 +0200)]
Fix a crash in the sample driver.

5 years agoOnly adjust pts with the wheel if the given row is selected. It is just too easy...
Steinar H. Gunderson [Sun, 21 Oct 2018 22:38:19 +0000 (00:38 +0200)]
Only adjust pts with the wheel if the given row is selected. It is just too easy to mess up when you want to scroll otherwise.

5 years agoIf using the mouse wheel to change pts, don't use it to scroll.
Steinar H. Gunderson [Sun, 21 Oct 2018 22:24:47 +0000 (00:24 +0200)]
If using the mouse wheel to change pts, don't use it to scroll.

5 years agoFix a race where refresh frames could be put into the muxer with out-of-order pts.
Steinar H. Gunderson [Sun, 21 Oct 2018 21:08:30 +0000 (23:08 +0200)]
Fix a race where refresh frames could be put into the muxer with out-of-order pts.

5 years agoFix some issues that happened if we tried to play while already playing.
Steinar H. Gunderson [Sun, 21 Oct 2018 20:56:41 +0000 (22:56 +0200)]
Fix some issues that happened if we tried to play while already playing.

5 years agoIf av_interleaved_write_frame() fails, leave a core file.
Steinar H. Gunderson [Sun, 21 Oct 2018 20:56:06 +0000 (22:56 +0200)]
If av_interleaved_write_frame() fails, leave a core file.

5 years agoFix a Clang error.
Steinar H. Gunderson [Sun, 21 Oct 2018 20:55:22 +0000 (22:55 +0200)]
Fix a Clang error.

5 years agoGive the main window a name.
Steinar H. Gunderson [Sun, 21 Oct 2018 18:39:12 +0000 (20:39 +0200)]
Give the main window a name.

5 years agoFix various fading bugs.
Steinar H. Gunderson [Sun, 21 Oct 2018 16:10:20 +0000 (18:10 +0200)]
Fix various fading bugs.

5 years agoStop leaking VA-API buffers.
Steinar H. Gunderson [Sun, 21 Oct 2018 13:33:12 +0000 (15:33 +0200)]
Stop leaking VA-API buffers.

5 years agoAnother Makefile hack.
Steinar H. Gunderson [Sun, 21 Oct 2018 13:01:40 +0000 (15:01 +0200)]
Another Makefile hack.

5 years agoFix some libjpeg leaks.
Steinar H. Gunderson [Sun, 21 Oct 2018 13:29:34 +0000 (15:29 +0200)]
Fix some libjpeg leaks.

5 years agoFix loading of existing frames with -d.
Steinar H. Gunderson [Sat, 20 Oct 2018 17:41:51 +0000 (19:41 +0200)]
Fix loading of existing frames with -d.

5 years agoCreate frames/ if it does not exist.
Steinar H. Gunderson [Fri, 19 Oct 2018 18:47:56 +0000 (20:47 +0200)]
Create frames/ if it does not exist.

5 years agoMake it possible to change the working directory.
Steinar H. Gunderson [Fri, 19 Oct 2018 18:43:28 +0000 (20:43 +0200)]
Make it possible to change the working directory.

5 years agoBe more lenient in the 4:2:2 detection.
Steinar H. Gunderson [Mon, 15 Oct 2018 20:03:17 +0000 (22:03 +0200)]
Be more lenient in the 4:2:2 detection.

5 years agoStop shipping Swiftshader in CEF (Debian no longer does).
Steinar H. Gunderson [Sun, 14 Oct 2018 22:07:21 +0000 (00:07 +0200)]
Stop shipping Swiftshader in CEF (Debian no longer does).

5 years agoShow how much would be queued before pressing play.
Steinar H. Gunderson [Sun, 14 Oct 2018 18:03:32 +0000 (20:03 +0200)]
Show how much would be queued before pressing play.

5 years agoExpose the queue status over HTTP.
Steinar H. Gunderson [Sun, 14 Oct 2018 17:53:39 +0000 (19:53 +0200)]
Expose the queue status over HTTP.

5 years agoSupport changing the interpolation quality.
Steinar H. Gunderson [Sun, 14 Oct 2018 14:51:48 +0000 (16:51 +0200)]
Support changing the interpolation quality.

5 years agoSupport other streams than the default file.
Steinar H. Gunderson [Sun, 14 Oct 2018 14:16:45 +0000 (16:16 +0200)]
Support other streams than the default file.

5 years agoAssorted clang-format fixes (not complete).
Steinar H. Gunderson [Sun, 14 Oct 2018 13:38:11 +0000 (15:38 +0200)]
Assorted clang-format fixes (not complete).