]> git.sesse.net Git - nageru/log
nageru
5 years agoFix some unneeded copying of encoded JPEGs around (would take ~15% of uninterpolated...
Steinar H. Gunderson [Wed, 6 Mar 2019 19:07:39 +0000 (20:07 +0100)]
Fix some unneeded copying of encoded JPEGs around (would take ~15% of uninterpolated export).

5 years agoAdd Shift+Ctrl for super-fast scrubbing.
Steinar H. Gunderson [Wed, 6 Mar 2019 19:02:13 +0000 (20:02 +0100)]
Add Shift+Ctrl for super-fast scrubbing.

5 years agoGive the ALSA threads names.
Steinar H. Gunderson [Wed, 6 Mar 2019 17:51:31 +0000 (18:51 +0100)]
Give the ALSA threads names.

Patch by Yann Dubreuil, from the BreizhCamp repository.

5 years agoUse ALSA timestamps for marking input data.
Steinar H. Gunderson [Wed, 6 Mar 2019 17:48:18 +0000 (18:48 +0100)]
Use ALSA timestamps for marking input data.

This reportedly gives much more stable delay, as the timer is sampled
when the audio actually arrives in the kernel. Patch by Yann Dubreuil,
from the BreizhCamp repository.

5 years agoRemove unused variable in ALSAInput.
Steinar H. Gunderson [Wed, 6 Mar 2019 17:43:19 +0000 (18:43 +0100)]
Remove unused variable in ALSAInput.

5 years agoFix detection of non-system CEF, when no system CEF package is installed.
Steinar H. Gunderson [Mon, 4 Mar 2019 08:17:44 +0000 (09:17 +0100)]
Fix detection of non-system CEF, when no system CEF package is installed.

Patch by Marcus Nilsen.

5 years agoFix a one-past-the-end access on Futatabi startup.
Steinar H. Gunderson [Mon, 4 Mar 2019 08:12:31 +0000 (09:12 +0100)]
Fix a one-past-the-end access on Futatabi startup.

Reported by Marcus Nilsen.

5 years agoMake TIMEBASE signed again; unsigned caused pts bugs, as signed * unsigned = signed.
Steinar H. Gunderson [Fri, 1 Mar 2019 22:29:28 +0000 (23:29 +0100)]
Make TIMEBASE signed again; unsigned caused pts bugs, as signed * unsigned = signed.

5 years agoFix a segfault that could happen with FFmpeg inputs and slow startup.
Steinar H. Gunderson [Thu, 28 Feb 2019 21:30:46 +0000 (22:30 +0100)]
Fix a segfault that could happen with FFmpeg inputs and slow startup.

5 years agoMark infinite clips as such in the machine-readable part of the subtitle track.
Steinar H. Gunderson [Wed, 27 Feb 2019 22:23:17 +0000 (23:23 +0100)]
Mark infinite clips as such in the machine-readable part of the subtitle track.

5 years agoMake it possible to queue and play clips with no cue-out set (infinite clips). Note...
Steinar H. Gunderson [Tue, 26 Feb 2019 23:35:19 +0000 (00:35 +0100)]
Make it possible to queue and play clips with no cue-out set (infinite clips). Note that you can only have one of them in the clip list for the time being.

5 years agoBe more lenient about the playlist focus; this was too much (we should at least be...
Steinar H. Gunderson [Tue, 26 Feb 2019 23:33:19 +0000 (00:33 +0100)]
Be more lenient about the playlist focus; this was too much (we should at least be able to queue and then immediately play).

5 years agoFix compilation with non-system CEF.
Steinar H. Gunderson [Sat, 23 Feb 2019 21:53:19 +0000 (22:53 +0100)]
Fix compilation with non-system CEF.

5 years agoRescale the pts/dts properly in the MJPEG encoder (matters only if we switch mux...
Steinar H. Gunderson [Thu, 21 Feb 2019 22:30:49 +0000 (23:30 +0100)]
Rescale the pts/dts properly in the MJPEG encoder (matters only if we switch mux away from mp4).

5 years agoMark a TODO.
Steinar H. Gunderson [Tue, 19 Feb 2019 23:38:38 +0000 (00:38 +0100)]
Mark a TODO.

5 years agoRemove the unused frame_length parameter to AudioMixer::add_audio().
Steinar H. Gunderson [Tue, 19 Feb 2019 23:25:43 +0000 (00:25 +0100)]
Remove the unused frame_length parameter to AudioMixer::add_audio().

5 years agoMore tweaks to the memcpy_interleaved multiversioning.
Steinar H. Gunderson [Tue, 19 Feb 2019 08:39:05 +0000 (09:39 +0100)]
More tweaks to the memcpy_interleaved multiversioning.

5 years agoMake it possible to hide displays (and re-show them again). Not persistent for now.
Steinar H. Gunderson [Sun, 17 Feb 2019 19:38:11 +0000 (20:38 +0100)]
Make it possible to hide displays (and re-show them again). Not persistent for now.

5 years agoClang seemingly does not have working function multiversioning yet.
Steinar H. Gunderson [Sun, 17 Feb 2019 17:49:04 +0000 (18:49 +0100)]
Clang seemingly does not have working function multiversioning yet.

5 years agoFix display of out padding points.
Steinar H. Gunderson [Sun, 17 Feb 2019 17:09:39 +0000 (18:09 +0100)]
Fix display of out padding points.

5 years agoEnable function multiversioning for memcpy_interleaved().
Steinar H. Gunderson [Fri, 15 Feb 2019 21:58:02 +0000 (22:58 +0100)]
Enable function multiversioning for memcpy_interleaved().

This makes the AVX2 version actually be used in practice (nobody really
compiles with -march=native).

5 years agoAdd MJPEG export metrics.
Steinar H. Gunderson [Thu, 14 Feb 2019 23:10:06 +0000 (00:10 +0100)]
Add MJPEG export metrics.

5 years agoIncrease the MJPEG encoding queue size by a lot.
Steinar H. Gunderson [Thu, 14 Feb 2019 22:53:54 +0000 (23:53 +0100)]
Increase the MJPEG encoding queue size by a lot.

5 years agoAdd support for aborting playing a clip early.
Steinar H. Gunderson [Wed, 13 Feb 2019 22:41:50 +0000 (23:41 +0100)]
Add support for aborting playing a clip early.

5 years agoFix an overflow issue with long (>= 10 min) clips.
Steinar H. Gunderson [Wed, 13 Feb 2019 08:18:01 +0000 (09:18 +0100)]
Fix an overflow issue with long (>= 10 min) clips.

5 years agoAdd basic Futatabi documentation to the README.
Steinar H. Gunderson [Tue, 29 Jan 2019 21:54:54 +0000 (22:54 +0100)]
Add basic Futatabi documentation to the README.

5 years agoSplit cue padding into separate in and out settings.
Steinar H. Gunderson [Tue, 29 Jan 2019 20:29:21 +0000 (21:29 +0100)]
Split cue padding into separate in and out settings.

5 years agoFix overly aggressive snapping at very low speeds.
Steinar H. Gunderson [Tue, 22 Jan 2019 17:30:38 +0000 (18:30 +0100)]
Fix overly aggressive snapping at very low speeds.

5 years agoRelease Nageru and Futatabi 1.8.2. 1.8.2
Steinar H. Gunderson [Sat, 19 Jan 2019 21:57:27 +0000 (22:57 +0100)]
Release Nageru and Futatabi 1.8.2.

5 years agoAdd Yngve's copyright to the README.
Steinar H. Gunderson [Sat, 19 Jan 2019 21:57:18 +0000 (22:57 +0100)]
Add Yngve's copyright to the README.

5 years agoWork around a crash on exit.
Steinar H. Gunderson [Sat, 19 Jan 2019 21:46:22 +0000 (22:46 +0100)]
Work around a crash on exit.

5 years agoAdd a MIDI mapping editor for Futatabi.
Steinar H. Gunderson [Sat, 19 Jan 2019 21:38:38 +0000 (22:38 +0100)]
Add a MIDI mapping editor for Futatabi.

5 years agoMake the master light speed maximum inclusive instead of exclusive
Steinar H. Gunderson [Sat, 19 Jan 2019 12:58:24 +0000 (13:58 +0100)]
Make the master light speed maximum inclusive instead of exclusive

Less confusing when in an UI, and also doesn't require us to have
some spinners at max 127 and some at max 128 (save for pitch bend).

5 years agoMove controller_spin_box.h to shared, so that the upcoming Futatabi MIDI editor can...
Steinar H. Gunderson [Sat, 19 Jan 2019 12:18:24 +0000 (13:18 +0100)]
Move controller_spin_box.h to shared, so that the upcoming Futatabi MIDI editor can use it.

5 years agoFix some Clang 7 warnings.
Steinar H. Gunderson [Fri, 18 Jan 2019 20:45:00 +0000 (21:45 +0100)]
Fix some Clang 7 warnings.

5 years agoMake MIDIMappingDialog reuse some of the code from midi_mapper_util.h.
Steinar H. Gunderson [Fri, 18 Jan 2019 00:09:40 +0000 (01:09 +0100)]
Make MIDIMappingDialog reuse some of the code from midi_mapper_util.h.

5 years agoAdd support for a master speed MIDI light.
Steinar H. Gunderson [Thu, 17 Jan 2019 23:47:37 +0000 (00:47 +0100)]
Add support for a master speed MIDI light.

5 years agoAdd infrastructure for MIDI lights that are controllers instead of notes.
Steinar H. Gunderson [Thu, 17 Jan 2019 21:18:13 +0000 (22:18 +0100)]
Add infrastructure for MIDI lights that are controllers instead of notes.

5 years agoUnbreak the cue in and out lights.
Steinar H. Gunderson [Thu, 17 Jan 2019 19:39:45 +0000 (20:39 +0100)]
Unbreak the cue in and out lights.

5 years agoMake the preview light blink and be solid like the play light is.
Steinar H. Gunderson [Thu, 17 Jan 2019 19:36:08 +0000 (20:36 +0100)]
Make the preview light blink and be solid like the play light is.

5 years agoMake the MIDI play button blinking when something is ready to play, and solid when...
Steinar H. Gunderson [Thu, 17 Jan 2019 00:05:43 +0000 (01:05 +0100)]
Make the MIDI play button blinking when something is ready to play, and solid when actually playing.

5 years agoOnly enable play if something is actually selected.
Steinar H. Gunderson [Wed, 16 Jan 2019 23:16:19 +0000 (00:16 +0100)]
Only enable play if something is actually selected.

5 years agoBlink the lock light if dragging the speed slider when locked.
Steinar H. Gunderson [Wed, 16 Jan 2019 22:10:16 +0000 (23:10 +0100)]
Blink the lock light if dragging the speed slider when locked.

5 years agoSupport non-binary MIDI lights (ie., with an on-velocity different from 1).
Steinar H. Gunderson [Wed, 16 Jan 2019 22:00:53 +0000 (23:00 +0100)]
Support non-binary MIDI lights (ie., with an on-velocity different from 1).

No UI support yet. Most likely we'll only have UI support in Futatabi.

5 years agoRemove a non-defined member function from MIDIMapper.
Steinar H. Gunderson [Wed, 16 Jan 2019 21:49:33 +0000 (22:49 +0100)]
Remove a non-defined member function from MIDIMapper.

5 years agoAdd some controls for locking the master speed to 100%.
Steinar H. Gunderson [Wed, 16 Jan 2019 21:46:47 +0000 (22:46 +0100)]
Add some controls for locking the master speed to 100%.

5 years agoSupport changing overall playing speed at runtime, using a slider or a MIDI controller.
Steinar H. Gunderson [Tue, 15 Jan 2019 22:09:50 +0000 (23:09 +0100)]
Support changing overall playing speed at runtime, using a slider or a MIDI controller.

5 years agoWhen sending original frames, do the reading in the queueing thread.
Steinar H. Gunderson [Tue, 15 Jan 2019 17:39:10 +0000 (18:39 +0100)]
When sending original frames, do the reading in the queueing thread.

Earlier, we'd only preload it and hope the encoder's second read would
come from the cache. But this is more consistent, and perhaps more
importantly, it fixes a race on the FrameReader, where the two threads
would try accessing it at the same time, causing the file descriptor
to be closed while being used, and a crash.

Now, the FrameReaders are consistently accessed from one thread only.

5 years agoRemove a debug message.
Steinar H. Gunderson [Sat, 12 Jan 2019 19:41:25 +0000 (20:41 +0100)]
Remove a debug message.

5 years agoTurn off guessing if the source bus contains the pitch bend controller.
Steinar H. Gunderson [Sat, 12 Jan 2019 19:26:22 +0000 (20:26 +0100)]
Turn off guessing if the source bus contains the pitch bend controller.

5 years agoSupport pitch bend as a virtual MIDI controller.
Steinar H. Gunderson [Thu, 10 Jan 2019 18:28:46 +0000 (19:28 +0100)]
Support pitch bend as a virtual MIDI controller.

The primary reason this is important is that it's got higher range
(up to 14-bit). Also, DJ controllers with a slider typically send
pitch bend values, so it's useful just to get to use them.

5 years agoAdd an example Futatabi MIDI mapping for the Behringer CMD PL-1.
Steinar H. Gunderson [Wed, 9 Jan 2019 22:57:47 +0000 (23:57 +0100)]
Add an example Futatabi MIDI mapping for the Behringer CMD PL-1.

5 years agoAdd basic MIDI input support (jog, cue in/out, play, camera switch) to Futatabi....
Steinar H. Gunderson [Wed, 9 Jan 2019 22:54:13 +0000 (23:54 +0100)]
Add basic MIDI input support (jog, cue in/out, play, camera switch) to Futatabi. No editor yet.

5 years agoOnly enable the queue button if we can actually queue something.
Steinar H. Gunderson [Wed, 9 Jan 2019 21:40:54 +0000 (22:40 +0100)]
Only enable the queue button if we can actually queue something.

5 years agoOnly enable the preview button if we can actually preview something.
Steinar H. Gunderson [Wed, 9 Jan 2019 21:34:09 +0000 (22:34 +0100)]
Only enable the preview button if we can actually preview something.

5 years agoSplit the MIDI mapping proto file in two; one that will be shared with Futatabi soon...
Steinar H. Gunderson [Tue, 8 Jan 2019 23:24:26 +0000 (00:24 +0100)]
Split the MIDI mapping proto file in two; one that will be shared with Futatabi soon, and one that is for Nageru only.

5 years agoUnbreak preview camera angle again.
Steinar H. Gunderson [Tue, 8 Jan 2019 22:52:10 +0000 (23:52 +0100)]
Unbreak preview camera angle again.

5 years agoMake cue in/out highlight the right cell. More logical, and also helps with jogging.
Steinar H. Gunderson [Tue, 8 Jan 2019 22:51:52 +0000 (23:51 +0100)]
Make cue in/out highlight the right cell. More logical, and also helps with jogging.

5 years agoFix a typo.
Steinar H. Gunderson [Tue, 8 Jan 2019 21:40:47 +0000 (22:40 +0100)]
Fix a typo.

5 years agoMove another helper into midi_mapper_util.h.
Steinar H. Gunderson [Tue, 8 Jan 2019 21:40:33 +0000 (22:40 +0100)]
Move another helper into midi_mapper_util.h.

5 years agoMove some MIDI mapper protobuf reflection code into a shared helper.
Steinar H. Gunderson [Mon, 7 Jan 2019 23:00:24 +0000 (00:00 +0100)]
Move some MIDI mapper protobuf reflection code into a shared helper.

5 years agoMove midi_device.cpp into shared, as Futatabi is getting MIDI support soon.
Steinar H. Gunderson [Sun, 6 Jan 2019 17:59:40 +0000 (18:59 +0100)]
Move midi_device.cpp into shared, as Futatabi is getting MIDI support soon.

5 years agoSmall refactoring in MIDIMapper.
Steinar H. Gunderson [Sun, 6 Jan 2019 12:30:56 +0000 (13:30 +0100)]
Small refactoring in MIDIMapper.

5 years agoMove protobuf text serialization into a shared file.
Steinar H. Gunderson [Sun, 6 Jan 2019 12:19:57 +0000 (13:19 +0100)]
Move protobuf text serialization into a shared file.

5 years agoSplit out the ALSA-specific parts from MIDIMapper into a new class MIDIDevice.
Steinar H. Gunderson [Sat, 5 Jan 2019 19:38:36 +0000 (20:38 +0100)]
Split out the ALSA-specific parts from MIDIMapper into a new class MIDIDevice.

5 years agoSend note velocity of 1 instead of 127 for lights.
Steinar H. Gunderson [Fri, 4 Jan 2019 21:37:00 +0000 (22:37 +0100)]
Send note velocity of 1 instead of 127 for lights.

Seemingly at least the Behringer PL-1 isn't happy about 127;
it has 0 for off (well, default color), 1 for on, 2 for blink,
and ignores all others. 1 should be fine for other devices as
far as I know, so simply make it universal.

5 years agoFix some memory leaks on export.
Steinar H. Gunderson [Tue, 1 Jan 2019 00:30:58 +0000 (01:30 +0100)]
Fix some memory leaks on export.

5 years agoRelease Nageru and Futatabi 1.8.1. 1.8.1
Steinar H. Gunderson [Sun, 30 Dec 2018 18:51:49 +0000 (19:51 +0100)]
Release Nageru and Futatabi 1.8.1.

5 years agoAdd an assert to silence Coverity.
Steinar H. Gunderson [Sun, 30 Dec 2018 14:48:08 +0000 (15:48 +0100)]
Add an assert to silence Coverity.

5 years agoMake the Futatabi PAUSED subtitle a bit more regular and like the PLAYING one.
Steinar H. Gunderson [Sun, 30 Dec 2018 12:06:45 +0000 (13:06 +0100)]
Make the Futatabi PAUSED subtitle a bit more regular and like the PLAYING one.

5 years agoDo a small hack in Futatabi to make sure that Nageru gets the subtitles in time.
Steinar H. Gunderson [Sun, 30 Dec 2018 11:20:59 +0000 (12:20 +0100)]
Do a small hack in Futatabi to make sure that Nageru gets the subtitles in time.

5 years agoAdd support to Nageru for reading the subtitles from FFmpeg streams.
Steinar H. Gunderson [Sun, 30 Dec 2018 11:08:26 +0000 (12:08 +0100)]
Add support to Nageru for reading the subtitles from FFmpeg streams.

5 years agoFix a crash on receiving dummy frames.
Steinar H. Gunderson [Sat, 29 Dec 2018 23:32:51 +0000 (00:32 +0100)]
Fix a crash on receiving dummy frames.

5 years agoSome Futatabi formatting fixes.
Steinar H. Gunderson [Sat, 29 Dec 2018 23:11:43 +0000 (00:11 +0100)]
Some Futatabi formatting fixes.

5 years agoBump version number to 1.8.1-pre.
Steinar H. Gunderson [Fri, 28 Dec 2018 23:23:15 +0000 (00:23 +0100)]
Bump version number to 1.8.1-pre.

5 years agoMake Futatabi output its status as subtitles, in a hopefully fairly parseable form.
Steinar H. Gunderson [Fri, 28 Dec 2018 23:23:02 +0000 (00:23 +0100)]
Make Futatabi output its status as subtitles, in a hopefully fairly parseable form.

5 years agoFix an issue where the stop button would get grayed out if restarting playing.
Steinar H. Gunderson [Fri, 28 Dec 2018 23:13:06 +0000 (00:13 +0100)]
Fix an issue where the stop button would get grayed out if restarting playing.

5 years agoAllow editing a playing playlist.
Steinar H. Gunderson [Fri, 28 Dec 2018 21:31:05 +0000 (22:31 +0100)]
Allow editing a playing playlist.

This is based on the notion of splicing; if we edit a part of the
playlist that is below the currently playing clip, that edit is
heuristically spliced into Player's current internal list.

5 years agoMake duplicated rows show up after the old ones, and also give them new IDs.
Steinar H. Gunderson [Fri, 28 Dec 2018 19:22:24 +0000 (20:22 +0100)]
Make duplicated rows show up after the old ones, and also give them new IDs.

5 years agoFix some issues with the “time remaining” display.
Steinar H. Gunderson [Fri, 28 Dec 2018 17:14:07 +0000 (18:14 +0100)]
Fix some issues with the “time remaining” display.

5 years agoGive each clip in the playlist a stable ID.
Steinar H. Gunderson [Fri, 28 Dec 2018 17:09:35 +0000 (18:09 +0100)]
Give each clip in the playlist a stable ID.

Makes progress display more robust in the face of concurrent edits.

5 years agoCall the done callback only when the entire playlist is done. Simplifies a fair amoun...
Steinar H. Gunderson [Fri, 28 Dec 2018 16:06:15 +0000 (17:06 +0100)]
Call the done callback only when the entire playlist is done. Simplifies a fair amount of stuff.

5 years agoRemove obsolete member function.
Steinar H. Gunderson [Fri, 28 Dec 2018 15:59:29 +0000 (16:59 +0100)]
Remove obsolete member function.

5 years agoFix an issue where the stop button would be disabled too soon.
Steinar H. Gunderson [Fri, 28 Dec 2018 11:34:07 +0000 (12:34 +0100)]
Fix an issue where the stop button would be disabled too soon.

5 years agoMove estimation of time left into Player.
Steinar H. Gunderson [Fri, 28 Dec 2018 11:33:53 +0000 (12:33 +0100)]
Move estimation of time left into Player.

5 years agoMove progress row information into Player; will be easier to track when we start...
Steinar H. Gunderson [Fri, 28 Dec 2018 11:09:17 +0000 (12:09 +0100)]
Move progress row information into Player; will be easier to track when we start modifying the lists.

5 years agoSome clang-formatting of Futatabi.
Steinar H. Gunderson [Fri, 28 Dec 2018 10:56:15 +0000 (11:56 +0100)]
Some clang-formatting of Futatabi.

5 years agoIndentation fix.
Steinar H. Gunderson [Fri, 28 Dec 2018 10:51:23 +0000 (11:51 +0100)]
Indentation fix.

5 years agoSimplify progress calculation.
Steinar H. Gunderson [Fri, 28 Dec 2018 10:40:33 +0000 (11:40 +0100)]
Simplify progress calculation.

5 years agoSimplify Player::thread_func() a little further.
Steinar H. Gunderson [Fri, 28 Dec 2018 10:29:00 +0000 (11:29 +0100)]
Simplify Player::thread_func() a little further.

5 years agoFactor out some common logic from Player::thread_func().
Steinar H. Gunderson [Fri, 28 Dec 2018 10:24:21 +0000 (11:24 +0100)]
Factor out some common logic from Player::thread_func().

5 years agoRemove one level of indentation from Player::thread_func.
Steinar H. Gunderson [Fri, 28 Dec 2018 10:15:50 +0000 (11:15 +0100)]
Remove one level of indentation from Player::thread_func.

5 years agoMove from unique_lock to lock_guard everywhere we can. Perhaps ever so slightly clear...
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.

5 years agoFix a minor unneeded unlock/lock.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:31:45 +0000 (00:31 +0100)]
Fix a minor unneeded unlock/lock.

5 years agoFix some silly indentation.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:30:31 +0000 (00:30 +0100)]
Fix some silly indentation.

5 years agoUpdate a comment after the previous commit.
Steinar H. Gunderson [Thu, 27 Dec 2018 23:22:08 +0000 (00:22 +0100)]
Update a comment after the previous commit.

5 years agoMove the to-play playlist into Player.
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.

5 years agoFix an indentation issue.
Steinar H. Gunderson [Wed, 26 Dec 2018 22:45:12 +0000 (23:45 +0100)]
Fix an indentation issue.

5 years agoSimplify timebase handling in Mux a bit.
Steinar H. Gunderson [Tue, 25 Dec 2018 11:35:18 +0000 (12:35 +0100)]
Simplify timebase handling in Mux a bit.

5 years agoRemove the redundant with_audio parameter from the Mux constructor.
Steinar H. Gunderson [Mon, 24 Dec 2018 22:12:39 +0000 (23:12 +0100)]
Remove the redundant with_audio parameter from the Mux constructor.