~unfa


#617 Saving a project causes audio to freeze 1 year, 10 days ago

Ticket created by ~unfa on ~alextee/zrythm-bug

Saving a Zrythm project seems to be blocking the main thread and causes audio to freeze on a short buffer until saving is done. It's a bit scary ("Did it crash?! Oh no!") and doesn't feel polished.

#616 Autosave shows a dialog window 1 year, 10 days ago

Ticket created by ~unfa on ~alextee/zrythm-bug

Zrythm shows a dialog window every time it autosaves, which is quite annoying. It also makes the taskbar icon flash requesting user attention (Manajro KDE) which should only be reserved for things actually demanding user attention, and not a background task that happens very minute.

#615 Dialog windows hide under main Zrythm window 1 year, 10 days ago

Ticket created by ~unfa on ~alextee/zrythm-bug

Often time a dialog window (preferences, track color selection or something else) hides under Zrythm main window and I'm confused as to why Zrythm is not responding to any actions (mouse clicks etc.) until I find the lost dialog window beneath.

I use Manjaro KDE, so maybe this is a KDE-specific problem?

#614 Crash when resizing MIDI clips on multiple tracks 1 year, 10 days ago

Ticket created by ~unfa on ~alextee/zrythm-bug

#Steps to reproduce

Write a list of steps to reproduce the bug

I've been working on a piece and had 4 Instrument Tracks, with different length regions there, some of them 1-bar long and extended to 4 bars, and some 2-bar long extended to 4 bars. I selected all and wanted to extend them all to 8 bars, but weird stuff started to happen, and then Zrythm crashed.

#Version

Zrythm 1.0.0-alpha.21.0.13.r11.g4217202f8 (debugoptimized)
  built with gcc 11.1.0 for linux (installer)
    +carla
    +jack
    +pulse
    +rtmidi
    +rtaudio
    +sdl2

#Other info

Context, distro, etc.

#Backtrace

../src/utils/backtrace.c (_backtrace_get:345)
../src/utils/log.c (log_writer:900)
??? g_log_structured_array from /usr/lib/libglib-2.0.so.0(+0x5ad10)[0x7f504efc8000]
??? g_log_default_handler from /usr/lib/libglib-2.0.so.0(+0x5b040)[0x7f504efc8000]
??? g_logv from /usr/lib/libglib-2.0.so.0(+0x5c340)[0x7f504efc8000]
??? g_log from /usr/lib/libglib-2.0.so.0(+0x5c7d0)[0x7f504efc8000]
../src/gui/backend/arranger_object.c (arranger_object_get_num_loops:212)
../src/gui/backend/arranger_object.c (arranger_object_get_num_loops:204)
../src/gui/widgets/region.c (draw_midi_region:396)
../src/gui/widgets/region.c (region_draw:1735)
../src/gui/widgets/arranger_draw.c (draw_arranger_object:163)
../src/gui/widgets/arranger_draw.c (arranger_draw_cb:1108)
??? unknown
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f504e333000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f504e333000]
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? g_closure_invoke from /usr/lib/libgobject-2.0.so.0(+0x12c20)[0x7f504e333000]
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f504e333000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f504e333000]
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? gtk_main_do_event from /usr/lib/libgtk-3.so.0(+0x1deb20)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f504e333000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f504e333000]
??? unknown
??? unknown
??? unknown
??? g_main_context_dispatch from /usr/lib/libglib-2.0.so.0(+0x53ea0)[0x7f504efc8000]
??? unknown
??? g_main_context_iteration from /usr/lib/libglib-2.0.so.0(+0x51840)[0x7f504efc8000]
??? g_application_run from /usr/lib/libgio-2.0.so.0(+0xcc710)[0x7f504e38d000]
../src/main.c (main:52)
??? __libc_start_main from /usr/lib/libc.so.6(+0x27a50)[0x7f504cfa4000]
??? _start from (+0x719c0)[0x55653fd13000]
??? unknown

#Action stack

