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

5 years agoWhen choosing a camera in the clip list, highlight the appropriate input.
Steinar H. Gunderson [Sun, 14 Oct 2018 12:53:24 +0000 (14:53 +0200)]
When choosing a camera in the clip list, highlight the appropriate input.

5 years agoFix fades that are not between clips with the same start pts.
Steinar H. Gunderson [Fri, 12 Oct 2018 19:54:02 +0000 (21:54 +0200)]
Fix fades that are not between clips with the same start pts.

5 years agoFix a crash bug on preview.
Steinar H. Gunderson [Fri, 12 Oct 2018 16:50:05 +0000 (18:50 +0200)]
Fix a crash bug on preview.

5 years agoSend refresh frames every 100 ms or so, so that the client does not think we are...
Steinar H. Gunderson [Fri, 12 Oct 2018 16:41:05 +0000 (18:41 +0200)]
Send refresh frames every 100 ms or so, so that the client does not think we are gone.

5 years agoFix issues with displaying faded interpolating frames in the preview.
Steinar H. Gunderson [Thu, 11 Oct 2018 22:40:41 +0000 (00:40 +0200)]
Fix issues with displaying faded interpolating frames in the preview.

5 years agoFix a threading violation.
Steinar H. Gunderson [Thu, 11 Oct 2018 18:58:22 +0000 (20:58 +0200)]
Fix a threading violation.

5 years agoRemove some debugging code.
Steinar H. Gunderson [Thu, 11 Oct 2018 18:21:42 +0000 (20:21 +0200)]
Remove some debugging code.

5 years agoWhen fading, always interpolate the more visible half.
Steinar H. Gunderson [Thu, 11 Oct 2018 18:19:52 +0000 (20:19 +0200)]
When fading, always interpolate the more visible half.

5 years agoImplement fades.
Steinar H. Gunderson [Wed, 10 Oct 2018 22:43:20 +0000 (00:43 +0200)]
Implement fades.

5 years agoMove Y'CbCr conversion into a common utility class.
Steinar H. Gunderson [Wed, 10 Oct 2018 20:42:37 +0000 (22:42 +0200)]
Move Y'CbCr conversion into a common utility class.

5 years agoMove transitioning to the next clip away from the done callback.
Steinar H. Gunderson [Sun, 7 Oct 2018 15:57:18 +0000 (17:57 +0200)]
Move transitioning to the next clip away from the done callback.

This is a natural step on the way to fade support.

5 years agoFix some Clang warnings.
Steinar H. Gunderson [Fri, 5 Oct 2018 22:27:20 +0000 (00:27 +0200)]
Fix some Clang warnings.

5 years agoRemove an unused variable.
Steinar H. Gunderson [Fri, 5 Oct 2018 22:24:40 +0000 (00:24 +0200)]
Remove an unused variable.

5 years agoSmall cleanup in Player.
Steinar H. Gunderson [Fri, 5 Oct 2018 20:54:52 +0000 (22:54 +0200)]
Small cleanup in Player.

5 years agoAnother small refactoring, this time to snapping.
Steinar H. Gunderson [Fri, 5 Oct 2018 20:53:22 +0000 (22:53 +0200)]
Another small refactoring, this time to snapping.

5 years agoSmall refactoring in Player.
Steinar H. Gunderson [Fri, 5 Oct 2018 18:57:42 +0000 (20:57 +0200)]
Small refactoring in Player.

5 years agoHook up the exit menu.
Steinar H. Gunderson [Mon, 1 Oct 2018 22:53:28 +0000 (00:53 +0200)]
Hook up the exit menu.

5 years agoAdd a disk space estimator. Code largely borrowed from Nageru.
Steinar H. Gunderson [Mon, 1 Oct 2018 22:50:28 +0000 (00:50 +0200)]
Add a disk space estimator. Code largely borrowed from Nageru.

5 years agoMake for somewhat cleaner shutdown.
Steinar H. Gunderson [Mon, 1 Oct 2018 20:02:25 +0000 (22:02 +0200)]
Make for somewhat cleaner shutdown.

5 years agoSerialize state to disk between runs, using SQLite.
Steinar H. Gunderson [Sun, 30 Sep 2018 21:40:46 +0000 (23:40 +0200)]
Serialize state to disk between runs, using SQLite.

5 years agoStart of persistence work: Keep existing frames that are at frames/ at startup.
Steinar H. Gunderson [Sun, 30 Sep 2018 14:45:41 +0000 (16:45 +0200)]
Start of persistence work: Keep existing frames that are at frames/ at startup.

5 years agoMake it possible to scrub pts_in on a clip even if pts_out is not set.
Steinar H. Gunderson [Sat, 29 Sep 2018 20:52:20 +0000 (22:52 +0200)]
Make it possible to scrub pts_in on a clip even if pts_out is not set.

