update_video_timeline() is called after destroying the
video_timeline instance at exit.
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 __GI_abort () at abort.c:79
#2 __assert_fail_base at assert.c:92
#3 __GI___assert_fail at assert.c:101
#4 Editor::update_video_timeline(bool) (this=0x55a10a25a060, flush=false) at ../gtk2_ardour/editor_videotimeline.cc:57
#5 Editor::visual_changer(Editor::VisualChange const&) (this=0x55a10a25a060, vc=...) at ../gtk2_ardour/editor.cc:4746
#6 Editor::idle_visual_changer() (this=0x55a10a25a060) at ../gtk2_ardour/editor.cc:4687
#7 Editor::_idle_visual_changer(void*) (arg=0x55a10a25a060) at ../gtk2_ardour/editor.cc:4645
#8 g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#9 () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#12 Gtkmm2ext::UI::run(Receiver&) (this=0x55a105ababe0, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:293
#13 main(int, char**) (argc=1, argv=0x7fffcd806dc8) at ../gtk2_ardour/main.cc:437
Special cases to load-or-create session via NSM_Client::command_open
This bypasses most of the startup-FSM for NSM. Either a session
is loaded or created. JACK is mandatory.
Translators: if the msgid looks like foo|bar then in general the foo is just
there to provide context to clarify the potentially ambiguous nature of bar.
The translated form should not contain the foo or the |
Translators: if the msgid looks like foo|bar then in general the foo is just
there to provide context to clarify the potentially ambiguous nature of bar.
The translated form should not contain the foo or the |
Translators: if the msgid looks like foo|bar then in general the foo is just
there to provide context to clarify the potentially ambiguous nature of bar.
The translated form should not contain the foo or the |
Deleting the group first, directly removes child items
without triggering Canvas::item_changed() for every item.
This significantly speeds up closing sessions (or deleting tracks)
with lots of automation events.
Resampling or copying files during import can take a long time.
If a save, or pending save is called while importing,
it is postponed until after import has completed.
Filenames used by the disk-reader only change when recording
which creates a pending save. There's generally no reason
to force save the session due to renaming a track.
This fixes an implicit save when importing files.
The Track's disk-reader is initially created with an empty
source which is later replaced and dropped:
ARDOUR::Session::save_state
ARDOUR::Session::remove_source
PBD::Destructible::drop_references
ARDOUR::DiskWriter::reset_write_sources
ARDOUR::DiskWriter::set_write_source_name
ARDOUR::Track::set_name
Editor::finish_bringing_in_material
Previous 16 bit mask would do the wrong thing if the keycode was > 65536,
which is not often true but is certainly a valid value (and seen on some
platforms)
Calling Session::set_play_loop repeatedly (e.g. LLL) should toggle in and out
of loop play. Previously transport needed to be stopped before loop play could
be started for a second or subsequent time. This uses the loop_changing boolean
to flag that Session::non_realtime_stop should not unset the loop.
Also, Session::non_realtime_stop must reset loop_changing to false after use so
it does not affect the next transport action.
Corrected colors closer to a5.12 version (compared with existing a6 theme). Added comments to < Color > section.
In the original file there was an excess line (177) - deleted in new version:
177 <ColorAlias name="lua action button: fill" alias="theme:bg"/>
178<ColorAlias name="lua action button: fill" alias="widget:bg"/>
video:
https://vimeo.com/419410940