[0] Resize arranger selections
[1] Resize arranger selections
[2] Unsolo Track
[3] Connect sidechain
[4] Create LSP Sidechain Compressor Stereo
[5] Create x42-comp - Dynamic Compressor Stereo
[6] Solo Track
[7] Unlisten Track
[8] Listen Track
[9] Create Aether
[10] Resize arranger selections
[11] Move arranger selections
[12] Move arranger selections

#Log

??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? g_closure_invoke from /usr/lib/libgobject-2.0.so.0(+0x12c20)[0x7f504e333000]
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f504e333000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f504e333000]
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? gtk_container_propagate_draw from /usr/lib/libgtk-3.so.0(+0x10b5b0)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? gtk_main_do_event from /usr/lib/libgtk-3.so.0(+0x1deb20)[0x7f504e813000]
??? unknown
??? unknown
??? unknown
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f504e333000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f504e333000]
??? unknown
??? unknown
??? unknown
??? g_main_context_dispatch from /usr/lib/libglib-2.0.so.0(+0x53ea0)[0x7f504efc8000]
??? unknown
??? g_main_context_iteration from /usr/lib/libglib-2.0.so.0(+0x51840)[0x7f504efc8000]
??? g_application_run from /usr/lib/libgio-2.0.so.0(+0xcc710)[0x7f504e38d000]
../src/main.c (main:52)
??? __libc_start_main from /usr/lib/libc.so.6(+0x27a50)[0x7f504cfa4000]
??? _start from (+0x719c0)[0x55653fd13000]
??? unknown

(zrythm:342788): zrythm-DEBUG: 22:38:12.345: (drag_update:3129): action: RESIZING_R
(zrythm:342788): zrythm-DEBUG: 22:38:12.345: (timeline_arranger_widget_snap_regions_r:962): pushing UI event ET_ARRANGER_SELECTIONS_CHANGED (timeline_arranger_widget_snap_regions_r:962)
(zrythm:342788): zrythm-DEBUG: 22:38:12.345: (timeline_arranger_widget_snap_regions_r:962): pushing UI event ET_ARRANGER_SELECTIONS_CHANGED (timeline_arranger_widget_snap_regions_r:962)

#443 Lift the track effect limit 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-feature

Right now Zrythm only allows the user to put 9 effect plug-ins on a single track.

For most use cases this is fine, but for some situations such a hard limit will get in the way of the artist.

In almost every project I make in Ardour there's one or more tracks that have more than 9 plug-in on them. Sometimes that's just what crazy EDM sound design needs. I should still be able to freeze a track if it's too heavy on the CPU.

#442 Add hotkey for maximizing the UI area that the cursor is focused on 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-feature

