]>
git.sesse.net Git - nageru/log
Steinar H. Gunderson [Thu, 7 Jan 2016 21:49:58 +0000 (22:49 +0100)]
Make current_frame_display non-global.
Steinar H. Gunderson [Thu, 7 Jan 2016 21:44:02 +0000 (22:44 +0100)]
Make current_frame_type non-global.
Steinar H. Gunderson [Thu, 7 Jan 2016 21:17:28 +0000 (22:17 +0100)]
Make current_frame_encoding non-global.
Steinar H. Gunderson [Thu, 7 Jan 2016 21:08:22 +0000 (22:08 +0100)]
Small refactoring in H264Encoder::copy_thread_func().
Steinar H. Gunderson [Wed, 6 Jan 2016 22:23:01 +0000 (23:23 +0100)]
Remove more std:: instances.
Steinar H. Gunderson [Tue, 5 Jan 2016 23:26:52 +0000 (00:26 +0100)]
Clean up resources in the global ResourcePool on exit, in order to avoid some assert failures.
Steinar H. Gunderson [Sat, 2 Jan 2016 11:28:48 +0000 (12:28 +0100)]
Fix an issue where we could get remap warnings and add random scales for fading to the static picture.
Steinar H. Gunderson [Sat, 2 Jan 2016 00:27:04 +0000 (01:27 +0100)]
Do value massaging for interlaced signals right at the start of the theme.
Steinar H. Gunderson [Thu, 31 Dec 2015 16:52:14 +0000 (17:52 +0100)]
Only load images once; add a cache.
Steinar H. Gunderson [Wed, 30 Dec 2015 13:23:50 +0000 (14:23 +0100)]
Make side-by-side handle other inputs than 1280x720.
Steinar H. Gunderson [Wed, 30 Dec 2015 13:16:46 +0000 (14:16 +0100)]
Update bmusb.
Steinar H. Gunderson [Wed, 30 Dec 2015 13:15:30 +0000 (14:15 +0100)]
Also show the frame rate.
Steinar H. Gunderson [Wed, 30 Dec 2015 13:08:28 +0000 (14:08 +0100)]
Ease debugging of new video modes a bit.
Steinar H. Gunderson [Wed, 30 Dec 2015 12:48:10 +0000 (13:48 +0100)]
Show the current resolution next to the inputs.
Steinar H. Gunderson [Wed, 30 Dec 2015 00:34:08 +0000 (01:34 +0100)]
Fix a typo.
Steinar H. Gunderson [Thu, 24 Dec 2015 22:29:58 +0000 (23:29 +0100)]
Do not compile the non-HQ fade chains, since we do not need them; speeds up startup a lot.
Steinar H. Gunderson [Thu, 24 Dec 2015 12:51:38 +0000 (13:51 +0100)]
Use the shared resource pool everywhere.
Steinar H. Gunderson [Thu, 24 Dec 2015 12:36:49 +0000 (13:36 +0100)]
Add rescaling variants to all the chains in the theme.
Steinar H. Gunderson [Thu, 24 Dec 2015 00:43:42 +0000 (01:43 +0100)]
Make a Lua function for enumerating the cartesian products of parameters, instead of nesting the for loops ourselves.
Steinar H. Gunderson [Thu, 24 Dec 2015 00:05:32 +0000 (01:05 +0100)]
Refactor the fade chain generation a bit.
Steinar H. Gunderson [Wed, 23 Dec 2015 23:52:42 +0000 (00:52 +0100)]
Refactor the SBS chain generation a bit.
Steinar H. Gunderson [Wed, 23 Dec 2015 13:35:58 +0000 (14:35 +0100)]
Transparently send signals through a deinterlacer as needed.
Steinar H. Gunderson [Wed, 23 Dec 2015 12:36:22 +0000 (13:36 +0100)]
Shorten white_balance_effect in the Lua code.
Steinar H. Gunderson [Wed, 23 Dec 2015 12:18:00 +0000 (13:18 +0100)]
Make a metadata-only version of InputState to be sent to Lua, in order to not be stuck in the GC.
Steinar H. Gunderson [Wed, 23 Dec 2015 11:40:38 +0000 (12:40 +0100)]
Do signal mapping in get_width/get_height.
Steinar H. Gunderson [Wed, 23 Dec 2015 11:07:38 +0000 (12:07 +0100)]
Unify video-to-video and video-to-picture fade chains.
Steinar H. Gunderson [Wed, 23 Dec 2015 01:14:32 +0000 (02:14 +0100)]
Redo get_width/get_height to not work on a LiveInputWrapper, since we do not really know which one to use before we have selected the chain (at which point it really is too late).
Steinar H. Gunderson [Wed, 23 Dec 2015 01:13:08 +0000 (02:13 +0100)]
Add some maybe-helpful comments.
Steinar H. Gunderson [Tue, 22 Dec 2015 19:17:22 +0000 (20:17 +0100)]
Expose width and height information to Lua during get_chain().
Useful for choosing e.g. between chains that contain scalers versus not,
and then later also deinterlacers.
Steinar H. Gunderson [Tue, 22 Dec 2015 00:09:54 +0000 (01:09 +0100)]
Remove unused member.
Steinar H. Gunderson [Tue, 22 Dec 2015 00:08:27 +0000 (01:08 +0100)]
Small helpful comment.
Steinar H. Gunderson [Tue, 22 Dec 2015 00:03:47 +0000 (01:03 +0100)]
Some comment fixes about frame history.
Steinar H. Gunderson [Tue, 22 Dec 2015 00:00:21 +0000 (01:00 +0100)]
Whitespace fix.
Steinar H. Gunderson [Mon, 21 Dec 2015 23:58:38 +0000 (00:58 +0100)]
Change history length to 5, as Movit ends up using YADIF and not w3fdif.
Steinar H. Gunderson [Mon, 21 Dec 2015 00:32:06 +0000 (01:32 +0100)]
Update the commented-out phase timing code for some renamed variables.
Steinar H. Gunderson [Tue, 15 Dec 2015 23:31:40 +0000 (00:31 +0100)]
Switch to memory barriers, now that Mesa 11.1 has them (ATI always had problems with flushing).
Steinar H. Gunderson [Sun, 13 Dec 2015 20:39:54 +0000 (21:39 +0100)]
Deal with a Movit change.
Steinar H. Gunderson [Mon, 23 Nov 2015 00:44:27 +0000 (01:44 +0100)]
Redo frame buffering again.
This partially reverts
86f32b5a in that it removes the exact counting;
however, the system wasn't safe at all (threading, for instance, but
more generally, that the entire state could change between display and
get chain). Put all the state within the chain setup instead.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:50:44 +0000 (23:50 +0100)]
Remove another unused member variable.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:47:10 +0000 (23:47 +0100)]
Remove an unused member variable.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:39:36 +0000 (23:39 +0100)]
Fix a race on the r128 object.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:34:24 +0000 (23:34 +0100)]
Fix another uninitialized sound data issue.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:18:23 +0000 (23:18 +0100)]
Fix a small memory leak in GLWidget.
Steinar H. Gunderson [Sun, 22 Nov 2015 22:08:38 +0000 (23:08 +0100)]
Fix an off-by-two that could lead to undefined samples in the buffer in panic situations.
Steinar H. Gunderson [Sun, 22 Nov 2015 21:42:42 +0000 (22:42 +0100)]
A small #include fix.
Steinar H. Gunderson [Sun, 22 Nov 2015 21:42:35 +0000 (22:42 +0100)]
Send on the interlaced flag properly.
Steinar H. Gunderson [Sun, 22 Nov 2015 20:25:24 +0000 (21:25 +0100)]
Remove an unused variable.
Steinar H. Gunderson [Sun, 22 Nov 2015 20:20:56 +0000 (21:20 +0100)]
Rework signal connection in preparations for deinterlacing.
Several improvements:
- Hold three fields in history instead of one.
- Make input_frames exact; no more chains holding on to input frames
that they do not actually use for anything (so they can be released
sooner).
- Much less roundabout code to give the textures to the input;
the LiveInputWrapper will now simply fetch them from the mixer itself.
Steinar H. Gunderson [Sun, 22 Nov 2015 00:16:33 +0000 (01:16 +0100)]
Update bmusb.
Steinar H. Gunderson [Sat, 21 Nov 2015 23:52:32 +0000 (00:52 +0100)]
Split interlaced frames into two fields that are sent along separately to the mixer. Still no proper deinterlacing, but at least 1080i inputs do not look completely garbled.
Steinar H. Gunderson [Sat, 21 Nov 2015 21:17:59 +0000 (22:17 +0100)]
Unify the texture upload paths a bit.
Steinar H. Gunderson [Sat, 21 Nov 2015 20:51:35 +0000 (21:51 +0100)]
Open up for inputs that are different from the native resolution. No deinterlacing or proper scaling yet, though.
Steinar H. Gunderson [Wed, 18 Nov 2015 00:08:51 +0000 (01:08 +0100)]
Reduce the verbosity somewhat.
Steinar H. Gunderson [Tue, 17 Nov 2015 20:51:26 +0000 (21:51 +0100)]
Fix y_offset calculation if we should change the PBO size.
Steinar H. Gunderson [Tue, 17 Nov 2015 20:16:30 +0000 (21:16 +0100)]
Adapt to the new decode_video_format() prototype.
Steinar H. Gunderson [Tue, 17 Nov 2015 19:08:11 +0000 (20:08 +0100)]
Some restructuring in the offsets to make it less cryptic.
Steinar H. Gunderson [Tue, 17 Nov 2015 18:53:55 +0000 (19:53 +0100)]
Fix a hard-coded offset constant.
Steinar H. Gunderson [Tue, 17 Nov 2015 18:37:37 +0000 (19:37 +0100)]
If we reset the resampling queue, do not try to add audio from the section we skipped over; things will go horribly out of sync.
Steinar H. Gunderson [Tue, 17 Nov 2015 18:30:12 +0000 (19:30 +0100)]
Add a paranoia assert.
Steinar H. Gunderson [Tue, 17 Nov 2015 18:27:13 +0000 (19:27 +0100)]
Rework silence handling a bit; in particular, if num_samples == 0, add silence.
Steinar H. Gunderson [Tue, 17 Nov 2015 18:22:14 +0000 (19:22 +0100)]
Better diagnostics when the time code is changing.
Steinar H. Gunderson [Tue, 17 Nov 2015 01:06:49 +0000 (02:06 +0100)]
Fix a crash bug when avcodec_fill_audio_frame() decided we needed more alignment.
Steinar H. Gunderson [Mon, 16 Nov 2015 23:59:56 +0000 (00:59 +0100)]
Use the new decode_video_format() function from bmusb.
Steinar H. Gunderson [Mon, 16 Nov 2015 21:48:31 +0000 (22:48 +0100)]
Rename a local variable for clarity.
Steinar H. Gunderson [Mon, 16 Nov 2015 21:47:08 +0000 (22:47 +0100)]
Make the implausible audio length check work with lower frame rates.
Steinar H. Gunderson [Mon, 16 Nov 2015 21:46:45 +0000 (22:46 +0100)]
Add an extra byte of headroom to the buffer so that overlong frames are not treated as correct ones.
Steinar H. Gunderson [Mon, 16 Nov 2015 20:39:54 +0000 (21:39 +0100)]
Support true variable input frame rate instead of hard-coding to 60.
Steinar H. Gunderson [Mon, 16 Nov 2015 17:53:15 +0000 (18:53 +0100)]
Move WIDTH/HEIGHT #defines into defs.h.
Steinar H. Gunderson [Sun, 15 Nov 2015 17:01:48 +0000 (18:01 +0100)]
Reduce the default cutoff a bit; we have no instruments below, so better to give the voice a bit extra depth down there. Also fix so that the default is set only one place.
Steinar H. Gunderson [Sun, 15 Nov 2015 16:56:28 +0000 (17:56 +0100)]
Do some ALSA tweaks that will hopefully get rid of the underrun loops.
Steinar H. Gunderson [Sun, 15 Nov 2015 14:24:15 +0000 (15:24 +0100)]
Move audio processing into a thread, since it seems we want as little as possible on the OpenGL critical path.
Steinar H. Gunderson [Sun, 15 Nov 2015 00:08:27 +0000 (01:08 +0100)]
Fix a leak in RefCountedFrame.
Steinar H. Gunderson [Sat, 14 Nov 2015 23:59:29 +0000 (00:59 +0100)]
More consistent H.264 leak fixes.
Steinar H. Gunderson [Sat, 14 Nov 2015 17:32:43 +0000 (18:32 +0100)]
Minor updates to the README.
Steinar H. Gunderson [Sat, 14 Nov 2015 17:10:42 +0000 (18:10 +0100)]
Fix a leak in the H.264 encoder.
Steinar H. Gunderson [Sat, 14 Nov 2015 16:40:14 +0000 (17:40 +0100)]
Fix a memory leak in the Lua code.
Steinar H. Gunderson [Sat, 14 Nov 2015 13:27:38 +0000 (14:27 +0100)]
Fix some leaks in ImageInput.
Steinar H. Gunderson [Sat, 14 Nov 2015 13:14:52 +0000 (14:14 +0100)]
Fix a memory leak in audio encoding.
Steinar H. Gunderson [Sat, 14 Nov 2015 13:10:06 +0000 (14:10 +0100)]
Update bmusb.
Steinar H. Gunderson [Sat, 14 Nov 2015 12:56:01 +0000 (13:56 +0100)]
Kill the H.264 encoder a bit earlier during shutdown; seems easier to debug shutdown with fewer threads around.
Steinar H. Gunderson [Sat, 14 Nov 2015 00:50:55 +0000 (01:50 +0100)]
Switch to uncompressed (32-bit) PCM. Saves a little CPU processing power. Also requires us to switch muxer.
Steinar H. Gunderson [Sat, 14 Nov 2015 00:49:06 +0000 (01:49 +0100)]
Make the muxing buffer configurable, and 10 MB (since 1 MB is too little for our streams when in MP4).
Steinar H. Gunderson [Sat, 14 Nov 2015 00:42:39 +0000 (01:42 +0100)]
Add an option to defs.h to set ffmpeg mux options.
Steinar H. Gunderson [Sat, 14 Nov 2015 00:31:54 +0000 (01:31 +0100)]
Move some muxing parameters out into defs.h.
Steinar H. Gunderson [Sat, 14 Nov 2015 00:00:16 +0000 (01:00 +0100)]
Move audio codec choice into defs.h.
Steinar H. Gunderson [Wed, 11 Nov 2015 19:25:56 +0000 (20:25 +0100)]
Precalculate the VU/LRA meter images as pixmaps, since the painting is so slow.
Steinar H. Gunderson [Wed, 11 Nov 2015 19:00:29 +0000 (20:00 +0100)]
Rate-limit VU and LRA meter updates.
Steinar H. Gunderson [Wed, 11 Nov 2015 17:48:20 +0000 (18:48 +0100)]
Optimize the compressor a lot by making our own makeshift pow().
It seems this takes us down from ~4% to ~0.5%, of which ~2% was the pow
and the rest was call overhead (!). The approximation has its limits,
but doesn't really sound different to me, and the math appears to check out.
Steinar H. Gunderson [Tue, 10 Nov 2015 23:07:37 +0000 (00:07 +0100)]
Add a soundcard output via ALSA.
Steinar H. Gunderson [Mon, 9 Nov 2015 22:53:20 +0000 (23:53 +0100)]
Update README with the latest features.
Steinar H. Gunderson [Mon, 9 Nov 2015 22:02:29 +0000 (23:02 +0100)]
Move the limiter after the compressor; since it is not the prettiest limiter out there, this seems to give better results. Again tuned by ear.
Steinar H. Gunderson [Mon, 9 Nov 2015 22:00:42 +0000 (23:00 +0100)]
Tweak the limiter by ear; increase the headroom so it does not trigger as often (we still have 10 dB to go on), and also increase the release time which makes it a lot less ugly. Tested on both music and conference audio.
Steinar H. Gunderson [Mon, 9 Nov 2015 21:59:29 +0000 (22:59 +0100)]
Fetch default threshold displays from the mixer.
Steinar H. Gunderson [Mon, 9 Nov 2015 21:05:54 +0000 (22:05 +0100)]
Add some GUI elements (hooked up) to help tuning the compressor.
Steinar H. Gunderson [Sun, 8 Nov 2015 23:08:02 +0000 (00:08 +0100)]
Implement oversampled peak detection.
Steinar H. Gunderson [Sun, 8 Nov 2015 22:46:19 +0000 (23:46 +0100)]
Rename Resampler to ResamplingQueue, to avoid conflicts with zita-resampler.
Steinar H. Gunderson [Sun, 8 Nov 2015 22:34:03 +0000 (23:34 +0100)]
Tweak the limiter a bit.
Steinar H. Gunderson [Sun, 8 Nov 2015 22:32:25 +0000 (23:32 +0100)]
Correct a dB comment.
Steinar H. Gunderson [Sun, 8 Nov 2015 22:01:34 +0000 (23:01 +0100)]
Hook up the reset meters button.
Steinar H. Gunderson [Sun, 8 Nov 2015 21:38:28 +0000 (22:38 +0100)]
Move some lambdas in MainWindow out into real functions.