5 years agoMake it impossible to queue unfinished clips.
Steinar H. Gunderson [Sat, 29 Sep 2018 20:46:35 +0000 (22:46 +0200)]
Make it impossible to queue unfinished clips.

5 years agoDecode 4:2:2 JPEGs via VA-API if available.
Steinar H. Gunderson [Sat, 29 Sep 2018 14:37:14 +0000 (16:37 +0200)]
Decode 4:2:2 JPEGs via VA-API if available.

5 years agoDon't set QGradient stops after 1.0.
Steinar H. Gunderson [Thu, 27 Sep 2018 19:03:36 +0000 (21:03 +0200)]
Don't set QGradient stops after 1.0.

5 years agoDrop frames if the player runs too far behind.
Steinar H. Gunderson [Thu, 27 Sep 2018 19:02:56 +0000 (21:02 +0200)]
Drop frames if the player runs too far behind.

5 years agoMark play progress with background color in the play list.
Steinar H. Gunderson [Wed, 26 Sep 2018 23:09:09 +0000 (01:09 +0200)]
Mark play progress with background color in the play list.

5 years agoPut the video displays on the right side, making them generally larger.
Steinar H. Gunderson [Wed, 26 Sep 2018 20:03:40 +0000 (22:03 +0200)]
Put the video displays on the right side, making them generally larger.

5 years agoGive names to some layouts.
Steinar H. Gunderson [Wed, 26 Sep 2018 17:42:03 +0000 (19:42 +0200)]
Give names to some layouts.

5 years agoFix some instances of unneeded dataChanged() signals, making it impossible to edit...
Steinar H. Gunderson [Wed, 26 Sep 2018 17:01:23 +0000 (19:01 +0200)]
Fix some instances of unneeded dataChanged() signals, making it impossible to edit camera angles when playing.

5 years agoIf doing preview or queue with the in or out column marked, reuse the current one.
Steinar H. Gunderson [Tue, 25 Sep 2018 22:02:51 +0000 (00:02 +0200)]
If doing preview or queue with the in or out column marked, reuse the current one.

5 years agoFix JPEGFrameView behavior with Qt DPI scaling.
Steinar H. Gunderson [Tue, 25 Sep 2018 20:57:31 +0000 (22:57 +0200)]
Fix JPEGFrameView behavior with Qt DPI scaling.

5 years agoUpgrade Qt Creator.
Steinar H. Gunderson [Sat, 22 Sep 2018 19:04:55 +0000 (21:04 +0200)]
Upgrade Qt Creator.

5 years agoShow time remaining when playing clips live.
Steinar H. Gunderson [Sat, 22 Sep 2018 19:04:50 +0000 (21:04 +0200)]
Show time remaining when playing clips live.

5 years agoSupport the delete key to remove elements from the playlist.
Steinar H. Gunderson [Sat, 22 Sep 2018 10:27:08 +0000 (12:27 +0200)]
Support the delete key to remove elements from the playlist.

5 years agoAdd some 1-4 overlays on the previews.
Steinar H. Gunderson [Fri, 21 Sep 2018 20:29:04 +0000 (22:29 +0200)]
Add some 1-4 overlays on the previews.

5 years agoShow interpolated frames in the live window.
Steinar H. Gunderson [Thu, 20 Sep 2018 22:48:13 +0000 (00:48 +0200)]
Show interpolated frames in the live window.

5 years agoSmall refactoring in JPEGFrameView.
Steinar H. Gunderson [Thu, 20 Sep 2018 21:33:30 +0000 (23:33 +0200)]
Small refactoring in JPEGFrameView.

5 years agoMake it possible to switch camera angles by clicking on the preview displays.
Steinar H. Gunderson [Wed, 19 Sep 2018 23:00:10 +0000 (01:00 +0200)]
Make it possible to switch camera angles by clicking on the preview displays.

5 years agoName some threads.
Steinar H. Gunderson [Sun, 16 Sep 2018 16:42:06 +0000 (18:42 +0200)]
Name some threads.

5 years agoSubsample chroma on the GPU instead of the CPU.
Steinar H. Gunderson [Sun, 16 Sep 2018 16:23:05 +0000 (18:23 +0200)]
Subsample chroma on the GPU instead of the CPU.

Faster, and also gets the subsampling right. The shaders come from Nageru,
but the support code is heavily tweaked to be more like flow.h.

5 years agoChange from operating point 3 to 2 (more laptop-friendly debugging).
Steinar H. Gunderson [Sun, 16 Sep 2018 15:36:36 +0000 (17:36 +0200)]
Change from operating point 3 to 2 (more laptop-friendly debugging).