In Olive Video Editor if you hit Tilda (`), the program will maximize the panel you're mouse cursor is over and hence - hide everything else until you hit Tilda again.

Blender has a similar function accessible with Ctrl+Space key combo.

Godot Game Engine has something a bit different - if you press Ctrl+Shift+F11 it'll maximize the editor area (hide all extra panels).

Ardour does something similar, though it's much less useful IMO - it hides side panels, toolbars and transport controls.

I know Zrythm has some options to toggle panels (though the hotkeys didn't seem to work for me) - thougth maximizing selected ones could also be neat. It may not make sense fro side panels but the top/bottom workspaces may benefit from this.

You need to focus on MIDI editing? Hit that hotkey and boom! Nothing but piano roll! Need to rearrange the song structure? Boom! Nothing but Timeline! Gotta tweak these levels good? Boom! All is Mixer now!

I guess Tilda could be a good key for this if it isn't taken (doesn't seem to be).

#441 Add a shortcut to start transport in record mode 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-feature

Ardour has a keyboard shortcut that I use pretty much always when want to record:

Shift+Space - starts playback in record mode as opposed to manually clicking the REC button on transport panel and then starting playback.

Could Zrythm do the same thing?

#440 Make it easier to connect sidechain inputs to plug-ins 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-feature

Right now connecting a sidechain input to a plug-in on a track requires a lot of clicking, and L and R channels need to be done separately.

There should be a better, quicker way to do this. Maybe a connections routing grid? Maybe a Sidechain Input > [List Of Tracks] item in the context menu on a plug-in (which only shows whe nthe plug-in has sidechain inputs)?

#439 Allow exporting multiple timeline ranges at once 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-feature

For mastering albums or working on sound effects for games it is crucial to be able to easily export (and re-export over and over) a bunch of timeline ranges to separate files.

I guess we'd need an "Export Ranges" track or something, and there we could create markers, set their names, maybe even some other things.

#611 Crash when zooming in the timeline 1 year, 11 days ago

Ticket created by ~unfa on ~alextee/zrythm-bug

#Steps to reproduce

Write a list of steps to reproduce the bug

#What happens?

Please tell us what happened

#What is expected?

What is expected to happen?

#Version

Zrythm 1.0.0-alpha.21.0.13.r11.g4217202f8 (debugoptimized)
  built with gcc 11.1.0 for linux (installer)
    +carla
    +jack
    +pulse
    +rtmidi
    +rtaudio
    +sdl2

#Other info

Context, distro, etc.

#Backtrace

../src/utils/backtrace.c (_backtrace_get:345)
../src/utils/log.c (log_writer:900)
??? g_log_structured_array from /usr/lib/libglib-2.0.so.0(+0x5ad10)[0x7f7b3f518000]
??? g_log_default_handler from /usr/lib/libglib-2.0.so.0(+0x5b040)[0x7f7b3f518000]
??? g_logv from /usr/lib/libglib-2.0.so.0(+0x5c340)[0x7f7b3f518000]
??? g_log from /usr/lib/libglib-2.0.so.0(+0x5c7d0)[0x7f7b3f518000]
../src/gui/widgets/ruler.c (ruler_widget_set_zoom_level:2011)
../src/gui/widgets/arranger.c (on_scroll:5055)
??? unknown
??? g_closure_invoke from /usr/lib/libgobject-2.0.so.0(+0x12c20)[0x7f7b3e883000]
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f7b3e883000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f7b3e883000]
??? unknown
??? unknown
??? gtk_main_do_event from /usr/lib/libgtk-3.so.0(+0x1deb20)[0x7f7b3ed63000]
??? unknown
??? unknown
??? g_main_context_dispatch from /usr/lib/libglib-2.0.so.0(+0x53ea0)[0x7f7b3f518000]
??? unknown
??? g_main_context_iteration from /usr/lib/libglib-2.0.so.0(+0x51840)[0x7f7b3f518000]
??? g_application_run from /usr/lib/libgio-2.0.so.0(+0xcc710)[0x7f7b3e8dd000]
../src/main.c (main:52)
??? __libc_start_main from /usr/lib/libc.so.6(+0x27a50)[0x7f7b3d4f4000]
??? _start from (+0x719c0)[0x559d59506000]
??? unknown

#Action stack

[0] Move arranger selections
[1] Record arranger selections
[2] Create Audio Track
[3] Create Instrument Track
[4] Create Instrument Track

#Log

(zrythm:336634): zrythm-DEBUG: 00:45:41.196: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.196: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.196: (on_scroll:5000): scrolled to 34224.770264, 209.750885
(zrythm:336634): zrythm-DEBUG: 00:45:41.196: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.196: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)
(zrythm:336634): zrythm-DEBUG: 00:45:41.197: (tracklist_widget_on_size_allocate:251): pushing UI event ET_TRACKS_RESIZED (tracklist_widget_on_size_allocate:251)
(zrythm:336634): zrythm-DEBUG: 00:45:41.218: (on_scroll:5000): scrolled to 44488.770264, 209.750885
(zrythm:336634): zrythm-DEBUG: 00:45:41.218: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.218: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)
(zrythm:336634): zrythm-DEBUG: 00:45:41.218: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.218: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.220: (tracklist_widget_on_size_allocate:251): pushing UI event ET_TRACKS_RESIZED (tracklist_widget_on_size_allocate:251)
(zrythm:336634): zrythm-DEBUG: 00:45:41.250: (on_scroll:5000): scrolled to 57832.770264, 209.750885
(zrythm:336634): zrythm-DEBUG: 00:45:41.250: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.250: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)
(zrythm:336634): zrythm-DEBUG: 00:45:41.250: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.250: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.266: (tracklist_widget_on_size_allocate:251): pushing UI event ET_TRACKS_RESIZED (tracklist_widget_on_size_allocate:251)
(zrythm:336634): zrythm-DEBUG: 00:45:41.393: (on_scroll:5000): scrolled to 75174.523193, 209.750885
(zrythm:336634): zrythm-DEBUG: 00:45:41.393: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.393: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)
(zrythm:336634): zrythm-DEBUG: 00:45:41.395: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.395: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.408: (on_scroll:5000): scrolled to 97722.523193, 209.750885

(zrythm:336634): GLib-GIO-CRITICAL **: 00:45:41.408: ((null):(null)): g_simple_action_set_enabled: assertion 'G_IS_SIMPLE_ACTION (simple)' failed
(zrythm:336634): zrythm-DEBUG: 00:45:41.631: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)
(zrythm:336634): zrythm-DEBUG: 00:45:41.631: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.631: (ruler_widget_refresh:1992): pushing UI event ET_RULER_SIZE_CHANGED (ruler_widget_refresh:1992)
(zrythm:336634): zrythm-DEBUG: 00:45:41.632: (on_scroll:5000): scrolled to 97721.625244, 208.852814

(zrythm:336634): GLib-GIO-CRITICAL **: 00:45:41.632: ((null):(null)): g_simple_action_set_enabled: assertion 'G_IS_SIMPLE_ACTION (simple)' failed
../src/utils/backtrace.c (_backtrace_get:345)
../src/utils/log.c (log_writer:900)
??? g_log_structured_array from /usr/lib/libglib-2.0.so.0(+0x5ad10)[0x7f7b3f518000]
??? g_log_default_handler from /usr/lib/libglib-2.0.so.0(+0x5b040)[0x7f7b3f518000]
??? g_logv from /usr/lib/libglib-2.0.so.0(+0x5c340)[0x7f7b3f518000]
??? g_log from /usr/lib/libglib-2.0.so.0(+0x5c7d0)[0x7f7b3f518000]
../src/gui/widgets/ruler.c (ruler_widget_set_zoom_level:2011)
../src/gui/widgets/arranger.c (on_scroll:5055)
??? unknown
??? g_closure_invoke from /usr/lib/libgobject-2.0.so.0(+0x12c20)[0x7f7b3e883000]
??? unknown
??? g_signal_emit_valist from /usr/lib/libgobject-2.0.so.0(+0x2edd0)[0x7f7b3e883000]
??? g_signal_emit from /usr/lib/libgobject-2.0.so.0(+0x30110)[0x7f7b3e883000]
??? unknown
??? unknown
??? gtk_main_do_event from /usr/lib/libgtk-3.so.0(+0x1deb20)[0x7f7b3ed63000]
??? unknown
??? unknown
??? g_main_context_dispatch from /usr/lib/libglib-2.0.so.0(+0x53ea0)[0x7f7b3f518000]
??? unknown
??? g_main_context_iteration from /usr/lib/libglib-2.0.so.0(+0x51840)[0x7f7b3f518000]
??? g_application_run from /usr/lib/libgio-2.0.so.0(+0xcc710)[0x7f7b3e8dd000]
../src/main.c (main:52)
??? __libc_start_main from /usr/lib/libc.so.6(+0x27a50)[0x7f7b3d4f4000]
??? _start from (+0x719c0)[0x559d59506000]
??? unknown

(zrythm:336634): zrythm-DEBUG: 00:45:41.856: (on_hadj_value_changed:58): pushing UI event ET_TIMELINE_VIEWPORT_CHANGED (on_hadj_value_changed:58)