[SCM] gsequencer/upstream: refactored X

jkraehemann-guest at users.alioth.debian.org jkraehemann-guest at users.alioth.debian.org
Sun Jun 14 16:06:54 UTC 2015


The following commit has been merged in the upstream branch:
commit 13225c0cceed54c5d5b3823400927bf1c49cda5f
Author: Joël Krähemann <weedlight at gmail.com>
Date:   Tue Apr 7 14:53:12 2015 +0000

    refactored X

diff --git a/.deps/gsequencer-ags_automation_area_callbacks.Po b/.deps/gsequencer-ags_automation_area_callbacks.Po
index 69a3c04..c605eef 100644
--- a/.deps/gsequencer-ags_automation_area_callbacks.Po
+++ b/.deps/gsequencer-ags_automation_area_callbacks.Po
@@ -563,39 +563,9 @@ gsequencer-ags_automation_area_callbacks.o: \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
- src/ags/X/ags_navigation.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h
+ src/ags/X/ags_navigation.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h
 
 /usr/include/stdc-predef.h:
 
@@ -1925,134 +1895,12 @@ src/ags/widget/ags_ruler.h:
 
 src/ags/X/ags_navigation.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
diff --git a/.deps/gsequencer-ags_automation_edit_callbacks.Po b/.deps/gsequencer-ags_automation_edit_callbacks.Po
index e734d18..13a9c0d 100644
--- a/.deps/gsequencer-ags_automation_edit_callbacks.Po
+++ b/.deps/gsequencer-ags_automation_edit_callbacks.Po
@@ -559,39 +559,9 @@ gsequencer-ags_automation_edit_callbacks.o: \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
@@ -1995,137 +1965,15 @@ src/ags/audio/ags_acceleration.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_machine.h:
 
diff --git a/.deps/gsequencer-ags_change_tact.Po b/.deps/gsequencer-ags_change_tact.Po
index 29c993a..d9b8c27 100644
--- a/.deps/gsequencer-ags_change_tact.Po
+++ b/.deps/gsequencer-ags_change_tact.Po
@@ -527,47 +527,9 @@ gsequencer-ags_change_tact.o: src/ags/audio/task/ags_change_tact.c \
  /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
- /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/audio/ags_channel.h src/ags/audio/ags_recall_id.h \
- src/ags/audio/ags_recycling.h src/ags/audio/ags_audio_signal.h \
- src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
- src/ags/audio/ags_port.h /usr/include/ladspa.h \
- src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
+ /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
@@ -585,12 +547,24 @@ gsequencer-ags_change_tact.o: src/ags/audio/task/ags_change_tact.c \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/main.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
- src/ags-lib/object/ags_connectable.h
+ src/ags/main.h src/ags-lib/object/ags_connectable.h \
+ src/ags/thread/ags_audio_loop.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
+ src/ags/thread/ags_thread-posix.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h
 
 /usr/include/stdc-predef.h:
 
@@ -1812,87 +1786,75 @@ src/ags/X/ags_navigation.h:
 
 /usr/include/gtk-2.0/gtk/gtktipsquery.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/bits/stdlib-float.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
+src/ags/file/ags_file.h:
 
-/usr/include/fcntl.h:
+/usr/include/libxml2/libxml/tree.h:
 
-/usr/include/bits/fcntl.h:
+/usr/include/libxml2/libxml/xmlversion.h:
 
-/usr/include/bits/fcntl-linux.h:
+/usr/include/libxml2/libxml/xmlexports.h:
 
-/usr/include/bits/stat.h:
+/usr/include/libxml2/libxml/xmlstring.h:
 
-/usr/include/assert.h:
+/usr/include/libxml2/libxml/xmlregexp.h:
 
-/usr/include/sys/poll.h:
+/usr/include/libxml2/libxml/dict.h:
 
-/usr/include/bits/poll.h:
+/usr/include/libxml2/libxml/xmlmemory.h:
 
-/usr/include/errno.h:
+/usr/include/libxml2/libxml/threads.h:
 
-/usr/include/bits/errno.h:
+/usr/include/libxml2/libxml/globals.h:
 
-/usr/include/linux/errno.h:
+/usr/include/libxml2/libxml/parser.h:
 
-/usr/include/asm/errno.h:
+/usr/include/libxml2/libxml/hash.h:
 
-/usr/include/asm-generic/errno.h:
+/usr/include/libxml2/libxml/valid.h:
 
-/usr/include/asm-generic/errno-base.h:
+/usr/include/libxml2/libxml/xmlerror.h:
 
-/usr/include/alsa/asoundef.h:
+/usr/include/libxml2/libxml/list.h:
 
-/usr/include/alsa/version.h:
+/usr/include/libxml2/libxml/xmlautomata.h:
 
-/usr/include/alsa/global.h:
+/usr/include/libxml2/libxml/entities.h:
 
-/usr/include/alsa/input.h:
+/usr/include/libxml2/libxml/encoding.h:
 
-/usr/include/alsa/output.h:
+/usr/include/iconv.h:
 
-/usr/include/alsa/error.h:
+/usr/include/libxml2/libxml/xmlIO.h:
 
-/usr/include/alsa/conf.h:
+/usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/alsa/pcm.h:
+/usr/include/stdlib.h:
 
-/usr/include/alsa/rawmidi.h:
+/usr/include/bits/waitflags.h:
 
-/usr/include/alsa/timer.h:
+/usr/include/bits/waitstatus.h:
 
-/usr/include/alsa/hwdep.h:
+/usr/include/alloca.h:
 
-/usr/include/alsa/control.h:
+/usr/include/bits/stdlib-bsearch.h:
 
-/usr/include/alsa/mixer.h:
+/usr/include/bits/stdlib-float.h:
 
-/usr/include/alsa/seq_event.h:
+/usr/include/libxml2/libxml/xlink.h:
 
-/usr/include/alsa/seq.h:
+/usr/include/libxml2/libxml/SAX2.h:
 
-/usr/include/alsa/seqmid.h:
+src/ags/main.h:
 
-/usr/include/alsa/seq_midi_event.h:
+src/ags-lib/object/ags_connectable.h:
 
 src/ags/thread/ags_audio_loop.h:
 
@@ -1945,95 +1907,3 @@ src/ags/thread/ags_async_queue.h:
 /usr/include/sys/time.h:
 
 src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
-
-/usr/include/ladspa.h:
-
-src/ags/audio/ags_recall_dependency.h:
-
-src/ags/audio/ags_notation.h:
-
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
-src/ags/thread/ags_timestamp_thread.h:
-
-src/ags/audio/ags_timestamp.h:
-
-src/ags/audio/ags_note.h:
-
-src/ags/main.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
-src/ags-lib/object/ags_connectable.h:
diff --git a/.deps/gsequencer-ags_display_tact.Po b/.deps/gsequencer-ags_display_tact.Po
index e8b4667..8c6cac5 100644
--- a/.deps/gsequencer-ags_display_tact.Po
+++ b/.deps/gsequencer-ags_display_tact.Po
@@ -144,6 +144,26 @@ gsequencer-ags_display_tact.o: src/ags/audio/task/ags_display_tact.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
+ /usr/include/libxml2/libxml/xmlversion.h \
+ /usr/include/libxml2/libxml/xmlexports.h \
+ /usr/include/libxml2/libxml/xmlstring.h \
+ /usr/include/libxml2/libxml/xmlregexp.h \
+ /usr/include/libxml2/libxml/dict.h \
+ /usr/include/libxml2/libxml/xmlmemory.h \
+ /usr/include/libxml2/libxml/threads.h \
+ /usr/include/libxml2/libxml/globals.h \
+ /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
+ /usr/include/libxml2/libxml/valid.h \
+ /usr/include/libxml2/libxml/xmlerror.h \
+ /usr/include/libxml2/libxml/list.h \
+ /usr/include/libxml2/libxml/xmlautomata.h \
+ /usr/include/libxml2/libxml/entities.h \
+ /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
+ /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_channel.h /usr/include/gtk-2.0/gtk/gtk.h \
  /usr/include/gtk-2.0/gdk/gdk.h \
@@ -569,29 +589,9 @@ gsequencer-ags_display_tact.o: src/ags/audio/task/ags_display_tact.c \
  src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
  src/ags/audio/ags_port.h /usr/include/ladspa.h \
  src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
- /usr/include/libxml2/libxml/tree.h \
- /usr/include/libxml2/libxml/xmlversion.h \
- /usr/include/libxml2/libxml/xmlexports.h \
- /usr/include/libxml2/libxml/xmlstring.h \
- /usr/include/libxml2/libxml/xmlregexp.h \
- /usr/include/libxml2/libxml/dict.h \
- /usr/include/libxml2/libxml/xmlmemory.h \
- /usr/include/libxml2/libxml/threads.h \
- /usr/include/libxml2/libxml/globals.h \
- /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
- /usr/include/libxml2/libxml/valid.h \
- /usr/include/libxml2/libxml/xmlerror.h \
- /usr/include/libxml2/libxml/list.h \
- /usr/include/libxml2/libxml/xmlautomata.h \
- /usr/include/libxml2/libxml/entities.h \
- /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
- /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
- /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
  src/ags/audio/ags_note.h src/ags-lib/object/ags_connectable.h \
- src/ags/X/ags_navigation.h src/ags/main.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h
+ src/ags/X/ags_navigation.h src/ags/object/ags_soundcard.h src/ags/main.h
 
 /usr/include/stdc-predef.h:
 
@@ -1039,6 +1039,58 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+/usr/include/libxml2/libxml/tree.h:
+
+/usr/include/libxml2/libxml/xmlversion.h:
+
+/usr/include/libxml2/libxml/xmlexports.h:
+
+/usr/include/libxml2/libxml/xmlstring.h:
+
+/usr/include/libxml2/libxml/xmlregexp.h:
+
+/usr/include/libxml2/libxml/dict.h:
+
+/usr/include/libxml2/libxml/xmlmemory.h:
+
+/usr/include/libxml2/libxml/threads.h:
+
+/usr/include/libxml2/libxml/globals.h:
+
+/usr/include/libxml2/libxml/parser.h:
+
+/usr/include/libxml2/libxml/hash.h:
+
+/usr/include/libxml2/libxml/valid.h:
+
+/usr/include/libxml2/libxml/xmlerror.h:
+
+/usr/include/libxml2/libxml/list.h:
+
+/usr/include/libxml2/libxml/xmlautomata.h:
+
+/usr/include/libxml2/libxml/entities.h:
+
+/usr/include/libxml2/libxml/encoding.h:
+
+/usr/include/iconv.h:
+
+/usr/include/libxml2/libxml/xmlIO.h:
+
+/usr/include/libxml2/libxml/SAX.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
@@ -1975,50 +2027,6 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
@@ -2029,12 +2037,6 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_navigation.h:
 
-src/ags/main.h:
+src/ags/object/ags_soundcard.h:
 
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
+src/ags/main.h:
diff --git a/.deps/gsequencer-ags_drum.Po b/.deps/gsequencer-ags_drum.Po
index b050d15..f1255fb 100644
--- a/.deps/gsequencer-ags_drum.Po
+++ b/.deps/gsequencer-ags_drum.Po
@@ -563,47 +563,61 @@ gsequencer-ags_drum.o: src/ags/X/machine/ags_drum.c \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
  src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
  src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_portlet.h src/ags/object/ags_plugin.h \
+ src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
+ /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
+ /usr/include/bits/stat.h src/ags/audio/ags_output.h \
+ src/ags/audio/ags_pattern.h src/ags/audio/ags_recall_factory.h \
+ src/ags/audio/recall/ags_delay_audio.h \
+ src/ags/audio/recall/ags_count_beats_audio.h \
+ src/ags/audio/recall/ags_count_beats_audio_run.h \
+ src/ags/audio/recall/ags_copy_pattern_audio.h src/ags/audio/ags_devout.h \
+ /usr/include/alsa/asoundlib.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/fcntl.h /usr/include/bits/fcntl.h \
+ /usr/include/bits/fcntl-linux.h /usr/include/assert.h \
+ /usr/include/sys/poll.h /usr/include/bits/poll.h /usr/include/errno.h \
+ /usr/include/bits/errno.h /usr/include/linux/errno.h \
+ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
+ /usr/include/asm-generic/errno-base.h /usr/include/alsa/asoundef.h \
+ /usr/include/alsa/version.h /usr/include/alsa/global.h \
+ /usr/include/alsa/input.h /usr/include/alsa/output.h \
+ /usr/include/alsa/error.h /usr/include/alsa/conf.h \
+ /usr/include/alsa/pcm.h /usr/include/alsa/rawmidi.h \
+ /usr/include/alsa/timer.h /usr/include/alsa/hwdep.h \
+ /usr/include/alsa/control.h /usr/include/alsa/mixer.h \
+ /usr/include/alsa/seq_event.h /usr/include/alsa/seq.h \
+ /usr/include/alsa/seqmid.h /usr/include/alsa/seq_midi_event.h \
+ src/ags/thread/ags_audio_loop.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
+ src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
+ /usr/include/linux/types.h /usr/include/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
+ /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
+ /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
+ src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h \
+ src/ags/audio/recall/ags_copy_pattern_audio_run.h \
+ src/ags/audio/recall/ags_copy_pattern_channel.h \
+ src/ags/audio/ags_recall_channel.h \
+ src/ags/audio/recall/ags_copy_pattern_channel_run.h \
+ src/ags/audio/ags_recall_channel_run.h \
+ src/ags/audio/task/recall/ags_apply_sequencer_length.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
  src/ags/widget/ags_hindicator.h src/ags/widget/ags_waveform.h \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
  src/ags/file/ags_file_launch.h src/ags/file/ags_file_gui.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -711,21 +725,7 @@ gsequencer-ags_drum.o: src/ags/X/machine/ags_drum.c \
  src/ags/X/machine/ags_drum_input_line.h \
  src/ags/X/machine/ags_drum_output_pad.h \
  src/ags/X/machine/ags_drum_output_line.h \
- src/ags/X/machine/ags_drum_input_line_callbacks.h \
- src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
- /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
- src/ags/audio/ags_output.h src/ags/audio/ags_pattern.h \
- src/ags/audio/ags_recall_factory.h \
- src/ags/audio/recall/ags_delay_audio.h \
- src/ags/audio/recall/ags_count_beats_audio.h \
- src/ags/audio/recall/ags_count_beats_audio_run.h \
- src/ags/audio/recall/ags_copy_pattern_audio.h \
- src/ags/audio/recall/ags_copy_pattern_audio_run.h \
- src/ags/audio/recall/ags_copy_pattern_channel.h \
- src/ags/audio/ags_recall_channel.h \
- src/ags/audio/recall/ags_copy_pattern_channel_run.h \
- src/ags/audio/ags_recall_channel_run.h \
- src/ags/audio/task/recall/ags_apply_sequencer_length.h
+ src/ags/X/machine/ags_drum_input_line_callbacks.h
 
 /usr/include/stdc-predef.h:
 
@@ -2059,38 +2059,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2099,31 +2067,29 @@ src/ags/object/ags_portlet.h:
 
 src/ags/object/ags_plugin.h:
 
-src/ags/file/ags_file_stock.h:
-
-src/ags/widget/ags_led.h:
+src/ags/audio/ags_input.h:
 
-src/ags/widget/ags_vindicator.h:
+/usr/include/glib-2.0/glib/gstdio.h:
 
-src/ags/widget/ags_indicator.h:
+/usr/include/glib-2.0/glib/gprintf.h:
 
-src/ags/widget/ags_hindicator.h:
+/usr/include/sys/stat.h:
 
-src/ags/widget/ags_waveform.h:
+/usr/include/bits/stat.h:
 
-src/ags/widget/ags_dial.h:
+src/ags/audio/ags_output.h:
 
-src/ags/widget/ags_cartesian.h:
+src/ags/audio/ags_pattern.h:
 
-src/ags/file/ags_file_id_ref.h:
+src/ags/audio/ags_recall_factory.h:
 
-src/ags/file/ags_file_lookup.h:
+src/ags/audio/recall/ags_delay_audio.h:
 
-src/ags/file/ags_file_launch.h:
+src/ags/audio/recall/ags_count_beats_audio.h:
 
-src/ags/file/ags_file_gui.h:
+src/ags/audio/recall/ags_count_beats_audio_run.h:
 
-src/ags/X/ags_window.h:
+src/ags/audio/recall/ags_copy_pattern_audio.h:
 
 src/ags/audio/ags_devout.h:
 
@@ -2141,8 +2107,6 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/bits/fcntl-linux.h:
 
-/usr/include/bits/stat.h:
-
 /usr/include/assert.h:
 
 /usr/include/sys/poll.h:
@@ -2215,16 +2179,88 @@ src/ags/thread/ags_audio_loop.h:
 
 /usr/include/bits/mathinline.h:
 
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
 
+src/ags/audio/recall/ags_copy_pattern_audio_run.h:
+
+src/ags/audio/recall/ags_copy_pattern_channel.h:
+
+src/ags/audio/ags_recall_channel.h:
+
+src/ags/audio/recall/ags_copy_pattern_channel_run.h:
+
+src/ags/audio/ags_recall_channel_run.h:
+
+src/ags/audio/task/recall/ags_apply_sequencer_length.h:
+
+src/ags/file/ags_file_stock.h:
+
+src/ags/widget/ags_led.h:
+
+src/ags/widget/ags_vindicator.h:
+
+src/ags/widget/ags_indicator.h:
+
+src/ags/widget/ags_hindicator.h:
+
+src/ags/widget/ags_waveform.h:
+
+src/ags/widget/ags_dial.h:
+
+src/ags/widget/ags_cartesian.h:
+
+src/ags/file/ags_file_id_ref.h:
+
+src/ags/file/ags_file_lookup.h:
+
+src/ags/file/ags_file_launch.h:
+
+src/ags/file/ags_file_gui.h:
+
+src/ags/X/ags_window.h:
+
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
@@ -2478,37 +2514,3 @@ src/ags/X/machine/ags_drum_output_pad.h:
 src/ags/X/machine/ags_drum_output_line.h:
 
 src/ags/X/machine/ags_drum_input_line_callbacks.h:
-
-src/ags/audio/ags_input.h:
-
-/usr/include/glib-2.0/glib/gstdio.h:
-
-/usr/include/glib-2.0/glib/gprintf.h:
-
-/usr/include/sys/stat.h:
-
-src/ags/audio/ags_output.h:
-
-src/ags/audio/ags_pattern.h:
-
-src/ags/audio/ags_recall_factory.h:
-
-src/ags/audio/recall/ags_delay_audio.h:
-
-src/ags/audio/recall/ags_count_beats_audio.h:
-
-src/ags/audio/recall/ags_count_beats_audio_run.h:
-
-src/ags/audio/recall/ags_copy_pattern_audio.h:
-
-src/ags/audio/recall/ags_copy_pattern_audio_run.h:
-
-src/ags/audio/recall/ags_copy_pattern_channel.h:
-
-src/ags/audio/ags_recall_channel.h:
-
-src/ags/audio/recall/ags_copy_pattern_channel_run.h:
-
-src/ags/audio/ags_recall_channel_run.h:
-
-src/ags/audio/task/recall/ags_apply_sequencer_length.h:
diff --git a/.deps/gsequencer-ags_drum_callbacks.Po b/.deps/gsequencer-ags_drum_callbacks.Po
index 753f001..30a45bd 100644
--- a/.deps/gsequencer-ags_drum_callbacks.Po
+++ b/.deps/gsequencer-ags_drum_callbacks.Po
@@ -564,21 +564,8 @@ gsequencer-ags_drum_callbacks.o: src/ags/X/machine/ags_drum_callbacks.c \
  src/ags/widget/ags_expander.h src/ags/X/ags_machine_callbacks.h \
  src/ags/audio/ags_task.h src/ags/object/ags_application_context.h \
  src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/file/ags_file.h src/ags/widget/ags_led.h \
- src/ags/thread/ags_audio_loop.h /usr/include/math.h \
- /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
- /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
- /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
- /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/file/ags_file.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
  src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
  /usr/include/string.h /usr/include/bits/string.h \
  /usr/include/bits/string2.h /usr/include/fcntl.h \
@@ -595,11 +582,24 @@ gsequencer-ags_drum_callbacks.o: src/ags/X/machine/ags_drum_callbacks.c \
  /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
  /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
  /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_input.h \
- /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
- /usr/include/sys/stat.h src/ags/audio/ags_output.h \
- src/ags/audio/ags_pattern.h src/ags/audio/task/ags_toggle_pattern_bit.h \
+ /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
+ /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
+ src/ags/audio/ags_output.h src/ags/audio/ags_pattern.h \
+ src/ags/audio/task/ags_toggle_pattern_bit.h \
  src/ags/audio/task/ags_toggle_led.h \
  src/ags/audio/task/recall/ags_apply_bpm.h \
  src/ags/audio/task/recall/ags_apply_sequencer_length.h \
@@ -618,7 +618,8 @@ gsequencer-ags_drum_callbacks.o: src/ags/X/machine/ags_drum_callbacks.c \
  src/ags/audio/recall/ags_stream_channel.h \
  src/ags/audio/recall/ags_play_audio_signal.h \
  src/ags/audio/ags_recall_audio_signal.h \
- src/ags/audio/file/ags_audio_file.h src/ags/X/ags_window.h \
+ src/ags/audio/file/ags_audio_file.h src/ags/widget/ags_led.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -1968,66 +1969,14 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
-src/ags/widget/ags_led.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/asoundlib.h:
@@ -2098,6 +2047,56 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/seq_midi_event.h:
 
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
@@ -2154,8 +2153,12 @@ src/ags/audio/ags_recall_audio_signal.h:
 
 src/ags/audio/file/ags_audio_file.h:
 
+src/ags/widget/ags_led.h:
+
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_drum_input_line.Po b/.deps/gsequencer-ags_drum_input_line.Po
index c40f994..d5a96e0 100644
--- a/.deps/gsequencer-ags_drum_input_line.Po
+++ b/.deps/gsequencer-ags_drum_input_line.Po
@@ -559,15 +559,7 @@ gsequencer-ags_drum_input_line.o: src/ags/X/machine/ags_drum_input_line.c \
  src/ags/X/machine/ags_drum_input_line_callbacks.h \
  src/ags/audio/ags_audio.h src/ags/util/ags_id_generator.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/object/ags_portlet.h src/ags/file/ags_file_stock.h \
  src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
@@ -606,7 +598,15 @@ gsequencer-ags_drum_input_line.o: src/ags/X/machine/ags_drum_input_line.c \
  /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
  /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
  /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
+ /usr/include/linux/types.h /usr/include/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
+ /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
+ /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
+ src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
  src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
  src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_volume_channel.h \
@@ -625,7 +625,7 @@ gsequencer-ags_drum_input_line.o: src/ags/X/machine/ags_drum_input_line.c \
  src/ags/audio/recall/ags_buffer_channel.h \
  src/ags/audio/recall/ags_buffer_channel_run.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -1958,38 +1958,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2138,10 +2106,42 @@ src/ags/thread/ags_audio_loop.h:
 
 /usr/include/bits/mathinline.h:
 
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2182,6 +2182,8 @@ src/ags/widget/ags_expander_set.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_drum_input_line_callbacks.Po b/.deps/gsequencer-ags_drum_input_line_callbacks.Po
index f74d438..6361e38 100644
--- a/.deps/gsequencer-ags_drum_input_line_callbacks.Po
+++ b/.deps/gsequencer-ags_drum_input_line_callbacks.Po
@@ -564,15 +564,7 @@ gsequencer-ags_drum_input_line_callbacks.o: \
  src/ags/X/machine/ags_drum_input_pad.h src/ags/X/ags_pad.h \
  src/ags/widget/ags_expander_set.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/audio/ags_devout.h \
  /usr/include/alsa/asoundlib.h /usr/include/string.h \
  /usr/include/bits/string.h /usr/include/bits/string2.h \
@@ -595,8 +587,16 @@ gsequencer-ags_drum_input_line_callbacks.o: \
  /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
  /usr/include/bits/inf.h /usr/include/bits/nan.h \
  /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
  /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
@@ -609,7 +609,8 @@ gsequencer-ags_drum_input_line_callbacks.o: \
  src/ags/audio/recall/ags_stream_channel.h \
  src/ags/audio/recall/ags_copy_pattern_channel.h \
  src/ags/audio/recall/ags_copy_pattern_channel_run.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h \
@@ -1952,38 +1953,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2078,10 +2047,42 @@ src/ags/thread/ags_audio_loop.h:
 
 /usr/include/bits/mathinline.h:
 
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2120,6 +2121,8 @@ src/ags/audio/recall/ags_copy_pattern_channel_run.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_drum_input_pad.Po b/.deps/gsequencer-ags_drum_input_pad.Po
index 4395b68..506d1c7 100644
--- a/.deps/gsequencer-ags_drum_input_pad.Po
+++ b/.deps/gsequencer-ags_drum_input_pad.Po
@@ -558,48 +558,16 @@ gsequencer-ags_drum_input_pad.o: src/ags/X/machine/ags_drum_input_pad.c \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h \
  src/ags/X/machine/ags_drum_input_pad_callbacks.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
- src/ags-lib/object/ags_connectable.h src/ags/util/ags_id_generator.h \
+ src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_plugin.h src/ags/file/ags_file_stock.h \
  src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
  src/ags/widget/ags_indicator.h src/ags/widget/ags_hindicator.h \
  src/ags/widget/ags_waveform.h src/ags/widget/ags_dial.h \
  src/ags/widget/ags_cartesian.h src/ags/file/ags_file_id_ref.h \
  src/ags/file/ags_file_lookup.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -614,7 +582,11 @@ gsequencer-ags_drum_input_pad.o: src/ags/X/machine/ags_drum_input_pad.c \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
  src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_drum.h \
- src/ags/audio/ags_recall_container.h
+ src/ags/audio/ags_recall_container.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1926,50 +1898,18 @@ src/ags/widget/ags_expander.h:
 
 src/ags/X/machine/ags_drum_input_pad_callbacks.h:
 
+src/ags/util/ags_id_generator.h:
+
 src/ags/object/ags_application_context.h:
 
 src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
 
-src/ags/util/ags_id_generator.h:
-
 src/ags/object/ags_plugin.h:
 
 src/ags/file/ags_file_stock.h:
@@ -1994,105 +1934,7 @@ src/ags/file/ags_file_lookup.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2147,3 +1989,21 @@ src/ags/X/ags_server_preferences.h:
 src/ags/X/machine/ags_drum.h:
 
 src/ags/audio/ags_recall_container.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_drum_input_pad_callbacks.Po b/.deps/gsequencer-ags_drum_input_pad_callbacks.Po
index 563c344..1d99895 100644
--- a/.deps/gsequencer-ags_drum_input_pad_callbacks.Po
+++ b/.deps/gsequencer-ags_drum_input_pad_callbacks.Po
@@ -565,21 +565,9 @@ gsequencer-ags_drum_input_pad_callbacks.o: \
  src/ags/X/machine/ags_drum.h src/ags/X/ags_machine.h \
  src/ags/audio/ags_recall_container.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
- src/ags/thread/ags_audio_loop.h /usr/include/math.h \
- /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
- /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
- /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
- /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ src/ags/object/ags_soundcard.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
  src/ags/audio/ags_task.h src/ags/audio/ags_devout.h \
  /usr/include/alsa/asoundlib.h /usr/include/string.h \
  /usr/include/bits/string.h /usr/include/bits/string2.h \
@@ -597,11 +585,24 @@ gsequencer-ags_drum_input_pad_callbacks.o: \
  /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
  /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
  /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_input.h \
- /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
- /usr/include/sys/stat.h src/ags/audio/ags_output.h \
- src/ags/audio/ags_pattern.h src/ags/audio/task/ags_start_devout.h \
+ /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
+ /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
+ src/ags/audio/ags_output.h src/ags/audio/ags_pattern.h \
+ src/ags/audio/task/ags_start_devout.h \
  src/ags/audio/task/ags_init_channel.h \
  src/ags/audio/task/ags_append_channel.h \
  src/ags/audio/task/ags_append_recall.h \
@@ -617,7 +618,21 @@ gsequencer-ags_drum_input_pad_callbacks.o: \
  src/ags/audio/recall/ags_play_audio_signal.h \
  src/ags/audio/ags_recall_audio_signal.h \
  src/ags/audio/recall/ags_stream_audio_signal.h \
- src/ags/audio/file/ags_audio_file.h src/ags/X/ags_line_callbacks.h
+ src/ags/audio/file/ags_audio_file.h src/ags/X/ags_window.h \
+ src/ags/X/ags_automation_editor.h \
+ src/ags/X/editor/ags_automation_toolbar.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
+ src/ags/X/ags_menu_bar.h src/ags/X/ags_editor.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
+ src/ags/X/editor/ags_pattern_edit.h src/ags/X/ags_navigation.h \
+ src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
+ src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
+ src/ags/X/ags_performance_preferences.h \
+ src/ags/X/ags_server_preferences.h src/ags/X/ags_line_callbacks.h
 
 /usr/include/stdc-predef.h:
 
@@ -1947,64 +1962,16 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/audio/ags_devout.h:
@@ -2077,6 +2044,56 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/seq_midi_event.h:
 
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
@@ -2129,4 +2146,52 @@ src/ags/audio/recall/ags_stream_audio_signal.h:
 
 src/ags/audio/file/ags_audio_file.h:
 
+src/ags/X/ags_window.h:
+
+src/ags/X/ags_automation_editor.h:
+
+src/ags/X/editor/ags_automation_toolbar.h:
+
+src/ags/X/editor/ags_port_selection.h:
+
+src/ags/X/editor/ags_notebook.h:
+
+src/ags/X/editor/ags_machine_selector.h:
+
+src/ags/X/editor/ags_automation_edit.h:
+
+src/ags/widget/ags_ruler.h:
+
+src/ags/audio/ags_automation.h:
+
+src/ags/audio/ags_acceleration.h:
+
+src/ags/X/ags_menu_bar.h:
+
+src/ags/X/ags_editor.h:
+
+src/ags/X/editor/ags_toolbar.h:
+
+src/ags/X/editor/ags_meter.h:
+
+src/ags/X/editor/ags_soundset.h:
+
+src/ags/X/editor/ags_note_edit.h:
+
+src/ags/X/editor/ags_pattern_edit.h:
+
+src/ags/X/ags_navigation.h:
+
+src/ags/X/ags_export_window.h:
+
+src/ags/X/ags_preferences.h:
+
+src/ags/X/ags_generic_preferences.h:
+
+src/ags/X/ags_audio_preferences.h:
+
+src/ags/X/ags_performance_preferences.h:
+
+src/ags/X/ags_server_preferences.h:
+
 src/ags/X/ags_line_callbacks.h:
diff --git a/.deps/gsequencer-ags_drum_output_line.Po b/.deps/gsequencer-ags_drum_output_line.Po
index 1bff349..01b0909 100644
--- a/.deps/gsequencer-ags_drum_output_line.Po
+++ b/.deps/gsequencer-ags_drum_output_line.Po
@@ -559,14 +559,6 @@ gsequencer-ags_drum_output_line.o: \
  src/ags/X/machine/ags_drum_output_line_callbacks.h \
  src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
  src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_plugin.h src/ags/file/ags_file_stock.h \
  src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
@@ -605,12 +597,20 @@ gsequencer-ags_drum_output_line.o: \
  /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
  /usr/include/bits/inf.h /usr/include/bits/nan.h \
  /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_loop_channel.h \
  src/ags/audio/recall/ags_loop_channel_run.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -1941,38 +1941,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2115,10 +2083,42 @@ src/ags/thread/ags_audio_loop.h:
 
 /usr/include/bits/mathinline.h:
 
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2131,6 +2131,8 @@ src/ags/audio/recall/ags_loop_channel_run.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_drum_output_pad.Po b/.deps/gsequencer-ags_drum_output_pad.Po
index 49d8e91..2bba207 100644
--- a/.deps/gsequencer-ags_drum_output_pad.Po
+++ b/.deps/gsequencer-ags_drum_output_pad.Po
@@ -558,7 +558,7 @@ gsequencer-ags_drum_output_pad.o: src/ags/X/machine/ags_drum_output_pad.c \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h \
  src/ags/X/machine/ags_drum_output_pad_callbacks.h \
- src/ags-lib/object/ags_connectable.h src/ags/util/ags_id_generator.h \
+ src/ags/util/ags_id_generator.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_plugin.h src/ags/file/ags_file.h \
  src/ags/X/machine/ags_drum.h src/ags/X/ags_machine.h \
  src/ags/audio/ags_audio.h src/ags/audio/ags_recall_container.h \
@@ -1874,10 +1874,10 @@ src/ags/widget/ags_expander.h:
 
 src/ags/X/machine/ags_drum_output_pad_callbacks.h:
 
-src/ags-lib/object/ags_connectable.h:
-
 src/ags/util/ags_id_generator.h:
 
+src/ags-lib/object/ags_connectable.h:
+
 src/ags/object/ags_plugin.h:
 
 src/ags/file/ags_file.h:
diff --git a/.deps/gsequencer-ags_ffplayer.Po b/.deps/gsequencer-ags_ffplayer.Po
index 9f34b1f..d785860 100644
--- a/.deps/gsequencer-ags_ffplayer.Po
+++ b/.deps/gsequencer-ags_ffplayer.Po
@@ -636,12 +636,17 @@ gsequencer-ags_ffplayer.o: src/ags/X/machine/ags_ffplayer.c \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
+ src/ags/X/machine/ags_ffplayer_callbacks.h \
+ src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
+ src/ags/object/ags_playable.h src/ags/audio/ags_devout.h \
+ /usr/include/alsa/asoundlib.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/fcntl.h /usr/include/bits/fcntl.h \
+ /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
+ /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
+ /usr/include/errno.h /usr/include/bits/errno.h \
  /usr/include/linux/errno.h /usr/include/asm/errno.h \
  /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
  /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
@@ -668,18 +673,14 @@ gsequencer-ags_ffplayer.o: src/ags/X/machine/ags_ffplayer.c \
  src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
  src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/machine/ags_ffplayer_callbacks.h \
- src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
- src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
- src/ags/object/ags_playable.h src/ags/object/ags_plugin.h \
- src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
- src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
- src/ags/widget/ags_hindicator.h src/ags/widget/ags_waveform.h \
- src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
- src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
- src/ags/file/ags_file_launch.h src/ags/file/ags_file_gui.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_plugin.h src/ags/file/ags_file_stock.h \
+ src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
+ src/ags/widget/ags_indicator.h src/ags/widget/ags_hindicator.h \
+ src/ags/widget/ags_waveform.h src/ags/widget/ags_dial.h \
+ src/ags/widget/ags_cartesian.h src/ags/file/ags_file_id_ref.h \
+ src/ags/file/ags_file_lookup.h src/ags/file/ags_file_launch.h \
+ src/ags/file/ags_file_gui.h src/ags/X/ags_window.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h \
@@ -2192,6 +2193,22 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
+src/ags/X/machine/ags_ffplayer_callbacks.h:
+
+src/ags/util/ags_id_generator.h:
+
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+src/ags-lib/object/ags_connectable.h:
+
+src/ags/object/ags_playable.h:
+
 src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/asoundlib.h:
@@ -2324,22 +2341,6 @@ src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
 
-src/ags/X/machine/ags_ffplayer_callbacks.h:
-
-src/ags/util/ags_id_generator.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
-src/ags-lib/object/ags_connectable.h:
-
-src/ags/object/ags_playable.h:
-
 src/ags/object/ags_plugin.h:
 
 src/ags/file/ags_file_stock.h:
@@ -2368,6 +2369,8 @@ src/ags/file/ags_file_gui.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_ffplayer_bridge.Po b/.deps/gsequencer-ags_ffplayer_bridge.Po
index fa66ef1..52f0e27 100644
--- a/.deps/gsequencer-ags_ffplayer_bridge.Po
+++ b/.deps/gsequencer-ags_ffplayer_bridge.Po
@@ -559,15 +559,7 @@ gsequencer-ags_ffplayer_bridge.o: src/ags/X/machine/ags_ffplayer_bridge.c \
  src/ags/X/machine/ags_ffplayer_bridge_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_plugin.h src/ags/X/ags_effect_bulk.h \
  src/ags/X/machine/ags_ffplayer_bulk_input.h \
  src/ags/X/machine/ags_ffplayer_input_pad.h src/ags/X/ags_effect_pad.h \
@@ -1889,38 +1881,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_plugin.h:
diff --git a/.deps/gsequencer-ags_ffplayer_bulk_input.Po b/.deps/gsequencer-ags_ffplayer_bulk_input.Po
index 49ec332..2038488 100644
--- a/.deps/gsequencer-ags_ffplayer_bulk_input.Po
+++ b/.deps/gsequencer-ags_ffplayer_bulk_input.Po
@@ -558,15 +558,7 @@ gsequencer-ags_ffplayer_bulk_input.o: \
  src/ags/X/machine/ags_ffplayer_bulk_input_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h
 
 /usr/include/stdc-predef.h:
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_ffplayer_callbacks.Po b/.deps/gsequencer-ags_ffplayer_callbacks.Po
index 5c66f73..b882295 100644
--- a/.deps/gsequencer-ags_ffplayer_callbacks.Po
+++ b/.deps/gsequencer-ags_ffplayer_callbacks.Po
@@ -636,6 +636,10 @@ gsequencer-ags_ffplayer_callbacks.o: \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
+ src/ags/X/ags_machine_callbacks.h src/ags/audio/ags_task.h \
+ src/ags/main.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/object/ags_playable.h \
  src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
  /usr/include/string.h /usr/include/bits/string.h \
  /usr/include/bits/string2.h /usr/include/fcntl.h \
@@ -666,14 +670,11 @@ gsequencer-ags_ffplayer_callbacks.o: \
  /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
  /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_machine_callbacks.h src/ags/main.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
- src/ags/object/ags_playable.h src/ags/audio/task/ags_link_channel.h \
+ src/ags/object/ags_main_loop.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h \
+ src/ags/audio/task/ags_link_channel.h \
  src/ags/audio/task/ags_add_audio_signal.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h \
@@ -2158,6 +2159,22 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
+src/ags/X/ags_machine_callbacks.h:
+
+src/ags/audio/ags_task.h:
+
+src/ags/main.h:
+
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+src/ags/object/ags_playable.h:
+
 src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/asoundlib.h:
@@ -2284,32 +2301,18 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
-src/ags/audio/ags_task.h:
-
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
 
-src/ags/X/ags_machine_callbacks.h:
-
-src/ags/main.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
-src/ags/object/ags_playable.h:
-
 src/ags/audio/task/ags_link_channel.h:
 
 src/ags/audio/task/ags_add_audio_signal.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_ffplayer_input_line.Po b/.deps/gsequencer-ags_ffplayer_input_line.Po
index cefb867..1165438 100644
--- a/.deps/gsequencer-ags_ffplayer_input_line.Po
+++ b/.deps/gsequencer-ags_ffplayer_input_line.Po
@@ -558,15 +558,7 @@ gsequencer-ags_ffplayer_input_line.o: \
  src/ags/X/machine/ags_ffplayer_input_line_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h \
  src/ags/X/ags_effect_bridge.h src/ags/audio/ags_audio.h
 
@@ -1884,38 +1876,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_ffplayer_input_pad.Po b/.deps/gsequencer-ags_ffplayer_input_pad.Po
index 30dcf2d..f3b716a 100644
--- a/.deps/gsequencer-ags_ffplayer_input_pad.Po
+++ b/.deps/gsequencer-ags_ffplayer_input_pad.Po
@@ -558,15 +558,7 @@ gsequencer-ags_ffplayer_input_pad.o: \
  src/ags/X/machine/ags_ffplayer_input_pad_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h \
  src/ags/X/ags_effect_bridge.h src/ags/audio/ags_audio.h \
  src/ags/X/ags_effect_line.h
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_file_selection.Po b/.deps/gsequencer-ags_file_selection.Po
index 681b6c3..3774500 100644
--- a/.deps/gsequencer-ags_file_selection.Po
+++ b/.deps/gsequencer-ags_file_selection.Po
@@ -555,7 +555,26 @@ gsequencer-ags_file_selection.o: src/ags/X/editor/ags_file_selection.c \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/audio/file/ags_audio_file.h src/ags/audio/ags_devout.h \
+ src/ags/audio/file/ags_audio_file.h \
+ src/ags/X/editor/ags_file_selection_callbacks.h \
+ src/ags-lib/object/ags_connectable.h src/ags/X/ags_window.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/editor/ags_automation_toolbar.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
+ src/ags/X/ags_menu_bar.h src/ags/X/ags_editor.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
+ src/ags/X/editor/ags_pattern_edit.h src/ags/X/ags_navigation.h \
+ src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
+ src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
+ src/ags/X/ags_performance_preferences.h \
+ src/ags/X/ags_server_preferences.h src/ags/X/editor/ags_inline_player.h \
+ src/ags/object/ags_playable.h src/ags/audio/ags_devout.h \
  /usr/include/alsa/asoundlib.h /usr/include/string.h \
  /usr/include/bits/string.h /usr/include/bits/string2.h \
  /usr/include/fcntl.h /usr/include/bits/fcntl.h \
@@ -588,24 +607,7 @@ gsequencer-ags_file_selection.o: src/ags/X/editor/ags_file_selection.c \
  src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
  src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/editor/ags_file_selection_callbacks.h \
- src/ags-lib/object/ags_connectable.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
- src/ags/X/editor/ags_automation_toolbar.h \
- src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
- src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
- src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
- src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
- src/ags/X/ags_menu_bar.h src/ags/X/ags_editor.h \
- src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_meter.h \
- src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
- src/ags/X/editor/ags_pattern_edit.h src/ags/X/ags_navigation.h \
- src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
- src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
- src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h src/ags/X/editor/ags_inline_player.h \
- src/ags/object/ags_playable.h src/ags/X/editor/ags_sf2_chooser.h \
- src/ags/audio/file/ags_ipatch.h \
+ src/ags/X/editor/ags_sf2_chooser.h src/ags/audio/file/ags_ipatch.h \
  /usr/include/libinstpatch-1.0/libinstpatch/libinstpatch.h \
  /usr/include/libinstpatch-1.0/libinstpatch/builtin_enums.h \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchBase.h \
@@ -1990,6 +1992,74 @@ src/ags/audio/ags_note.h:
 
 src/ags/audio/file/ags_audio_file.h:
 
+src/ags/X/editor/ags_file_selection_callbacks.h:
+
+src/ags-lib/object/ags_connectable.h:
+
+src/ags/X/ags_window.h:
+
+src/ags/object/ags_soundcard.h:
+
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+src/ags/X/ags_automation_editor.h:
+
+src/ags/X/editor/ags_automation_toolbar.h:
+
+src/ags/X/editor/ags_port_selection.h:
+
+src/ags/X/editor/ags_notebook.h:
+
+src/ags/X/editor/ags_machine_selector.h:
+
+src/ags/X/ags_machine.h:
+
+src/ags/X/editor/ags_automation_edit.h:
+
+src/ags/widget/ags_ruler.h:
+
+src/ags/audio/ags_automation.h:
+
+src/ags/audio/ags_acceleration.h:
+
+src/ags/X/ags_menu_bar.h:
+
+src/ags/X/ags_editor.h:
+
+src/ags/X/editor/ags_toolbar.h:
+
+src/ags/X/editor/ags_meter.h:
+
+src/ags/X/editor/ags_soundset.h:
+
+src/ags/X/editor/ags_note_edit.h:
+
+src/ags/X/editor/ags_pattern_edit.h:
+
+src/ags/X/ags_navigation.h:
+
+src/ags/X/ags_export_window.h:
+
+src/ags/X/ags_preferences.h:
+
+src/ags/X/ags_generic_preferences.h:
+
+src/ags/X/ags_audio_preferences.h:
+
+src/ags/X/ags_performance_preferences.h:
+
+src/ags/X/ags_server_preferences.h:
+
+src/ags/X/editor/ags_inline_player.h:
+
+src/ags/object/ags_playable.h:
+
 src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/asoundlib.h:
@@ -2122,64 +2192,6 @@ src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
 
-src/ags/X/editor/ags_file_selection_callbacks.h:
-
-src/ags-lib/object/ags_connectable.h:
-
-src/ags/X/ags_window.h:
-
-src/ags/X/ags_automation_editor.h:
-
-src/ags/X/editor/ags_automation_toolbar.h:
-
-src/ags/X/editor/ags_port_selection.h:
-
-src/ags/X/editor/ags_notebook.h:
-
-src/ags/X/editor/ags_machine_selector.h:
-
-src/ags/X/ags_machine.h:
-
-src/ags/X/editor/ags_automation_edit.h:
-
-src/ags/widget/ags_ruler.h:
-
-src/ags/audio/ags_automation.h:
-
-src/ags/audio/ags_acceleration.h:
-
-src/ags/X/ags_menu_bar.h:
-
-src/ags/X/ags_editor.h:
-
-src/ags/X/editor/ags_toolbar.h:
-
-src/ags/X/editor/ags_meter.h:
-
-src/ags/X/editor/ags_soundset.h:
-
-src/ags/X/editor/ags_note_edit.h:
-
-src/ags/X/editor/ags_pattern_edit.h:
-
-src/ags/X/ags_navigation.h:
-
-src/ags/X/ags_export_window.h:
-
-src/ags/X/ags_preferences.h:
-
-src/ags/X/ags_generic_preferences.h:
-
-src/ags/X/ags_audio_preferences.h:
-
-src/ags/X/ags_performance_preferences.h:
-
-src/ags/X/ags_server_preferences.h:
-
-src/ags/X/editor/ags_inline_player.h:
-
-src/ags/object/ags_playable.h:
-
 src/ags/X/editor/ags_sf2_chooser.h:
 
 src/ags/audio/file/ags_ipatch.h:
diff --git a/.deps/gsequencer-ags_file_selection_callbacks.Po b/.deps/gsequencer-ags_file_selection_callbacks.Po
index 16e94e4..df73c27 100644
--- a/.deps/gsequencer-ags_file_selection_callbacks.Po
+++ b/.deps/gsequencer-ags_file_selection_callbacks.Po
@@ -558,39 +558,7 @@ gsequencer-ags_file_selection_callbacks.o: \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/audio/file/ags_audio_file.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h
+ src/ags/audio/file/ags_audio_file.h
 
 /usr/include/stdc-predef.h:
 
@@ -1897,135 +1865,3 @@ src/ags/audio/ags_timestamp.h:
 src/ags/audio/ags_note.h:
 
 src/ags/audio/file/ags_audio_file.h:
-
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
diff --git a/.deps/gsequencer-ags_inline_player.Po b/.deps/gsequencer-ags_inline_player.Po
index 9d2a262..b94c987 100644
--- a/.deps/gsequencer-ags_inline_player.Po
+++ b/.deps/gsequencer-ags_inline_player.Po
@@ -561,13 +561,9 @@ gsequencer-ags_inline_player.o: src/ags/X/editor/ags_inline_player.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -585,10 +581,17 @@ gsequencer-ags_inline_player.o: src/ags/X/editor/ags_inline_player.c \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/X/editor/ags_inline_player_callbacks.h \
+ src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
+ src/ags/X/editor/ags_inline_player_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -1962,31 +1965,13 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
-src/ags/audio/ags_task.h:
+src/ags/object/ags_application_context.h:
 
-src/ags/thread/ags_devout_thread.h:
+src/ags/lib/ags_log.h:
 
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_config.h:
 
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
-
-/usr/include/ladspa.h:
-
-src/ags/audio/ags_recall_dependency.h:
-
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2032,6 +2017,32 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX2.h:
 
+src/ags/audio/ags_task.h:
+
+src/ags/thread/ags_devout_thread.h:
+
+src/ags/thread/ags_iterator_thread.h:
+
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
@@ -2044,6 +2055,8 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_inline_player_callbacks.Po b/.deps/gsequencer-ags_inline_player_callbacks.Po
index fe059f8..03986ce 100644
--- a/.deps/gsequencer-ags_inline_player_callbacks.Po
+++ b/.deps/gsequencer-ags_inline_player_callbacks.Po
@@ -564,13 +564,9 @@ gsequencer-ags_inline_player_callbacks.o: \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -588,8 +584,14 @@ gsequencer-ags_inline_player_callbacks.o: \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h
+ src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h
 
 /usr/include/stdc-predef.h:
 
@@ -1951,31 +1953,13 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/ladspa.h:
+src/ags/lib/ags_log.h:
 
-src/ags/audio/ags_recall_dependency.h:
+src/ags/object/ags_config.h:
 
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2021,6 +2005,32 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX2.h:
 
+src/ags/audio/ags_task.h:
+
+src/ags/thread/ags_devout_thread.h:
+
+src/ags/thread/ags_iterator_thread.h:
+
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
diff --git a/.deps/gsequencer-ags_ladspa_bridge.Po b/.deps/gsequencer-ags_ladspa_bridge.Po
index be5abbf..dc6e5d9 100644
--- a/.deps/gsequencer-ags_ladspa_bridge.Po
+++ b/.deps/gsequencer-ags_ladspa_bridge.Po
@@ -558,15 +558,7 @@ gsequencer-ags_ladspa_bridge.o: src/ags/X/machine/ags_ladspa_bridge.c \
  src/ags/X/machine/ags_ladspa_bridge_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h
 
 /usr/include/stdc-predef.h:
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_machine_selection.Po b/.deps/gsequencer-ags_machine_selection.Po
index f34815f..66e321b 100644
--- a/.deps/gsequencer-ags_machine_selection.Po
+++ b/.deps/gsequencer-ags_machine_selection.Po
@@ -527,47 +527,9 @@ gsequencer-ags_machine_selection.o: \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/stdlib.h /usr/include/bits/waitflags.h \
- /usr/include/bits/waitstatus.h /usr/include/alloca.h \
- /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -584,13 +546,22 @@ gsequencer-ags_machine_selection.o: \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
- src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
- src/ags/audio/ags_audio.h src/ags/X/editor/ags_automation_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/editor/ags_automation_edit.h \
  src/ags/widget/ags_ruler.h src/ags/audio/ags_automation.h \
  src/ags/audio/ags_acceleration.h src/ags/X/ags_menu_bar.h \
  src/ags/X/ags_editor.h src/ags/X/editor/ags_toolbar.h \
@@ -1820,171 +1791,15 @@ src/ags/X/editor/ags_machine_selection.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/asm-generic/bitsperlong.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/linux/posix_types.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/linux/stddef.h:
+src/ags/object/ags_config.h:
 
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
-
-/usr/include/ladspa.h:
-
-src/ags/audio/ags_recall_dependency.h:
-
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2026,15 +1841,21 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/libxml2/libxml/xlink.h:
+/usr/include/stdlib.h:
 
-/usr/include/libxml2/libxml/SAX2.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/thread/ags_timestamp_thread.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/audio/ags_timestamp.h:
+/usr/include/alloca.h:
 
-src/ags/audio/ags_note.h:
+/usr/include/bits/stdlib-bsearch.h:
+
+/usr/include/bits/stdlib-float.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2042,6 +1863,10 @@ src/ags/X/editor/ags_automation_toolbar.h:
 
 src/ags/X/editor/ags_port_selection.h:
 
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
 src/ags/X/editor/ags_notebook.h:
 
 src/ags/X/editor/ags_machine_selector.h:
@@ -2050,6 +1875,30 @@ src/ags/X/ags_machine.h:
 
 src/ags/audio/ags_audio.h:
 
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
+src/ags/thread/ags_timestamp_thread.h:
+
+src/ags/thread/ags_thread-posix.h:
+
+src/ags/audio/ags_timestamp.h:
+
+src/ags/audio/ags_note.h:
+
 src/ags/X/editor/ags_automation_edit.h:
 
 src/ags/widget/ags_ruler.h:
diff --git a/.deps/gsequencer-ags_machine_selector_callbacks.Po b/.deps/gsequencer-ags_machine_selector_callbacks.Po
index c481f21..9e4af61 100644
--- a/.deps/gsequencer-ags_machine_selector_callbacks.Po
+++ b/.deps/gsequencer-ags_machine_selector_callbacks.Po
@@ -558,39 +558,9 @@ gsequencer-ags_machine_selector_callbacks.o: \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/editor/ags_machine_selection.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
@@ -1915,137 +1885,15 @@ src/ags/X/editor/ags_machine_selection.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_automation_editor.h:
 
diff --git a/.deps/gsequencer-ags_matrix.Po b/.deps/gsequencer-ags_matrix.Po
index f3a909e..9b5aea3 100644
--- a/.deps/gsequencer-ags_matrix.Po
+++ b/.deps/gsequencer-ags_matrix.Po
@@ -560,14 +560,6 @@ gsequencer-ags_matrix.o: src/ags/X/machine/ags_matrix.c \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
  src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
  src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/file/ags_file.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_portlet.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
@@ -575,12 +567,7 @@ gsequencer-ags_matrix.o: src/ags/X/machine/ags_matrix.c \
  src/ags/widget/ags_hindicator.h src/ags/widget/ags_waveform.h \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
- src/ags/file/ags_file_launch.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/audio/ags_input.h \
+ src/ags/file/ags_file_launch.h src/ags/audio/ags_input.h \
  /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
  /usr/include/sys/stat.h /usr/include/bits/stat.h \
  src/ags/audio/ags_output.h src/ags/audio/ags_pattern.h \
@@ -608,7 +595,20 @@ gsequencer-ags_matrix.o: src/ags/X/machine/ags_matrix.c \
  /usr/include/alsa/control.h /usr/include/alsa/mixer.h \
  /usr/include/alsa/seq_event.h /usr/include/alsa/seq.h \
  /usr/include/alsa/seqmid.h /usr/include/alsa/seq_midi_event.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/thread/ags_audio_loop.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
+ src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
+ /usr/include/linux/types.h /usr/include/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
+ /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
+ /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
+ src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
  src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
  src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_stream_channel.h \
@@ -620,8 +620,22 @@ gsequencer-ags_matrix.o: src/ags/X/machine/ags_matrix.c \
  src/ags/audio/recall/ags_play_notation_audio.h \
  src/ags/audio/recall/ags_play_notation_audio_run.h \
  src/ags/audio/recall/ags_buffer_channel.h \
- src/ags/audio/recall/ags_buffer_channel_run.h src/ags/X/ags_menu_bar.h \
- src/ags/X/machine/ags_matrix_bridge.h src/ags/X/ags_effect_bridge.h
+ src/ags/audio/recall/ags_buffer_channel_run.h src/ags/X/ags_window.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/editor/ags_automation_toolbar.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
+ src/ags/X/ags_menu_bar.h src/ags/X/ags_editor.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
+ src/ags/X/editor/ags_pattern_edit.h src/ags/X/ags_navigation.h \
+ src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
+ src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
+ src/ags/X/ags_performance_preferences.h \
+ src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_matrix_bridge.h \
+ src/ags/X/ags_effect_bridge.h
 
 /usr/include/stdc-predef.h:
 
@@ -1943,38 +1957,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2005,26 +1987,6 @@ src/ags/file/ags_file_lookup.h:
 
 src/ags/file/ags_file_launch.h:
 
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
 src/ags/audio/ags_input.h:
 
 /usr/include/glib-2.0/glib/gstdio.h:
@@ -2125,10 +2087,62 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/seq_midi_event.h:
 
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2155,8 +2169,56 @@ src/ags/audio/recall/ags_buffer_channel.h:
 
 src/ags/audio/recall/ags_buffer_channel_run.h:
 
+src/ags/X/ags_window.h:
+
+src/ags/object/ags_soundcard.h:
+
+src/ags/X/ags_automation_editor.h:
+
+src/ags/X/editor/ags_automation_toolbar.h:
+
+src/ags/X/editor/ags_port_selection.h:
+
+src/ags/X/editor/ags_notebook.h:
+
+src/ags/X/editor/ags_machine_selector.h:
+
+src/ags/X/editor/ags_automation_edit.h:
+
+src/ags/widget/ags_ruler.h:
+
+src/ags/audio/ags_automation.h:
+
+src/ags/audio/ags_acceleration.h:
+
 src/ags/X/ags_menu_bar.h:
 
+src/ags/X/ags_editor.h:
+
+src/ags/X/editor/ags_toolbar.h:
+
+src/ags/X/editor/ags_meter.h:
+
+src/ags/X/editor/ags_soundset.h:
+
+src/ags/X/editor/ags_note_edit.h:
+
+src/ags/X/editor/ags_pattern_edit.h:
+
+src/ags/X/ags_navigation.h:
+
+src/ags/X/ags_export_window.h:
+
+src/ags/X/ags_preferences.h:
+
+src/ags/X/ags_generic_preferences.h:
+
+src/ags/X/ags_audio_preferences.h:
+
+src/ags/X/ags_performance_preferences.h:
+
+src/ags/X/ags_server_preferences.h:
+
 src/ags/X/machine/ags_matrix_bridge.h:
 
 src/ags/X/ags_effect_bridge.h:
diff --git a/.deps/gsequencer-ags_matrix_bridge.Po b/.deps/gsequencer-ags_matrix_bridge.Po
index 0b472a5..0e803b6 100644
--- a/.deps/gsequencer-ags_matrix_bridge.Po
+++ b/.deps/gsequencer-ags_matrix_bridge.Po
@@ -558,15 +558,7 @@ gsequencer-ags_matrix_bridge.o: src/ags/X/machine/ags_matrix_bridge.c \
  src/ags/X/machine/ags_matrix_bridge_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_plugin.h src/ags/audio/ags_input.h \
  /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
  /usr/include/sys/stat.h /usr/include/bits/stat.h \
@@ -1888,38 +1880,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_plugin.h:
diff --git a/.deps/gsequencer-ags_matrix_bulk_input.Po b/.deps/gsequencer-ags_matrix_bulk_input.Po
index c9471e8..2cddc38 100644
--- a/.deps/gsequencer-ags_matrix_bulk_input.Po
+++ b/.deps/gsequencer-ags_matrix_bulk_input.Po
@@ -558,15 +558,7 @@ gsequencer-ags_matrix_bulk_input.o: \
  src/ags/X/machine/ags_matrix_bulk_input_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h
 
 /usr/include/stdc-predef.h:
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_matrix_callbacks.Po b/.deps/gsequencer-ags_matrix_callbacks.Po
index eec8ed9..9dcc0b6 100644
--- a/.deps/gsequencer-ags_matrix_callbacks.Po
+++ b/.deps/gsequencer-ags_matrix_callbacks.Po
@@ -558,23 +558,10 @@ gsequencer-ags_matrix_callbacks.o: \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/machine/ags_matrix.h src/ags/X/ags_machine.h \
- src/ags/widget/ags_led.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
  src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/audio/ags_pattern.h src/ags/audio/ags_recall_container.h \
  src/ags/audio/task/ags_toggle_led.h \
  src/ags/audio/task/ags_toggle_pattern_bit.h \
@@ -600,13 +587,26 @@ gsequencer-ags_matrix_callbacks.o: \
  /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
  /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
  /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h \
+ /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_copy_pattern_audio_run.h \
  src/ags/audio/recall/ags_copy_pattern_channel.h \
  src/ags/audio/ags_recall_channel.h \
  src/ags/audio/recall/ags_copy_pattern_channel_run.h \
- src/ags/audio/ags_recall_channel_run.h src/ags/X/ags_window.h \
+ src/ags/audio/ags_recall_channel_run.h src/ags/widget/ags_led.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -1934,57 +1934,13 @@ src/ags/X/machine/ags_matrix.h:
 
 src/ags/X/ags_machine.h:
 
-src/ags/widget/ags_led.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/asm-generic/posix_types.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/sys/time.h:
+src/ags/object/ags_config.h:
 
-src/ags/object/ags_stackable.h:
+src/ags/file/ags_file.h:
 
 src/ags/thread/ags_task_thread.h:
 
@@ -1994,14 +1950,6 @@ src/ags/object/ags_main_loop.h:
 
 src/ags/audio/ags_task.h:
 
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
 src/ags/audio/ags_pattern.h:
 
 src/ags/audio/ags_recall_container.h:
@@ -2092,6 +2040,56 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/seq_midi_event.h:
 
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
@@ -2106,8 +2104,12 @@ src/ags/audio/recall/ags_copy_pattern_channel_run.h:
 
 src/ags/audio/ags_recall_channel_run.h:
 
+src/ags/widget/ags_led.h:
+
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_meter.Po b/.deps/gsequencer-ags_meter.Po
index 3d0fbcc..221b483 100644
--- a/.deps/gsequencer-ags_meter.Po
+++ b/.deps/gsequencer-ags_meter.Po
@@ -549,53 +549,27 @@ gsequencer-ags_meter.o: src/ags/X/editor/ags_meter.c \
  /usr/include/bits/waitstatus.h /usr/include/alloca.h \
  /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
  src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
  src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
  src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
  /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
  src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
- src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/audio/ags_audio.h src/ags/X/ags_machine.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_machine.h \
  src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
  src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_soundset.h \
  src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
  src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
- src/ags/audio/ags_acceleration.h
+ src/ags/audio/ags_acceleration.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1875,139 +1849,17 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
+src/ags/file/ags_file.h:
 
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/audio/ags_audio.h:
 
 src/ags/audio/ags_channel.h:
 
@@ -2031,12 +1883,12 @@ src/ags/audio/ags_notation.h:
 
 src/ags/thread/ags_timestamp_thread.h:
 
+src/ags/thread/ags_thread-posix.h:
+
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/audio/ags_audio.h:
-
 src/ags/X/ags_machine.h:
 
 src/ags/X/editor/ags_toolbar.h:
@@ -2058,3 +1910,21 @@ src/ags/X/editor/ags_automation_edit.h:
 src/ags/audio/ags_automation.h:
 
 src/ags/audio/ags_acceleration.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_meter_callbacks.Po b/.deps/gsequencer-ags_meter_callbacks.Po
index 32cb2a5..ef18b99 100644
--- a/.deps/gsequencer-ags_meter_callbacks.Po
+++ b/.deps/gsequencer-ags_meter_callbacks.Po
@@ -527,48 +527,10 @@ gsequencer-ags_meter_callbacks.o: src/ags/X/editor/ags_meter_callbacks.c \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/editor/ags_meter.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -585,15 +547,28 @@ gsequencer-ags_meter_callbacks.o: src/ags/X/editor/ags_meter_callbacks.c \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/audio/ags_audio.h \
- src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
- src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
- src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
- src/ags/widget/ags_ruler.h src/ags/X/editor/ags_pattern_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_soundset.h \
+ src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
- src/ags/audio/ags_acceleration.h
+ src/ags/audio/ags_acceleration.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1815,151 +1790,73 @@ src/ags/X/editor/ags_meter.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/input.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/alsa/output.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/alsa/error.h:
+src/ags/object/ags_config.h:
 
-/usr/include/alsa/conf.h:
+src/ags/file/ags_file.h:
 
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
+/usr/include/libxml2/libxml/tree.h:
 
-/usr/include/bits/huge_vall.h:
+/usr/include/libxml2/libxml/xmlversion.h:
 
-/usr/include/bits/inf.h:
+/usr/include/libxml2/libxml/xmlexports.h:
 
-/usr/include/bits/nan.h:
+/usr/include/libxml2/libxml/xmlstring.h:
 
-/usr/include/bits/mathdef.h:
+/usr/include/libxml2/libxml/xmlregexp.h:
 
-/usr/include/bits/mathcalls.h:
+/usr/include/libxml2/libxml/dict.h:
 
-/usr/include/bits/mathinline.h:
+/usr/include/libxml2/libxml/xmlmemory.h:
 
-src/ags/thread/ags_thread-posix.h:
+/usr/include/libxml2/libxml/threads.h:
 
-src/ags/thread/ags_async_queue.h:
+/usr/include/libxml2/libxml/globals.h:
 
-/usr/include/linux/futex.h:
+/usr/include/libxml2/libxml/parser.h:
 
-/usr/include/linux/types.h:
+/usr/include/libxml2/libxml/hash.h:
 
-/usr/include/asm/types.h:
+/usr/include/libxml2/libxml/valid.h:
 
-/usr/include/asm-generic/types.h:
+/usr/include/libxml2/libxml/xmlerror.h:
 
-/usr/include/asm-generic/int-ll64.h:
+/usr/include/libxml2/libxml/list.h:
 
-/usr/include/asm/bitsperlong.h:
+/usr/include/libxml2/libxml/xmlautomata.h:
 
-/usr/include/asm-generic/bitsperlong.h:
+/usr/include/libxml2/libxml/entities.h:
 
-/usr/include/linux/posix_types.h:
+/usr/include/libxml2/libxml/encoding.h:
 
-/usr/include/linux/stddef.h:
+/usr/include/iconv.h:
 
-/usr/include/asm/posix_types.h:
+/usr/include/libxml2/libxml/xmlIO.h:
 
-/usr/include/asm/posix_types_64.h:
+/usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/asm-generic/posix_types.h:
+/usr/include/stdlib.h:
 
-/usr/include/sys/time.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/object/ags_stackable.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/thread/ags_task_thread.h:
+/usr/include/alloca.h:
 
-src/ags/thread/ags_thread_pool.h:
+/usr/include/bits/stdlib-bsearch.h:
 
-src/ags/object/ags_main_loop.h:
+/usr/include/bits/stdlib-float.h:
 
-src/ags/audio/ags_task.h:
+/usr/include/libxml2/libxml/xlink.h:
 
-src/ags/thread/ags_devout_thread.h:
+/usr/include/libxml2/libxml/SAX2.h:
 
-src/ags/thread/ags_iterator_thread.h:
+src/ags/audio/ags_audio.h:
 
 src/ags/audio/ags_channel.h:
 
@@ -1981,58 +1878,14 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
+src/ags/thread/ags_thread-posix.h:
+
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/audio/ags_audio.h:
-
 src/ags/X/ags_machine.h:
 
 src/ags/X/editor/ags_toolbar.h:
@@ -2054,3 +1907,21 @@ src/ags/X/editor/ags_automation_edit.h:
 src/ags/audio/ags_automation.h:
 
 src/ags/audio/ags_acceleration.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_mixer.Po b/.deps/gsequencer-ags_mixer.Po
index fd80402..35cd4da 100644
--- a/.deps/gsequencer-ags_mixer.Po
+++ b/.deps/gsequencer-ags_mixer.Po
@@ -557,15 +557,7 @@ gsequencer-ags_mixer.o: src/ags/X/machine/ags_mixer.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/machine/ags_mixer_callbacks.h src/ags/util/ags_id_generator.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
@@ -573,31 +565,7 @@ gsequencer-ags_mixer.o: src/ags/X/machine/ags_mixer.c \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
  src/ags/file/ags_file_gui.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h \
@@ -613,8 +581,9 @@ gsequencer-ags_mixer.o: src/ags/X/machine/ags_mixer.c \
  src/ags/X/ags_server_preferences.h src/ags/X/ags_pad.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags/X/ags_line_member.h \
- src/ags/X/ags_machine_editor.h src/ags/X/ags_listing_editor.h \
- src/ags/X/ags_property_listing_editor.h src/ags/X/ags_property_editor.h \
+ src/ags/audio/ags_task.h src/ags/X/ags_machine_editor.h \
+ src/ags/X/ags_listing_editor.h src/ags/X/ags_property_listing_editor.h \
+ src/ags/X/ags_property_editor.h \
  src/ags/X/ags_property_collection_editor.h src/ags/X/ags_resize_editor.h \
  src/ags/X/ags_pad_editor.h src/ags/X/ags_line_editor.h \
  src/ags/X/ags_link_editor.h src/ags/audio/file/ags_audio_file.h \
@@ -707,7 +676,8 @@ gsequencer-ags_mixer.o: src/ags/X/machine/ags_mixer.c \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
  src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
  /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
- src/ags/audio/ags_output.h src/ags/audio/ags_recall_factory.h \
+ /usr/include/bits/stat.h src/ags/audio/ags_output.h \
+ src/ags/audio/ags_recall_factory.h \
  src/ags/X/machine/ags_mixer_input_pad.h \
  src/ags/X/machine/ags_mixer_input_line.h
 
@@ -2025,38 +1995,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2087,105 +2025,7 @@ src/ags/file/ags_file_gui.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2243,6 +2083,8 @@ src/ags/widget/ags_expander.h:
 
 src/ags/X/ags_line_member.h:
 
+src/ags/audio/ags_task.h:
+
 src/ags/X/ags_machine_editor.h:
 
 src/ags/X/ags_listing_editor.h:
@@ -2453,6 +2295,8 @@ src/ags/audio/ags_input.h:
 
 /usr/include/sys/stat.h:
 
+/usr/include/bits/stat.h:
+
 src/ags/audio/ags_output.h:
 
 src/ags/audio/ags_recall_factory.h:
diff --git a/.deps/gsequencer-ags_mixer_callbacks.Po b/.deps/gsequencer-ags_mixer_callbacks.Po
index 98fec9d..7d1a86f 100644
--- a/.deps/gsequencer-ags_mixer_callbacks.Po
+++ b/.deps/gsequencer-ags_mixer_callbacks.Po
@@ -556,39 +556,9 @@ gsequencer-ags_mixer_callbacks.o: src/ags/X/machine/ags_mixer_callbacks.c \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -1912,137 +1882,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_automation_editor.h:
 
diff --git a/.deps/gsequencer-ags_mixer_input_line.Po b/.deps/gsequencer-ags_mixer_input_line.Po
index 85a9071..b72ac89 100644
--- a/.deps/gsequencer-ags_mixer_input_line.Po
+++ b/.deps/gsequencer-ags_mixer_input_line.Po
@@ -592,13 +592,16 @@ gsequencer-ags_mixer_input_line.o: \
  /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
  /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
+ src/ags/object/ags_main_loop.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
  src/ags/audio/recall/ags_volume_channel.h \
  src/ags/audio/recall/ags_volume_channel_run.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -2062,6 +2065,14 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2082,6 +2093,8 @@ src/ags/widget/ags_indicator.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_mixer_input_pad.Po b/.deps/gsequencer-ags_mixer_input_pad.Po
index 0a77b48..4587fe1 100644
--- a/.deps/gsequencer-ags_mixer_input_pad.Po
+++ b/.deps/gsequencer-ags_mixer_input_pad.Po
@@ -557,39 +557,9 @@ gsequencer-ags_mixer_input_pad.o: src/ags/X/machine/ags_mixer_input_pad.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags-lib/object/ags_connectable.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -604,7 +574,12 @@ gsequencer-ags_mixer_input_pad.o: src/ags/X/machine/ags_mixer_input_pad.c \
  src/ags/X/ags_preferences.h src/ags/X/ags_generic_preferences.h \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_mixer.h
+ src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_mixer.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1918,137 +1893,15 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/asm/posix_types_64.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/asm-generic/posix_types.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/sys/time.h:
+src/ags/object/ags_config.h:
 
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2101,3 +1954,21 @@ src/ags/X/ags_performance_preferences.h:
 src/ags/X/ags_server_preferences.h:
 
 src/ags/X/machine/ags_mixer.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_note_edit.Po b/.deps/gsequencer-ags_note_edit.Po
index feec2b9..2c37de5 100644
--- a/.deps/gsequencer-ags_note_edit.Po
+++ b/.deps/gsequencer-ags_note_edit.Po
@@ -557,42 +557,12 @@ gsequencer-ags_note_edit.o: src/ags/X/editor/ags_note_edit.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/editor/ags_note_edit_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/X/ags_editor.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
- src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
- src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
- src/ags/X/editor/ags_pattern_edit.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
  src/ags/audio/ags_acceleration.h
 
@@ -1906,137 +1876,15 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_machine.h:
 
diff --git a/.deps/gsequencer-ags_note_edit_callbacks.Po b/.deps/gsequencer-ags_note_edit_callbacks.Po
index 9b59e32..1ed5d65 100644
--- a/.deps/gsequencer-ags_note_edit_callbacks.Po
+++ b/.deps/gsequencer-ags_note_edit_callbacks.Po
@@ -556,39 +556,9 @@ gsequencer-ags_note_edit_callbacks.o: \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
@@ -1990,137 +1960,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_machine.h:
 
diff --git a/.deps/gsequencer-ags_notebook.Po b/.deps/gsequencer-ags_notebook.Po
index 8f80f6a..814397c 100644
--- a/.deps/gsequencer-ags_notebook.Po
+++ b/.deps/gsequencer-ags_notebook.Po
@@ -556,39 +556,9 @@ gsequencer-ags_notebook.o: src/ags/X/editor/ags_notebook.c \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
  src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
  src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
@@ -1904,137 +1874,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/editor/ags_toolbar.h:
 
diff --git a/.deps/gsequencer-ags_notebook_callbacks.Po b/.deps/gsequencer-ags_notebook_callbacks.Po
index 406d271..6b2e1d6 100644
--- a/.deps/gsequencer-ags_notebook_callbacks.Po
+++ b/.deps/gsequencer-ags_notebook_callbacks.Po
@@ -556,39 +556,9 @@ gsequencer-ags_notebook_callbacks.o: \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
  src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
  src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
@@ -1904,137 +1874,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/editor/ags_toolbar.h:
 
diff --git a/.deps/gsequencer-ags_oscillator.Po b/.deps/gsequencer-ags_oscillator.Po
index 6d67866..000af04 100644
--- a/.deps/gsequencer-ags_oscillator.Po
+++ b/.deps/gsequencer-ags_oscillator.Po
@@ -551,14 +551,6 @@ gsequencer-ags_oscillator.o: src/ags/X/machine/ags_oscillator.c \
  src/ags/file/ags_file.h src/ags/X/machine/ags_oscillator_callbacks.h \
  src/ags/util/ags_id_generator.h src/ags/object/ags_application_context.h \
  src/ags/lib/ags_log.h src/ags/object/ags_config.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
@@ -1850,38 +1842,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags-lib/object/ags_connectable.h:
 
 src/ags/object/ags_plugin.h:
diff --git a/.deps/gsequencer-ags_panel.Po b/.deps/gsequencer-ags_panel.Po
index 2f8bae8..3800f96 100644
--- a/.deps/gsequencer-ags_panel.Po
+++ b/.deps/gsequencer-ags_panel.Po
@@ -557,15 +557,7 @@ gsequencer-ags_panel.o: src/ags/X/machine/ags_panel.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/machine/ags_panel_callbacks.h src/ags/util/ags_id_generator.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
@@ -573,31 +565,7 @@ gsequencer-ags_panel.o: src/ags/X/machine/ags_panel.c \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
  src/ags/file/ags_file_launch.h src/ags/file/ags_file_gui.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -614,8 +582,9 @@ gsequencer-ags_panel.o: src/ags/X/machine/ags_panel.c \
  src/ags/X/ags_server_preferences.h src/ags/X/ags_pad.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags/X/ags_line_member.h \
- src/ags/X/ags_machine_editor.h src/ags/X/ags_listing_editor.h \
- src/ags/X/ags_property_listing_editor.h src/ags/X/ags_property_editor.h \
+ src/ags/audio/ags_task.h src/ags/X/ags_machine_editor.h \
+ src/ags/X/ags_listing_editor.h src/ags/X/ags_property_listing_editor.h \
+ src/ags/X/ags_property_editor.h \
  src/ags/X/ags_property_collection_editor.h src/ags/X/ags_resize_editor.h \
  src/ags/X/ags_pad_editor.h src/ags/X/ags_line_editor.h \
  src/ags/X/ags_link_editor.h src/ags/audio/file/ags_audio_file.h \
@@ -708,9 +677,41 @@ gsequencer-ags_panel.o: src/ags/X/machine/ags_panel.c \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
  src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
  /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
- src/ags/audio/ags_output.h src/ags/audio/ags_recall_factory.h \
+ /usr/include/bits/stat.h src/ags/audio/ags_output.h \
+ src/ags/audio/ags_recall_factory.h \
  src/ags/audio/recall/ags_play_channel.h \
- src/ags/audio/ags_recall_channel.h \
+ src/ags/audio/ags_recall_channel.h src/ags/audio/ags_devout.h \
+ /usr/include/alsa/asoundlib.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/fcntl.h /usr/include/bits/fcntl.h \
+ /usr/include/bits/fcntl-linux.h /usr/include/assert.h \
+ /usr/include/sys/poll.h /usr/include/bits/poll.h /usr/include/errno.h \
+ /usr/include/bits/errno.h /usr/include/linux/errno.h \
+ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
+ /usr/include/asm-generic/errno-base.h /usr/include/alsa/asoundef.h \
+ /usr/include/alsa/version.h /usr/include/alsa/global.h \
+ /usr/include/alsa/input.h /usr/include/alsa/output.h \
+ /usr/include/alsa/error.h /usr/include/alsa/conf.h \
+ /usr/include/alsa/pcm.h /usr/include/alsa/rawmidi.h \
+ /usr/include/alsa/timer.h /usr/include/alsa/hwdep.h \
+ /usr/include/alsa/control.h /usr/include/alsa/mixer.h \
+ /usr/include/alsa/seq_event.h /usr/include/alsa/seq.h \
+ /usr/include/alsa/seqmid.h /usr/include/alsa/seq_midi_event.h \
+ src/ags/thread/ags_audio_loop.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
+ src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
+ /usr/include/linux/types.h /usr/include/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
+ /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
+ /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
+ src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_play_channel_run_master.h \
  src/ags/audio/ags_recall_channel_run.h \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
@@ -2033,38 +2034,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2097,105 +2066,7 @@ src/ags/file/ags_file_gui.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2253,6 +2124,8 @@ src/ags/widget/ags_expander.h:
 
 src/ags/X/ags_line_member.h:
 
+src/ags/audio/ags_task.h:
+
 src/ags/X/ags_machine_editor.h:
 
 src/ags/X/ags_listing_editor.h:
@@ -2463,6 +2336,8 @@ src/ags/audio/ags_input.h:
 
 /usr/include/sys/stat.h:
 
+/usr/include/bits/stat.h:
+
 src/ags/audio/ags_output.h:
 
 src/ags/audio/ags_recall_factory.h:
@@ -2471,6 +2346,134 @@ src/ags/audio/recall/ags_play_channel.h:
 
 src/ags/audio/ags_recall_channel.h:
 
+src/ags/audio/ags_devout.h:
+
+/usr/include/alsa/asoundlib.h:
+
+/usr/include/string.h:
+
+/usr/include/bits/string.h:
+
+/usr/include/bits/string2.h:
+
+/usr/include/fcntl.h:
+
+/usr/include/bits/fcntl.h:
+
+/usr/include/bits/fcntl-linux.h:
+
+/usr/include/assert.h:
+
+/usr/include/sys/poll.h:
+
+/usr/include/bits/poll.h:
+
+/usr/include/errno.h:
+
+/usr/include/bits/errno.h:
+
+/usr/include/linux/errno.h:
+
+/usr/include/asm/errno.h:
+
+/usr/include/asm-generic/errno.h:
+
+/usr/include/asm-generic/errno-base.h:
+
+/usr/include/alsa/asoundef.h:
+
+/usr/include/alsa/version.h:
+
+/usr/include/alsa/global.h:
+
+/usr/include/alsa/input.h:
+
+/usr/include/alsa/output.h:
+
+/usr/include/alsa/error.h:
+
+/usr/include/alsa/conf.h:
+
+/usr/include/alsa/pcm.h:
+
+/usr/include/alsa/rawmidi.h:
+
+/usr/include/alsa/timer.h:
+
+/usr/include/alsa/hwdep.h:
+
+/usr/include/alsa/control.h:
+
+/usr/include/alsa/mixer.h:
+
+/usr/include/alsa/seq_event.h:
+
+/usr/include/alsa/seq.h:
+
+/usr/include/alsa/seqmid.h:
+
+/usr/include/alsa/seq_midi_event.h:
+
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
+src/ags/thread/ags_task_thread.h:
+
+src/ags/thread/ags_thread_pool.h:
+
+src/ags/object/ags_main_loop.h:
+
+src/ags/thread/ags_devout_thread.h:
+
+src/ags/thread/ags_iterator_thread.h:
+
 src/ags/audio/recall/ags_play_channel_run_master.h:
 
 src/ags/audio/ags_recall_channel_run.h:
diff --git a/.deps/gsequencer-ags_panel_callbacks.Po b/.deps/gsequencer-ags_panel_callbacks.Po
index 4d2799e..cf6b676 100644
--- a/.deps/gsequencer-ags_panel_callbacks.Po
+++ b/.deps/gsequencer-ags_panel_callbacks.Po
@@ -556,39 +556,9 @@ gsequencer-ags_panel_callbacks.o: src/ags/X/machine/ags_panel_callbacks.c \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -1912,137 +1882,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_automation_editor.h:
 
diff --git a/.deps/gsequencer-ags_panel_input_line.Po b/.deps/gsequencer-ags_panel_input_line.Po
index 40c25b5..e38997f 100644
--- a/.deps/gsequencer-ags_panel_input_line.Po
+++ b/.deps/gsequencer-ags_panel_input_line.Po
@@ -591,8 +591,10 @@ gsequencer-ags_panel_input_line.o: \
  /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
  /usr/include/sys/time.h src/ags/object/ags_stackable.h \
  src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/object/ags_main_loop.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/recall/ags_play_channel_run_master.h \
  src/ags/audio/ags_recall_channel_run.h \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
@@ -601,7 +603,7 @@ gsequencer-ags_panel_input_line.o: \
  src/ags/audio/recall/ags_mute_channel.h \
  src/ags/audio/recall/ags_mute_channel_run.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -2063,6 +2065,12 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2089,6 +2097,8 @@ src/ags/widget/ags_expander_set.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_panel_input_pad.Po b/.deps/gsequencer-ags_panel_input_pad.Po
index fae5500..e824307 100644
--- a/.deps/gsequencer-ags_panel_input_pad.Po
+++ b/.deps/gsequencer-ags_panel_input_pad.Po
@@ -558,40 +558,9 @@ gsequencer-ags_panel_input_pad.o: src/ags/X/machine/ags_panel_input_pad.c \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_plugin.h src/ags/file/ags_file.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -605,7 +574,12 @@ gsequencer-ags_panel_input_pad.o: src/ags/X/machine/ags_panel_input_pad.c \
  src/ags/X/ags_preferences.h src/ags/X/ags_generic_preferences.h \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_panel.h
+ src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_panel.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1923,137 +1897,13 @@ src/ags/file/ags_file.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundef.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/alsa/version.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_config.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2106,3 +1956,21 @@ src/ags/X/ags_performance_preferences.h:
 src/ags/X/ags_server_preferences.h:
 
 src/ags/X/machine/ags_panel.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_pattern_edit.Po b/.deps/gsequencer-ags_pattern_edit.Po
index 13b49a9..93f3c23 100644
--- a/.deps/gsequencer-ags_pattern_edit.Po
+++ b/.deps/gsequencer-ags_pattern_edit.Po
@@ -557,43 +557,14 @@ gsequencer-ags_pattern_edit.o: src/ags/X/editor/ags_pattern_edit.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/editor/ags_pattern_edit_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/X/ags_editor.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
- src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
- src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
- src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
- src/ags/X/editor/ags_note_edit.h src/ags/X/editor/ags_automation_edit.h \
- src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
+ src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
+ src/ags/audio/ags_acceleration.h
 
 /usr/include/stdc-predef.h:
 
@@ -1905,137 +1876,15 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_machine.h:
 
diff --git a/.deps/gsequencer-ags_pattern_edit_callbacks.Po b/.deps/gsequencer-ags_pattern_edit_callbacks.Po
index b34b074..e8be621 100644
--- a/.deps/gsequencer-ags_pattern_edit_callbacks.Po
+++ b/.deps/gsequencer-ags_pattern_edit_callbacks.Po
@@ -557,39 +557,9 @@ gsequencer-ags_pattern_edit_callbacks.o: \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/thread/ags_thread-posix.h \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
@@ -1990,137 +1960,15 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/file/ags_file.h:
 
 src/ags/X/ags_machine.h:
 
diff --git a/.deps/gsequencer-ags_resize_editor.Po b/.deps/gsequencer-ags_resize_editor.Po
index 41748e8..09ab0fe 100644
--- a/.deps/gsequencer-ags_resize_editor.Po
+++ b/.deps/gsequencer-ags_resize_editor.Po
@@ -528,15 +528,7 @@ gsequencer-ags_resize_editor.o: src/ags/X/ags_resize_editor.c \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/ags_property_editor.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
@@ -559,26 +551,35 @@ gsequencer-ags_resize_editor.o: src/ags/X/ags_resize_editor.c \
  /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_applicable.h \
- src/ags/thread/ags_audio_loop.h /usr/include/math.h \
- /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
- /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
- /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
- /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
  src/ags/thread/ags_thread-posix.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
- src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/audio/ags_output.h src/ags/audio/ags_input.h \
- /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
- /usr/include/sys/stat.h /usr/include/bits/stat.h \
- src/ags/audio/task/ags_resize_audio.h src/ags/X/ags_machine_editor.h \
- src/ags/X/ags_machine.h src/ags/X/ags_listing_editor.h \
- src/ags/X/ags_property_listing_editor.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/audio/ags_task.h src/ags/audio/ags_audio.h \
+ src/ags/audio/ags_channel.h src/ags/audio/ags_recall_id.h \
+ src/ags/audio/ags_recycling.h src/ags/audio/ags_audio_signal.h \
+ src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
+ src/ags/audio/ags_port.h /usr/include/ladspa.h \
+ src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
+ src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/audio/ags_output.h \
+ src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
+ /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
+ /usr/include/bits/stat.h src/ags/audio/task/ags_resize_audio.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/X/ags_automation_editor.h \
+ src/ags/X/editor/ags_automation_toolbar.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_automation_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/audio/ags_automation.h src/ags/audio/ags_acceleration.h \
+ src/ags/X/ags_menu_bar.h src/ags/X/ags_editor.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
+ src/ags/X/editor/ags_pattern_edit.h src/ags/X/ags_navigation.h \
+ src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
+ src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
+ src/ags/X/ags_performance_preferences.h \
+ src/ags/X/ags_server_preferences.h src/ags/X/ags_machine_editor.h \
+ src/ags/X/ags_listing_editor.h src/ags/X/ags_property_listing_editor.h \
  src/ags/X/ags_property_collection_editor.h
 
 /usr/include/stdc-predef.h:
@@ -1805,38 +1806,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
@@ -1899,32 +1868,14 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/object/ags_applicable.h:
 
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
 src/ags/thread/ags_thread-posix.h:
 
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/audio/ags_audio.h:
@@ -1969,10 +1920,60 @@ src/ags/audio/ags_input.h:
 
 src/ags/audio/task/ags_resize_audio.h:
 
-src/ags/X/ags_machine_editor.h:
+src/ags/X/ags_window.h:
+
+src/ags/object/ags_soundcard.h:
+
+src/ags/X/ags_automation_editor.h:
+
+src/ags/X/editor/ags_automation_toolbar.h:
+
+src/ags/X/editor/ags_port_selection.h:
+
+src/ags/X/editor/ags_notebook.h:
+
+src/ags/X/editor/ags_machine_selector.h:
 
 src/ags/X/ags_machine.h:
 
+src/ags/X/editor/ags_automation_edit.h:
+
+src/ags/widget/ags_ruler.h:
+
+src/ags/audio/ags_automation.h:
+
+src/ags/audio/ags_acceleration.h:
+
+src/ags/X/ags_menu_bar.h:
+
+src/ags/X/ags_editor.h:
+
+src/ags/X/editor/ags_toolbar.h:
+
+src/ags/X/editor/ags_meter.h:
+
+src/ags/X/editor/ags_soundset.h:
+
+src/ags/X/editor/ags_note_edit.h:
+
+src/ags/X/editor/ags_pattern_edit.h:
+
+src/ags/X/ags_navigation.h:
+
+src/ags/X/ags_export_window.h:
+
+src/ags/X/ags_preferences.h:
+
+src/ags/X/ags_generic_preferences.h:
+
+src/ags/X/ags_audio_preferences.h:
+
+src/ags/X/ags_performance_preferences.h:
+
+src/ags/X/ags_server_preferences.h:
+
+src/ags/X/ags_machine_editor.h:
+
 src/ags/X/ags_listing_editor.h:
 
 src/ags/X/ags_property_listing_editor.h:
diff --git a/.deps/gsequencer-ags_scroll_on_play.Po b/.deps/gsequencer-ags_scroll_on_play.Po
index 88d2cd6..866c99c 100644
--- a/.deps/gsequencer-ags_scroll_on_play.Po
+++ b/.deps/gsequencer-ags_scroll_on_play.Po
@@ -144,6 +144,26 @@ gsequencer-ags_scroll_on_play.o: src/ags/audio/task/ags_scroll_on_play.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
+ /usr/include/libxml2/libxml/xmlversion.h \
+ /usr/include/libxml2/libxml/xmlexports.h \
+ /usr/include/libxml2/libxml/xmlstring.h \
+ /usr/include/libxml2/libxml/xmlregexp.h \
+ /usr/include/libxml2/libxml/dict.h \
+ /usr/include/libxml2/libxml/xmlmemory.h \
+ /usr/include/libxml2/libxml/threads.h \
+ /usr/include/libxml2/libxml/globals.h \
+ /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
+ /usr/include/libxml2/libxml/valid.h \
+ /usr/include/libxml2/libxml/xmlerror.h \
+ /usr/include/libxml2/libxml/list.h \
+ /usr/include/libxml2/libxml/xmlautomata.h \
+ /usr/include/libxml2/libxml/entities.h \
+ /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
+ /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_channel.h /usr/include/gtk-2.0/gtk/gtk.h \
  /usr/include/gtk-2.0/gdk/gdk.h \
@@ -569,27 +589,10 @@ gsequencer-ags_scroll_on_play.o: src/ags/audio/task/ags_scroll_on_play.c \
  src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
  src/ags/audio/ags_port.h /usr/include/ladspa.h \
  src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
- /usr/include/libxml2/libxml/tree.h \
- /usr/include/libxml2/libxml/xmlversion.h \
- /usr/include/libxml2/libxml/xmlexports.h \
- /usr/include/libxml2/libxml/xmlstring.h \
- /usr/include/libxml2/libxml/xmlregexp.h \
- /usr/include/libxml2/libxml/dict.h \
- /usr/include/libxml2/libxml/xmlmemory.h \
- /usr/include/libxml2/libxml/threads.h \
- /usr/include/libxml2/libxml/globals.h \
- /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
- /usr/include/libxml2/libxml/valid.h \
- /usr/include/libxml2/libxml/xmlerror.h \
- /usr/include/libxml2/libxml/list.h \
- /usr/include/libxml2/libxml/xmlautomata.h \
- /usr/include/libxml2/libxml/entities.h \
- /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
- /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
- /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
  src/ags/audio/ags_note.h src/ags-lib/object/ags_connectable.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -603,9 +606,7 @@ gsequencer-ags_scroll_on_play.o: src/ags/audio/task/ags_scroll_on_play.c \
  src/ags/X/ags_preferences.h src/ags/X/ags_generic_preferences.h \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h src/ags/main.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h
+ src/ags/X/ags_server_preferences.h src/ags/main.h
 
 /usr/include/stdc-predef.h:
 
@@ -1053,6 +1054,58 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+/usr/include/libxml2/libxml/tree.h:
+
+/usr/include/libxml2/libxml/xmlversion.h:
+
+/usr/include/libxml2/libxml/xmlexports.h:
+
+/usr/include/libxml2/libxml/xmlstring.h:
+
+/usr/include/libxml2/libxml/xmlregexp.h:
+
+/usr/include/libxml2/libxml/dict.h:
+
+/usr/include/libxml2/libxml/xmlmemory.h:
+
+/usr/include/libxml2/libxml/threads.h:
+
+/usr/include/libxml2/libxml/globals.h:
+
+/usr/include/libxml2/libxml/parser.h:
+
+/usr/include/libxml2/libxml/hash.h:
+
+/usr/include/libxml2/libxml/valid.h:
+
+/usr/include/libxml2/libxml/xmlerror.h:
+
+/usr/include/libxml2/libxml/list.h:
+
+/usr/include/libxml2/libxml/xmlautomata.h:
+
+/usr/include/libxml2/libxml/entities.h:
+
+/usr/include/libxml2/libxml/encoding.h:
+
+/usr/include/iconv.h:
+
+/usr/include/libxml2/libxml/xmlIO.h:
+
+/usr/include/libxml2/libxml/SAX.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
@@ -1989,50 +2042,6 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
@@ -2043,6 +2052,8 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
@@ -2094,11 +2105,3 @@ src/ags/X/ags_performance_preferences.h:
 src/ags/X/ags_server_preferences.h:
 
 src/ags/main.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
diff --git a/.deps/gsequencer-ags_server_preferences.Po b/.deps/gsequencer-ags_server_preferences.Po
index 9977979..c9b6fab 100644
--- a/.deps/gsequencer-ags_server_preferences.Po
+++ b/.deps/gsequencer-ags_server_preferences.Po
@@ -580,15 +580,17 @@ gsequencer-ags_server_preferences.o: src/ags/X/ags_server_preferences.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
- src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/file/ags_file.h src/ags/audio/ags_task.h \
+ src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/audio/ags_channel.h src/ags/audio/ags_recall_id.h \
+ src/ags/audio/ags_recycling.h src/ags/audio/ags_audio_signal.h \
+ src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
+ src/ags/audio/ags_port.h /usr/include/ladspa.h \
+ src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
+ src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_window.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -2011,6 +2013,12 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/file/ags_file.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2045,6 +2053,8 @@ src/ags/audio/ags_note.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_sf2_chooser.Po b/.deps/gsequencer-ags_sf2_chooser.Po
index 7109ece..9bd6691 100644
--- a/.deps/gsequencer-ags_sf2_chooser.Po
+++ b/.deps/gsequencer-ags_sf2_chooser.Po
@@ -606,15 +606,35 @@ gsequencer-ags_sf2_chooser.o: src/ags/X/editor/ags_sf2_chooser.c \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
+ src/ags/X/editor/ags_sf2_chooser_callbacks.h \
+ src/ags-lib/object/ags_connectable.h /usr/include/libxml2/libxml/tree.h \
+ /usr/include/libxml2/libxml/xmlversion.h \
+ /usr/include/libxml2/libxml/xmlexports.h \
+ /usr/include/libxml2/libxml/xmlstring.h \
+ /usr/include/libxml2/libxml/xmlregexp.h \
+ /usr/include/libxml2/libxml/dict.h \
+ /usr/include/libxml2/libxml/xmlmemory.h \
+ /usr/include/libxml2/libxml/threads.h \
+ /usr/include/libxml2/libxml/globals.h \
+ /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
+ /usr/include/libxml2/libxml/valid.h \
+ /usr/include/libxml2/libxml/xmlerror.h \
+ /usr/include/libxml2/libxml/list.h \
+ /usr/include/libxml2/libxml/xmlautomata.h \
+ /usr/include/libxml2/libxml/entities.h \
+ /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
+ /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
  /usr/include/stdlib.h /usr/include/bits/waitflags.h \
  /usr/include/bits/waitstatus.h /usr/include/alloca.h \
  /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
+ src/ags/object/ags_playable.h src/ags/audio/ags_devout.h \
+ /usr/include/alsa/asoundlib.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/fcntl.h /usr/include/bits/fcntl.h \
+ /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
+ /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
+ /usr/include/errno.h /usr/include/bits/errno.h \
  /usr/include/linux/errno.h /usr/include/asm/errno.h \
  /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
  /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
@@ -640,35 +660,18 @@ gsequencer-ags_sf2_chooser.o: src/ags/X/editor/ags_sf2_chooser.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
  src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
  src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
  src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
  src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
  /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
- /usr/include/libxml2/libxml/xmlversion.h \
- /usr/include/libxml2/libxml/xmlexports.h \
- /usr/include/libxml2/libxml/xmlstring.h \
- /usr/include/libxml2/libxml/xmlregexp.h \
- /usr/include/libxml2/libxml/dict.h \
- /usr/include/libxml2/libxml/xmlmemory.h \
- /usr/include/libxml2/libxml/threads.h \
- /usr/include/libxml2/libxml/globals.h \
- /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
- /usr/include/libxml2/libxml/valid.h \
- /usr/include/libxml2/libxml/xmlerror.h \
- /usr/include/libxml2/libxml/list.h \
- /usr/include/libxml2/libxml/xmlautomata.h \
- /usr/include/libxml2/libxml/entities.h \
- /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
- /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
- /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/X/editor/ags_sf2_chooser_callbacks.h \
- src/ags-lib/object/ags_connectable.h src/ags/object/ags_playable.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/audio/file/ags_ipatch_sf2_reader.h src/ags/X/ags_window.h \
- src/ags/X/ags_automation_editor.h \
+ src/ags/object/ags_soundcard.h src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -2060,9 +2063,49 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/X/editor/ags_sf2_chooser_callbacks.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags-lib/object/ags_connectable.h:
+
+/usr/include/libxml2/libxml/tree.h:
+
+/usr/include/libxml2/libxml/xmlversion.h:
+
+/usr/include/libxml2/libxml/xmlexports.h:
+
+/usr/include/libxml2/libxml/xmlstring.h:
+
+/usr/include/libxml2/libxml/xmlregexp.h:
+
+/usr/include/libxml2/libxml/dict.h:
+
+/usr/include/libxml2/libxml/xmlmemory.h:
+
+/usr/include/libxml2/libxml/threads.h:
+
+/usr/include/libxml2/libxml/globals.h:
+
+/usr/include/libxml2/libxml/parser.h:
+
+/usr/include/libxml2/libxml/hash.h:
+
+/usr/include/libxml2/libxml/valid.h:
+
+/usr/include/libxml2/libxml/xmlerror.h:
+
+/usr/include/libxml2/libxml/list.h:
+
+/usr/include/libxml2/libxml/xmlautomata.h:
+
+/usr/include/libxml2/libxml/entities.h:
+
+/usr/include/libxml2/libxml/encoding.h:
+
+/usr/include/iconv.h:
+
+/usr/include/libxml2/libxml/xmlIO.h:
+
+/usr/include/libxml2/libxml/SAX.h:
 
 /usr/include/stdlib.h:
 
@@ -2076,6 +2119,16 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/bits/stdlib-float.h:
 
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
+
+src/ags/object/ags_playable.h:
+
+src/ags/audio/ags_devout.h:
+
+/usr/include/alsa/asoundlib.h:
+
 /usr/include/string.h:
 
 /usr/include/bits/string.h:
@@ -2200,6 +2253,14 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2226,66 +2287,18 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/X/editor/ags_sf2_chooser_callbacks.h:
-
-src/ags-lib/object/ags_connectable.h:
-
-src/ags/object/ags_playable.h:
-
 src/ags/audio/file/ags_ipatch_sf2_reader.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_sf2_chooser_callbacks.Po b/.deps/gsequencer-ags_sf2_chooser_callbacks.Po
index 5773257..bd11ae5 100644
--- a/.deps/gsequencer-ags_sf2_chooser_callbacks.Po
+++ b/.deps/gsequencer-ags_sf2_chooser_callbacks.Po
@@ -608,15 +608,16 @@ gsequencer-ags_sf2_chooser_callbacks.o: \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/stdlib.h /usr/include/bits/waitflags.h \
- /usr/include/bits/waitstatus.h /usr/include/alloca.h \
- /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
+ src/ags/object/ags_playable.h src/ags/audio/ags_devout.h \
+ /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
+ /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
+ /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
+ /usr/include/bits/stdlib-float.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/fcntl.h /usr/include/bits/fcntl.h \
+ /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
+ /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
+ /usr/include/errno.h /usr/include/bits/errno.h \
  /usr/include/linux/errno.h /usr/include/asm/errno.h \
  /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
  /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
@@ -642,13 +643,9 @@ gsequencer-ags_sf2_chooser_callbacks.o: \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -666,8 +663,14 @@ gsequencer-ags_sf2_chooser_callbacks.o: \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/object/ags_playable.h \
+ src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/audio/file/ags_ipatch_sf2_reader.h
 
 /usr/include/stdc-predef.h:
@@ -2048,6 +2051,8 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
+src/ags/object/ags_playable.h:
+
 src/ags/audio/ags_devout.h:
 
 /usr/include/alsa/asoundlib.h:
@@ -2188,31 +2193,13 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/ladspa.h:
+src/ags/lib/ags_log.h:
 
-src/ags/audio/ags_recall_dependency.h:
+src/ags/object/ags_config.h:
 
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2258,12 +2245,36 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX2.h:
 
+src/ags/audio/ags_task.h:
+
+src/ags/thread/ags_devout_thread.h:
+
+src/ags/thread/ags_iterator_thread.h:
+
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
 src/ags/thread/ags_timestamp_thread.h:
 
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/object/ags_playable.h:
-
 src/ags/audio/file/ags_ipatch_sf2_reader.h:
diff --git a/.deps/gsequencer-ags_soundset.Po b/.deps/gsequencer-ags_soundset.Po
index c1c9896..800ab1d 100644
--- a/.deps/gsequencer-ags_soundset.Po
+++ b/.deps/gsequencer-ags_soundset.Po
@@ -549,53 +549,27 @@ gsequencer-ags_soundset.o: src/ags/X/editor/ags_soundset.c \
  /usr/include/bits/waitstatus.h /usr/include/alloca.h \
  /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
  src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
  src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
  src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
  /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
  src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
- src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
- src/ags/audio/ags_audio.h src/ags/X/ags_machine.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_machine.h \
  src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
  src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_meter.h \
  src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
  src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
- src/ags/audio/ags_acceleration.h
+ src/ags/audio/ags_acceleration.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1875,139 +1849,17 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
+src/ags/object/ags_config.h:
 
-/usr/include/bits/string2.h:
+src/ags/file/ags_file.h:
 
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/audio/ags_audio.h:
 
 src/ags/audio/ags_channel.h:
 
@@ -2031,12 +1883,12 @@ src/ags/audio/ags_notation.h:
 
 src/ags/thread/ags_timestamp_thread.h:
 
+src/ags/thread/ags_thread-posix.h:
+
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/audio/ags_audio.h:
-
 src/ags/X/ags_machine.h:
 
 src/ags/X/editor/ags_toolbar.h:
@@ -2058,3 +1910,21 @@ src/ags/X/editor/ags_automation_edit.h:
 src/ags/audio/ags_automation.h:
 
 src/ags/audio/ags_acceleration.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_soundset_callbacks.Po b/.deps/gsequencer-ags_soundset_callbacks.Po
index 9c7542a..31d3a7e 100644
--- a/.deps/gsequencer-ags_soundset_callbacks.Po
+++ b/.deps/gsequencer-ags_soundset_callbacks.Po
@@ -527,48 +527,10 @@ gsequencer-ags_soundset_callbacks.o: \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/editor/ags_soundset.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -585,15 +547,28 @@ gsequencer-ags_soundset_callbacks.o: \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/audio/ags_audio.h \
- src/ags/X/ags_machine.h src/ags/X/editor/ags_toolbar.h \
- src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
- src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_note_edit.h \
- src/ags/widget/ags_ruler.h src/ags/X/editor/ags_pattern_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_toolbar.h src/ags/X/editor/ags_machine_selector.h \
+ src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_meter.h \
+ src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
- src/ags/audio/ags_acceleration.h
+ src/ags/audio/ags_acceleration.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1815,151 +1790,73 @@ src/ags/X/editor/ags_soundset.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/input.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/alsa/output.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/alsa/error.h:
+src/ags/object/ags_config.h:
 
-/usr/include/alsa/conf.h:
+src/ags/file/ags_file.h:
 
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
+/usr/include/libxml2/libxml/tree.h:
 
-/usr/include/bits/huge_vall.h:
+/usr/include/libxml2/libxml/xmlversion.h:
 
-/usr/include/bits/inf.h:
+/usr/include/libxml2/libxml/xmlexports.h:
 
-/usr/include/bits/nan.h:
+/usr/include/libxml2/libxml/xmlstring.h:
 
-/usr/include/bits/mathdef.h:
+/usr/include/libxml2/libxml/xmlregexp.h:
 
-/usr/include/bits/mathcalls.h:
+/usr/include/libxml2/libxml/dict.h:
 
-/usr/include/bits/mathinline.h:
+/usr/include/libxml2/libxml/xmlmemory.h:
 
-src/ags/thread/ags_thread-posix.h:
+/usr/include/libxml2/libxml/threads.h:
 
-src/ags/thread/ags_async_queue.h:
+/usr/include/libxml2/libxml/globals.h:
 
-/usr/include/linux/futex.h:
+/usr/include/libxml2/libxml/parser.h:
 
-/usr/include/linux/types.h:
+/usr/include/libxml2/libxml/hash.h:
 
-/usr/include/asm/types.h:
+/usr/include/libxml2/libxml/valid.h:
 
-/usr/include/asm-generic/types.h:
+/usr/include/libxml2/libxml/xmlerror.h:
 
-/usr/include/asm-generic/int-ll64.h:
+/usr/include/libxml2/libxml/list.h:
 
-/usr/include/asm/bitsperlong.h:
+/usr/include/libxml2/libxml/xmlautomata.h:
 
-/usr/include/asm-generic/bitsperlong.h:
+/usr/include/libxml2/libxml/entities.h:
 
-/usr/include/linux/posix_types.h:
+/usr/include/libxml2/libxml/encoding.h:
 
-/usr/include/linux/stddef.h:
+/usr/include/iconv.h:
 
-/usr/include/asm/posix_types.h:
+/usr/include/libxml2/libxml/xmlIO.h:
 
-/usr/include/asm/posix_types_64.h:
+/usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/asm-generic/posix_types.h:
+/usr/include/stdlib.h:
 
-/usr/include/sys/time.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/object/ags_stackable.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/thread/ags_task_thread.h:
+/usr/include/alloca.h:
 
-src/ags/thread/ags_thread_pool.h:
+/usr/include/bits/stdlib-bsearch.h:
 
-src/ags/object/ags_main_loop.h:
+/usr/include/bits/stdlib-float.h:
 
-src/ags/audio/ags_task.h:
+/usr/include/libxml2/libxml/xlink.h:
 
-src/ags/thread/ags_devout_thread.h:
+/usr/include/libxml2/libxml/SAX2.h:
 
-src/ags/thread/ags_iterator_thread.h:
+src/ags/audio/ags_audio.h:
 
 src/ags/audio/ags_channel.h:
 
@@ -1981,58 +1878,14 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
+src/ags/thread/ags_thread-posix.h:
+
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/audio/ags_audio.h:
-
 src/ags/X/ags_machine.h:
 
 src/ags/X/editor/ags_toolbar.h:
@@ -2054,3 +1907,21 @@ src/ags/X/editor/ags_automation_edit.h:
 src/ags/audio/ags_automation.h:
 
 src/ags/audio/ags_acceleration.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_synth.Po b/.deps/gsequencer-ags_synth.Po
index c471dd2..b219c64 100644
--- a/.deps/gsequencer-ags_synth.Po
+++ b/.deps/gsequencer-ags_synth.Po
@@ -557,15 +557,7 @@ gsequencer-ags_synth.o: src/ags/X/machine/ags_synth.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/machine/ags_synth_callbacks.h src/ags/util/ags_id_generator.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
@@ -573,31 +565,7 @@ gsequencer-ags_synth.o: src/ags/X/machine/ags_synth.c \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
  src/ags/file/ags_file_launch.h src/ags/file/ags_file_gui.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -614,8 +582,9 @@ gsequencer-ags_synth.o: src/ags/X/machine/ags_synth.c \
  src/ags/X/ags_server_preferences.h src/ags/X/ags_pad.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags/X/ags_line_member.h \
- src/ags/X/ags_machine_editor.h src/ags/X/ags_listing_editor.h \
- src/ags/X/ags_property_listing_editor.h src/ags/X/ags_property_editor.h \
+ src/ags/audio/ags_task.h src/ags/X/ags_machine_editor.h \
+ src/ags/X/ags_listing_editor.h src/ags/X/ags_property_listing_editor.h \
+ src/ags/X/ags_property_editor.h \
  src/ags/X/ags_property_collection_editor.h src/ags/X/ags_resize_editor.h \
  src/ags/X/ags_pad_editor.h src/ags/X/ags_line_editor.h \
  src/ags/X/ags_link_editor.h src/ags/audio/file/ags_audio_file.h \
@@ -705,10 +674,41 @@ gsequencer-ags_synth.o: src/ags/X/machine/ags_synth.c \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/ags_input.h /usr/include/glib-2.0/glib/gstdio.h \
- /usr/include/glib-2.0/glib/gprintf.h /usr/include/sys/stat.h \
- src/ags/audio/ags_output.h src/ags/audio/ags_synths.h \
- src/ags/audio/ags_recall_factory.h \
+ src/ags/thread/ags_audio_loop.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h \
+ src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
+ /usr/include/linux/types.h /usr/include/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
+ /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
+ /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
+ src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
+ /usr/include/string.h /usr/include/bits/string.h \
+ /usr/include/bits/string2.h /usr/include/fcntl.h \
+ /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
+ /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
+ /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
+ /usr/include/linux/errno.h /usr/include/asm/errno.h \
+ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
+ /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
+ /usr/include/alsa/global.h /usr/include/alsa/input.h \
+ /usr/include/alsa/output.h /usr/include/alsa/error.h \
+ /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
+ /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
+ /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
+ /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
+ /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
+ /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_devout_thread.h \
+ src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_input.h \
+ /usr/include/glib-2.0/glib/gstdio.h /usr/include/glib-2.0/glib/gprintf.h \
+ /usr/include/sys/stat.h src/ags/audio/ags_output.h \
+ src/ags/audio/ags_synths.h src/ags/audio/ags_recall_factory.h \
  src/ags/audio/recall/ags_delay_audio.h src/ags/audio/ags_recall_audio.h \
  src/ags/audio/recall/ags_delay_audio_run.h \
  src/ags/audio/ags_recall_audio_run.h \
@@ -2035,38 +2035,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -2099,105 +2067,7 @@ src/ags/file/ags_file_gui.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2255,6 +2125,8 @@ src/ags/widget/ags_expander.h:
 
 src/ags/X/ags_line_member.h:
 
+src/ags/audio/ags_task.h:
+
 src/ags/X/ags_machine_editor.h:
 
 src/ags/X/ags_listing_editor.h:
@@ -2457,6 +2329,136 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
+src/ags/thread/ags_audio_loop.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
+
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
+src/ags/thread/ags_task_thread.h:
+
+src/ags/thread/ags_thread_pool.h:
+
+src/ags/object/ags_main_loop.h:
+
+src/ags/audio/ags_devout.h:
+
+/usr/include/alsa/asoundlib.h:
+
+/usr/include/string.h:
+
+/usr/include/bits/string.h:
+
+/usr/include/bits/string2.h:
+
+/usr/include/fcntl.h:
+
+/usr/include/bits/fcntl.h:
+
+/usr/include/bits/fcntl-linux.h:
+
+/usr/include/bits/stat.h:
+
+/usr/include/assert.h:
+
+/usr/include/sys/poll.h:
+
+/usr/include/bits/poll.h:
+
+/usr/include/errno.h:
+
+/usr/include/bits/errno.h:
+
+/usr/include/linux/errno.h:
+
+/usr/include/asm/errno.h:
+
+/usr/include/asm-generic/errno.h:
+
+/usr/include/asm-generic/errno-base.h:
+
+/usr/include/alsa/asoundef.h:
+
+/usr/include/alsa/version.h:
+
+/usr/include/alsa/global.h:
+
+/usr/include/alsa/input.h:
+
+/usr/include/alsa/output.h:
+
+/usr/include/alsa/error.h:
+
+/usr/include/alsa/conf.h:
+
+/usr/include/alsa/pcm.h:
+
+/usr/include/alsa/rawmidi.h:
+
+/usr/include/alsa/timer.h:
+
+/usr/include/alsa/hwdep.h:
+
+/usr/include/alsa/control.h:
+
+/usr/include/alsa/mixer.h:
+
+/usr/include/alsa/seq_event.h:
+
+/usr/include/alsa/seq.h:
+
+/usr/include/alsa/seqmid.h:
+
+/usr/include/alsa/seq_midi_event.h:
+
+src/ags/thread/ags_devout_thread.h:
+
+src/ags/thread/ags_iterator_thread.h:
+
 src/ags/audio/ags_input.h:
 
 /usr/include/glib-2.0/glib/gstdio.h:
diff --git a/.deps/gsequencer-ags_synth_bridge.Po b/.deps/gsequencer-ags_synth_bridge.Po
index fd7e7c6..e33265d 100644
--- a/.deps/gsequencer-ags_synth_bridge.Po
+++ b/.deps/gsequencer-ags_synth_bridge.Po
@@ -559,15 +559,7 @@ gsequencer-ags_synth_bridge.o: src/ags/X/machine/ags_synth_bridge.c \
  src/ags/X/machine/ags_synth_bridge_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_plugin.h src/ags/X/ags_effect_bulk.h \
  src/ags/X/machine/ags_synth_bulk_output.h \
  src/ags/X/machine/ags_synth_output_pad.h src/ags/X/ags_effect_pad.h \
@@ -1889,38 +1881,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_plugin.h:
diff --git a/.deps/gsequencer-ags_synth_bulk_output.Po b/.deps/gsequencer-ags_synth_bulk_output.Po
index edf6692..e0639fa 100644
--- a/.deps/gsequencer-ags_synth_bulk_output.Po
+++ b/.deps/gsequencer-ags_synth_bulk_output.Po
@@ -558,15 +558,7 @@ gsequencer-ags_synth_bulk_output.o: \
  src/ags/X/machine/ags_synth_bulk_output_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h
 
 /usr/include/stdc-predef.h:
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_synth_callbacks.Po b/.deps/gsequencer-ags_synth_callbacks.Po
index 78ddace..e5b7610 100644
--- a/.deps/gsequencer-ags_synth_callbacks.Po
+++ b/.deps/gsequencer-ags_synth_callbacks.Po
@@ -558,38 +558,8 @@ gsequencer-ags_synth_callbacks.o: src/ags/X/machine/ags_synth_callbacks.c \
  src/ags/audio/ags_timestamp.h src/ags/audio/ags_note.h \
  src/ags/X/machine/ags_oscillator.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -603,7 +573,11 @@ gsequencer-ags_synth_callbacks.o: src/ags/X/machine/ags_synth_callbacks.c \
  src/ags/X/ags_export_window.h src/ags/X/ags_preferences.h \
  src/ags/X/ags_generic_preferences.h src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h
+ src/ags/X/ags_server_preferences.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1919,137 +1893,13 @@ src/ags-lib/object/ags_connectable.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/alsa/asoundlib.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/string.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_config.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2096,3 +1946,21 @@ src/ags/X/ags_audio_preferences.h:
 src/ags/X/ags_performance_preferences.h:
 
 src/ags/X/ags_server_preferences.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_synth_input_line.Po b/.deps/gsequencer-ags_synth_input_line.Po
index 2af8085..e3e8c95 100644
--- a/.deps/gsequencer-ags_synth_input_line.Po
+++ b/.deps/gsequencer-ags_synth_input_line.Po
@@ -559,15 +559,7 @@ gsequencer-ags_synth_input_line.o: \
  src/ags/file/ags_file.h src/ags/util/ags_id_generator.h \
  src/ags/plugin/ags_plugin_stock.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags-lib/object/ags_connectable.h \
+ src/ags/object/ags_config.h src/ags-lib/object/ags_connectable.h \
  src/ags/object/ags_plugin.h src/ags/file/ags_file_stock.h \
  src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
  src/ags/widget/ags_indicator.h src/ags/widget/ags_hindicator.h \
@@ -600,11 +592,20 @@ gsequencer-ags_synth_input_line.o: \
  /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
  /usr/include/bits/inf.h /usr/include/bits/nan.h \
  /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
+ /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
+ /usr/include/linux/futex.h /usr/include/linux/types.h \
+ /usr/include/asm/types.h /usr/include/asm-generic/types.h \
+ /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
+ /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
+ /usr/include/sys/time.h src/ags/object/ags_stackable.h \
+ src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
+ src/ags/object/ags_main_loop.h src/ags/audio/ags_task.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
- src/ags/X/ags_window.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
@@ -1938,38 +1939,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags-lib/object/ags_connectable.h:
 
 src/ags/object/ags_plugin.h:
@@ -2098,10 +2067,42 @@ src/ags/thread/ags_audio_loop.h:
 
 /usr/include/bits/mathinline.h:
 
+src/ags/thread/ags_async_queue.h:
+
+/usr/include/linux/futex.h:
+
+/usr/include/linux/types.h:
+
+/usr/include/asm/types.h:
+
+/usr/include/asm-generic/types.h:
+
+/usr/include/asm-generic/int-ll64.h:
+
+/usr/include/asm/bitsperlong.h:
+
+/usr/include/asm-generic/bitsperlong.h:
+
+/usr/include/linux/posix_types.h:
+
+/usr/include/linux/stddef.h:
+
+/usr/include/asm/posix_types.h:
+
+/usr/include/asm/posix_types_64.h:
+
+/usr/include/asm-generic/posix_types.h:
+
+/usr/include/sys/time.h:
+
+src/ags/object/ags_stackable.h:
+
 src/ags/thread/ags_task_thread.h:
 
 src/ags/thread/ags_thread_pool.h:
 
+src/ags/object/ags_main_loop.h:
+
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2114,6 +2115,8 @@ src/ags/audio/ags_recall_audio.h:
 
 src/ags/X/ags_window.h:
 
+src/ags/object/ags_soundcard.h:
+
 src/ags/X/ags_automation_editor.h:
 
 src/ags/X/editor/ags_automation_toolbar.h:
diff --git a/.deps/gsequencer-ags_synth_input_pad.Po b/.deps/gsequencer-ags_synth_input_pad.Po
index ddad44a..292eb65 100644
--- a/.deps/gsequencer-ags_synth_input_pad.Po
+++ b/.deps/gsequencer-ags_synth_input_pad.Po
@@ -558,46 +558,14 @@ gsequencer-ags_synth_input_pad.o: src/ags/X/machine/ags_synth_input_pad.c \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags/util/ags_id_generator.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags-lib/object/ags_connectable.h src/ags/object/ags_plugin.h \
  src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
  src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
  src/ags/widget/ags_hindicator.h src/ags/widget/ags_waveform.h \
  src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
  src/ags/file/ags_file_id_ref.h src/ags/file/ags_file_lookup.h \
- src/ags/X/ags_window.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/audio/ags_task.h \
- src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
+ src/ags/X/ags_window.h src/ags/object/ags_soundcard.h \
  src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
  src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
@@ -612,7 +580,12 @@ gsequencer-ags_synth_input_pad.o: src/ags/X/machine/ags_synth_input_pad.c \
  src/ags/X/ags_preferences.h src/ags/X/ags_generic_preferences.h \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_synth.h
+ src/ags/X/ags_server_preferences.h src/ags/X/machine/ags_synth.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1930,38 +1903,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags-lib/object/ags_connectable.h:
@@ -1990,105 +1931,7 @@ src/ags/file/ags_file_lookup.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
+src/ags/object/ags_soundcard.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2141,3 +1984,21 @@ src/ags/X/ags_performance_preferences.h:
 src/ags/X/ags_server_preferences.h:
 
 src/ags/X/machine/ags_synth.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_synth_output_line.Po b/.deps/gsequencer-ags_synth_output_line.Po
index 0905f32..e4f754a 100644
--- a/.deps/gsequencer-ags_synth_output_line.Po
+++ b/.deps/gsequencer-ags_synth_output_line.Po
@@ -558,15 +558,7 @@ gsequencer-ags_synth_output_line.o: \
  src/ags/X/machine/ags_synth_output_line_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h \
  src/ags/X/ags_effect_bridge.h src/ags/audio/ags_audio.h
 
@@ -1884,38 +1876,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_synth_output_pad.Po b/.deps/gsequencer-ags_synth_output_pad.Po
index b9bf363..90c0ff0 100644
--- a/.deps/gsequencer-ags_synth_output_pad.Po
+++ b/.deps/gsequencer-ags_synth_output_pad.Po
@@ -558,15 +558,7 @@ gsequencer-ags_synth_output_pad.o: \
  src/ags/X/machine/ags_synth_output_pad_callbacks.h \
  src/ags-lib/object/ags_connectable.h src/ags/main.h \
  src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/object/ags_main_loop.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/file/ags_file.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/object/ags_marshal.h src/ags/object/ags_plugin.h \
  src/ags/X/ags_effect_bridge.h src/ags/audio/ags_audio.h \
  src/ags/X/ags_effect_line.h
@@ -1885,38 +1877,6 @@ src/ags/lib/ags_log.h:
 
 src/ags/object/ags_config.h:
 
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
 src/ags/file/ags_file.h:
 
 src/ags/object/ags_marshal.h:
diff --git a/.deps/gsequencer-ags_toolbar_callbacks.Po b/.deps/gsequencer-ags_toolbar_callbacks.Po
index ffc69ff..e345381 100644
--- a/.deps/gsequencer-ags_toolbar_callbacks.Po
+++ b/.deps/gsequencer-ags_toolbar_callbacks.Po
@@ -527,48 +527,10 @@ gsequencer-ags_toolbar_callbacks.o: \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/editor/ags_toolbar.h \
- src/ags/X/ags_editor.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/X/ags_editor.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -585,15 +547,29 @@ gsequencer-ags_toolbar_callbacks.o: \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/audio/ags_audio.h \
- src/ags/X/ags_machine.h src/ags/X/editor/ags_machine_selector.h \
- src/ags/X/editor/ags_notebook.h src/ags/X/editor/ags_meter.h \
- src/ags/X/editor/ags_soundset.h src/ags/X/editor/ags_note_edit.h \
- src/ags/widget/ags_ruler.h src/ags/X/editor/ags_pattern_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/ags_machine.h \
+ src/ags/X/editor/ags_machine_selector.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_meter.h src/ags/X/editor/ags_soundset.h \
+ src/ags/X/editor/ags_note_edit.h src/ags/widget/ags_ruler.h \
+ src/ags/X/editor/ags_pattern_edit.h \
  src/ags/X/editor/ags_automation_edit.h src/ags/audio/ags_automation.h \
- src/ags/audio/ags_acceleration.h /usr/include/libxml2/libxml/xpath.h
+ src/ags/audio/ags_acceleration.h /usr/include/libxml2/libxml/xpath.h \
+ /usr/include/math.h /usr/include/bits/huge_val.h \
+ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
+ /usr/include/bits/inf.h /usr/include/bits/nan.h \
+ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
+ /usr/include/bits/mathinline.h
 
 /usr/include/stdc-predef.h:
 
@@ -1815,151 +1791,73 @@ src/ags/X/editor/ags_toolbar.h:
 
 src/ags/X/ags_editor.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
+src/ags/object/ags_soundcard.h:
 
-/usr/include/asm/errno.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/asm-generic/errno.h:
+src/ags/lib/ags_log.h:
 
-/usr/include/asm-generic/errno-base.h:
+src/ags/object/ags_config.h:
 
-/usr/include/alsa/asoundef.h:
+src/ags/file/ags_file.h:
 
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
+/usr/include/libxml2/libxml/tree.h:
 
-/usr/include/bits/huge_vall.h:
+/usr/include/libxml2/libxml/xmlversion.h:
 
-/usr/include/bits/inf.h:
+/usr/include/libxml2/libxml/xmlexports.h:
 
-/usr/include/bits/nan.h:
+/usr/include/libxml2/libxml/xmlstring.h:
 
-/usr/include/bits/mathdef.h:
+/usr/include/libxml2/libxml/xmlregexp.h:
 
-/usr/include/bits/mathcalls.h:
+/usr/include/libxml2/libxml/dict.h:
 
-/usr/include/bits/mathinline.h:
+/usr/include/libxml2/libxml/xmlmemory.h:
 
-src/ags/thread/ags_thread-posix.h:
+/usr/include/libxml2/libxml/threads.h:
 
-src/ags/thread/ags_async_queue.h:
+/usr/include/libxml2/libxml/globals.h:
 
-/usr/include/linux/futex.h:
+/usr/include/libxml2/libxml/parser.h:
 
-/usr/include/linux/types.h:
+/usr/include/libxml2/libxml/hash.h:
 
-/usr/include/asm/types.h:
+/usr/include/libxml2/libxml/valid.h:
 
-/usr/include/asm-generic/types.h:
+/usr/include/libxml2/libxml/xmlerror.h:
 
-/usr/include/asm-generic/int-ll64.h:
+/usr/include/libxml2/libxml/list.h:
 
-/usr/include/asm/bitsperlong.h:
+/usr/include/libxml2/libxml/xmlautomata.h:
 
-/usr/include/asm-generic/bitsperlong.h:
+/usr/include/libxml2/libxml/entities.h:
 
-/usr/include/linux/posix_types.h:
+/usr/include/libxml2/libxml/encoding.h:
 
-/usr/include/linux/stddef.h:
+/usr/include/iconv.h:
 
-/usr/include/asm/posix_types.h:
+/usr/include/libxml2/libxml/xmlIO.h:
 
-/usr/include/asm/posix_types_64.h:
+/usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/asm-generic/posix_types.h:
+/usr/include/stdlib.h:
 
-/usr/include/sys/time.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/object/ags_stackable.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/thread/ags_task_thread.h:
+/usr/include/alloca.h:
 
-src/ags/thread/ags_thread_pool.h:
+/usr/include/bits/stdlib-bsearch.h:
 
-src/ags/object/ags_main_loop.h:
+/usr/include/bits/stdlib-float.h:
 
-src/ags/audio/ags_task.h:
+/usr/include/libxml2/libxml/xlink.h:
 
-src/ags/thread/ags_devout_thread.h:
+/usr/include/libxml2/libxml/SAX2.h:
 
-src/ags/thread/ags_iterator_thread.h:
+src/ags/audio/ags_audio.h:
 
 src/ags/audio/ags_channel.h:
 
@@ -1981,58 +1879,14 @@ src/ags/audio/ags_recall_dependency.h:
 
 src/ags/audio/ags_notation.h:
 
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/thread/ags_timestamp_thread.h:
 
+src/ags/thread/ags_thread-posix.h:
+
 src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags/audio/ags_audio.h:
-
 src/ags/X/ags_machine.h:
 
 src/ags/X/editor/ags_machine_selector.h:
@@ -2056,3 +1910,21 @@ src/ags/audio/ags_automation.h:
 src/ags/audio/ags_acceleration.h:
 
 /usr/include/libxml2/libxml/xpath.h:
+
+/usr/include/math.h:
+
+/usr/include/bits/huge_val.h:
+
+/usr/include/bits/huge_valf.h:
+
+/usr/include/bits/huge_vall.h:
+
+/usr/include/bits/inf.h:
+
+/usr/include/bits/nan.h:
+
+/usr/include/bits/mathdef.h:
+
+/usr/include/bits/mathcalls.h:
+
+/usr/include/bits/mathinline.h:
diff --git a/.deps/gsequencer-ags_update_bulk_member.Po b/.deps/gsequencer-ags_update_bulk_member.Po
index 0606f42..2440a50 100644
--- a/.deps/gsequencer-ags_update_bulk_member.Po
+++ b/.deps/gsequencer-ags_update_bulk_member.Po
@@ -591,6 +591,8 @@ gsequencer-ags_update_bulk_member.o: \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
  src/ags/thread/ags_devout_thread.h src/ags/thread/ags_iterator_thread.h \
  src/ags/audio/ags_recall_audio_run.h src/ags/audio/ags_recall_audio.h \
  src/ags/audio/ags_recall_channel.h src/ags/X/ags_effect_bulk.h
@@ -2043,6 +2045,14 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
 src/ags/thread/ags_devout_thread.h:
 
 src/ags/thread/ags_iterator_thread.h:
diff --git a/.deps/gsequencer-ags_window.Po b/.deps/gsequencer-ags_window.Po
index c0f54c7..f2decfa 100644
--- a/.deps/gsequencer-ags_window.Po
+++ b/.deps/gsequencer-ags_window.Po
@@ -526,48 +526,10 @@ gsequencer-ags_window.o: src/ags/X/ags_window.c \
  /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
- /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/object/ags_soundcard.h \
+ src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
+ src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -584,13 +546,22 @@ gsequencer-ags_window.o: src/ags/X/ags_window.c \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
- src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
- src/ags/audio/ags_audio.h src/ags/X/editor/ags_automation_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/editor/ags_automation_edit.h \
  src/ags/widget/ags_ruler.h src/ags/audio/ags_automation.h \
  src/ags/audio/ags_acceleration.h src/ags/X/ags_menu_bar.h \
  src/ags/X/ags_editor.h src/ags/X/editor/ags_toolbar.h \
@@ -601,11 +572,9 @@ gsequencer-ags_window.o: src/ags/X/ags_window.c \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
  src/ags/X/ags_server_preferences.h src/ags/X/ags_window_callbacks.h \
- src/ags-lib/object/ags_connectable.h src/ags/main.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
- src/ags/X/machine/ags_panel.h src/ags/X/machine/ags_mixer.h \
- src/ags/X/machine/ags_drum.h src/ags/audio/ags_recall_container.h \
+ src/ags-lib/object/ags_connectable.h src/ags/X/machine/ags_panel.h \
+ src/ags/X/machine/ags_mixer.h src/ags/X/machine/ags_drum.h \
+ src/ags/audio/ags_recall_container.h \
  src/ags/X/machine/ags_drum_input_pad.h src/ags/X/ags_pad.h \
  src/ags/widget/ags_expander_set.h src/ags/X/ags_line.h \
  src/ags/widget/ags_expander.h src/ags/X/machine/ags_matrix.h \
@@ -1907,171 +1876,15 @@ src/ags/X/ags_window.h:
 
 /usr/include/gtk-2.0/gtk/gtktipsquery.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
+src/ags/object/ags_soundcard.h:
 
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/ladspa.h:
+src/ags/lib/ags_log.h:
 
-src/ags/audio/ags_recall_dependency.h:
+src/ags/object/ags_config.h:
 
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2113,15 +1926,21 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/libxml2/libxml/xlink.h:
+/usr/include/stdlib.h:
 
-/usr/include/libxml2/libxml/SAX2.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/thread/ags_timestamp_thread.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/audio/ags_timestamp.h:
+/usr/include/alloca.h:
 
-src/ags/audio/ags_note.h:
+/usr/include/bits/stdlib-bsearch.h:
+
+/usr/include/bits/stdlib-float.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2129,6 +1948,10 @@ src/ags/X/editor/ags_automation_toolbar.h:
 
 src/ags/X/editor/ags_port_selection.h:
 
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
 src/ags/X/editor/ags_notebook.h:
 
 src/ags/X/editor/ags_machine_selector.h:
@@ -2137,6 +1960,30 @@ src/ags/X/ags_machine.h:
 
 src/ags/audio/ags_audio.h:
 
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
+src/ags/thread/ags_timestamp_thread.h:
+
+src/ags/thread/ags_thread-posix.h:
+
+src/ags/audio/ags_timestamp.h:
+
+src/ags/audio/ags_note.h:
+
 src/ags/X/editor/ags_automation_edit.h:
 
 src/ags/widget/ags_ruler.h:
@@ -2177,16 +2024,6 @@ src/ags/X/ags_window_callbacks.h:
 
 src/ags-lib/object/ags_connectable.h:
 
-src/ags/main.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
 src/ags/X/machine/ags_panel.h:
 
 src/ags/X/machine/ags_mixer.h:
diff --git a/.deps/gsequencer-ags_window_callbacks.Po b/.deps/gsequencer-ags_window_callbacks.Po
index 3237fb0..873da71 100644
--- a/.deps/gsequencer-ags_window_callbacks.Po
+++ b/.deps/gsequencer-ags_window_callbacks.Po
@@ -526,47 +526,9 @@ gsequencer-ags_window_callbacks.o: src/ags/X/ags_window_callbacks.c \
  /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
  /usr/include/gtk-2.0/gtk/gtkpreview.h \
  /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/X/ags_window.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/stdlib.h /usr/include/bits/waitflags.h \
- /usr/include/bits/waitstatus.h /usr/include/alloca.h \
- /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
- src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
- src/ags/audio/ags_recall.h src/ags/audio/ags_port.h \
- /usr/include/ladspa.h src/ags/audio/ags_recall_dependency.h \
- src/ags/audio/ags_notation.h /usr/include/libxml2/libxml/tree.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
  /usr/include/libxml2/libxml/xmlstring.h \
@@ -583,13 +545,22 @@ gsequencer-ags_window_callbacks.o: src/ags/X/ags_window_callbacks.c \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
  /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags/X/ags_automation_editor.h \
+ src/ags/X/ags_automation_editor.h \
  src/ags/X/editor/ags_automation_toolbar.h \
- src/ags/X/editor/ags_port_selection.h src/ags/X/editor/ags_notebook.h \
+ src/ags/X/editor/ags_port_selection.h src/ags/audio/ags_port.h \
+ /usr/include/ladspa.h src/ags/X/editor/ags_notebook.h \
  src/ags/X/editor/ags_machine_selector.h src/ags/X/ags_machine.h \
- src/ags/audio/ags_audio.h src/ags/X/editor/ags_automation_edit.h \
+ src/ags/audio/ags_audio.h src/ags/audio/ags_channel.h \
+ src/ags/audio/ags_recall_id.h src/ags/audio/ags_recycling.h \
+ src/ags/audio/ags_audio_signal.h src/ags/audio/ags_recycling_container.h \
+ src/ags/audio/ags_recall.h src/ags/audio/ags_recall_dependency.h \
+ src/ags/audio/ags_notation.h src/ags/thread/ags_timestamp_thread.h \
+ src/ags/thread/ags_thread-posix.h src/ags/audio/ags_timestamp.h \
+ src/ags/audio/ags_note.h src/ags/X/editor/ags_automation_edit.h \
  src/ags/widget/ags_ruler.h src/ags/audio/ags_automation.h \
  src/ags/audio/ags_acceleration.h src/ags/X/ags_menu_bar.h \
  src/ags/X/ags_editor.h src/ags/X/editor/ags_toolbar.h \
@@ -599,10 +570,9 @@ gsequencer-ags_window_callbacks.o: src/ags/X/ags_window_callbacks.c \
  src/ags/X/ags_preferences.h src/ags/X/ags_generic_preferences.h \
  src/ags/X/ags_audio_preferences.h \
  src/ags/X/ags_performance_preferences.h \
- src/ags/X/ags_server_preferences.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
- src/ags/audio/task/ags_save_file.h
+ src/ags/X/ags_server_preferences.h src/ags/thread/ags_task_thread.h \
+ src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
+ src/ags/audio/ags_task.h src/ags/audio/task/ags_save_file.h
 
 /usr/include/stdc-predef.h:
 
@@ -1822,171 +1792,15 @@ src/ags/X/ags_window_callbacks.h:
 
 src/ags/X/ags_window.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
+src/ags/object/ags_soundcard.h:
 
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
+src/ags/object/ags_application_context.h:
 
-/usr/include/ladspa.h:
+src/ags/lib/ags_log.h:
 
-src/ags/audio/ags_recall_dependency.h:
+src/ags/object/ags_config.h:
 
-src/ags/audio/ags_notation.h:
+src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -2028,15 +1842,21 @@ src/ags/audio/ags_notation.h:
 
 /usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/libxml2/libxml/xlink.h:
+/usr/include/stdlib.h:
 
-/usr/include/libxml2/libxml/SAX2.h:
+/usr/include/bits/waitflags.h:
 
-src/ags/thread/ags_timestamp_thread.h:
+/usr/include/bits/waitstatus.h:
 
-src/ags/audio/ags_timestamp.h:
+/usr/include/alloca.h:
 
-src/ags/audio/ags_note.h:
+/usr/include/bits/stdlib-bsearch.h:
+
+/usr/include/bits/stdlib-float.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
 
 src/ags/X/ags_automation_editor.h:
 
@@ -2044,6 +1864,10 @@ src/ags/X/editor/ags_automation_toolbar.h:
 
 src/ags/X/editor/ags_port_selection.h:
 
+src/ags/audio/ags_port.h:
+
+/usr/include/ladspa.h:
+
 src/ags/X/editor/ags_notebook.h:
 
 src/ags/X/editor/ags_machine_selector.h:
@@ -2052,6 +1876,30 @@ src/ags/X/ags_machine.h:
 
 src/ags/audio/ags_audio.h:
 
+src/ags/audio/ags_channel.h:
+
+src/ags/audio/ags_recall_id.h:
+
+src/ags/audio/ags_recycling.h:
+
+src/ags/audio/ags_audio_signal.h:
+
+src/ags/audio/ags_recycling_container.h:
+
+src/ags/audio/ags_recall.h:
+
+src/ags/audio/ags_recall_dependency.h:
+
+src/ags/audio/ags_notation.h:
+
+src/ags/thread/ags_timestamp_thread.h:
+
+src/ags/thread/ags_thread-posix.h:
+
+src/ags/audio/ags_timestamp.h:
+
+src/ags/audio/ags_note.h:
+
 src/ags/X/editor/ags_automation_edit.h:
 
 src/ags/widget/ags_ruler.h:
@@ -2088,12 +1936,12 @@ src/ags/X/ags_performance_preferences.h:
 
 src/ags/X/ags_server_preferences.h:
 
-src/ags/object/ags_application_context.h:
+src/ags/thread/ags_task_thread.h:
 
-src/ags/lib/ags_log.h:
+src/ags/thread/ags_thread_pool.h:
 
-src/ags/object/ags_config.h:
+src/ags/object/ags_main_loop.h:
 
-src/ags/file/ags_file.h:
+src/ags/audio/ags_task.h:
 
 src/ags/audio/task/ags_save_file.h:
diff --git a/.deps/gsequencer-ags_xorg_application_context.Po b/.deps/gsequencer-ags_xorg_application_context.Po
index 5f0fce4..a3878eb 100644
--- a/.deps/gsequencer-ags_xorg_application_context.Po
+++ b/.deps/gsequencer-ags_xorg_application_context.Po
@@ -669,43 +669,11 @@ gsequencer-ags_xorg_application_context.o: \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
- /usr/include/string.h /usr/include/bits/string.h \
- /usr/include/bits/string2.h /usr/include/fcntl.h \
- /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
- /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
- /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_async_queue.h \
- /usr/include/linux/futex.h /usr/include/linux/types.h \
- /usr/include/asm/types.h /usr/include/asm-generic/types.h \
- /usr/include/asm-generic/int-ll64.h /usr/include/asm/bitsperlong.h \
- /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
- /usr/include/linux/stddef.h /usr/include/asm/posix_types.h \
- /usr/include/asm/posix_types_64.h /usr/include/asm-generic/posix_types.h \
- /usr/include/sys/time.h src/ags/object/ags_stackable.h \
- src/ags/thread/ags_task_thread.h src/ags/thread/ags_thread_pool.h \
- src/ags/object/ags_main_loop.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/file/ags_file_stock.h \
- src/ags/widget/ags_led.h src/ags/widget/ags_vindicator.h \
- src/ags/widget/ags_indicator.h src/ags/widget/ags_hindicator.h \
- src/ags/widget/ags_waveform.h src/ags/widget/ags_dial.h \
- src/ags/widget/ags_cartesian.h src/ags/file/ags_file_id_ref.h \
- src/ags/thread/ags_gui_thread.h
+ src/ags/file/ags_file_stock.h src/ags/widget/ags_led.h \
+ src/ags/widget/ags_vindicator.h src/ags/widget/ags_indicator.h \
+ src/ags/widget/ags_hindicator.h src/ags/widget/ags_waveform.h \
+ src/ags/widget/ags_dial.h src/ags/widget/ags_cartesian.h \
+ src/ags/file/ags_file_id_ref.h src/ags/thread/ags_gui_thread.h
 
 /usr/include/stdc-predef.h:
 
@@ -2291,136 +2259,6 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
 src/ags/file/ags_file_stock.h:
 
 src/ags/widget/ags_led.h:
diff --git a/.deps/libags_audio_a-ags_ipatch.Po b/.deps/libags_audio_a-ags_ipatch.Po
index a6753d2..fd8e099 100644
--- a/.deps/libags_audio_a-ags_ipatch.Po
+++ b/.deps/libags_audio_a-ags_ipatch.Po
@@ -186,18 +186,38 @@ libags_audio_a-ags_ipatch.o: src/ags/audio/file/ags_ipatch.c \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
+ src/ags-lib/object/ags_connectable.h /usr/include/libxml2/libxml/tree.h \
+ /usr/include/libxml2/libxml/xmlversion.h \
+ /usr/include/libxml2/libxml/xmlexports.h \
+ /usr/include/libxml2/libxml/xmlstring.h \
+ /usr/include/libxml2/libxml/xmlregexp.h \
+ /usr/include/libxml2/libxml/dict.h \
+ /usr/include/libxml2/libxml/xmlmemory.h \
+ /usr/include/libxml2/libxml/threads.h \
+ /usr/include/libxml2/libxml/globals.h \
+ /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
+ /usr/include/libxml2/libxml/valid.h \
+ /usr/include/libxml2/libxml/xmlerror.h \
+ /usr/include/libxml2/libxml/list.h \
+ /usr/include/libxml2/libxml/xmlautomata.h \
+ /usr/include/libxml2/libxml/entities.h \
+ /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
+ /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
+ src/ags/object/ags_soundcard.h src/ags/object/ags_application_context.h \
+ src/ags/lib/ags_log.h src/ags/object/ags_config.h \
+ src/ags/file/ags_file.h src/ags/object/ags_playable.h \
  src/ags/audio/ags_devout.h /usr/include/alsa/asoundlib.h \
  /usr/include/unistd.h /usr/include/bits/posix_opt.h \
  /usr/include/bits/environments.h /usr/include/bits/confname.h \
- /usr/include/getopt.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
+ /usr/include/getopt.h /usr/include/string.h /usr/include/bits/string.h \
+ /usr/include/bits/string2.h /usr/include/fcntl.h \
+ /usr/include/bits/fcntl.h /usr/include/bits/fcntl-linux.h \
+ /usr/include/bits/stat.h /usr/include/assert.h /usr/include/sys/poll.h \
+ /usr/include/bits/poll.h /usr/include/errno.h /usr/include/bits/errno.h \
  /usr/include/linux/errno.h /usr/include/asm/errno.h \
  /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
  /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
@@ -223,26 +243,6 @@ libags_audio_a-ags_ipatch.o: src/ags/audio/file/ags_ipatch.c \
  /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
  src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
  src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
- /usr/include/libxml2/libxml/tree.h \
- /usr/include/libxml2/libxml/xmlversion.h \
- /usr/include/libxml2/libxml/xmlexports.h \
- /usr/include/libxml2/libxml/xmlstring.h \
- /usr/include/libxml2/libxml/xmlregexp.h \
- /usr/include/libxml2/libxml/dict.h \
- /usr/include/libxml2/libxml/xmlmemory.h \
- /usr/include/libxml2/libxml/threads.h \
- /usr/include/libxml2/libxml/globals.h \
- /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
- /usr/include/libxml2/libxml/valid.h \
- /usr/include/libxml2/libxml/xmlerror.h \
- /usr/include/libxml2/libxml/list.h \
- /usr/include/libxml2/libxml/xmlautomata.h \
- /usr/include/libxml2/libxml/entities.h \
- /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
- /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
- /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
  src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
  src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
  /usr/include/gtk-2.0/gtk/gtk.h /usr/include/gtk-2.0/gdk/gdk.h \
@@ -669,8 +669,7 @@ libags_audio_a-ags_ipatch.o: src/ags/audio/file/ags_ipatch.c \
  src/ags/audio/ags_port.h /usr/include/ladspa.h \
  src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
  src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags-lib/object/ags_connectable.h \
- src/ags/object/ags_playable.h src/ags/audio/file/ags_ipatch_sf2_reader.h
+ src/ags/audio/ags_note.h src/ags/audio/file/ags_ipatch_sf2_reader.h
 
 /usr/include/stdc-predef.h:
 
@@ -1124,19 +1123,47 @@ src/ags/audio/file/ags_ipatch.h:
 
 /usr/include/libinstpatch-1.0/libinstpatch/version.h:
 
-src/ags/audio/ags_devout.h:
+src/ags-lib/object/ags_connectable.h:
 
-/usr/include/alsa/asoundlib.h:
+/usr/include/libxml2/libxml/tree.h:
 
-/usr/include/unistd.h:
+/usr/include/libxml2/libxml/xmlversion.h:
 
-/usr/include/bits/posix_opt.h:
+/usr/include/libxml2/libxml/xmlexports.h:
 
-/usr/include/bits/environments.h:
+/usr/include/libxml2/libxml/xmlstring.h:
 
-/usr/include/bits/confname.h:
+/usr/include/libxml2/libxml/xmlregexp.h:
 
-/usr/include/getopt.h:
+/usr/include/libxml2/libxml/dict.h:
+
+/usr/include/libxml2/libxml/xmlmemory.h:
+
+/usr/include/libxml2/libxml/threads.h:
+
+/usr/include/libxml2/libxml/globals.h:
+
+/usr/include/libxml2/libxml/parser.h:
+
+/usr/include/libxml2/libxml/hash.h:
+
+/usr/include/libxml2/libxml/valid.h:
+
+/usr/include/libxml2/libxml/xmlerror.h:
+
+/usr/include/libxml2/libxml/list.h:
+
+/usr/include/libxml2/libxml/xmlautomata.h:
+
+/usr/include/libxml2/libxml/entities.h:
+
+/usr/include/libxml2/libxml/encoding.h:
+
+/usr/include/iconv.h:
+
+/usr/include/libxml2/libxml/xmlIO.h:
+
+/usr/include/libxml2/libxml/SAX.h:
 
 /usr/include/stdlib.h:
 
@@ -1150,6 +1177,36 @@ src/ags/audio/ags_devout.h:
 
 /usr/include/bits/stdlib-float.h:
 
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
+
+src/ags/object/ags_soundcard.h:
+
+src/ags/object/ags_application_context.h:
+
+src/ags/lib/ags_log.h:
+
+src/ags/object/ags_config.h:
+
+src/ags/file/ags_file.h:
+
+src/ags/object/ags_playable.h:
+
+src/ags/audio/ags_devout.h:
+
+/usr/include/alsa/asoundlib.h:
+
+/usr/include/unistd.h:
+
+/usr/include/bits/posix_opt.h:
+
+/usr/include/bits/environments.h:
+
+/usr/include/bits/confname.h:
+
+/usr/include/getopt.h:
+
 /usr/include/string.h:
 
 /usr/include/bits/string.h:
@@ -1274,58 +1331,6 @@ src/ags/thread/ags_thread_pool.h:
 
 src/ags/object/ags_main_loop.h:
 
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
-
-/usr/include/libxml2/libxml/tree.h:
-
-/usr/include/libxml2/libxml/xmlversion.h:
-
-/usr/include/libxml2/libxml/xmlexports.h:
-
-/usr/include/libxml2/libxml/xmlstring.h:
-
-/usr/include/libxml2/libxml/xmlregexp.h:
-
-/usr/include/libxml2/libxml/dict.h:
-
-/usr/include/libxml2/libxml/xmlmemory.h:
-
-/usr/include/libxml2/libxml/threads.h:
-
-/usr/include/libxml2/libxml/globals.h:
-
-/usr/include/libxml2/libxml/parser.h:
-
-/usr/include/libxml2/libxml/hash.h:
-
-/usr/include/libxml2/libxml/valid.h:
-
-/usr/include/libxml2/libxml/xmlerror.h:
-
-/usr/include/libxml2/libxml/list.h:
-
-/usr/include/libxml2/libxml/xmlautomata.h:
-
-/usr/include/libxml2/libxml/entities.h:
-
-/usr/include/libxml2/libxml/encoding.h:
-
-/usr/include/iconv.h:
-
-/usr/include/libxml2/libxml/xmlIO.h:
-
-/usr/include/libxml2/libxml/SAX.h:
-
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
 src/ags/audio/ags_task.h:
 
 src/ags/thread/ags_devout_thread.h:
@@ -2270,8 +2275,4 @@ src/ags/audio/ags_timestamp.h:
 
 src/ags/audio/ags_note.h:
 
-src/ags-lib/object/ags_connectable.h:
-
-src/ags/object/ags_playable.h:
-
 src/ags/audio/file/ags_ipatch_sf2_reader.h:
diff --git a/.deps/libags_audio_a-ags_ipatch_sf2_reader.Po b/.deps/libags_audio_a-ags_ipatch_sf2_reader.Po
index ec40f56..8e5ea0b 100644
--- a/.deps/libags_audio_a-ags_ipatch_sf2_reader.Po
+++ b/.deps/libags_audio_a-ags_ipatch_sf2_reader.Po
@@ -186,45 +186,7 @@ libags_audio_a-ags_ipatch_sf2_reader.o: \
  /usr/include/libinstpatch-1.0/libinstpatch/IpatchXmlObject.h \
  /usr/include/libinstpatch-1.0/libinstpatch/misc.h \
  /usr/include/libinstpatch-1.0/libinstpatch/version.h \
- src/ags/audio/file/ags_ipatch.h src/ags/audio/ags_devout.h \
- /usr/include/alsa/asoundlib.h /usr/include/unistd.h \
- /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
- /usr/include/bits/confname.h /usr/include/getopt.h /usr/include/stdlib.h \
- /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
- /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \
- /usr/include/bits/stdlib-float.h /usr/include/string.h \
- /usr/include/bits/string.h /usr/include/bits/string2.h \
- /usr/include/fcntl.h /usr/include/bits/fcntl.h \
- /usr/include/bits/fcntl-linux.h /usr/include/bits/stat.h \
- /usr/include/assert.h /usr/include/sys/poll.h /usr/include/bits/poll.h \
- /usr/include/errno.h /usr/include/bits/errno.h \
- /usr/include/linux/errno.h /usr/include/asm/errno.h \
- /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
- /usr/include/alsa/asoundef.h /usr/include/alsa/version.h \
- /usr/include/alsa/global.h /usr/include/alsa/input.h \
- /usr/include/alsa/output.h /usr/include/alsa/error.h \
- /usr/include/alsa/conf.h /usr/include/alsa/pcm.h \
- /usr/include/alsa/rawmidi.h /usr/include/alsa/timer.h \
- /usr/include/alsa/hwdep.h /usr/include/alsa/control.h \
- /usr/include/alsa/mixer.h /usr/include/alsa/seq_event.h \
- /usr/include/alsa/seq.h /usr/include/alsa/seqmid.h \
- /usr/include/alsa/seq_midi_event.h src/ags/thread/ags_audio_loop.h \
- /usr/include/math.h /usr/include/bits/huge_val.h \
- /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
- /usr/include/bits/inf.h /usr/include/bits/nan.h \
- /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
- /usr/include/bits/mathinline.h src/ags/thread/ags_thread-posix.h \
- src/ags/thread/ags_async_queue.h /usr/include/linux/futex.h \
- /usr/include/linux/types.h /usr/include/asm/types.h \
- /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
- /usr/include/asm/bitsperlong.h /usr/include/asm-generic/bitsperlong.h \
- /usr/include/linux/posix_types.h /usr/include/linux/stddef.h \
- /usr/include/asm/posix_types.h /usr/include/asm/posix_types_64.h \
- /usr/include/asm-generic/posix_types.h /usr/include/sys/time.h \
- src/ags/object/ags_stackable.h src/ags/thread/ags_task_thread.h \
- src/ags/thread/ags_thread_pool.h src/ags/object/ags_main_loop.h \
- src/ags/object/ags_application_context.h src/ags/lib/ags_log.h \
- src/ags/object/ags_config.h src/ags/file/ags_file.h \
+ src/ags/audio/file/ags_ipatch.h src/ags-lib/object/ags_connectable.h \
  /usr/include/libxml2/libxml/tree.h \
  /usr/include/libxml2/libxml/xmlversion.h \
  /usr/include/libxml2/libxml/xmlexports.h \
@@ -242,434 +204,10 @@ libags_audio_a-ags_ipatch_sf2_reader.o: \
  /usr/include/libxml2/libxml/entities.h \
  /usr/include/libxml2/libxml/encoding.h /usr/include/iconv.h \
  /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
- /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
- src/ags/audio/ags_task.h src/ags/thread/ags_devout_thread.h \
- src/ags/thread/ags_iterator_thread.h src/ags/audio/ags_channel.h \
- /usr/include/gtk-2.0/gtk/gtk.h /usr/include/gtk-2.0/gdk/gdk.h \
- /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h \
- /usr/include/glib-2.0/gio/gio.h /usr/include/glib-2.0/gio/giotypes.h \
- /usr/include/glib-2.0/gio/gioenums.h /usr/include/glib-2.0/gio/gaction.h \
- /usr/include/glib-2.0/gio/gactiongroup.h \
- /usr/include/glib-2.0/gio/gactiongroupexporter.h \
- /usr/include/glib-2.0/gio/gactionmap.h \
- /usr/include/glib-2.0/gio/gappinfo.h \
- /usr/include/glib-2.0/gio/gapplication.h \
- /usr/include/glib-2.0/gio/gapplicationcommandline.h \
- /usr/include/glib-2.0/gio/gasyncinitable.h \
- /usr/include/glib-2.0/gio/ginitable.h \
- /usr/include/glib-2.0/gio/gasyncresult.h \
- /usr/include/glib-2.0/gio/gbufferedinputstream.h \
- /usr/include/glib-2.0/gio/gfilterinputstream.h \
- /usr/include/glib-2.0/gio/ginputstream.h \
- /usr/include/glib-2.0/gio/gbufferedoutputstream.h \
- /usr/include/glib-2.0/gio/gfilteroutputstream.h \
- /usr/include/glib-2.0/gio/goutputstream.h \
- /usr/include/glib-2.0/gio/gbytesicon.h \
- /usr/include/glib-2.0/gio/gcancellable.h \
- /usr/include/glib-2.0/gio/gcharsetconverter.h \
- /usr/include/glib-2.0/gio/gconverter.h \
- /usr/include/glib-2.0/gio/gcontenttype.h \
- /usr/include/glib-2.0/gio/gconverterinputstream.h \
- /usr/include/glib-2.0/gio/gconverteroutputstream.h \
- /usr/include/glib-2.0/gio/gcredentials.h \
- /usr/include/glib-2.0/gio/gdatainputstream.h \
- /usr/include/glib-2.0/gio/gdataoutputstream.h \
- /usr/include/glib-2.0/gio/gdbusaddress.h \
- /usr/include/glib-2.0/gio/gdbusauthobserver.h \
- /usr/include/glib-2.0/gio/gdbusconnection.h \
- /usr/include/glib-2.0/gio/gdbuserror.h \
- /usr/include/glib-2.0/gio/gdbusintrospection.h \
- /usr/include/glib-2.0/gio/gdbusmessage.h \
- /usr/include/glib-2.0/gio/gdbusmethodinvocation.h \
- /usr/include/glib-2.0/gio/gdbusnameowning.h \
- /usr/include/glib-2.0/gio/gdbusnamewatching.h \
- /usr/include/glib-2.0/gio/gdbusproxy.h \
- /usr/include/glib-2.0/gio/gdbusserver.h \
- /usr/include/glib-2.0/gio/gdbusutils.h \
- /usr/include/glib-2.0/gio/gdrive.h \
- /usr/include/glib-2.0/gio/gemblemedicon.h \
- /usr/include/glib-2.0/gio/gicon.h /usr/include/glib-2.0/gio/gemblem.h \
- /usr/include/glib-2.0/gio/gfileattribute.h \
- /usr/include/glib-2.0/gio/gfileenumerator.h \
- /usr/include/glib-2.0/gio/gfile.h /usr/include/glib-2.0/gio/gfileicon.h \
- /usr/include/glib-2.0/gio/gfileinfo.h \
- /usr/include/glib-2.0/gio/gfileinputstream.h \
- /usr/include/glib-2.0/gio/gfileiostream.h \
- /usr/include/glib-2.0/gio/giostream.h \
- /usr/include/glib-2.0/gio/gioerror.h \
- /usr/include/glib-2.0/gio/gfilemonitor.h \
- /usr/include/glib-2.0/gio/gfilenamecompleter.h \
- /usr/include/glib-2.0/gio/gfileoutputstream.h \
- /usr/include/glib-2.0/gio/ginetaddress.h \
- /usr/include/glib-2.0/gio/ginetaddressmask.h \
- /usr/include/glib-2.0/gio/ginetsocketaddress.h \
- /usr/include/glib-2.0/gio/gsocketaddress.h \
- /usr/include/glib-2.0/gio/gioenumtypes.h \
- /usr/include/glib-2.0/gio/giomodule.h /usr/include/glib-2.0/gmodule.h \
- /usr/include/glib-2.0/gio/gioscheduler.h \
- /usr/include/glib-2.0/gio/gloadableicon.h \
- /usr/include/glib-2.0/gio/gmemoryinputstream.h \
- /usr/include/glib-2.0/gio/gmemoryoutputstream.h \
- /usr/include/glib-2.0/gio/gmount.h \
- /usr/include/glib-2.0/gio/gmountoperation.h \
- /usr/include/glib-2.0/gio/gnativevolumemonitor.h \
- /usr/include/glib-2.0/gio/gvolumemonitor.h \
- /usr/include/glib-2.0/gio/gnetworkaddress.h \
- /usr/include/glib-2.0/gio/gnetworkmonitor.h \
- /usr/include/glib-2.0/gio/gnetworkservice.h \
- /usr/include/glib-2.0/gio/gpermission.h \
- /usr/include/glib-2.0/gio/gpollableinputstream.h \
- /usr/include/glib-2.0/gio/gpollableoutputstream.h \
- /usr/include/glib-2.0/gio/gpollableutils.h \
- /usr/include/glib-2.0/gio/gpropertyaction.h \
- /usr/include/glib-2.0/gio/gproxy.h \
- /usr/include/glib-2.0/gio/gproxyaddress.h \
- /usr/include/glib-2.0/gio/gproxyaddressenumerator.h \
- /usr/include/glib-2.0/gio/gsocketaddressenumerator.h \
- /usr/include/glib-2.0/gio/gproxyresolver.h \
- /usr/include/glib-2.0/gio/gresolver.h \
- /usr/include/glib-2.0/gio/gresource.h \
- /usr/include/glib-2.0/gio/gseekable.h \
- /usr/include/glib-2.0/gio/gsettingsschema.h \
- /usr/include/glib-2.0/gio/gsettings.h \
- /usr/include/glib-2.0/gio/gsimpleaction.h \
- /usr/include/glib-2.0/gio/gsimpleactiongroup.h \
- /usr/include/glib-2.0/gio/gactiongroup.h \
- /usr/include/glib-2.0/gio/gactionmap.h \
- /usr/include/glib-2.0/gio/gsimpleasyncresult.h \
- /usr/include/glib-2.0/gio/gsimplepermission.h \
- /usr/include/glib-2.0/gio/gsocketclient.h \
- /usr/include/glib-2.0/gio/gsocketconnectable.h \
- /usr/include/glib-2.0/gio/gsocketconnection.h \
- /usr/include/glib-2.0/gio/gsocket.h \
- /usr/include/glib-2.0/gio/gsocketcontrolmessage.h \
- /usr/include/glib-2.0/gio/gsocketlistener.h \
- /usr/include/glib-2.0/gio/gsocketservice.h \
- /usr/include/glib-2.0/gio/gsrvtarget.h \
- /usr/include/glib-2.0/gio/gsimpleproxyresolver.h \
- /usr/include/glib-2.0/gio/gtask.h \
- /usr/include/glib-2.0/gio/gsubprocess.h \
- /usr/include/glib-2.0/gio/gsubprocesslauncher.h \
- /usr/include/glib-2.0/gio/gtcpconnection.h \
- /usr/include/glib-2.0/gio/gtcpwrapperconnection.h \
- /usr/include/glib-2.0/gio/gtestdbus.h \
- /usr/include/glib-2.0/gio/gthemedicon.h \
- /usr/include/glib-2.0/gio/gthreadedsocketservice.h \
- /usr/include/glib-2.0/gio/gtlsbackend.h \
- /usr/include/glib-2.0/gio/gtlscertificate.h \
- /usr/include/glib-2.0/gio/gtlsclientconnection.h \
- /usr/include/glib-2.0/gio/gtlsconnection.h \
- /usr/include/glib-2.0/gio/gtlsdatabase.h \
- /usr/include/glib-2.0/gio/gtlsfiledatabase.h \
- /usr/include/glib-2.0/gio/gtlsinteraction.h \
- /usr/include/glib-2.0/gio/gtlsserverconnection.h \
- /usr/include/glib-2.0/gio/gtlspassword.h \
- /usr/include/glib-2.0/gio/gvfs.h /usr/include/glib-2.0/gio/gvolume.h \
- /usr/include/glib-2.0/gio/gzlibcompressor.h \
- /usr/include/glib-2.0/gio/gzlibdecompressor.h \
- /usr/include/glib-2.0/gio/gdbusinterface.h \
- /usr/include/glib-2.0/gio/gdbusinterfaceskeleton.h \
- /usr/include/glib-2.0/gio/gdbusobject.h \
- /usr/include/glib-2.0/gio/gdbusobjectskeleton.h \
- /usr/include/glib-2.0/gio/gdbusobjectproxy.h \
- /usr/include/glib-2.0/gio/gdbusobjectmanager.h \
- /usr/include/glib-2.0/gio/gdbusobjectmanagerclient.h \
- /usr/include/glib-2.0/gio/gdbusobjectmanagerserver.h \
- /usr/include/glib-2.0/gio/gdbusactiongroup.h \
- /usr/include/glib-2.0/gio/giotypes.h \
- /usr/include/glib-2.0/gio/gremoteactiongroup.h \
- /usr/include/glib-2.0/gio/gmenumodel.h /usr/include/glib-2.0/gio/gmenu.h \
- /usr/include/glib-2.0/gio/gmenuexporter.h \
- /usr/include/glib-2.0/gio/gdbusmenumodel.h \
- /usr/include/glib-2.0/gio/gnotification.h \
- /usr/include/gtk-2.0/gdk/gdkscreen.h /usr/include/cairo/cairo.h \
- /usr/include/cairo/cairo-version.h /usr/include/cairo/cairo-features.h \
- /usr/include/cairo/cairo-deprecated.h \
- /usr/include/gtk-2.0/gdk/gdktypes.h /usr/include/pango-1.0/pango/pango.h \
- /usr/include/pango-1.0/pango/pango-attributes.h \
- /usr/include/pango-1.0/pango/pango-font.h \
- /usr/include/pango-1.0/pango/pango-coverage.h \
- /usr/include/pango-1.0/pango/pango-types.h \
- /usr/include/pango-1.0/pango/pango-gravity.h \
- /usr/include/pango-1.0/pango/pango-matrix.h \
- /usr/include/pango-1.0/pango/pango-script.h \
- /usr/include/pango-1.0/pango/pango-language.h \
- /usr/include/pango-1.0/pango/pango-bidi-type.h \
- /usr/include/pango-1.0/pango/pango-break.h \
- /usr/include/pango-1.0/pango/pango-item.h \
- /usr/include/pango-1.0/pango/pango-context.h \
- /usr/include/pango-1.0/pango/pango-fontmap.h \
- /usr/include/pango-1.0/pango/pango-fontset.h \
- /usr/include/pango-1.0/pango/pango-engine.h \
- /usr/include/pango-1.0/pango/pango-glyph.h \
- /usr/include/pango-1.0/pango/pango-enum-types.h \
- /usr/include/pango-1.0/pango/pango-features.h \
- /usr/include/pango-1.0/pango/pango-glyph-item.h \
- /usr/include/pango-1.0/pango/pango-layout.h \
- /usr/include/pango-1.0/pango/pango-tabs.h \
- /usr/include/pango-1.0/pango/pango-renderer.h \
- /usr/include/pango-1.0/pango/pango-utils.h \
- /usr/lib/gtk-2.0/include/gdkconfig.h \
- /usr/include/gtk-2.0/gdk/gdkdisplay.h \
- /usr/include/gtk-2.0/gdk/gdkevents.h /usr/include/gtk-2.0/gdk/gdkcolor.h \
- /usr/include/gtk-2.0/gdk/gdkdnd.h /usr/include/gtk-2.0/gdk/gdkinput.h \
- /usr/include/gtk-2.0/gdk/gdkcairo.h /usr/include/gtk-2.0/gdk/gdkpixbuf.h \
- /usr/include/gtk-2.0/gdk/gdkrgb.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h \
- /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h \
- /usr/include/pango-1.0/pango/pangocairo.h \
- /usr/include/gtk-2.0/gdk/gdkcursor.h \
- /usr/include/gtk-2.0/gdk/gdkdisplaymanager.h \
- /usr/include/gtk-2.0/gdk/gdkdrawable.h /usr/include/gtk-2.0/gdk/gdkgc.h \
- /usr/include/gtk-2.0/gdk/gdkenumtypes.h \
- /usr/include/gtk-2.0/gdk/gdkfont.h /usr/include/gtk-2.0/gdk/gdkimage.h \
- /usr/include/gtk-2.0/gdk/gdkkeys.h /usr/include/gtk-2.0/gdk/gdkpango.h \
- /usr/include/gtk-2.0/gdk/gdkpixmap.h \
- /usr/include/gtk-2.0/gdk/gdkproperty.h \
- /usr/include/gtk-2.0/gdk/gdkregion.h \
- /usr/include/gtk-2.0/gdk/gdkselection.h \
- /usr/include/gtk-2.0/gdk/gdkspawn.h \
- /usr/include/gtk-2.0/gdk/gdktestutils.h \
- /usr/include/gtk-2.0/gdk/gdkwindow.h \
- /usr/include/gtk-2.0/gdk/gdkvisual.h \
- /usr/include/gtk-2.0/gtk/gtkaboutdialog.h \
- /usr/include/gtk-2.0/gtk/gtkdialog.h \
- /usr/include/gtk-2.0/gtk/gtkwindow.h \
- /usr/include/gtk-2.0/gtk/gtkaccelgroup.h \
- /usr/include/gtk-2.0/gtk/gtkenums.h /usr/include/gtk-2.0/gtk/gtkbin.h \
- /usr/include/gtk-2.0/gtk/gtkcontainer.h \
- /usr/include/gtk-2.0/gtk/gtkwidget.h \
- /usr/include/gtk-2.0/gtk/gtkobject.h \
- /usr/include/gtk-2.0/gtk/gtktypeutils.h \
- /usr/include/gtk-2.0/gtk/gtktypebuiltins.h \
- /usr/include/gtk-2.0/gtk/gtkdebug.h \
- /usr/include/gtk-2.0/gtk/gtkadjustment.h \
- /usr/include/gtk-2.0/gtk/gtkstyle.h \
- /usr/include/gtk-2.0/gtk/gtksettings.h /usr/include/gtk-2.0/gtk/gtkrc.h \
- /usr/include/atk-1.0/atk/atk.h /usr/include/atk-1.0/atk/atkobject.h \
- /usr/include/atk-1.0/atk/atkversion.h \
- /usr/include/atk-1.0/atk/atkstate.h \
- /usr/include/atk-1.0/atk/atkrelationtype.h \
- /usr/include/atk-1.0/atk/atkaction.h \
- /usr/include/atk-1.0/atk/atkcomponent.h \
- /usr/include/atk-1.0/atk/atkutil.h \
- /usr/include/atk-1.0/atk/atkdocument.h \
- /usr/include/atk-1.0/atk/atkeditabletext.h \
- /usr/include/atk-1.0/atk/atktext.h \
- /usr/include/atk-1.0/atk/atk-enum-types.h \
- /usr/include/atk-1.0/atk/atkgobjectaccessible.h \
- /usr/include/atk-1.0/atk/atkhyperlink.h \
- /usr/include/atk-1.0/atk/atkhyperlinkimpl.h \
- /usr/include/atk-1.0/atk/atkhypertext.h \
- /usr/include/atk-1.0/atk/atkimage.h \
- /usr/include/atk-1.0/atk/atknoopobject.h \
- /usr/include/atk-1.0/atk/atknoopobjectfactory.h \
- /usr/include/atk-1.0/atk/atkobjectfactory.h \
- /usr/include/atk-1.0/atk/atkplug.h /usr/include/atk-1.0/atk/atkrange.h \
- /usr/include/atk-1.0/atk/atkregistry.h \
- /usr/include/atk-1.0/atk/atkobjectfactory.h \
- /usr/include/atk-1.0/atk/atkrelation.h \
- /usr/include/atk-1.0/atk/atkrelationset.h \
- /usr/include/atk-1.0/atk/atkselection.h \
- /usr/include/atk-1.0/atk/atksocket.h \
- /usr/include/atk-1.0/atk/atkstateset.h \
- /usr/include/atk-1.0/atk/atkstreamablecontent.h \
- /usr/include/atk-1.0/atk/atktable.h \
- /usr/include/atk-1.0/atk/atktablecell.h \
- /usr/include/atk-1.0/atk/atkmisc.h /usr/include/atk-1.0/atk/atkvalue.h \
- /usr/include/atk-1.0/atk/atkwindow.h \
- /usr/include/gtk-2.0/gtk/gtkaccellabel.h \
- /usr/include/gtk-2.0/gtk/gtklabel.h /usr/include/gtk-2.0/gtk/gtkmisc.h \
- /usr/include/gtk-2.0/gtk/gtkmenu.h \
- /usr/include/gtk-2.0/gtk/gtkmenushell.h \
- /usr/include/gtk-2.0/gtk/gtkaccelmap.h \
- /usr/include/gtk-2.0/gtk/gtkaccessible.h \
- /usr/include/gtk-2.0/gtk/gtkaction.h \
- /usr/include/gtk-2.0/gtk/gtkactiongroup.h \
- /usr/include/gtk-2.0/gtk/gtkactivatable.h \
- /usr/include/gtk-2.0/gtk/gtkalignment.h \
- /usr/include/gtk-2.0/gtk/gtkarrow.h \
- /usr/include/gtk-2.0/gtk/gtkaspectframe.h \
- /usr/include/gtk-2.0/gtk/gtkframe.h \
- /usr/include/gtk-2.0/gtk/gtkassistant.h \
- /usr/include/gtk-2.0/gtk/gtkbbox.h /usr/include/gtk-2.0/gtk/gtkbox.h \
- /usr/include/gtk-2.0/gtk/gtkbindings.h \
- /usr/include/gtk-2.0/gtk/gtkbuildable.h \
- /usr/include/gtk-2.0/gtk/gtkbuilder.h \
- /usr/include/gtk-2.0/gtk/gtkbutton.h /usr/include/gtk-2.0/gtk/gtkimage.h \
- /usr/include/gtk-2.0/gtk/gtkcalendar.h \
- /usr/include/gtk-2.0/gtk/gtksignal.h \
- /usr/include/gtk-2.0/gtk/gtkmarshal.h \
- /usr/include/gtk-2.0/gtk/gtkcelleditable.h \
- /usr/include/gtk-2.0/gtk/gtkcelllayout.h \
- /usr/include/gtk-2.0/gtk/gtkcellrenderer.h \
- /usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h \
- /usr/include/gtk-2.0/gtk/gtktreemodel.h \
- /usr/include/gtk-2.0/gtk/gtktreesortable.h \
- /usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h \
- /usr/include/gtk-2.0/gtk/gtkcellrenderertext.h \
- /usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h \
- /usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h \
- /usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h \
- /usr/include/gtk-2.0/gtk/gtkcellrendererspin.h \
- /usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h \
- /usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h \
- /usr/include/gtk-2.0/gtk/gtkcellview.h \
- /usr/include/gtk-2.0/gtk/gtkcheckbutton.h \
- /usr/include/gtk-2.0/gtk/gtktogglebutton.h \
- /usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h \
- /usr/include/gtk-2.0/gtk/gtkmenuitem.h \
- /usr/include/gtk-2.0/gtk/gtkitem.h \
- /usr/include/gtk-2.0/gtk/gtkclipboard.h \
- /usr/include/gtk-2.0/gtk/gtkselection.h \
- /usr/include/gtk-2.0/gtk/gtktextiter.h \
- /usr/include/gtk-2.0/gtk/gtktexttag.h \
- /usr/include/gtk-2.0/gtk/gtktextchild.h \
- /usr/include/gtk-2.0/gtk/gtkcolorbutton.h \
- /usr/include/gtk-2.0/gtk/gtkcolorsel.h \
- /usr/include/gtk-2.0/gtk/gtkvbox.h \
- /usr/include/gtk-2.0/gtk/gtkcolorseldialog.h \
- /usr/include/gtk-2.0/gtk/gtkcombobox.h \
- /usr/include/gtk-2.0/gtk/gtktreeview.h /usr/include/gtk-2.0/gtk/gtkdnd.h \
- /usr/include/gtk-2.0/gtk/gtkentry.h \
- /usr/include/gtk-2.0/gtk/gtkeditable.h \
- /usr/include/gtk-2.0/gtk/gtkimcontext.h \
- /usr/include/gtk-2.0/gtk/gtkentrybuffer.h \
- /usr/include/gtk-2.0/gtk/gtkentrycompletion.h \
- /usr/include/gtk-2.0/gtk/gtkliststore.h \
- /usr/include/gtk-2.0/gtk/gtktreemodelfilter.h \
- /usr/include/gtk-2.0/gtk/gtkcomboboxentry.h \
- /usr/include/gtk-2.0/gtk/gtkcomboboxtext.h \
- /usr/include/gtk-2.0/gtk/gtkdrawingarea.h \
- /usr/include/gtk-2.0/gtk/gtkeventbox.h \
- /usr/include/gtk-2.0/gtk/gtkexpander.h \
- /usr/include/gtk-2.0/gtk/gtkfixed.h \
- /usr/include/gtk-2.0/gtk/gtkfilechooser.h \
- /usr/include/gtk-2.0/gtk/gtkfilefilter.h \
- /usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h \
- /usr/include/gtk-2.0/gtk/gtkhbox.h \
- /usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h \
- /usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h \
- /usr/include/gtk-2.0/gtk/gtkfontbutton.h \
- /usr/include/gtk-2.0/gtk/gtkfontsel.h /usr/include/gtk-2.0/gtk/gtkgc.h \
- /usr/include/gtk-2.0/gtk/gtkhandlebox.h \
- /usr/include/gtk-2.0/gtk/gtkhbbox.h /usr/include/gtk-2.0/gtk/gtkhpaned.h \
- /usr/include/gtk-2.0/gtk/gtkpaned.h /usr/include/gtk-2.0/gtk/gtkhruler.h \
- /usr/include/gtk-2.0/gtk/gtkruler.h /usr/include/gtk-2.0/gtk/gtkhscale.h \
- /usr/include/gtk-2.0/gtk/gtkscale.h /usr/include/gtk-2.0/gtk/gtkrange.h \
- /usr/include/gtk-2.0/gtk/gtkhscrollbar.h \
- /usr/include/gtk-2.0/gtk/gtkscrollbar.h \
- /usr/include/gtk-2.0/gtk/gtkhseparator.h \
- /usr/include/gtk-2.0/gtk/gtkseparator.h \
- /usr/include/gtk-2.0/gtk/gtkhsv.h \
- /usr/include/gtk-2.0/gtk/gtkiconfactory.h \
- /usr/include/gtk-2.0/gtk/gtkicontheme.h \
- /usr/include/gtk-2.0/gtk/gtkiconview.h \
- /usr/include/gtk-2.0/gtk/gtktooltip.h \
- /usr/include/gtk-2.0/gtk/gtkimagemenuitem.h \
- /usr/include/gtk-2.0/gtk/gtkimcontextsimple.h \
- /usr/include/gtk-2.0/gtk/gtkimmulticontext.h \
- /usr/include/gtk-2.0/gtk/gtkinfobar.h \
- /usr/include/gtk-2.0/gtk/gtkinvisible.h \
- /usr/include/gtk-2.0/gtk/gtklayout.h \
- /usr/include/gtk-2.0/gtk/gtklinkbutton.h \
- /usr/include/gtk-2.0/gtk/gtkmain.h /usr/include/gtk-2.0/gtk/gtkmenubar.h \
- /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h \
- /usr/include/gtk-2.0/gtk/gtktoolbutton.h \
- /usr/include/gtk-2.0/gtk/gtktoolitem.h \
- /usr/include/gtk-2.0/gtk/gtktooltips.h \
- /usr/include/gtk-2.0/gtk/gtksizegroup.h \
- /usr/include/gtk-2.0/gtk/gtkmessagedialog.h \
- /usr/include/gtk-2.0/gtk/gtkmodules.h \
- /usr/include/gtk-2.0/gtk/gtkmountoperation.h \
- /usr/include/gtk-2.0/gtk/gtknotebook.h \
- /usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h \
- /usr/include/gtk-2.0/gtk/gtkorientable.h \
- /usr/include/gtk-2.0/gtk/gtkpagesetup.h \
- /usr/include/gtk-2.0/gtk/gtkpapersize.h \
- /usr/include/gtk-2.0/gtk/gtkplug.h /usr/include/gtk-2.0/gtk/gtksocket.h \
- /usr/include/gtk-2.0/gtk/gtkprintcontext.h \
- /usr/include/gtk-2.0/gtk/gtkprintoperation.h \
- /usr/include/gtk-2.0/gtk/gtkprintsettings.h \
- /usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h \
- /usr/include/gtk-2.0/gtk/gtkprogressbar.h \
- /usr/include/gtk-2.0/gtk/gtkprogress.h \
- /usr/include/gtk-2.0/gtk/gtkradioaction.h \
- /usr/include/gtk-2.0/gtk/gtktoggleaction.h \
- /usr/include/gtk-2.0/gtk/gtkradiobutton.h \
- /usr/include/gtk-2.0/gtk/gtkradiomenuitem.h \
- /usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h \
- /usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h \
- /usr/include/gtk-2.0/gtk/gtkrecentaction.h \
- /usr/include/gtk-2.0/gtk/gtkrecentmanager.h \
- /usr/include/gtk-2.0/gtk/gtkrecentchooser.h \
- /usr/include/gtk-2.0/gtk/gtkrecentfilter.h \
- /usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h \
- /usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h \
- /usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h \
- /usr/include/gtk-2.0/gtk/gtkscalebutton.h \
- /usr/include/gtk-2.0/gtk/gtkscrolledwindow.h \
- /usr/include/gtk-2.0/gtk/gtkvscrollbar.h \
- /usr/include/gtk-2.0/gtk/gtkviewport.h \
- /usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h \
- /usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h \
- /usr/include/gtk-2.0/gtk/gtkshow.h \
- /usr/include/gtk-2.0/gtk/gtkspinbutton.h \
- /usr/include/gtk-2.0/gtk/gtkspinner.h \
- /usr/include/gtk-2.0/gtk/gtkstatusbar.h \
- /usr/include/gtk-2.0/gtk/gtkstatusicon.h \
- /usr/include/gtk-2.0/gtk/gtkstock.h /usr/include/gtk-2.0/gtk/gtktable.h \
- /usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h \
- /usr/include/gtk-2.0/gtk/gtktextbuffer.h \
- /usr/include/gtk-2.0/gtk/gtktexttagtable.h \
- /usr/include/gtk-2.0/gtk/gtktextmark.h \
- /usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h \
- /usr/include/gtk-2.0/gtk/gtktextview.h \
- /usr/include/gtk-2.0/gtk/gtktoolbar.h \
- /usr/include/gtk-2.0/gtk/gtkpixmap.h \
- /usr/include/gtk-2.0/gtk/gtktoolitemgroup.h \
- /usr/include/gtk-2.0/gtk/gtktoolpalette.h \
- /usr/include/gtk-2.0/gtk/gtktoolshell.h \
- /usr/include/gtk-2.0/gtk/gtktestutils.h \
- /usr/include/gtk-2.0/gtk/gtktreednd.h \
- /usr/include/gtk-2.0/gtk/gtktreemodelsort.h \
- /usr/include/gtk-2.0/gtk/gtktreeselection.h \
- /usr/include/gtk-2.0/gtk/gtktreestore.h \
- /usr/include/gtk-2.0/gtk/gtkuimanager.h \
- /usr/include/gtk-2.0/gtk/gtkvbbox.h \
- /usr/include/gtk-2.0/gtk/gtkversion.h \
- /usr/include/gtk-2.0/gtk/gtkvolumebutton.h \
- /usr/include/gtk-2.0/gtk/gtkvpaned.h \
- /usr/include/gtk-2.0/gtk/gtkvruler.h \
- /usr/include/gtk-2.0/gtk/gtkvscale.h \
- /usr/include/gtk-2.0/gtk/gtkvseparator.h \
- /usr/include/gtk-2.0/gtk/gtktext.h /usr/include/gtk-2.0/gtk/gtktree.h \
- /usr/include/gtk-2.0/gtk/gtktreeitem.h \
- /usr/include/gtk-2.0/gtk/gtkclist.h /usr/include/gtk-2.0/gtk/gtkcombo.h \
- /usr/include/gtk-2.0/gtk/gtkctree.h /usr/include/gtk-2.0/gtk/gtkcurve.h \
- /usr/include/gtk-2.0/gtk/gtkfilesel.h \
- /usr/include/gtk-2.0/gtk/gtkgamma.h \
- /usr/include/gtk-2.0/gtk/gtkinputdialog.h \
- /usr/include/gtk-2.0/gtk/gtkitemfactory.h \
- /usr/include/gtk-2.0/gtk/gtklist.h \
- /usr/include/gtk-2.0/gtk/gtklistitem.h \
- /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
- /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
- /usr/include/gtk-2.0/gtk/gtkpreview.h \
- /usr/include/gtk-2.0/gtk/gtktipsquery.h src/ags/audio/ags_recall_id.h \
- src/ags/audio/ags_recycling.h src/ags/audio/ags_audio_signal.h \
- src/ags/audio/ags_recycling_container.h src/ags/audio/ags_recall.h \
- src/ags/audio/ags_port.h /usr/include/ladspa.h \
- src/ags/audio/ags_recall_dependency.h src/ags/audio/ags_notation.h \
- src/ags/thread/ags_timestamp_thread.h src/ags/audio/ags_timestamp.h \
- src/ags/audio/ags_note.h src/ags-lib/object/ags_connectable.h
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h
 
 /usr/include/stdc-predef.h:
 
@@ -1125,163 +663,7 @@ src/ags/audio/file/ags_ipatch_sf2_reader.h:
 
 src/ags/audio/file/ags_ipatch.h:
 
-src/ags/audio/ags_devout.h:
-
-/usr/include/alsa/asoundlib.h:
-
-/usr/include/unistd.h:
-
-/usr/include/bits/posix_opt.h:
-
-/usr/include/bits/environments.h:
-
-/usr/include/bits/confname.h:
-
-/usr/include/getopt.h:
-
-/usr/include/stdlib.h:
-
-/usr/include/bits/waitflags.h:
-
-/usr/include/bits/waitstatus.h:
-
-/usr/include/alloca.h:
-
-/usr/include/bits/stdlib-bsearch.h:
-
-/usr/include/bits/stdlib-float.h:
-
-/usr/include/string.h:
-
-/usr/include/bits/string.h:
-
-/usr/include/bits/string2.h:
-
-/usr/include/fcntl.h:
-
-/usr/include/bits/fcntl.h:
-
-/usr/include/bits/fcntl-linux.h:
-
-/usr/include/bits/stat.h:
-
-/usr/include/assert.h:
-
-/usr/include/sys/poll.h:
-
-/usr/include/bits/poll.h:
-
-/usr/include/errno.h:
-
-/usr/include/bits/errno.h:
-
-/usr/include/linux/errno.h:
-
-/usr/include/asm/errno.h:
-
-/usr/include/asm-generic/errno.h:
-
-/usr/include/asm-generic/errno-base.h:
-
-/usr/include/alsa/asoundef.h:
-
-/usr/include/alsa/version.h:
-
-/usr/include/alsa/global.h:
-
-/usr/include/alsa/input.h:
-
-/usr/include/alsa/output.h:
-
-/usr/include/alsa/error.h:
-
-/usr/include/alsa/conf.h:
-
-/usr/include/alsa/pcm.h:
-
-/usr/include/alsa/rawmidi.h:
-
-/usr/include/alsa/timer.h:
-
-/usr/include/alsa/hwdep.h:
-
-/usr/include/alsa/control.h:
-
-/usr/include/alsa/mixer.h:
-
-/usr/include/alsa/seq_event.h:
-
-/usr/include/alsa/seq.h:
-
-/usr/include/alsa/seqmid.h:
-
-/usr/include/alsa/seq_midi_event.h:
-
-src/ags/thread/ags_audio_loop.h:
-
-/usr/include/math.h:
-
-/usr/include/bits/huge_val.h:
-
-/usr/include/bits/huge_valf.h:
-
-/usr/include/bits/huge_vall.h:
-
-/usr/include/bits/inf.h:
-
-/usr/include/bits/nan.h:
-
-/usr/include/bits/mathdef.h:
-
-/usr/include/bits/mathcalls.h:
-
-/usr/include/bits/mathinline.h:
-
-src/ags/thread/ags_thread-posix.h:
-
-src/ags/thread/ags_async_queue.h:
-
-/usr/include/linux/futex.h:
-
-/usr/include/linux/types.h:
-
-/usr/include/asm/types.h:
-
-/usr/include/asm-generic/types.h:
-
-/usr/include/asm-generic/int-ll64.h:
-
-/usr/include/asm/bitsperlong.h:
-
-/usr/include/asm-generic/bitsperlong.h:
-
-/usr/include/linux/posix_types.h:
-
-/usr/include/linux/stddef.h:
-
-/usr/include/asm/posix_types.h:
-
-/usr/include/asm/posix_types_64.h:
-
-/usr/include/asm-generic/posix_types.h:
-
-/usr/include/sys/time.h:
-
-src/ags/object/ags_stackable.h:
-
-src/ags/thread/ags_task_thread.h:
-
-src/ags/thread/ags_thread_pool.h:
-
-src/ags/object/ags_main_loop.h:
-
-src/ags/object/ags_application_context.h:
-
-src/ags/lib/ags_log.h:
-
-src/ags/object/ags_config.h:
-
-src/ags/file/ags_file.h:
+src/ags-lib/object/ags_connectable.h:
 
 /usr/include/libxml2/libxml/tree.h:
 
@@ -1323,952 +705,18 @@ src/ags/file/ags_file.h:
 
 /usr/include/libxml2/libxml/SAX.h:
 
-/usr/include/libxml2/libxml/xlink.h:
-
-/usr/include/libxml2/libxml/SAX2.h:
-
-src/ags/audio/ags_task.h:
-
-src/ags/thread/ags_devout_thread.h:
-
-src/ags/thread/ags_iterator_thread.h:
-
-src/ags/audio/ags_channel.h:
-
-/usr/include/gtk-2.0/gtk/gtk.h:
-
-/usr/include/gtk-2.0/gdk/gdk.h:
-
-/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:
-
-/usr/include/glib-2.0/gio/gio.h:
-
-/usr/include/glib-2.0/gio/giotypes.h:
-
-/usr/include/glib-2.0/gio/gioenums.h:
-
-/usr/include/glib-2.0/gio/gaction.h:
-
-/usr/include/glib-2.0/gio/gactiongroup.h:
-
-/usr/include/glib-2.0/gio/gactiongroupexporter.h:
-
-/usr/include/glib-2.0/gio/gactionmap.h:
-
-/usr/include/glib-2.0/gio/gappinfo.h:
-
-/usr/include/glib-2.0/gio/gapplication.h:
-
-/usr/include/glib-2.0/gio/gapplicationcommandline.h:
-
-/usr/include/glib-2.0/gio/gasyncinitable.h:
-
-/usr/include/glib-2.0/gio/ginitable.h:
-
-/usr/include/glib-2.0/gio/gasyncresult.h:
-
-/usr/include/glib-2.0/gio/gbufferedinputstream.h:
-
-/usr/include/glib-2.0/gio/gfilterinputstream.h:
-
-/usr/include/glib-2.0/gio/ginputstream.h:
-
-/usr/include/glib-2.0/gio/gbufferedoutputstream.h:
-
-/usr/include/glib-2.0/gio/gfilteroutputstream.h:
-
-/usr/include/glib-2.0/gio/goutputstream.h:
-
-/usr/include/glib-2.0/gio/gbytesicon.h:
-
-/usr/include/glib-2.0/gio/gcancellable.h:
-
-/usr/include/glib-2.0/gio/gcharsetconverter.h:
-
-/usr/include/glib-2.0/gio/gconverter.h:
-
-/usr/include/glib-2.0/gio/gcontenttype.h:
-
-/usr/include/glib-2.0/gio/gconverterinputstream.h:
-
-/usr/include/glib-2.0/gio/gconverteroutputstream.h:
-
-/usr/include/glib-2.0/gio/gcredentials.h:
-
-/usr/include/glib-2.0/gio/gdatainputstream.h:
-
-/usr/include/glib-2.0/gio/gdataoutputstream.h:
-
-/usr/include/glib-2.0/gio/gdbusaddress.h:
-
-/usr/include/glib-2.0/gio/gdbusauthobserver.h:
-
-/usr/include/glib-2.0/gio/gdbusconnection.h:
-
-/usr/include/glib-2.0/gio/gdbuserror.h:
-
-/usr/include/glib-2.0/gio/gdbusintrospection.h:
-
-/usr/include/glib-2.0/gio/gdbusmessage.h:
-
-/usr/include/glib-2.0/gio/gdbusmethodinvocation.h:
-
-/usr/include/glib-2.0/gio/gdbusnameowning.h:
-
-/usr/include/glib-2.0/gio/gdbusnamewatching.h:
-
-/usr/include/glib-2.0/gio/gdbusproxy.h:
-
-/usr/include/glib-2.0/gio/gdbusserver.h:
-
-/usr/include/glib-2.0/gio/gdbusutils.h:
-
-/usr/include/glib-2.0/gio/gdrive.h:
-
-/usr/include/glib-2.0/gio/gemblemedicon.h:
-
-/usr/include/glib-2.0/gio/gicon.h:
-
-/usr/include/glib-2.0/gio/gemblem.h:
-
-/usr/include/glib-2.0/gio/gfileattribute.h:
-
-/usr/include/glib-2.0/gio/gfileenumerator.h:
-
-/usr/include/glib-2.0/gio/gfile.h:
-
-/usr/include/glib-2.0/gio/gfileicon.h:
-
-/usr/include/glib-2.0/gio/gfileinfo.h:
-
-/usr/include/glib-2.0/gio/gfileinputstream.h:
-
-/usr/include/glib-2.0/gio/gfileiostream.h:
-
-/usr/include/glib-2.0/gio/giostream.h:
-
-/usr/include/glib-2.0/gio/gioerror.h:
-
-/usr/include/glib-2.0/gio/gfilemonitor.h:
-
-/usr/include/glib-2.0/gio/gfilenamecompleter.h:
-
-/usr/include/glib-2.0/gio/gfileoutputstream.h:
-
-/usr/include/glib-2.0/gio/ginetaddress.h:
-
-/usr/include/glib-2.0/gio/ginetaddressmask.h:
-
-/usr/include/glib-2.0/gio/ginetsocketaddress.h:
-
-/usr/include/glib-2.0/gio/gsocketaddress.h:
-
-/usr/include/glib-2.0/gio/gioenumtypes.h:
-
-/usr/include/glib-2.0/gio/giomodule.h:
-
-/usr/include/glib-2.0/gmodule.h:
-
-/usr/include/glib-2.0/gio/gioscheduler.h:
-
-/usr/include/glib-2.0/gio/gloadableicon.h:
-
-/usr/include/glib-2.0/gio/gmemoryinputstream.h:
-
-/usr/include/glib-2.0/gio/gmemoryoutputstream.h:
-
-/usr/include/glib-2.0/gio/gmount.h:
-
-/usr/include/glib-2.0/gio/gmountoperation.h:
-
-/usr/include/glib-2.0/gio/gnativevolumemonitor.h:
-
-/usr/include/glib-2.0/gio/gvolumemonitor.h:
-
-/usr/include/glib-2.0/gio/gnetworkaddress.h:
-
-/usr/include/glib-2.0/gio/gnetworkmonitor.h:
-
-/usr/include/glib-2.0/gio/gnetworkservice.h:
-
-/usr/include/glib-2.0/gio/gpermission.h:
-
-/usr/include/glib-2.0/gio/gpollableinputstream.h:
-
-/usr/include/glib-2.0/gio/gpollableoutputstream.h:
-
-/usr/include/glib-2.0/gio/gpollableutils.h:
-
-/usr/include/glib-2.0/gio/gpropertyaction.h:
-
-/usr/include/glib-2.0/gio/gproxy.h:
-
-/usr/include/glib-2.0/gio/gproxyaddress.h:
-
-/usr/include/glib-2.0/gio/gproxyaddressenumerator.h:
-
-/usr/include/glib-2.0/gio/gsocketaddressenumerator.h:
-
-/usr/include/glib-2.0/gio/gproxyresolver.h:
-
-/usr/include/glib-2.0/gio/gresolver.h:
-
-/usr/include/glib-2.0/gio/gresource.h:
-
-/usr/include/glib-2.0/gio/gseekable.h:
-
-/usr/include/glib-2.0/gio/gsettingsschema.h:
-
-/usr/include/glib-2.0/gio/gsettings.h:
-
-/usr/include/glib-2.0/gio/gsimpleaction.h:
-
-/usr/include/glib-2.0/gio/gsimpleactiongroup.h:
-
-/usr/include/glib-2.0/gio/gactiongroup.h:
-
-/usr/include/glib-2.0/gio/gactionmap.h:
-
-/usr/include/glib-2.0/gio/gsimpleasyncresult.h:
-
-/usr/include/glib-2.0/gio/gsimplepermission.h:
-
-/usr/include/glib-2.0/gio/gsocketclient.h:
-
-/usr/include/glib-2.0/gio/gsocketconnectable.h:
-
-/usr/include/glib-2.0/gio/gsocketconnection.h:
-
-/usr/include/glib-2.0/gio/gsocket.h:
-
-/usr/include/glib-2.0/gio/gsocketcontrolmessage.h:
-
-/usr/include/glib-2.0/gio/gsocketlistener.h:
-
-/usr/include/glib-2.0/gio/gsocketservice.h:
-
-/usr/include/glib-2.0/gio/gsrvtarget.h:
-
-/usr/include/glib-2.0/gio/gsimpleproxyresolver.h:
-
-/usr/include/glib-2.0/gio/gtask.h:
-
-/usr/include/glib-2.0/gio/gsubprocess.h:
-
-/usr/include/glib-2.0/gio/gsubprocesslauncher.h:
-
-/usr/include/glib-2.0/gio/gtcpconnection.h:
-
-/usr/include/glib-2.0/gio/gtcpwrapperconnection.h:
-
-/usr/include/glib-2.0/gio/gtestdbus.h:
-
-/usr/include/glib-2.0/gio/gthemedicon.h:
-
-/usr/include/glib-2.0/gio/gthreadedsocketservice.h:
-
-/usr/include/glib-2.0/gio/gtlsbackend.h:
-
-/usr/include/glib-2.0/gio/gtlscertificate.h:
-
-/usr/include/glib-2.0/gio/gtlsclientconnection.h:
-
-/usr/include/glib-2.0/gio/gtlsconnection.h:
-
-/usr/include/glib-2.0/gio/gtlsdatabase.h:
-
-/usr/include/glib-2.0/gio/gtlsfiledatabase.h:
-
-/usr/include/glib-2.0/gio/gtlsinteraction.h:
-
-/usr/include/glib-2.0/gio/gtlsserverconnection.h:
-
-/usr/include/glib-2.0/gio/gtlspassword.h:
-
-/usr/include/glib-2.0/gio/gvfs.h:
-
-/usr/include/glib-2.0/gio/gvolume.h:
-
-/usr/include/glib-2.0/gio/gzlibcompressor.h:
-
-/usr/include/glib-2.0/gio/gzlibdecompressor.h:
-
-/usr/include/glib-2.0/gio/gdbusinterface.h:
-
-/usr/include/glib-2.0/gio/gdbusinterfaceskeleton.h:
-
-/usr/include/glib-2.0/gio/gdbusobject.h:
-
-/usr/include/glib-2.0/gio/gdbusobjectskeleton.h:
-
-/usr/include/glib-2.0/gio/gdbusobjectproxy.h:
-
-/usr/include/glib-2.0/gio/gdbusobjectmanager.h:
-
-/usr/include/glib-2.0/gio/gdbusobjectmanagerclient.h:
-
-/usr/include/glib-2.0/gio/gdbusobjectmanagerserver.h:
-
-/usr/include/glib-2.0/gio/gdbusactiongroup.h:
-
-/usr/include/glib-2.0/gio/giotypes.h:
-
-/usr/include/glib-2.0/gio/gremoteactiongroup.h:
-
-/usr/include/glib-2.0/gio/gmenumodel.h:
-
-/usr/include/glib-2.0/gio/gmenu.h:
-
-/usr/include/glib-2.0/gio/gmenuexporter.h:
-
-/usr/include/glib-2.0/gio/gdbusmenumodel.h:
-
-/usr/include/glib-2.0/gio/gnotification.h:
-
-/usr/include/gtk-2.0/gdk/gdkscreen.h:
-
-/usr/include/cairo/cairo.h:
-
-/usr/include/cairo/cairo-version.h:
-
-/usr/include/cairo/cairo-features.h:
-
-/usr/include/cairo/cairo-deprecated.h:
-
-/usr/include/gtk-2.0/gdk/gdktypes.h:
-
-/usr/include/pango-1.0/pango/pango.h:
-
-/usr/include/pango-1.0/pango/pango-attributes.h:
-
-/usr/include/pango-1.0/pango/pango-font.h:
-
-/usr/include/pango-1.0/pango/pango-coverage.h:
-
-/usr/include/pango-1.0/pango/pango-types.h:
-
-/usr/include/pango-1.0/pango/pango-gravity.h:
+/usr/include/stdlib.h:
 
-/usr/include/pango-1.0/pango/pango-matrix.h:
+/usr/include/bits/waitflags.h:
 
-/usr/include/pango-1.0/pango/pango-script.h:
+/usr/include/bits/waitstatus.h:
 
-/usr/include/pango-1.0/pango/pango-language.h:
+/usr/include/alloca.h:
 
-/usr/include/pango-1.0/pango/pango-bidi-type.h:
+/usr/include/bits/stdlib-bsearch.h:
 
-/usr/include/pango-1.0/pango/pango-break.h:
+/usr/include/bits/stdlib-float.h:
 
-/usr/include/pango-1.0/pango/pango-item.h:
+/usr/include/libxml2/libxml/xlink.h:
 
-/usr/include/pango-1.0/pango/pango-context.h:
-
-/usr/include/pango-1.0/pango/pango-fontmap.h:
-
-/usr/include/pango-1.0/pango/pango-fontset.h:
-
-/usr/include/pango-1.0/pango/pango-engine.h:
-
-/usr/include/pango-1.0/pango/pango-glyph.h:
-
-/usr/include/pango-1.0/pango/pango-enum-types.h:
-
-/usr/include/pango-1.0/pango/pango-features.h:
-
-/usr/include/pango-1.0/pango/pango-glyph-item.h:
-
-/usr/include/pango-1.0/pango/pango-layout.h:
-
-/usr/include/pango-1.0/pango/pango-tabs.h:
-
-/usr/include/pango-1.0/pango/pango-renderer.h:
-
-/usr/include/pango-1.0/pango/pango-utils.h:
-
-/usr/lib/gtk-2.0/include/gdkconfig.h:
-
-/usr/include/gtk-2.0/gdk/gdkdisplay.h:
-
-/usr/include/gtk-2.0/gdk/gdkevents.h:
-
-/usr/include/gtk-2.0/gdk/gdkcolor.h:
-
-/usr/include/gtk-2.0/gdk/gdkdnd.h:
-
-/usr/include/gtk-2.0/gdk/gdkinput.h:
-
-/usr/include/gtk-2.0/gdk/gdkcairo.h:
-
-/usr/include/gtk-2.0/gdk/gdkpixbuf.h:
-
-/usr/include/gtk-2.0/gdk/gdkrgb.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h:
-
-/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h:
-
-/usr/include/pango-1.0/pango/pangocairo.h:
-
-/usr/include/gtk-2.0/gdk/gdkcursor.h:
-
-/usr/include/gtk-2.0/gdk/gdkdisplaymanager.h:
-
-/usr/include/gtk-2.0/gdk/gdkdrawable.h:
-
-/usr/include/gtk-2.0/gdk/gdkgc.h:
-
-/usr/include/gtk-2.0/gdk/gdkenumtypes.h:
-
-/usr/include/gtk-2.0/gdk/gdkfont.h:
-
-/usr/include/gtk-2.0/gdk/gdkimage.h:
-
-/usr/include/gtk-2.0/gdk/gdkkeys.h:
-
-/usr/include/gtk-2.0/gdk/gdkpango.h:
-
-/usr/include/gtk-2.0/gdk/gdkpixmap.h:
-
-/usr/include/gtk-2.0/gdk/gdkproperty.h:
-
-/usr/include/gtk-2.0/gdk/gdkregion.h:
-
-/usr/include/gtk-2.0/gdk/gdkselection.h:
-
-/usr/include/gtk-2.0/gdk/gdkspawn.h:
-
-/usr/include/gtk-2.0/gdk/gdktestutils.h:
-
-/usr/include/gtk-2.0/gdk/gdkwindow.h:
-
-/usr/include/gtk-2.0/gdk/gdkvisual.h:
-
-/usr/include/gtk-2.0/gtk/gtkaboutdialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkdialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkwindow.h:
-
-/usr/include/gtk-2.0/gtk/gtkaccelgroup.h:
-
-/usr/include/gtk-2.0/gtk/gtkenums.h:
-
-/usr/include/gtk-2.0/gtk/gtkbin.h:
-
-/usr/include/gtk-2.0/gtk/gtkcontainer.h:
-
-/usr/include/gtk-2.0/gtk/gtkwidget.h:
-
-/usr/include/gtk-2.0/gtk/gtkobject.h:
-
-/usr/include/gtk-2.0/gtk/gtktypeutils.h:
-
-/usr/include/gtk-2.0/gtk/gtktypebuiltins.h:
-
-/usr/include/gtk-2.0/gtk/gtkdebug.h:
-
-/usr/include/gtk-2.0/gtk/gtkadjustment.h:
-
-/usr/include/gtk-2.0/gtk/gtkstyle.h:
-
-/usr/include/gtk-2.0/gtk/gtksettings.h:
-
-/usr/include/gtk-2.0/gtk/gtkrc.h:
-
-/usr/include/atk-1.0/atk/atk.h:
-
-/usr/include/atk-1.0/atk/atkobject.h:
-
-/usr/include/atk-1.0/atk/atkversion.h:
-
-/usr/include/atk-1.0/atk/atkstate.h:
-
-/usr/include/atk-1.0/atk/atkrelationtype.h:
-
-/usr/include/atk-1.0/atk/atkaction.h:
-
-/usr/include/atk-1.0/atk/atkcomponent.h:
-
-/usr/include/atk-1.0/atk/atkutil.h:
-
-/usr/include/atk-1.0/atk/atkdocument.h:
-
-/usr/include/atk-1.0/atk/atkeditabletext.h:
-
-/usr/include/atk-1.0/atk/atktext.h:
-
-/usr/include/atk-1.0/atk/atk-enum-types.h:
-
-/usr/include/atk-1.0/atk/atkgobjectaccessible.h:
-
-/usr/include/atk-1.0/atk/atkhyperlink.h:
-
-/usr/include/atk-1.0/atk/atkhyperlinkimpl.h:
-
-/usr/include/atk-1.0/atk/atkhypertext.h:
-
-/usr/include/atk-1.0/atk/atkimage.h:
-
-/usr/include/atk-1.0/atk/atknoopobject.h:
-
-/usr/include/atk-1.0/atk/atknoopobjectfactory.h:
-
-/usr/include/atk-1.0/atk/atkobjectfactory.h:
-
-/usr/include/atk-1.0/atk/atkplug.h:
-
-/usr/include/atk-1.0/atk/atkrange.h:
-
-/usr/include/atk-1.0/atk/atkregistry.h:
-
-/usr/include/atk-1.0/atk/atkobjectfactory.h:
-
-/usr/include/atk-1.0/atk/atkrelation.h:
-
-/usr/include/atk-1.0/atk/atkrelationset.h:
-
-/usr/include/atk-1.0/atk/atkselection.h:
-
-/usr/include/atk-1.0/atk/atksocket.h:
-
-/usr/include/atk-1.0/atk/atkstateset.h:
-
-/usr/include/atk-1.0/atk/atkstreamablecontent.h:
-
-/usr/include/atk-1.0/atk/atktable.h:
-
-/usr/include/atk-1.0/atk/atktablecell.h:
-
-/usr/include/atk-1.0/atk/atkmisc.h:
-
-/usr/include/atk-1.0/atk/atkvalue.h:
-
-/usr/include/atk-1.0/atk/atkwindow.h:
-
-/usr/include/gtk-2.0/gtk/gtkaccellabel.h:
-
-/usr/include/gtk-2.0/gtk/gtklabel.h:
-
-/usr/include/gtk-2.0/gtk/gtkmisc.h:
-
-/usr/include/gtk-2.0/gtk/gtkmenu.h:
-
-/usr/include/gtk-2.0/gtk/gtkmenushell.h:
-
-/usr/include/gtk-2.0/gtk/gtkaccelmap.h:
-
-/usr/include/gtk-2.0/gtk/gtkaccessible.h:
-
-/usr/include/gtk-2.0/gtk/gtkaction.h:
-
-/usr/include/gtk-2.0/gtk/gtkactiongroup.h:
-
-/usr/include/gtk-2.0/gtk/gtkactivatable.h:
-
-/usr/include/gtk-2.0/gtk/gtkalignment.h:
-
-/usr/include/gtk-2.0/gtk/gtkarrow.h:
-
-/usr/include/gtk-2.0/gtk/gtkaspectframe.h:
-
-/usr/include/gtk-2.0/gtk/gtkframe.h:
-
-/usr/include/gtk-2.0/gtk/gtkassistant.h:
-
-/usr/include/gtk-2.0/gtk/gtkbbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkbindings.h:
-
-/usr/include/gtk-2.0/gtk/gtkbuildable.h:
-
-/usr/include/gtk-2.0/gtk/gtkbuilder.h:
-
-/usr/include/gtk-2.0/gtk/gtkbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkimage.h:
-
-/usr/include/gtk-2.0/gtk/gtkcalendar.h:
-
-/usr/include/gtk-2.0/gtk/gtksignal.h:
-
-/usr/include/gtk-2.0/gtk/gtkmarshal.h:
-
-/usr/include/gtk-2.0/gtk/gtkcelleditable.h:
-
-/usr/include/gtk-2.0/gtk/gtkcelllayout.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrenderer.h:
-
-/usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h:
-
-/usr/include/gtk-2.0/gtk/gtktreemodel.h:
-
-/usr/include/gtk-2.0/gtk/gtktreesortable.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrenderertext.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrendererspin.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h:
-
-/usr/include/gtk-2.0/gtk/gtkcellview.h:
-
-/usr/include/gtk-2.0/gtk/gtkcheckbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtktogglebutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkmenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkclipboard.h:
-
-/usr/include/gtk-2.0/gtk/gtkselection.h:
-
-/usr/include/gtk-2.0/gtk/gtktextiter.h:
-
-/usr/include/gtk-2.0/gtk/gtktexttag.h:
-
-/usr/include/gtk-2.0/gtk/gtktextchild.h:
-
-/usr/include/gtk-2.0/gtk/gtkcolorbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkcolorsel.h:
-
-/usr/include/gtk-2.0/gtk/gtkvbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkcolorseldialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkcombobox.h:
-
-/usr/include/gtk-2.0/gtk/gtktreeview.h:
-
-/usr/include/gtk-2.0/gtk/gtkdnd.h:
-
-/usr/include/gtk-2.0/gtk/gtkentry.h:
-
-/usr/include/gtk-2.0/gtk/gtkeditable.h:
-
-/usr/include/gtk-2.0/gtk/gtkimcontext.h:
-
-/usr/include/gtk-2.0/gtk/gtkentrybuffer.h:
-
-/usr/include/gtk-2.0/gtk/gtkentrycompletion.h:
-
-/usr/include/gtk-2.0/gtk/gtkliststore.h:
-
-/usr/include/gtk-2.0/gtk/gtktreemodelfilter.h:
-
-/usr/include/gtk-2.0/gtk/gtkcomboboxentry.h:
-
-/usr/include/gtk-2.0/gtk/gtkcomboboxtext.h:
-
-/usr/include/gtk-2.0/gtk/gtkdrawingarea.h:
-
-/usr/include/gtk-2.0/gtk/gtkeventbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkexpander.h:
-
-/usr/include/gtk-2.0/gtk/gtkfixed.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilechooser.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilefilter.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkhbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h:
-
-/usr/include/gtk-2.0/gtk/gtkfontbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkfontsel.h:
-
-/usr/include/gtk-2.0/gtk/gtkgc.h:
-
-/usr/include/gtk-2.0/gtk/gtkhandlebox.h:
-
-/usr/include/gtk-2.0/gtk/gtkhbbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkhpaned.h:
-
-/usr/include/gtk-2.0/gtk/gtkpaned.h:
-
-/usr/include/gtk-2.0/gtk/gtkhruler.h:
-
-/usr/include/gtk-2.0/gtk/gtkruler.h:
-
-/usr/include/gtk-2.0/gtk/gtkhscale.h:
-
-/usr/include/gtk-2.0/gtk/gtkscale.h:
-
-/usr/include/gtk-2.0/gtk/gtkrange.h:
-
-/usr/include/gtk-2.0/gtk/gtkhscrollbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkscrollbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkhseparator.h:
-
-/usr/include/gtk-2.0/gtk/gtkseparator.h:
-
-/usr/include/gtk-2.0/gtk/gtkhsv.h:
-
-/usr/include/gtk-2.0/gtk/gtkiconfactory.h:
-
-/usr/include/gtk-2.0/gtk/gtkicontheme.h:
-
-/usr/include/gtk-2.0/gtk/gtkiconview.h:
-
-/usr/include/gtk-2.0/gtk/gtktooltip.h:
-
-/usr/include/gtk-2.0/gtk/gtkimagemenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkimcontextsimple.h:
-
-/usr/include/gtk-2.0/gtk/gtkimmulticontext.h:
-
-/usr/include/gtk-2.0/gtk/gtkinfobar.h:
-
-/usr/include/gtk-2.0/gtk/gtkinvisible.h:
-
-/usr/include/gtk-2.0/gtk/gtklayout.h:
-
-/usr/include/gtk-2.0/gtk/gtklinkbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkmain.h:
-
-/usr/include/gtk-2.0/gtk/gtkmenubar.h:
-
-/usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolitem.h:
-
-/usr/include/gtk-2.0/gtk/gtktooltips.h:
-
-/usr/include/gtk-2.0/gtk/gtksizegroup.h:
-
-/usr/include/gtk-2.0/gtk/gtkmessagedialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkmodules.h:
-
-/usr/include/gtk-2.0/gtk/gtkmountoperation.h:
-
-/usr/include/gtk-2.0/gtk/gtknotebook.h:
-
-/usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h:
-
-/usr/include/gtk-2.0/gtk/gtkorientable.h:
-
-/usr/include/gtk-2.0/gtk/gtkpagesetup.h:
-
-/usr/include/gtk-2.0/gtk/gtkpapersize.h:
-
-/usr/include/gtk-2.0/gtk/gtkplug.h:
-
-/usr/include/gtk-2.0/gtk/gtksocket.h:
-
-/usr/include/gtk-2.0/gtk/gtkprintcontext.h:
-
-/usr/include/gtk-2.0/gtk/gtkprintoperation.h:
-
-/usr/include/gtk-2.0/gtk/gtkprintsettings.h:
-
-/usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h:
-
-/usr/include/gtk-2.0/gtk/gtkprogressbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkprogress.h:
-
-/usr/include/gtk-2.0/gtk/gtkradioaction.h:
-
-/usr/include/gtk-2.0/gtk/gtktoggleaction.h:
-
-/usr/include/gtk-2.0/gtk/gtkradiobutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkradiomenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentaction.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentmanager.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentchooser.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentfilter.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h:
-
-/usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h:
-
-/usr/include/gtk-2.0/gtk/gtkscalebutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkscrolledwindow.h:
-
-/usr/include/gtk-2.0/gtk/gtkvscrollbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkviewport.h:
-
-/usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkshow.h:
-
-/usr/include/gtk-2.0/gtk/gtkspinbutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkspinner.h:
-
-/usr/include/gtk-2.0/gtk/gtkstatusbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkstatusicon.h:
-
-/usr/include/gtk-2.0/gtk/gtkstock.h:
-
-/usr/include/gtk-2.0/gtk/gtktable.h:
-
-/usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h:
-
-/usr/include/gtk-2.0/gtk/gtktextbuffer.h:
-
-/usr/include/gtk-2.0/gtk/gtktexttagtable.h:
-
-/usr/include/gtk-2.0/gtk/gtktextmark.h:
-
-/usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h:
-
-/usr/include/gtk-2.0/gtk/gtktextview.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolbar.h:
-
-/usr/include/gtk-2.0/gtk/gtkpixmap.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolitemgroup.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolpalette.h:
-
-/usr/include/gtk-2.0/gtk/gtktoolshell.h:
-
-/usr/include/gtk-2.0/gtk/gtktestutils.h:
-
-/usr/include/gtk-2.0/gtk/gtktreednd.h:
-
-/usr/include/gtk-2.0/gtk/gtktreemodelsort.h:
-
-/usr/include/gtk-2.0/gtk/gtktreeselection.h:
-
-/usr/include/gtk-2.0/gtk/gtktreestore.h:
-
-/usr/include/gtk-2.0/gtk/gtkuimanager.h:
-
-/usr/include/gtk-2.0/gtk/gtkvbbox.h:
-
-/usr/include/gtk-2.0/gtk/gtkversion.h:
-
-/usr/include/gtk-2.0/gtk/gtkvolumebutton.h:
-
-/usr/include/gtk-2.0/gtk/gtkvpaned.h:
-
-/usr/include/gtk-2.0/gtk/gtkvruler.h:
-
-/usr/include/gtk-2.0/gtk/gtkvscale.h:
-
-/usr/include/gtk-2.0/gtk/gtkvseparator.h:
-
-/usr/include/gtk-2.0/gtk/gtktext.h:
-
-/usr/include/gtk-2.0/gtk/gtktree.h:
-
-/usr/include/gtk-2.0/gtk/gtktreeitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkclist.h:
-
-/usr/include/gtk-2.0/gtk/gtkcombo.h:
-
-/usr/include/gtk-2.0/gtk/gtkctree.h:
-
-/usr/include/gtk-2.0/gtk/gtkcurve.h:
-
-/usr/include/gtk-2.0/gtk/gtkfilesel.h:
-
-/usr/include/gtk-2.0/gtk/gtkgamma.h:
-
-/usr/include/gtk-2.0/gtk/gtkinputdialog.h:
-
-/usr/include/gtk-2.0/gtk/gtkitemfactory.h:
-
-/usr/include/gtk-2.0/gtk/gtklist.h:
-
-/usr/include/gtk-2.0/gtk/gtklistitem.h:
-
-/usr/include/gtk-2.0/gtk/gtkoldeditable.h:
-
-/usr/include/gtk-2.0/gtk/gtkoptionmenu.h:
-
-/usr/include/gtk-2.0/gtk/gtkpreview.h:
-
-/usr/include/gtk-2.0/gtk/gtktipsquery.h:
-
-src/ags/audio/ags_recall_id.h:
-
-src/ags/audio/ags_recycling.h:
-
-src/ags/audio/ags_audio_signal.h:
-
-src/ags/audio/ags_recycling_container.h:
-
-src/ags/audio/ags_recall.h:
-
-src/ags/audio/ags_port.h:
-
-/usr/include/ladspa.h:
-
-src/ags/audio/ags_recall_dependency.h:
-
-src/ags/audio/ags_notation.h:
-
-src/ags/thread/ags_timestamp_thread.h:
-
-src/ags/audio/ags_timestamp.h:
-
-src/ags/audio/ags_note.h:
-
-src/ags-lib/object/ags_connectable.h:
+/usr/include/libxml2/libxml/SAX2.h:
diff --git a/Makefile b/Makefile
index d68df8c..fb8d8ea 100644
--- a/Makefile
+++ b/Makefile
@@ -825,17 +825,17 @@ TARGETS = gsequencer
 noinst_LIBRARIES = libags.a libags_thread.a libags_audio.a libags_gui.a
 
 # application
-libags_a_CFLAGS = -g -O2 -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_a_CFLAGS = -g -O2 -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_a_LDFLAGS =  -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
-libags_thread_a_CFLAGS = -g -O2 -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_thread_a_CFLAGS = -g -O2 -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_thread_a_LDFLAGS =  -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_thread_a_LIBADD = libags.a
-libags_audio_a_CFLAGS = -g -O2 -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_audio_a_CFLAGS = -g -O2 -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_audio_a_LDFLAGS =  -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_audio_a_LIBADD = libags_thread.a libags.a 
-libags_gui_a_CFLAGS = -g -O2 -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_gui_a_CFLAGS = -g -O2 -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_gui_a_LDFLAGS =  -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
-gsequencer_CFLAGS = -g -O2 -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+gsequencer_CFLAGS = -g -O2 -g 	-std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 gsequencer_LDFLAGS =  -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 gsequencer_LDADD = libags_audio.a libags_gui.a libags_thread.a libags.a
 ACLOCAL_AMFLAGS = -I m4
diff --git a/Makefile.am b/Makefile.am
index c989100..f0b8059 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -36,21 +36,21 @@ noinst_LIBRARIES = libags.a libags_thread.a libags_audio.a libags_gui.a
 bin_PROGRAMS = gsequencer
 
 # application
-libags_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 
-libags_thread_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_thread_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_thread_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_thread_a_LIBADD = libags.a
 
-libags_audio_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_audio_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_audio_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_audio_a_LIBADD = libags_thread.a libags.a 
 
-libags_gui_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_gui_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_gui_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 
-gsequencer_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+gsequencer_CFLAGS = @CFLAGS@ -g 	-std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 gsequencer_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 gsequencer_LDADD = libags_audio.a libags_gui.a libags_thread.a libags.a
 
diff --git a/Makefile.in b/Makefile.in
index 09eb942..73810cf 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -825,17 +825,17 @@ TARGETS = gsequencer
 noinst_LIBRARIES = libags.a libags_thread.a libags_audio.a libags_gui.a
 
 # application
-libags_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
-libags_thread_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_thread_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_thread_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_thread_a_LIBADD = libags.a
-libags_audio_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_audio_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_audio_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 libags_audio_a_LIBADD = libags_thread.a libags.a 
-libags_gui_a_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+libags_gui_a_CFLAGS = @CFLAGS@ -g -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 libags_gui_a_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
-gsequencer_CFLAGS = @CFLAGS@ -g -pedantic -std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
+gsequencer_CFLAGS = @CFLAGS@ -g 	-std=gnu11 -Wall -O -I./src -I/usr/include $(UUID_CFLAGS) $(LIBAO_CFLAGS) $(LIBASOUND2_CFLAGS) $(LIBXML2_CFLAGS) $(SNDFILE_CFLAGS) $(LIBINSTPATCH_CFLAGS) $(GOBJECT_CFLAGS) $(GDKPIXBUF_CFLAGS) $(CAIRO_CFLAGS) $(GTK_CFLAGS)
 gsequencer_LDFLAGS = @LDFLAGS@ -L/lib -L/usr/lib -L/usr/X11/lib -lm -pthread -lrt -lgmp $(UUID_LIBS) $(LIBAO_LIBS) $(LIBASOUND2_LIBS) $(LIBXML2_LIBS) $(SNDFILE_LIBS) $(LIBINSTPATCH_LIBS) $(GOBJECT_LIBS) $(GDKPIXBUF_LIBS) $(CAIRO_LIBS) $(GTK_LIBS)
 gsequencer_LDADD = libags_audio.a libags_gui.a libags_thread.a libags.a
 ACLOCAL_AMFLAGS = -I m4
diff --git a/autom4te.cache/requests b/autom4te.cache/requests
index 1dfafc1..a33f00c 100644
--- a/autom4te.cache/requests
+++ b/autom4te.cache/requests
@@ -43,196 +43,196 @@
                         'configure.ac'
                       ],
                       {
-                        'AC_WITH_LTDL' => 1,
-                        'LTVERSION_VERSION' => 1,
-                        'LT_FUNC_DLSYM_USCORE' => 1,
-                        '_LT_PROG_CXX' => 1,
-                        'AC_LTDL_PREOPEN' => 1,
-                        'AM_ENABLE_STATIC' => 1,
-                        'LT_FUNC_ARGZ' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'AC_LIBTOOL_COMPILER_OPTION' => 1,
-                        'AC_CONFIG_MACRO_DIR_TRACE' => 1,
-                        '_LT_AC_SHELL_INIT' => 1,
-                        '_LT_AC_LANG_C_CONFIG' => 1,
-                        '_LT_AC_PROG_CXXCPP' => 1,
+                        'AC_CONFIG_MACRO_DIR' => 1,
+                        'm4_include' => 1,
+                        'PKG_PROG_PKG_CONFIG' => 1,
+                        'LTDL_CONVENIENCE' => 1,
+                        'AC_ENABLE_SHARED' => 1,
+                        'AM_CONFIG_HEADER' => 1,
+                        'AC_DISABLE_SHARED' => 1,
                         'AC_LIBTOOL_DLOPEN_SELF' => 1,
-                        'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
-                        'AC_LIBLTDL_INSTALLABLE' => 1,
+                        '_LT_PROG_FC' => 1,
                         'AC_LIB_LTDL' => 1,
+                        '_LT_AC_LANG_F77_CONFIG' => 1,
+                        'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
+                        'LT_LANG' => 1,
+                        'LT_AC_PROG_GCJ' => 1,
+                        'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
+                        'AC_PROG_LD_GNU' => 1,
+                        '_AM_SUBST_NOTMAKE' => 1,
+                        'AM_PROG_CC_STDC' => 1,
+                        'AC_PROG_LD' => 1,
+                        'AC_LIBLTDL_CONVENIENCE' => 1,
+                        'AC_PROG_EGREP' => 1,
+                        'PKG_CHECK_EXISTS' => 1,
+                        '_PKG_SHORT_ERRORS_SUPPORTED' => 1,
+                        'AM_AUX_DIR_EXPAND' => 1,
+                        '_LT_AC_LANG_CXX' => 1,
                         'LTDL_INSTALLABLE' => 1,
-                        '_LT_WITH_SYSROOT' => 1,
-                        'LTSUGAR_VERSION' => 1,
-                        'LT_PATH_LD' => 1,
-                        'AC_LIBTOOL_LINKER_OPTION' => 1,
-                        'LT_CONFIG_LTDL_DIR' => 1,
-                        'AM_PROG_NM' => 1,
                         '_LT_PREPARE_SED_QUOTE_VARS' => 1,
-                        '_LT_AC_LANG_GCJ_CONFIG' => 1,
+                        'LT_LIB_DLLOAD' => 1,
+                        '_LT_DLL_DEF_P' => 1,
+                        '_LT_AC_CHECK_DLFCN' => 1,
                         '_LT_COMPILER_OPTION' => 1,
-                        'LT_SUPPORTED_TAG' => 1,
+                        'LT_PATH_NM' => 1,
+                        'AC_LTDL_SYSSEARCHPATH' => 1,
+                        'LT_LIB_M' => 1,
+                        'AC_LIBTOOL_FC' => 1,
+                        'AM_PROG_LIBTOOL' => 1,
+                        '_LT_AC_TAGCONFIG' => 1,
+                        'AM_CONDITIONAL' => 1,
+                        '_AC_PROG_LIBTOOL' => 1,
+                        '_AC_AM_CONFIG_HEADER_HOOK' => 1,
+                        'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
+                        '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        'AM_DEP_TRACK' => 1,
+                        '_LT_PROG_CXX' => 1,
+                        'AC_LIBTOOL_COMPILER_OPTION' => 1,
+                        'AC_LIBTOOL_LANG_C_CONFIG' => 1,
+                        'PKG_CHECK_VAR' => 1,
+                        'LTOPTIONS_VERSION' => 1,
+                        '_AM_DEPENDENCIES' => 1,
+                        '_m4_warn' => 1,
+                        'AC_LIBTOOL_WIN32_DLL' => 1,
                         'AM_DISABLE_STATIC' => 1,
-                        '_LT_PROG_LTMAIN' => 1,
-                        'AC_CONFIG_MACRO_DIR' => 1,
-                        '_LT_LINKER_OPTION' => 1,
-                        'AM_C_PROTOTYPES' => 1,
-                        'm4_pattern_forbid' => 1,
-                        'AC_ENABLE_SHARED' => 1,
-                        '_LT_PROG_F77' => 1,
-                        'AM_MAKE_INCLUDE' => 1,
+                        'AC_LTDL_ENABLE_INSTALL' => 1,
+                        'LT_PROG_RC' => 1,
+                        '_LT_AC_LANG_CXX_CONFIG' => 1,
+                        'AC_LTDL_DLSYM_USCORE' => 1,
+                        '_LT_PATH_TOOL_PREFIX' => 1,
+                        'AC_DEPLIBS_CHECK_METHOD' => 1,
                         '_LT_COMPILER_BOILERPLATE' => 1,
-                        'LT_PATH_NM' => 1,
+                        'PKG_INSTALLDIR' => 1,
+                        'AC_LTDL_PREOPEN' => 1,
+                        'AC_LIBTOOL_PICMODE' => 1,
                         'AC_LTDL_DLLIB' => 1,
+                        'LT_AC_PROG_EGREP' => 1,
+                        '_AM_PROG_CC_C_O' => 1,
+                        'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
+                        'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
+                        '_LTDL_SETUP' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        'LT_PROG_GO' => 1,
+                        'AC_LTDL_SHLIBEXT' => 1,
+                        '_LT_AC_LANG_C_CONFIG' => 1,
+                        'AM_MAKE_INCLUDE' => 1,
+                        'AC_DEFUN_ONCE' => 1,
+                        '_LT_AC_TRY_DLOPEN_SELF' => 1,
+                        'AM_RUN_LOG' => 1,
+                        'AM_SET_LEADING_DOT' => 1,
+                        'AM_DISABLE_SHARED' => 1,
+                        '_AM_SET_OPTION' => 1,
+                        'AC_PATH_TOOL_PREFIX' => 1,
+                        'AC_LIBTOOL_LINKER_OPTION' => 1,
+                        'AM_MISSING_PROG' => 1,
+                        'LTDL_INIT' => 1,
+                        'PKG_CHECK_MODULES' => 1,
+                        '_LT_AC_SYS_LIBPATH_AIX' => 1,
+                        'LT_SYS_DLOPEN_DEPLIBS' => 1,
+                        'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
+                        '_AM_MANGLE_OPTION' => 1,
+                        'LT_SYS_MODULE_EXT' => 1,
+                        'AC_PROG_LD_RELOAD_FLAG' => 1,
+                        '_AM_PROG_TAR' => 1,
+                        '_LT_PROG_ECHO_BACKSLASH' => 1,
+                        'AC_LIBTOOL_SETUP' => 1,
+                        'AC_LIBTOOL_RC' => 1,
+                        'AM_PROG_INSTALL_SH' => 1,
                         'AC_LIBTOOL_GCJ' => 1,
-                        '_LT_LIBOBJ' => 1,
-                        '_LT_AC_TAGCONFIG' => 1,
+                        'LT_SYS_DLOPEN_SELF' => 1,
                         'LT_SYS_DLSEARCH_PATH' => 1,
-                        'AC_DISABLE_SHARED' => 1,
-                        '_LT_CC_BASENAME' => 1,
-                        'AM_MISSING_HAS_RUN' => 1,
-                        '_LT_AC_LANG_CXX' => 1,
+                        'AC_LTDL_OBJDIR' => 1,
+                        '_AM_AUTOCONF_VERSION' => 1,
+                        'AC_DEFUN' => 1,
+                        'LT_CONFIG_LTDL_DIR' => 1,
+                        'AC_DISABLE_FAST_INSTALL' => 1,
+                        '_LT_LIBOBJ' => 1,
+                        '_LT_PROG_F77' => 1,
+                        '_LT_AC_LOCK' => 1,
                         'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
-                        '_LT_AC_SYS_LIBPATH_AIX' => 1,
-                        'LT_SYS_DLOPEN_SELF' => 1,
-                        '_LT_PROG_FC' => 1,
-                        '_LT_PATH_TOOL_PREFIX' => 1,
-                        'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
-                        'AC_PROG_LD' => 1,
-                        'LT_PROG_GO' => 1,
-                        'LT_LIB_DLLOAD' => 1,
-                        'AC_ENABLE_FAST_INSTALL' => 1,
+                        '_LT_AC_SYS_COMPILER' => 1,
                         'AC_LTDL_SYMBOL_USCORE' => 1,
-                        'AM_AUX_DIR_EXPAND' => 1,
-                        'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
-                        'm4_include' => 1,
-                        'AM_DISABLE_SHARED' => 1,
-                        'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
-                        'LTDL_CONVENIENCE' => 1,
-                        'AC_LTDL_DLSYM_USCORE' => 1,
-                        'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
-                        'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
-                        'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'AC_DEFUN' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        '_AM_PROG_CC_C_O' => 1,
-                        'AC_PROG_NM' => 1,
-                        'AC_LIBTOOL_CONFIG' => 1,
-                        '_AM_CONFIG_MACRO_DIRS' => 1,
-                        'AC_PROG_LD_RELOAD_FLAG' => 1,
+                        '_LT_AC_TAGVAR' => 1,
+                        'LT_PROG_GCJ' => 1,
+                        '_LT_AC_PROG_ECHO_BACKSLASH' => 1,
+                        'LT_FUNC_ARGZ' => 1,
+                        '_LT_AC_SHELL_INIT' => 1,
+                        '_LT_LINKER_BOILERPLATE' => 1,
                         'AU_DEFUN' => 1,
-                        '_AM_DEPENDENCIES' => 1,
-                        'AC_LIBTOOL_LANG_C_CONFIG' => 1,
                         'AC_DISABLE_STATIC' => 1,
-                        'AC_PROG_LIBTOOL' => 1,
-                        'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
-                        'PKG_CHECK_MODULES' => 1,
-                        'AC_LIBLTDL_CONVENIENCE' => 1,
+                        '_LT_AC_LANG_GCJ' => 1,
+                        'AM_MISSING_HAS_RUN' => 1,
+                        'AM_ENABLE_STATIC' => 1,
+                        'AM_ENABLE_SHARED' => 1,
+                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
+                        'AM_C_PROTOTYPES' => 1,
+                        'AM_INIT_AUTOMAKE' => 1,
+                        'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
+                        'LTVERSION_VERSION' => 1,
+                        'AC_LIBTOOL_PROG_CC_C_O' => 1,
+                        'LT_WITH_LTDL' => 1,
+                        'AC_PATH_MAGIC' => 1,
+                        '_LT_CC_BASENAME' => 1,
+                        'LT_AC_PROG_SED' => 1,
                         'm4_pattern_allow' => 1,
-                        'AC_LIBTOOL_CXX' => 1,
-                        '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
-                        '_AM_PROG_TAR' => 1,
+                        '_AM_SET_OPTIONS' => 1,
+                        'AC_LIBLTDL_INSTALLABLE' => 1,
                         'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
+                        'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        '_LT_AC_LANG_F77' => 1,
+                        'AC_PROG_NM' => 1,
                         '_AM_IF_OPTION' => 1,
-                        '_LT_LINKER_BOILERPLATE' => 1,
-                        '_LT_AC_LANG_GCJ' => 1,
+                        '_LT_AC_PROG_CXXCPP' => 1,
+                        'AM_PROG_LD' => 1,
+                        'include' => 1,
+                        'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
+                        '_LT_AC_FILE_LTDLL_C' => 1,
+                        'AC_LIBTOOL_DLOPEN' => 1,
+                        'AM_SILENT_RULES' => 1,
+                        'AC_LIBTOOL_OBJDIR' => 1,
+                        'm4_pattern_forbid' => 1,
+                        'AM_PROG_NM' => 1,
+                        '_LT_AC_LANG_RC_CONFIG' => 1,
                         'PKG_NOARCH_INSTALLDIR' => 1,
-                        'LTOBSOLETE_VERSION' => 1,
-                        'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
-                        'AC_PROG_EGREP' => 1,
-                        '_AC_PROG_LIBTOOL' => 1,
+                        'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
+                        'LT_FUNC_DLSYM_USCORE' => 1,
+                        'LT_CMD_MAX_LEN' => 1,
+                        'AC_ENABLE_FAST_INSTALL' => 1,
+                        'LT_OUTPUT' => 1,
+                        '_LT_PROG_LTMAIN' => 1,
+                        '_LT_REQUIRED_DARWIN_CHECKS' => 1,
+                        'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
                         'AM_PROG_INSTALL_STRIP' => 1,
-                        '_LT_AC_SYS_COMPILER' => 1,
-                        'AC_LIBTOOL_SETUP' => 1,
-                        'AM_SANITY_CHECK' => 1,
-                        'LT_AC_PROG_GCJ' => 1,
-                        'LTOPTIONS_VERSION' => 1,
-                        'include' => 1,
-                        '_LT_AC_CHECK_DLFCN' => 1,
-                        '_LT_AC_LOCK' => 1,
-                        'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
-                        'AC_LIBTOOL_F77' => 1,
-                        '_AM_SET_OPTIONS' => 1,
-                        'AM_PROG_LIBTOOL' => 1,
-                        'AC_LIBTOOL_PROG_CC_C_O' => 1,
                         'AM_SUBST_NOTMAKE' => 1,
-                        '_LT_AC_TRY_DLOPEN_SELF' => 1,
-                        'LT_LIB_M' => 1,
-                        'AC_DEPLIBS_CHECK_METHOD' => 1,
-                        '_AM_MANGLE_OPTION' => 1,
-                        'AM_CONFIG_HEADER' => 1,
+                        'AC_PROG_LIBTOOL' => 1,
+                        'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
+                        'AC_LIBTOOL_CONFIG' => 1,
+                        'LTSUGAR_VERSION' => 1,
+                        'fp_C_PROTOTYPES' => 1,
+                        'LT_AC_PROG_RC' => 1,
+                        '_LT_LINKER_OPTION' => 1,
+                        'LT_INIT' => 1,
+                        'AC_LIBTOOL_F77' => 1,
+                        'AC_WITH_LTDL' => 1,
+                        'LT_SYS_SYMBOL_USCORE' => 1,
                         'AC_LTDL_SHLIBPATH' => 1,
-                        'PKG_CHECK_EXISTS' => 1,
+                        '_LT_AC_LANG_GCJ_CONFIG' => 1,
                         'AC_ENABLE_STATIC' => 1,
-                        '_AM_SET_OPTION' => 1,
-                        'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
-                        'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
-                        'LT_OUTPUT' => 1,
-                        'AC_LTDL_ENABLE_INSTALL' => 1,
-                        'AC_LIBTOOL_OBJDIR' => 1,
-                        'AC_DEFUN_ONCE' => 1,
+                        'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
+                        'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
                         'AM_SET_DEPDIR' => 1,
-                        'LT_AC_PROG_SED' => 1,
-                        'AC_PATH_TOOL_PREFIX' => 1,
-                        'LT_AC_PROG_RC' => 1,
-                        'AM_SET_LEADING_DOT' => 1,
-                        'LT_LANG' => 1,
-                        'AM_PROG_LD' => 1,
-                        'LT_WITH_LTDL' => 1,
-                        'AC_LTDL_OBJDIR' => 1,
-                        'AC_LIBTOOL_RC' => 1,
-                        'AC_DISABLE_FAST_INSTALL' => 1,
+                        'AC_CONFIG_MACRO_DIR_TRACE' => 1,
+                        '_LT_WITH_SYSROOT' => 1,
+                        'AC_LIBTOOL_CXX' => 1,
+                        'LTOBSOLETE_VERSION' => 1,
+                        'AM_SANITY_CHECK' => 1,
+                        'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
+                        'LT_SUPPORTED_TAG' => 1,
+                        'LT_PATH_LD' => 1,
                         'AC_CHECK_LIBM' => 1,
-                        '_PKG_SHORT_ERRORS_SUPPORTED' => 1,
-                        '_LT_AC_LANG_RC_CONFIG' => 1,
-                        '_LT_AC_FILE_LTDLL_C' => 1,
-                        'PKG_PROG_PKG_CONFIG' => 1,
-                        '_LT_DLL_DEF_P' => 1,
-                        '_AC_AM_CONFIG_HEADER_HOOK' => 1,
-                        '_LT_PROG_ECHO_BACKSLASH' => 1,
-                        'AM_DEP_TRACK' => 1,
-                        'AC_PROG_LD_GNU' => 1,
-                        'LT_SYS_SYMBOL_USCORE' => 1,
-                        'AC_LIBTOOL_WIN32_DLL' => 1,
-                        'LT_SYS_DLOPEN_DEPLIBS' => 1,
-                        'LT_SYS_MODULE_EXT' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
-                        'LT_PROG_GCJ' => 1,
-                        'LT_INIT' => 1,
-                        'AM_PROG_CC_STDC' => 1,
-                        'PKG_CHECK_VAR' => 1,
-                        'LT_CMD_MAX_LEN' => 1,
-                        'LT_AC_PROG_EGREP' => 1,
-                        '_LT_AC_TAGVAR' => 1,
-                        '_LT_AC_LANG_F77_CONFIG' => 1,
-                        '_AM_AUTOCONF_VERSION' => 1,
-                        '_LT_AC_LANG_F77' => 1,
-                        'fp_C_PROTOTYPES' => 1,
-                        'AM_PROG_INSTALL_SH' => 1,
-                        'LT_SYS_MODULE_PATH' => 1,
-                        'AM_MISSING_PROG' => 1,
-                        'AC_LTDL_SYSSEARCHPATH' => 1,
-                        'AC_LIBTOOL_DLOPEN' => 1,
-                        'LTDL_INIT' => 1,
-                        '_LT_AC_PROG_ECHO_BACKSLASH' => 1,
-                        'AC_LIBTOOL_FC' => 1,
-                        'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
-                        '_m4_warn' => 1,
-                        '_LT_AC_LANG_CXX_CONFIG' => 1,
-                        'AC_LIBTOOL_PICMODE' => 1,
-                        'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        'AC_PATH_MAGIC' => 1,
-                        '_LTDL_SETUP' => 1,
-                        'PKG_INSTALLDIR' => 1,
-                        'AC_LTDL_SHLIBEXT' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
-                        'AM_ENABLE_SHARED' => 1,
-                        'LT_PROG_RC' => 1,
-                        'AM_RUN_LOG' => 1,
-                        '_LT_REQUIRED_DARWIN_CHECKS' => 1
+                        '_AM_CONFIG_MACRO_DIRS' => 1,
+                        'LT_SYS_MODULE_PATH' => 1
                       }
                     ], 'Autom4te::Request' ),
              bless( [
@@ -247,65 +247,65 @@
                         'configure.ac'
                       ],
                       {
-                        'LT_SUPPORTED_TAG' => 1,
-                        'AM_MAINTAINER_MODE' => 1,
+                        'AC_CONFIG_LIBOBJ_DIR' => 1,
+                        'AM_EXTRA_RECURSIVE_TARGETS' => 1,
+                        'm4_include' => 1,
+                        'AH_OUTPUT' => 1,
                         'AM_PROG_MKDIR_P' => 1,
-                        'AC_FC_FREEFORM' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_NLS' => 1,
+                        '_AM_SUBST_NOTMAKE' => 1,
+                        'AC_CONFIG_SUBDIRS' => 1,
                         'AM_MAKEFILE_INCLUDE' => 1,
-                        'AC_CANONICAL_BUILD' => 1,
+                        'AC_FC_SRCEXT' => 1,
+                        'AC_SUBST' => 1,
+                        'AC_INIT' => 1,
+                        'AM_MAINTAINER_MODE' => 1,
+                        'AC_CONFIG_LINKS' => 1,
                         'AC_PROG_LIBTOOL' => 1,
-                        'm4_pattern_forbid' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        'LT_INIT' => 1,
+                        'AM_PROG_F77_C_O' => 1,
+                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_CONFIG_HEADERS' => 1,
+                        'AM_ENABLE_MULTILIB' => 1,
+                        'AM_PROG_AR' => 1,
+                        '_AM_COND_ENDIF' => 1,
+                        '_AM_COND_IF' => 1,
                         '_AM_MAKEFILE_INCLUDE' => 1,
-                        '_m4_warn' => 1,
-                        'AC_SUBST_TRACE' => 1,
-                        'm4_pattern_allow' => 1,
                         'AM_INIT_AUTOMAKE' => 1,
                         'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
-                        'AH_OUTPUT' => 1,
+                        'AC_FC_FREEFORM' => 1,
                         '_LT_AC_TAGCONFIG' => 1,
-                        'AC_CONFIG_FILES' => 1,
+                        'AC_CANONICAL_BUILD' => 1,
+                        'AC_CONFIG_AUX_DIR' => 1,
                         'AM_PATH_GUILE' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AC_DEFINE_TRACE_LITERAL' => 1,
-                        'AC_FC_PP_SRCEXT' => 1,
-                        'AM_POT_TOOLS' => 1,
-                        'AM_PROG_MOC' => 1,
-                        'AC_CANONICAL_HOST' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
-                        'AC_INIT' => 1,
-                        'AC_FC_SRCEXT' => 1,
-                        'AM_EXTRA_RECURSIVE_TARGETS' => 1,
-                        '_AM_COND_IF' => 1,
-                        'AM_PROG_AR' => 1,
-                        'AM_XGETTEXT_OPTION' => 1,
+                        'AC_CONFIG_FILES' => 1,
+                        'm4_sinclude' => 1,
+                        'AM_CONDITIONAL' => 1,
                         'AC_FC_PP_DEFINE' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        '_AM_COND_ENDIF' => 1,
-                        'm4_include' => 1,
+                        'AC_SUBST_TRACE' => 1,
+                        'm4_pattern_allow' => 1,
+                        'AM_PROG_FC_C_O' => 1,
+                        '_m4_warn' => 1,
+                        'AM_XGETTEXT_OPTION' => 1,
+                        '_AM_COND_ELSE' => 1,
+                        'sinclude' => 1,
+                        'AM_PROG_MOC' => 1,
+                        'AC_CANONICAL_TARGET' => 1,
                         'AC_REQUIRE_AUX_FILE' => 1,
+                        'AC_DEFINE_TRACE_LITERAL' => 1,
+                        'include' => 1,
                         'AM_PROG_CXX_C_O' => 1,
-                        'm4_sinclude' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
-                        '_AM_COND_ELSE' => 1,
-                        'AC_SUBST' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
+                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_SILENT_RULES' => 1,
+                        'AC_LIBSOURCE' => 1,
                         'AM_GNU_GETTEXT' => 1,
-                        'include' => 1,
-                        'LT_INIT' => 1,
-                        'AC_CANONICAL_TARGET' => 1,
-                        'AM_PROG_FC_C_O' => 1,
-                        'AC_CONFIG_LINKS' => 1,
-                        'AM_PROG_F77_C_O' => 1,
-                        'AM_NLS' => 1,
-                        'sinclude' => 1,
-                        'AC_CONFIG_HEADERS' => 1,
-                        'AM_PROG_CC_C_O' => 1,
+                        'LT_SUPPORTED_TAG' => 1,
+                        'AC_FC_PP_SRCEXT' => 1,
                         'LT_CONFIG_LTDL_DIR' => 1,
-                        'AM_ENABLE_MULTILIB' => 1,
-                        'AC_LIBSOURCE' => 1
+                        'm4_pattern_forbid' => 1,
+                        'AC_CANONICAL_HOST' => 1,
+                        'AM_POT_TOOLS' => 1
                       }
                     ], 'Autom4te::Request' ),
              bless( [
@@ -348,196 +348,196 @@
                         'configure.ac'
                       ],
                       {
-                        'AM_DISABLE_STATIC' => 1,
-                        '_LT_PROG_LTMAIN' => 1,
-                        'AC_CONFIG_MACRO_DIR' => 1,
-                        '_LT_LINKER_OPTION' => 1,
-                        'AM_C_PROTOTYPES' => 1,
-                        'm4_pattern_forbid' => 1,
-                        'AM_PROG_NM' => 1,
-                        '_LT_PREPARE_SED_QUOTE_VARS' => 1,
-                        '_LT_AC_LANG_GCJ_CONFIG' => 1,
-                        '_LT_COMPILER_OPTION' => 1,
+                        'LT_SYS_MODULE_PATH' => 1,
+                        '_AM_CONFIG_MACRO_DIRS' => 1,
                         'LT_SUPPORTED_TAG' => 1,
-                        'AC_DISABLE_SHARED' => 1,
-                        '_LT_CC_BASENAME' => 1,
-                        'AM_MISSING_HAS_RUN' => 1,
-                        '_LT_AC_LANG_CXX' => 1,
-                        'AC_ENABLE_SHARED' => 1,
-                        '_LT_PROG_F77' => 1,
-                        'AM_MAKE_INCLUDE' => 1,
-                        '_LT_COMPILER_BOILERPLATE' => 1,
-                        'AC_LTDL_DLLIB' => 1,
-                        'LT_PATH_NM' => 1,
-                        '_LT_LIBOBJ' => 1,
-                        '_LT_AC_TAGCONFIG' => 1,
-                        'AC_LIBTOOL_GCJ' => 1,
-                        'LT_SYS_DLSEARCH_PATH' => 1,
-                        'AM_ENABLE_STATIC' => 1,
-                        '_LT_PROG_CXX' => 1,
-                        'AC_LTDL_PREOPEN' => 1,
-                        'LT_FUNC_ARGZ' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_CHECK_LIBM' => 1,
+                        'LT_PATH_LD' => 1,
+                        'AM_SANITY_CHECK' => 1,
+                        'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
+                        'LTOBSOLETE_VERSION' => 1,
+                        'AC_LIBTOOL_CXX' => 1,
+                        'AM_SET_DEPDIR' => 1,
+                        '_LT_WITH_SYSROOT' => 1,
                         'AC_CONFIG_MACRO_DIR_TRACE' => 1,
-                        'AC_LIBTOOL_COMPILER_OPTION' => 1,
-                        '_LT_AC_SHELL_INIT' => 1,
-                        '_LT_AC_PROG_CXXCPP' => 1,
-                        '_LT_AC_LANG_C_CONFIG' => 1,
                         'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
-                        'AC_LIBTOOL_DLOPEN_SELF' => 1,
+                        'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
+                        'AC_ENABLE_STATIC' => 1,
+                        'AC_LTDL_SHLIBPATH' => 1,
+                        'LT_SYS_SYMBOL_USCORE' => 1,
+                        '_LT_AC_LANG_GCJ_CONFIG' => 1,
                         'AC_WITH_LTDL' => 1,
-                        'LTVERSION_VERSION' => 1,
-                        'LT_FUNC_DLSYM_USCORE' => 1,
-                        'AC_LIBTOOL_LINKER_OPTION' => 1,
-                        'LT_CONFIG_LTDL_DIR' => 1,
-                        'AC_LIBLTDL_INSTALLABLE' => 1,
-                        'AC_LIB_LTDL' => 1,
-                        'LTDL_INSTALLABLE' => 1,
-                        '_LT_WITH_SYSROOT' => 1,
+                        'AC_LIBTOOL_F77' => 1,
                         'LTSUGAR_VERSION' => 1,
-                        'LT_PATH_LD' => 1,
-                        '_AM_PROG_CC_C_O' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_PROG_NM' => 1,
-                        'AC_LIBTOOL_CONFIG' => 1,
-                        '_AM_CONFIG_MACRO_DIRS' => 1,
-                        'AC_PROG_LD_RELOAD_FLAG' => 1,
-                        'AU_DEFUN' => 1,
-                        'AC_DISABLE_STATIC' => 1,
-                        '_AM_DEPENDENCIES' => 1,
-                        'AC_LIBTOOL_LANG_C_CONFIG' => 1,
+                        '_LT_LINKER_OPTION' => 1,
+                        'LT_INIT' => 1,
+                        'fp_C_PROTOTYPES' => 1,
+                        'LT_AC_PROG_RC' => 1,
+                        'AM_SUBST_NOTMAKE' => 1,
                         'AC_PROG_LIBTOOL' => 1,
-                        'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
-                        'AC_DEFUN' => 1,
-                        'AC_PROG_EGREP' => 1,
-                        'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
-                        'PKG_NOARCH_INSTALLDIR' => 1,
-                        'LTOBSOLETE_VERSION' => 1,
-                        '_AC_PROG_LIBTOOL' => 1,
+                        'AC_LIBTOOL_CONFIG' => 1,
+                        'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
+                        'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
                         'AM_PROG_INSTALL_STRIP' => 1,
-                        '_LT_AC_SYS_COMPILER' => 1,
-                        'PKG_CHECK_MODULES' => 1,
-                        'AC_LIBTOOL_CXX' => 1,
+                        '_LT_PROG_LTMAIN' => 1,
+                        'LT_OUTPUT' => 1,
+                        '_LT_REQUIRED_DARWIN_CHECKS' => 1,
+                        'LT_FUNC_DLSYM_USCORE' => 1,
+                        'AC_ENABLE_FAST_INSTALL' => 1,
+                        'LT_CMD_MAX_LEN' => 1,
+                        'PKG_NOARCH_INSTALLDIR' => 1,
+                        'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
+                        '_LT_AC_LANG_RC_CONFIG' => 1,
+                        'm4_pattern_forbid' => 1,
+                        'AM_PROG_NM' => 1,
+                        'AC_LIBTOOL_OBJDIR' => 1,
+                        'AC_LIBTOOL_DLOPEN' => 1,
+                        'AM_SILENT_RULES' => 1,
+                        '_LT_AC_FILE_LTDLL_C' => 1,
+                        'include' => 1,
+                        'AM_PROG_LD' => 1,
+                        'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
+                        'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        '_LT_AC_PROG_CXXCPP' => 1,
+                        '_LT_AC_LANG_F77' => 1,
+                        'AC_PROG_NM' => 1,
+                        '_AM_IF_OPTION' => 1,
                         'm4_pattern_allow' => 1,
-                        '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
-                        'AC_LIBLTDL_CONVENIENCE' => 1,
-                        '_AM_PROG_TAR' => 1,
+                        'AC_LIBLTDL_INSTALLABLE' => 1,
                         'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
-                        '_AM_IF_OPTION' => 1,
-                        '_LT_LINKER_BOILERPLATE' => 1,
+                        '_AM_SET_OPTIONS' => 1,
+                        'LT_AC_PROG_SED' => 1,
+                        'AC_PATH_MAGIC' => 1,
+                        '_LT_CC_BASENAME' => 1,
+                        'AC_LIBTOOL_PROG_CC_C_O' => 1,
+                        'LTVERSION_VERSION' => 1,
+                        'LT_WITH_LTDL' => 1,
+                        'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
+                        'AM_INIT_AUTOMAKE' => 1,
+                        'AM_C_PROTOTYPES' => 1,
+                        'AM_ENABLE_SHARED' => 1,
+                        'AM_ENABLE_STATIC' => 1,
+                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
+                        'AC_DISABLE_STATIC' => 1,
+                        'AM_MISSING_HAS_RUN' => 1,
                         '_LT_AC_LANG_GCJ' => 1,
-                        'AC_PROG_LD' => 1,
-                        'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
-                        '_LT_PATH_TOOL_PREFIX' => 1,
-                        'LT_PROG_GO' => 1,
-                        'AC_ENABLE_FAST_INSTALL' => 1,
-                        'LT_LIB_DLLOAD' => 1,
+                        'LT_FUNC_ARGZ' => 1,
+                        '_LT_AC_SHELL_INIT' => 1,
+                        '_LT_LINKER_BOILERPLATE' => 1,
+                        'AU_DEFUN' => 1,
+                        'LT_PROG_GCJ' => 1,
                         'AC_LTDL_SYMBOL_USCORE' => 1,
-                        'AM_AUX_DIR_EXPAND' => 1,
-                        'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
-                        'm4_include' => 1,
+                        '_LT_AC_TAGVAR' => 1,
+                        '_LT_AC_SYS_COMPILER' => 1,
+                        '_LT_AC_PROG_ECHO_BACKSLASH' => 1,
+                        '_LT_LIBOBJ' => 1,
+                        'AC_DISABLE_FAST_INSTALL' => 1,
+                        '_LT_AC_LOCK' => 1,
                         'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
-                        '_LT_AC_SYS_LIBPATH_AIX' => 1,
+                        '_LT_PROG_F77' => 1,
+                        '_AM_AUTOCONF_VERSION' => 1,
+                        'AC_DEFUN' => 1,
+                        'LT_CONFIG_LTDL_DIR' => 1,
+                        'AC_LTDL_OBJDIR' => 1,
+                        'AM_PROG_INSTALL_SH' => 1,
+                        'AC_LIBTOOL_RC' => 1,
+                        'AC_LIBTOOL_SETUP' => 1,
+                        'LT_SYS_DLSEARCH_PATH' => 1,
                         'LT_SYS_DLOPEN_SELF' => 1,
-                        '_LT_PROG_FC' => 1,
-                        'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
-                        'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
-                        'AM_DISABLE_SHARED' => 1,
-                        'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
-                        'AC_LTDL_DLSYM_USCORE' => 1,
-                        'LTDL_CONVENIENCE' => 1,
-                        'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
+                        'AC_LIBTOOL_GCJ' => 1,
+                        '_LT_PROG_ECHO_BACKSLASH' => 1,
+                        '_AM_PROG_TAR' => 1,
+                        'AC_PROG_LD_RELOAD_FLAG' => 1,
+                        'LT_SYS_MODULE_EXT' => 1,
+                        '_LT_AC_SYS_LIBPATH_AIX' => 1,
+                        'AM_MISSING_PROG' => 1,
+                        'PKG_CHECK_MODULES' => 1,
+                        'LTDL_INIT' => 1,
+                        '_AM_MANGLE_OPTION' => 1,
+                        'LT_SYS_DLOPEN_DEPLIBS' => 1,
                         'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
-                        'LT_OUTPUT' => 1,
-                        'AC_LTDL_ENABLE_INSTALL' => 1,
-                        'AC_LIBTOOL_OBJDIR' => 1,
+                        '_AM_SET_OPTION' => 1,
+                        'AM_DISABLE_SHARED' => 1,
+                        'AM_SET_LEADING_DOT' => 1,
                         'AC_PATH_TOOL_PREFIX' => 1,
-                        'LT_AC_PROG_SED' => 1,
+                        'AC_LIBTOOL_LINKER_OPTION' => 1,
                         'AC_DEFUN_ONCE' => 1,
-                        'AM_SET_DEPDIR' => 1,
-                        'AC_LIBTOOL_PROG_CC_C_O' => 1,
+                        'AM_MAKE_INCLUDE' => 1,
+                        '_LT_AC_LANG_C_CONFIG' => 1,
+                        'AM_RUN_LOG' => 1,
                         '_LT_AC_TRY_DLOPEN_SELF' => 1,
-                        'AM_SUBST_NOTMAKE' => 1,
-                        'LT_LIB_M' => 1,
-                        'AC_DEPLIBS_CHECK_METHOD' => 1,
-                        'AM_CONFIG_HEADER' => 1,
-                        '_AM_MANGLE_OPTION' => 1,
-                        'PKG_CHECK_EXISTS' => 1,
-                        'AC_LTDL_SHLIBPATH' => 1,
-                        'AC_ENABLE_STATIC' => 1,
-                        '_AM_SET_OPTION' => 1,
-                        'AC_LIBTOOL_RC' => 1,
-                        'AC_LTDL_OBJDIR' => 1,
-                        'AC_DISABLE_FAST_INSTALL' => 1,
-                        'AC_CHECK_LIBM' => 1,
-                        '_PKG_SHORT_ERRORS_SUPPORTED' => 1,
-                        '_LT_AC_LANG_RC_CONFIG' => 1,
-                        '_LT_AC_FILE_LTDLL_C' => 1,
-                        'PKG_PROG_PKG_CONFIG' => 1,
-                        '_LT_DLL_DEF_P' => 1,
-                        'LT_AC_PROG_RC' => 1,
-                        'AM_SET_LEADING_DOT' => 1,
-                        'LT_LANG' => 1,
-                        'AM_PROG_LD' => 1,
-                        'LT_WITH_LTDL' => 1,
-                        'AM_SANITY_CHECK' => 1,
-                        'LTOPTIONS_VERSION' => 1,
-                        'LT_AC_PROG_GCJ' => 1,
-                        'AC_LIBTOOL_SETUP' => 1,
-                        '_LT_AC_LOCK' => 1,
+                        '_LTDL_SETUP' => 1,
+                        'AC_LTDL_SHLIBEXT' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        'LT_PROG_GO' => 1,
                         'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
-                        '_AM_SET_OPTIONS' => 1,
-                        'AC_LIBTOOL_F77' => 1,
-                        'AM_PROG_LIBTOOL' => 1,
-                        'include' => 1,
-                        '_LT_AC_CHECK_DLFCN' => 1,
-                        'AC_LTDL_SYSSEARCHPATH' => 1,
-                        'AC_LIBTOOL_DLOPEN' => 1,
-                        'LTDL_INIT' => 1,
-                        '_LT_AC_PROG_ECHO_BACKSLASH' => 1,
-                        'AC_LIBTOOL_FC' => 1,
-                        'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
-                        '_m4_warn' => 1,
-                        '_LT_AC_LANG_CXX_CONFIG' => 1,
-                        'AC_LIBTOOL_PICMODE' => 1,
+                        '_AM_PROG_CC_C_O' => 1,
                         'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
-                        'fp_C_PROTOTYPES' => 1,
-                        'LT_SYS_MODULE_PATH' => 1,
-                        'AM_PROG_INSTALL_SH' => 1,
-                        'AM_MISSING_PROG' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AM_ENABLE_SHARED' => 1,
-                        'LT_PROG_RC' => 1,
-                        'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
-                        'AM_RUN_LOG' => 1,
-                        '_LT_REQUIRED_DARWIN_CHECKS' => 1,
-                        'AC_PATH_MAGIC' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        '_LTDL_SETUP' => 1,
+                        'AC_LIBTOOL_PICMODE' => 1,
+                        'LT_AC_PROG_EGREP' => 1,
+                        'AC_LTDL_DLLIB' => 1,
+                        'AC_LTDL_PREOPEN' => 1,
                         'PKG_INSTALLDIR' => 1,
-                        'AC_LTDL_SHLIBEXT' => 1,
-                        'LT_SYS_SYMBOL_USCORE' => 1,
+                        '_LT_COMPILER_BOILERPLATE' => 1,
+                        'AC_DEPLIBS_CHECK_METHOD' => 1,
+                        'AC_LTDL_DLSYM_USCORE' => 1,
+                        '_LT_PATH_TOOL_PREFIX' => 1,
+                        'AC_LTDL_ENABLE_INSTALL' => 1,
+                        'LT_PROG_RC' => 1,
+                        '_LT_AC_LANG_CXX_CONFIG' => 1,
+                        'AM_DISABLE_STATIC' => 1,
+                        '_AM_DEPENDENCIES' => 1,
                         'AC_LIBTOOL_WIN32_DLL' => 1,
-                        'LT_SYS_MODULE_EXT' => 1,
-                        'LT_SYS_DLOPEN_DEPLIBS' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
-                        '_AC_AM_CONFIG_HEADER_HOOK' => 1,
-                        '_LT_PROG_ECHO_BACKSLASH' => 1,
+                        '_m4_warn' => 1,
+                        '_LT_PROG_CXX' => 1,
                         'AM_DEP_TRACK' => 1,
+                        'AC_LIBTOOL_LANG_C_CONFIG' => 1,
+                        'AC_LIBTOOL_COMPILER_OPTION' => 1,
+                        '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        'LTOPTIONS_VERSION' => 1,
+                        'PKG_CHECK_VAR' => 1,
+                        '_AC_PROG_LIBTOOL' => 1,
+                        '_AC_AM_CONFIG_HEADER_HOOK' => 1,
+                        'AM_CONDITIONAL' => 1,
+                        'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
+                        'AC_LIBTOOL_FC' => 1,
+                        'LT_LIB_M' => 1,
+                        'AM_PROG_LIBTOOL' => 1,
+                        '_LT_AC_TAGCONFIG' => 1,
+                        'AC_LTDL_SYSSEARCHPATH' => 1,
+                        '_LT_DLL_DEF_P' => 1,
+                        '_LT_COMPILER_OPTION' => 1,
+                        '_LT_AC_CHECK_DLFCN' => 1,
+                        'LT_PATH_NM' => 1,
+                        'LTDL_INSTALLABLE' => 1,
+                        '_LT_PREPARE_SED_QUOTE_VARS' => 1,
+                        'LT_LIB_DLLOAD' => 1,
+                        '_LT_AC_LANG_CXX' => 1,
+                        '_PKG_SHORT_ERRORS_SUPPORTED' => 1,
+                        'AM_AUX_DIR_EXPAND' => 1,
+                        'AM_PROG_CC_STDC' => 1,
                         'AC_PROG_LD_GNU' => 1,
-                        'LT_CMD_MAX_LEN' => 1,
-                        'LT_AC_PROG_EGREP' => 1,
-                        '_LT_AC_TAGVAR' => 1,
+                        'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
+                        '_AM_SUBST_NOTMAKE' => 1,
+                        'AC_PROG_EGREP' => 1,
+                        'PKG_CHECK_EXISTS' => 1,
+                        'AC_LIBLTDL_CONVENIENCE' => 1,
+                        'AC_PROG_LD' => 1,
+                        'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
                         '_LT_AC_LANG_F77_CONFIG' => 1,
-                        '_AM_AUTOCONF_VERSION' => 1,
-                        '_LT_AC_LANG_F77' => 1,
-                        'LT_PROG_GCJ' => 1,
-                        'LT_INIT' => 1,
-                        'AM_PROG_CC_STDC' => 1,
-                        'PKG_CHECK_VAR' => 1
+                        'AC_LIB_LTDL' => 1,
+                        '_LT_PROG_FC' => 1,
+                        'LT_AC_PROG_GCJ' => 1,
+                        'LT_LANG' => 1,
+                        'AC_ENABLE_SHARED' => 1,
+                        'AM_CONFIG_HEADER' => 1,
+                        'LTDL_CONVENIENCE' => 1,
+                        'PKG_PROG_PKG_CONFIG' => 1,
+                        'AC_CONFIG_MACRO_DIR' => 1,
+                        'm4_include' => 1,
+                        'AC_LIBTOOL_DLOPEN_SELF' => 1,
+                        'AC_DISABLE_SHARED' => 1
                       }
                     ], 'Autom4te::Request' )
            );
diff --git a/config.log b/config.log
index 8d979a2..9f10894 100644
--- a/config.log
+++ b/config.log
@@ -1597,3 +1597,21 @@ on Device-03036C
 
 config.status:1222: creating Makefile
 config.status:1451: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by gsequencer config.status 0.4.3, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status Makefile depfiles
+
+on Device-03036C
+
+config.status:1222: creating Makefile
+config.status:1451: executing depfiles commands
diff --git a/src/ags/X/ags_resize_editor.c b/src/ags/X/ags_resize_editor.c
index 2693512..c655453 100644
--- a/src/ags/X/ags_resize_editor.c
+++ b/src/ags/X/ags_resize_editor.c
@@ -23,7 +23,7 @@
 
 #include <ags/object/ags_applicable.h>
 
-#include <ags/thread/ags_audio_loop.h>
+#include <ags/thread/ags_thread-posix.h>
 #include <ags/thread/ags_task_thread.h>
 
 #include <ags/audio/ags_audio.h>
@@ -32,6 +32,7 @@
 
 #include <ags/audio/task/ags_resize_audio.h>
 
+#include <ags/X/ags_window.h>
 #include <ags/X/ags_machine_editor.h>
 
 void ags_resize_editor_class_init(AgsResizeEditorClass *resize_editor);
@@ -59,9 +60,6 @@ void ags_resize_editor_show(GtkWidget *widget);
 
 AgsConnectableInterface *ags_resize_editor_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_resize_editor_get_type(void)
 {
@@ -256,13 +254,18 @@ ags_resize_editor_set_update(AgsApplicable *applicable, gboolean update)
 void
 ags_resize_editor_apply(AgsApplicable *applicable)
 {
+  AgsWindow *window;
   AgsMachineEditor *machine_editor;
   AgsResizeEditor *resize_editor;
+
   AgsAudio *audio;
   AgsResizeAudio *resize_audio;
+  
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
 
+  AgsApplicationContext *application_context;
+  
   resize_editor = AGS_RESIZE_EDITOR(applicable);
 
   if((AGS_PROPERTY_EDITOR_ENABLED & (AGS_PROPERTY_EDITOR(resize_editor)->flags)) == 0)
@@ -271,22 +274,16 @@ ags_resize_editor_apply(AgsApplicable *applicable)
   machine_editor = AGS_MACHINE_EDITOR(gtk_widget_get_ancestor(GTK_WIDGET(resize_editor),
 							      AGS_TYPE_MACHINE_EDITOR));
 
-  audio = machine_editor->machine->audio;
-
-  task_thread = NULL;
-
-  main_loop = ags_application_context->main_loop;
-  current = main_loop->children;
+  window = machine_editor->parent;
 
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
 
-      break;
-    }
+  task_thread = ags_thread_find_type(main_loop,
+				     AGS_TYPE_TASK_THREAD);
 
-    current = current->next;
-  }
+  audio = machine_editor->machine->audio;
 
   /* create task */
   resize_audio = ags_resize_audio_new(audio,
diff --git a/src/ags/X/ags_window_callbacks.c b/src/ags/X/ags_window_callbacks.c
index da30a18..09e8017 100644
--- a/src/ags/X/ags_window_callbacks.c
+++ b/src/ags/X/ags_window_callbacks.c
@@ -22,24 +22,26 @@
 
 #include <ags/file/ags_file.h>
 
-#include <ags/thread/ags_audio_loop.h>
+#include <ags/thread/ags_thread-posix.h>
 #include <ags/thread/ags_task_thread.h>
 
 #include <ags/audio/task/ags_save_file.h>
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 gboolean
 ags_window_delete_event_callback(GtkWidget *widget, gpointer data)
 {
   AgsWindow *window;
   GtkDialog *dialog;
   GtkWidget *cancel_button;
+
+  AgsApplicationContext *application_context;
+
   gint response;
 
   window = AGS_WINDOW(widget);
 
+  application_context = window->application_context;
+
   /* ask the user if he wants save to a file */
   dialog = (GtkDialog *) gtk_message_dialog_new(GTK_WINDOW(window),
 						GTK_DIALOG_DESTROY_WITH_PARENT,
@@ -54,31 +56,23 @@ ags_window_delete_event_callback(GtkWidget *widget, gpointer data)
   response = gtk_dialog_run(dialog);
 
   if(response == GTK_RESPONSE_YES){
-    AgsFile *file;
-    AgsSaveFile *save_file;
-    AgsThread *main_loop, *current;
+    AgsThread *main_loop;
     AgsTaskThread *task_thread;
+    AgsSaveFile *save_file;
+    
+    AgsFile *file;
+    
     char *filename;
-
-    task_thread = NULL;
-
-    main_loop = ags_application_context->main_loop;
-    current = main_loop->children;
-
-    while(current != NULL){
-      if(AGS_IS_TASK_THREAD(current)){
-	task_thread = (AgsTaskThread *) current;
-
-	break;
-      }
-
-      current = current->next;
-    }
+    
+    main_loop = application_context->main_loop;
+    
+    task_thread = ags_thread_find_type(main_loop,
+				       AGS_TYPE_TASK_THREAD);
 
     filename = window->name;
 
     file = (AgsFile *) g_object_new(AGS_TYPE_FILE,
-				    "application-context\0", ags_application_context,
+				    "application-context\0", application_context,
 				    "filename\0", g_strdup(filename),
 				    NULL);
 
@@ -90,7 +84,7 @@ ags_window_delete_event_callback(GtkWidget *widget, gpointer data)
   }
 
   if(response != GTK_RESPONSE_CANCEL){
-    ags_main_quit(ags_application_context);
+    ags_main_quit(application_context);
   }else{
     gtk_widget_destroy(GTK_WIDGET(dialog));
   }
diff --git a/src/ags/X/machine/ags_drum.c b/src/ags/X/machine/ags_drum.c
index a98670d..f7a91da 100644
--- a/src/ags/X/machine/ags_drum.c
+++ b/src/ags/X/machine/ags_drum.c
@@ -26,29 +26,6 @@
 #include <ags/object/ags_portlet.h>
 #include <ags/object/ags_plugin.h>
 
-#include <ags/file/ags_file.h>
-#include <ags/file/ags_file_stock.h>
-#include <ags/file/ags_file_id_ref.h>
-#include <ags/file/ags_file_lookup.h>
-#include <ags/file/ags_file_launch.h>
-#include <ags/file/ags_file_gui.h>
-
-#include <ags/thread/ags_thread-posix.h>
-#include <ags/thread/ags_audio_loop.h>
-
-#include <ags/widget/ags_led.h>
-
-#include <ags/X/machine/ags_drum_input_pad.h>
-#include <ags/X/machine/ags_drum_input_line.h>
-#include <ags/X/machine/ags_drum_output_pad.h>
-#include <ags/X/machine/ags_drum_output_line.h>
-#include <ags/X/machine/ags_drum_input_line_callbacks.h>
-
-#include <ags/X/ags_window.h>
-#include <ags/X/ags_menu_bar.h>
-#include <ags/X/ags_pad.h>
-#include <ags/X/ags_line.h>
-
 #include <ags/audio/ags_audio.h>
 #include <ags/audio/ags_channel.h>
 #include <ags/audio/ags_input.h>
@@ -71,6 +48,29 @@
 
 #include <ags/audio/task/recall/ags_apply_sequencer_length.h>
 
+#include <ags/file/ags_file.h>
+#include <ags/file/ags_file_stock.h>
+#include <ags/file/ags_file_id_ref.h>
+#include <ags/file/ags_file_lookup.h>
+#include <ags/file/ags_file_launch.h>
+#include <ags/file/ags_file_gui.h>
+
+#include <ags/thread/ags_thread-posix.h>
+#include <ags/thread/ags_audio_loop.h>
+
+#include <ags/widget/ags_led.h>
+
+#include <ags/X/ags_window.h>
+#include <ags/X/ags_menu_bar.h>
+#include <ags/X/ags_pad.h>
+#include <ags/X/ags_line.h>
+
+#include <ags/X/machine/ags_drum_input_pad.h>
+#include <ags/X/machine/ags_drum_input_line.h>
+#include <ags/X/machine/ags_drum_output_pad.h>
+#include <ags/X/machine/ags_drum_output_line.h>
+#include <ags/X/machine/ags_drum_input_line_callbacks.h>
+
 #include <math.h>
 
 void ags_drum_class_init(AgsDrumClass *drum);
@@ -116,9 +116,6 @@ static AgsConnectableInterface *ags_drum_parent_connectable_interface;
 
 const char *AGS_DRUM_INDEX = "AgsDrumIndex";
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_drum_get_type(void)
 {
@@ -633,7 +630,7 @@ ags_drum_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -778,7 +775,7 @@ ags_drum_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_drum_callbacks.c b/src/ags/X/machine/ags_drum_callbacks.c
index ab9c190..cb07240 100644
--- a/src/ags/X/machine/ags_drum_callbacks.c
+++ b/src/ags/X/machine/ags_drum_callbacks.c
@@ -23,9 +23,7 @@
 
 #include <ags/object/ags_application_context.h>
 
-#include <ags/widget/ags_led.h>
-
-#include <ags/thread/ags_audio_loop.h>
+#include <ags/thread/ags_thread-posix.h>
 #include <ags/thread/ags_task_thread.h>
 
 #include <ags/audio/ags_devout.h>
@@ -56,6 +54,8 @@
 
 #include <ags/audio/file/ags_audio_file.h>
 
+#include <ags/widget/ags_led.h>
+
 #include <ags/X/ags_window.h>
 #include <ags/X/ags_pad.h>
 #include <ags/X/ags_navigation.h>
@@ -66,8 +66,6 @@
 #define AGS_AUDIO_FILE_DEVOUT "AgsAudioFileDevout\0"
 #define AGS_DRUM_PLAY_RECALL "AgsDrumPlayRecall\0"
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 extern const char *AGS_DRUM_INDEX;
 
 void
@@ -154,28 +152,25 @@ void
 ags_drum_length_spin_callback(GtkWidget *spin_button, AgsDrum *drum)
 {
   AgsWindow *window;
+  
   AgsApplySequencerLength *apply_sequencer_length;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
+
+  AgsApplicationContext *application_context;
+  
   gdouble length;
   
-  task_thread = NULL;
-
-  main_loop = ags_application_context->main_loop;
-  current = main_loop->children;
-
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
-
-    current = current->next;
-  }
-
   window = (AgsWindow *) gtk_widget_get_toplevel(GTK_WIDGET(drum));
 
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
+  
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
+
   length = GTK_SPIN_BUTTON(spin_button)->adjustment->value;
 
   apply_sequencer_length = ags_apply_sequencer_length_new(G_OBJECT(AGS_MACHINE(drum)->audio),
@@ -298,11 +293,16 @@ ags_drum_index1_callback(GtkWidget *widget, AgsDrum *drum)
 void
 ags_drum_pad_callback(GtkWidget *toggle_button, AgsDrum *drum)
 {
+  AgsWindow *window;
   AgsLine *selected_line;
   AgsPattern *pattern;
   AgsTogglePatternBit *toggle_pattern_bit;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
+
+  AgsApplicationContext *application_context;
+  
   GList *list, *list_start;
   GList *line, *line_start;
   GList *tasks;
@@ -319,21 +319,15 @@ ags_drum_pad_callback(GtkWidget *toggle_button, AgsDrum *drum)
 
     return;
   }
+    
+  window = (AgsWindow *) gtk_widget_get_toplevel(GTK_WIDGET(drum));
 
-  task_thread = NULL;
-
-  main_loop = ags_application_context->main_loop;
-  current = main_loop->children;
-
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
 
-    current = current->next;
-  }
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
 
   /* calculate offset */
   list_start = 
@@ -405,32 +399,30 @@ ags_drum_tact_callback(AgsAudio *audio,
 		       AgsDrum *drum)
 {
   AgsWindow *window;
+  AgsToggleLed *toggle_led;
+
   AgsCountBeatsAudio *play_count_beats_audio;
   AgsCountBeatsAudioRun *play_count_beats_audio_run;
-  AgsToggleLed *toggle_led;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
+
+  AgsApplicationContext *application_context;
+  
   GList *list, *tmp;
   guint counter, active_led;
   gdouble active_led_old, active_led_new;
   GValue value = {0,};
-  
-  task_thread = NULL;
-
-  main_loop = ags_application_context->main_loop;
-  current = main_loop->children;
 
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
+  window = (AgsWindow *) gtk_widget_get_ancestor((GtkWidget *) drum,
+						 AGS_TYPE_WINDOW);
 
-    current = current->next;
-  }
-
-  window = AGS_WINDOW(gtk_widget_get_ancestor((GtkWidget *) drum, AGS_TYPE_WINDOW));
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
+  
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
 
   /* get some recalls */
   list = ags_recall_find_type(audio->play,
diff --git a/src/ags/X/machine/ags_drum_input_line.c b/src/ags/X/machine/ags_drum_input_line.c
index 624f11e..5dd2c73 100644
--- a/src/ags/X/machine/ags_drum_input_line.c
+++ b/src/ags/X/machine/ags_drum_input_line.c
@@ -100,9 +100,6 @@ void ags_drum_input_line_map_recall(AgsLine *line,
 static gpointer ags_drum_input_line_parent_class = NULL;
 static AgsConnectableInterface *ags_drum_input_line_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_drum_input_line_get_type()
 {
@@ -341,10 +338,10 @@ ags_drum_input_line_set_channel(AgsLine *line, AgsChannel *channel)
 
   if(channel != NULL){
     if(channel->audio != NULL &&
-       AGS_AUDIO(channel->audio)->devout != NULL){
+       AGS_AUDIO(channel->audio)->soundcard != NULL){
       AgsAudioSignal *audio_signal;
 
-      audio_signal = ags_audio_signal_new(AGS_AUDIO(channel->audio)->devout,
+      audio_signal = ags_audio_signal_new(AGS_AUDIO(channel->audio)->soundcard,
 					  channel->first_recycling,
 					  NULL);
       audio_signal->flags |= AGS_AUDIO_SIGNAL_TEMPLATE;
@@ -609,7 +606,7 @@ ags_drum_input_line_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -636,7 +633,7 @@ ags_drum_input_line_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_drum_input_pad.c b/src/ags/X/machine/ags_drum_input_pad.c
index d2f7880..0745e0e 100644
--- a/src/ags/X/machine/ags_drum_input_pad.c
+++ b/src/ags/X/machine/ags_drum_input_pad.c
@@ -19,11 +19,10 @@
 #include <ags/X/machine/ags_drum_input_pad.h>
 #include <ags/X/machine/ags_drum_input_pad_callbacks.h>
 
-#include <ags/object/ags_application_context.h>
-#include <ags-lib/object/ags_connectable.h>
-
 #include <ags/util/ags_id_generator.h>
 
+#include <ags/object/ags_application_context.h>
+#include <ags-lib/object/ags_connectable.h>
 #include <ags/object/ags_plugin.h>
 
 #include <ags/file/ags_file.h>
@@ -70,9 +69,6 @@ void ags_drum_input_pad_resize_lines(AgsPad *pad, GType line_type,
 static gpointer ags_drum_input_pad_parent_class = NULL;
 static AgsConnectableInterface *ags_drum_input_pad_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_drum_input_pad_get_type()
 {
@@ -279,7 +275,7 @@ ags_drum_input_pad_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -340,7 +336,7 @@ ags_drum_input_pad_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
     ags_file_add_id_ref(file,
 			g_object_new(AGS_TYPE_FILE_ID_REF,
-				     "application-context\0", ags_application_context,
+				     "application-context\0", file->application_context,
 				     "file\0", file,
 				     "node\0", node,
 				     "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_drum_input_pad_callbacks.c b/src/ags/X/machine/ags_drum_input_pad_callbacks.c
index 96e73ca..cda4c86 100644
--- a/src/ags/X/machine/ags_drum_input_pad_callbacks.c
+++ b/src/ags/X/machine/ags_drum_input_pad_callbacks.c
@@ -21,8 +21,9 @@
 #include <ags/X/machine/ags_drum.h>
 
 #include <ags/object/ags_application_context.h>
+#include <ags/object/ags_soundcard.h>
 
-#include <ags/thread/ags_audio_loop.h>
+#include <ags/thread/ags_thread-posix.h>
 #include <ags/thread/ags_task_thread.h>
 
 #include <ags/audio/ags_devout.h>
@@ -47,6 +48,7 @@
 
 #include <ags/audio/file/ags_audio_file.h>
 
+#include <ags/X/ags_window.h>
 #include <ags/X/ags_line_callbacks.h>
 
 #include <math.h>
@@ -60,9 +62,6 @@ void ags_drum_input_pad_init_channel_launch_callback(AgsTask *task, AgsDrumInput
 #define AGS_DRUM_INPUT_PAD_OPEN_AUDIO_FILE_NAME "AgsDrumInputPadOpenAudioFileName\0"
 #define AGS_DRUM_INPUT_PAD_OPEN_SPIN_BUTTON "AgsDrumInputPadOpenSpinButton\0"
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 void
 ags_drum_input_pad_open_callback(GtkWidget *widget, AgsDrumInputPad *drum_input_pad)
 {
@@ -119,7 +118,7 @@ void
 ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInputPad *drum_input_pad)
 {
   GtkFileChooserDialog *file_chooser;
-  AgsDevout *devout;
+  AgsSoundcard *soundcard;
   GList *list, *tasks;
   gchar *name0, *name1;
 
@@ -127,22 +126,38 @@ ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInp
   name0 = (gchar *) gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(file_chooser));
   name1 = g_object_get_data((GObject *) file_chooser, AGS_DRUM_INPUT_PAD_OPEN_AUDIO_FILE_NAME);
 
-  devout = AGS_DEVOUT(AGS_AUDIO(AGS_PAD(drum_input_pad)->channel->audio)->devout);
+  soundcard = AGS_SOUNDCARD(AGS_AUDIO(AGS_PAD(drum_input_pad)->channel->audio)->soundcard);
 
   if(toggle_button->active){
+    AgsWindow *window;
+    
     AgsAudioFile *audio_file;
     AgsDevoutPlay *devout_play;
     AgsPlayAudioSignal *play_audio_signal;
     AgsStreamAudioSignal *stream_audio_signal;
     AgsStartDevout *start_devout;
     AgsAppendRecall *append_recall;
-    AgsThread *main_loop, *current;
+
+    AgsThread *main_loop;
     AgsTaskThread *task_thread;
+
+    AgsApplicationContext *application_context;
+    
     GList *audio_signal;
     guint i;
+    guint pcm_channels;
 
     drum_input_pad->flags &= (~AGS_DRUM_INPUT_PAD_OPEN_PLAY_DONE);
 
+    /*  */
+    window = gtk_widget_get_toplevel(drum_input_pad);
+
+    application_context = window->application_context;
+    
+    main_loop = application_context->main_loop;
+    task_thread = ags_thread_find(main_loop,
+				  AGS_TYPE_TASK_THREAD);
+    
     /* AgsAudioFile */
     if(!g_strcmp0(name0, name1)){
       audio_file = (AgsAudioFile *) g_object_get_data((GObject *) file_chooser, g_type_name(AGS_TYPE_AUDIO_FILE));
@@ -152,9 +167,15 @@ ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInp
 	g_object_unref(G_OBJECT(audio_file));
       }
 
+      ags_soundcard_get_presets(soundcard,
+				&pcm_channels,
+				NULL,
+				NULL,
+				NULL);
+      
       audio_file = ags_audio_file_new(name0,
-				      devout,
-				      0, devout->pcm_channels);
+				      soundcard,
+				      0, pcm_channels);
       g_object_set_data((GObject *) file_chooser, (char *) g_type_name(AGS_TYPE_AUDIO_FILE), audio_file);
 
       ags_audio_file_open(audio_file);
@@ -162,22 +183,6 @@ ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInp
       g_message("ags_drum_input_pad_open_play:\0");
     }
 
-    /*  */
-    main_loop = ags_application_context->main_loop;
-    task_thread = NULL;
-
-    current = main_loop->children;
-
-    while(current != NULL){
-      if(AGS_IS_TASK_THREAD(current)){
-	task_thread = (AgsTaskThread *) current;
-
-	break;
-      }
-
-      current = current->next;
-    }
-    
     /* task */
     audio_signal = audio_file->audio_signal;
 
@@ -187,7 +192,7 @@ ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInp
     while(audio_signal != NULL){
       /* AgsPlayAudioSignal recall */
       play_audio_signal = ags_play_audio_signal_new(AGS_AUDIO_SIGNAL(audio_signal->data),
-						    devout,
+						    soundcard,
 						    i);
       g_object_ref(play_audio_signal);
       AGS_AUDIO_SIGNAL(audio_signal->data)->flags &= (~AGS_AUDIO_SIGNAL_TEMPLATE);
@@ -240,7 +245,7 @@ ags_drum_input_pad_open_play_callback(GtkToggleButton *toggle_button, AgsDrumInp
     tasks = g_list_reverse(tasks);
 
     /* create start task */
-    start_devout = ags_start_devout_new(devout);
+    start_devout = ags_start_devout_new(soundcard);
     tasks = g_list_prepend(tasks, start_devout);
 
     ags_task_thread_append_tasks(task_thread,
@@ -301,37 +306,36 @@ ags_drum_input_pad_open_response_callback(GtkWidget *widget, gint response, AgsD
 {
   AgsDrum *drum;
   GtkFileChooserDialog *file_chooser;
-  GtkSpinButton *spin_button;
+
   AgsAudioFile *audio_file;
-  AgsOpenSingleFile *open_single_file;
-  AgsThread *main_loop, *current;
-  AgsTaskThread *task_thread;
-  char *name0, *name1;
 
   drum = (AgsDrum *) gtk_widget_get_ancestor(GTK_WIDGET(drum_input_pad), AGS_TYPE_DRUM);
 
   file_chooser = drum_input_pad->file_chooser;
 
   if(response == GTK_RESPONSE_ACCEPT){
-    name0 = gtk_file_chooser_get_filename((GtkFileChooser *) file_chooser);
-    name1 = (char *) g_object_get_data((GObject *) file_chooser, AGS_DRUM_INPUT_PAD_OPEN_AUDIO_FILE_NAME);
+    AgsWindow *window;
+    GtkSpinButton *spin_button;
 
-    spin_button = (GtkSpinButton *) g_object_get_data((GObject *) file_chooser, AGS_DRUM_INPUT_PAD_OPEN_SPIN_BUTTON);
+    AgsOpenSingleFile *open_single_file;
 
-    main_loop = ags_application_context->main_loop;
-    task_thread = NULL;
+    AgsThread *main_loop, *current;
+    AgsTaskThread *task_thread;
 
-    current = main_loop->children;
+    AgsApplicationContext *application_context;
+    
+    char *name0, *name1;
 
-    while(current != NULL){
-      if(AGS_IS_TASK_THREAD(current)){
-	task_thread = (AgsTaskThread *) current;
+    window = gtk_widget_get_toplevel(drum);
+    
+    main_loop = application_context->main_loop;
+    task_thread = ags_thread_find(main_loop,
+				  AGS_TYPE_TASK_THREAD);
 
-	break;
-      }
+    name0 = gtk_file_chooser_get_filename((GtkFileChooser *) file_chooser);
+    name1 = (char *) g_object_get_data((GObject *) file_chooser, AGS_DRUM_INPUT_PAD_OPEN_AUDIO_FILE_NAME);
 
-      current = current->next;
-    }
+    spin_button = (GtkSpinButton *) g_object_get_data((GObject *) file_chooser, AGS_DRUM_INPUT_PAD_OPEN_SPIN_BUTTON);
 
     /* open audio file and read audio signal */
     if(!g_strcmp0(name0, name1)){
@@ -346,7 +350,7 @@ ags_drum_input_pad_open_response_callback(GtkWidget *widget, gint response, AgsD
     /* task */
     if(AGS_PAD(drum_input_pad)->group->active){
       open_single_file = ags_open_single_file_new(AGS_PAD(drum_input_pad)->channel,
-						  AGS_DEVOUT(AGS_AUDIO(AGS_MACHINE(drum)->audio)->devout),
+						  AGS_DEVOUT(AGS_AUDIO(AGS_MACHINE(drum)->audio)->soundcard),
 						  name0,
 						  0, AGS_AUDIO(AGS_MACHINE(drum)->audio)->audio_channels);
     }else{
@@ -357,7 +361,7 @@ ags_drum_input_pad_open_response_callback(GtkWidget *widget, gint response, AgsD
       line = AGS_LINE(ags_line_find_next_grouped(list)->data);
 
       open_single_file = ags_open_single_file_new(line->channel,
-						  AGS_DEVOUT(AGS_AUDIO(AGS_MACHINE(drum)->audio)->devout),
+						  AGS_SOUNDCARD(AGS_AUDIO(AGS_MACHINE(drum)->audio)->soundcard),
 						  name0,
 						  (guint) spin_button->adjustment->value, 1);
 
@@ -384,39 +388,34 @@ ags_drum_input_pad_open_response_callback(GtkWidget *widget, gint response, AgsD
 void
 ags_drum_input_pad_play_callback(GtkToggleButton *toggle_button, AgsDrumInputPad *drum_input_pad)
 {
+  AgsWindow *window;
   AgsDrum *drum;
-  AgsDevout *devout;
+
+  AgsChannel *channel;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
   AgsDevoutThread *devout_thread;
-  AgsChannel *channel;
-  GList *tasks;
-
-  drum = (AgsDrum *) gtk_widget_get_ancestor((GtkWidget *) drum_input_pad, AGS_TYPE_DRUM);
-
-  devout = AGS_DEVOUT(AGS_MACHINE(drum)->audio->devout);
 
-  main_loop = ags_application_context->main_loop;
+  AgsApplicationContext *application_context;
+  AgsSoundcard *soundcard;
 
-  main_loop = ags_application_context->main_loop;
-  task_thread = NULL;
-  devout_thread = NULL;
+  GList *tasks;
 
-  current = main_loop->children;
+  drum = (AgsDrum *) gtk_widget_get_ancestor((GtkWidget *) drum_input_pad, AGS_TYPE_DRUM);
 
-  while(current != NULL &&
-	(devout_thread == NULL ||
-	 task_thread == NULL)){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-    }
+  window = gtk_widget_get_toplevel(drum);
 
-    if(AGS_IS_DEVOUT_THREAD(current)){
-      devout_thread = (AgsDevoutThread *) current;
-    }
+  application_context = window->application_context;
+  
+  soundcard = AGS_SOUNDCARD(AGS_MACHINE(drum)->audio->soundcard);
 
-    current = current->next;
-  }
+  main_loop = application_context->main_loop;
+  
+  task_thread = ags_thread_find_type(main_loop,
+				     AGS_TYPE_TASK_THREAD);
+  devout_thread = ags_thread_find_type(main_loop,
+				       AGS_TYPE_DEVOUT_THREAD);
 
   tasks = NULL;
 
@@ -471,7 +470,7 @@ ags_drum_input_pad_play_callback(GtkToggleButton *toggle_button, AgsDrumInputPad
     }
 
     /* create start task */
-    start_devout = ags_start_devout_new(devout);
+    start_devout = ags_start_devout_new(soundcard);
     tasks = g_list_prepend(tasks,
 			   start_devout);
 
@@ -585,7 +584,7 @@ ags_drum_input_pad_init_channel_launch_callback(AgsTask *task,
       while(recycling != channel->last_recycling->next){
 	add_audio_signal = ags_add_audio_signal_new(recycling,
 						    NULL,
-						    AGS_AUDIO(channel->audio)->devout,
+						    AGS_AUDIO(channel->audio)->soundcard,
 						    AGS_RECALL(recall->data)->recall_id,
 						    0);
 
diff --git a/src/ags/X/machine/ags_drum_output_line.c b/src/ags/X/machine/ags_drum_output_line.c
index 225276e..47de2b5 100644
--- a/src/ags/X/machine/ags_drum_output_line.c
+++ b/src/ags/X/machine/ags_drum_output_line.c
@@ -77,9 +77,6 @@ void ags_drum_output_line_map_recall(AgsLine *line,
 static gpointer ags_drum_output_line_parent_class = NULL;
 static AgsConnectableInterface *ags_drum_output_line_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_drum_output_line_get_type()
 {
@@ -232,16 +229,16 @@ ags_drum_output_line_set_channel(AgsLine *line, AgsChannel *channel)
   drum_output_line = AGS_DRUM_OUTPUT_LINE(line);
 
   if(channel != NULL){
-    AgsDevout *devout;
+    AgsSoundcard *soundcard;
     AgsAudioSignal *audio_signal;
     gdouble delay;
     guint stop;
 
     if(channel->audio != NULL &&
-       AGS_AUDIO(channel->audio)->devout != NULL){
-      devout = AGS_DEVOUT(AGS_AUDIO(channel->audio)->devout);
+       AGS_AUDIO(channel->audio)->soundcard != NULL){
+      soundcard = AGS_SOUNDCARD(AGS_AUDIO(channel->audio)->soundcard);
 
-      audio_signal = ags_audio_signal_new(devout,
+      audio_signal = ags_audio_signal_new(soundcard,
 					  channel->first_recycling,
 					  NULL);
       audio_signal->flags |= AGS_AUDIO_SIGNAL_TEMPLATE;
@@ -313,7 +310,7 @@ ags_drum_output_line_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -340,7 +337,7 @@ ags_drum_output_line_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_drum_output_pad.c b/src/ags/X/machine/ags_drum_output_pad.c
index c2f67ff..0341d1b 100644
--- a/src/ags/X/machine/ags_drum_output_pad.c
+++ b/src/ags/X/machine/ags_drum_output_pad.c
@@ -19,10 +19,9 @@
 #include <ags/X/machine/ags_drum_output_pad.h>
 #include <ags/X/machine/ags_drum_output_pad_callbacks.h>
 
-#include <ags-lib/object/ags_connectable.h>
-
 #include <ags/util/ags_id_generator.h>
 
+#include <ags-lib/object/ags_connectable.h>
 #include <ags/object/ags_plugin.h>
 
 #include <ags/X/ags_line.h>
diff --git a/src/ags/X/machine/ags_ffplayer.c b/src/ags/X/machine/ags_ffplayer.c
index 4edded1..52a4736 100644
--- a/src/ags/X/machine/ags_ffplayer.c
+++ b/src/ags/X/machine/ags_ffplayer.c
@@ -56,6 +56,7 @@
 #include <ags/audio/recall/ags_play_notation_audio.h>
 #include <ags/audio/recall/ags_play_notation_audio_run.h>
 
+#include <ags/X/ags_window.h>
 #include <ags/X/ags_editor.h>
 
 #include <ags/X/machine/ags_ffplayer_bridge.h>
@@ -108,9 +109,6 @@ static AgsConnectableInterface *ags_ffplayer_parent_connectable_interface;
 
 GtkStyle *ffplayer_style;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_ffplayer_get_type(void)
 {
@@ -552,7 +550,7 @@ ags_ffplayer_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -623,7 +621,7 @@ ags_ffplayer_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
@@ -682,7 +680,7 @@ ags_ffplayer_launch_task(AgsFileLaunch *file_launch, AgsFFPlayer *ffplayer)
 			    "mode\0", AGS_IPATCH_READ,
 			    "filename\0", filename,
 			    NULL);
-    ipatch->devout = window->devout;
+    ipatch->soundcard = window->soundcard;
     ags_ipatch_open(ipatch, filename);
 
     playable = AGS_PLAYABLE(ipatch);
@@ -1144,7 +1142,7 @@ ags_ffplayer_paint(AgsFFPlayer *ffplayer)
 
 /**
  * ags_ffplayer_new:
- * @devout: the assigned devout.
+ * @soundcard: the assigned soundcard.
  *
  * Creates an #AgsFFPlayer
  *
@@ -1153,7 +1151,7 @@ ags_ffplayer_paint(AgsFFPlayer *ffplayer)
  * Since: 0.3
  */
 AgsFFPlayer*
-ags_ffplayer_new(GObject *devout)
+ags_ffplayer_new(GObject *soundcard)
 {
   AgsFFPlayer *ffplayer;
   GValue value = {0,};
@@ -1161,11 +1159,11 @@ ags_ffplayer_new(GObject *devout)
   ffplayer = (AgsFFPlayer *) g_object_new(AGS_TYPE_FFPLAYER,
 					  NULL);
 
-  if(devout != NULL){
+  if(soundcard != NULL){
     g_value_init(&value, G_TYPE_OBJECT);
-    g_value_set_object(&value, devout);
+    g_value_set_object(&value, soundcard);
     g_object_set_property(G_OBJECT(ffplayer->machine.audio),
-			  "devout\0", &value);
+			  "soundcard\0", &value);
     g_value_unset(&value);
   }
 
diff --git a/src/ags/X/machine/ags_ffplayer_callbacks.c b/src/ags/X/machine/ags_ffplayer_callbacks.c
index 08b154d..0bedc2d 100644
--- a/src/ags/X/machine/ags_ffplayer_callbacks.c
+++ b/src/ags/X/machine/ags_ffplayer_callbacks.c
@@ -57,7 +57,7 @@ ags_ffplayer_parent_set_callback(GtkWidget *widget, GtkObject *old_parent, AgsFF
 
   window = (AgsWindow *) gtk_widget_get_toplevel(widget);
   audio = ffplayer->machine.audio;
-  audio->devout = (GObject *) window->devout;
+  audio->soundcard = (GObject *) window->soundcard;
   
   AGS_MACHINE(ffplayer)->name = g_strdup_printf("Default %d\0",
 						ags_window_find_machine_counter(window, AGS_TYPE_FFPLAYER)->counter);
@@ -87,7 +87,7 @@ ags_ffplayer_open_dialog_response_callback(GtkWidget *widget, gint response,
   AgsWindow *window;
   AgsFFPlayer *ffplayer;
   GtkFileChooserDialog *file_chooser;
-  AgsDevout *devout;
+  AgsSoundcard *soundcard;
 
   window = AGS_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(machine)));
   ffplayer = AGS_FFPLAYER(machine);
@@ -114,7 +114,7 @@ ags_ffplayer_open_dialog_response_callback(GtkWidget *widget, gint response,
 			    "filename\0", filename,
 			    NULL);
       ffplayer->ipatch = ipatch;
-      ipatch->devout = window->devout;
+      ipatch->soundcard = window->soundcard;
 
       playable = AGS_PLAYABLE(ipatch);
 
@@ -263,7 +263,7 @@ ags_ffplayer_instrument_changed_callback(GtkComboBox *instrument, AgsFFPlayer *f
 
   while(channel != NULL && has_more){
     list = ags_playable_read_audio_signal(playable,
-					  AGS_MACHINE(ffplayer)->audio->devout,
+					  AGS_MACHINE(ffplayer)->audio->soundcard,
 					  channel->audio_channel, AGS_IPATCH_DEFAULT_CHANNELS);
 
     for(i = 0; i < AGS_IPATCH_DEFAULT_CHANNELS && list != NULL; i++){
@@ -277,7 +277,7 @@ ags_ffplayer_instrument_changed_callback(GtkComboBox *instrument, AgsFFPlayer *f
 				     AGS_AUDIO_SIGNAL(list->data));
       //      add_audio_signal = ags_add_audio_signal_new(channel->first_recycling,
       //					  AGS_AUDIO_SIGNAL(list->data),
-      //					  AGS_MACHINE(ffplayer)->audio->devout,
+      //					  AGS_MACHINE(ffplayer)->audio->soundcard,
       //					  NULL,
       //					  AGS_AUDIO_SIGNAL_TEMPLATE);
       //      task = g_list_prepend(task,
@@ -293,7 +293,7 @@ ags_ffplayer_instrument_changed_callback(GtkComboBox *instrument, AgsFFPlayer *f
       
   /* append tasks */
   //  task = g_list_reverse(task);
-  //  ags_task_thread_append_tasks(AGS_AUDIO_LOOP(AGS_MAIN(AGS_DEVOUT(AGS_MACHINE(ffplayer)->audio->devout)->ags_main)->main_loop)->task_thread,
+  //  ags_task_thread_append_tasks(AGS_AUDIO_LOOP(AGS_MAIN(AGS_SOUNDCARD(AGS_MACHINE(ffplayer)->audio->soundcard)->ags_main)->main_loop)->task_thread,
   //			       task);
 }
 
diff --git a/src/ags/X/machine/ags_matrix.c b/src/ags/X/machine/ags_matrix.c
index 1c8acae..19dbca8 100644
--- a/src/ags/X/machine/ags_matrix.c
+++ b/src/ags/X/machine/ags_matrix.c
@@ -32,9 +32,6 @@
 #include <ags/file/ags_file_lookup.h>
 #include <ags/file/ags_file_launch.h>
 
-#include <ags/thread/ags_thread-posix.h>
-#include <ags/thread/ags_audio_loop.h>
-
 #include <ags/audio/ags_audio.h>
 #include <ags/audio/ags_channel.h>
 #include <ags/audio/ags_input.h>
@@ -63,6 +60,7 @@
 
 #include <ags/widget/ags_led.h>
 
+#include <ags/X/ags_window.h>
 #include <ags/X/ags_menu_bar.h>
 
 #include <ags/X/machine/ags_matrix_bridge.h>
@@ -115,8 +113,6 @@ GtkStyle *matrix_style;
 
 extern const char *AGS_COPY_PATTERN;
 const char *AGS_MATRIX_INDEX = "AgsMatrixIndex\0";
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 GType
 ags_matrix_get_type(void)
@@ -536,18 +532,20 @@ ags_matrix_set_pads(AgsAudio *audio, GType type,
       source = ags_channel_nth(audio->output, pads_old);
 
       if(source != NULL){
-	AgsDevout *devout;
 	AgsAudioSignal *audio_signal;
+	
+	AgsSoundcard *soundcard;
+
 	gdouble delay;
 	guint stop;
 	
-	devout = AGS_DEVOUT(AGS_AUDIO(source->audio)->devout);
+	soundcard = AGS_SOUNDCARD(AGS_AUDIO(source->audio)->soundcard);
 
-	delay = (1.0 / devout->frequency / devout->buffer_size) * (60.0 / AGS_DEVOUT_DEFAULT_BPM);
+	delay = ags_soundcard_get_delay(soundcard);
 
 	stop = (guint) ceil(16.0 * delay * exp2(8.0 - 4.0) + 1.0);
 
-	audio_signal = ags_audio_signal_new(devout,
+	audio_signal = ags_audio_signal_new(soundcard,
 					    source->first_recycling,
 					    NULL);
 	audio_signal->flags |= AGS_AUDIO_SIGNAL_TEMPLATE;
@@ -990,7 +988,7 @@ ags_matrix_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -1068,7 +1066,7 @@ ags_matrix_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "appliaction-context\0", ags_application_context,
+				   "appliaction-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
@@ -1097,7 +1095,7 @@ ags_matrix_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
 /**
  * ags_matrix_new:
- * @devout: the assigned devout.
+ * @soundcard: the assigned soundcard.
  *
  * Creates an #AgsMatrix
  *
@@ -1106,7 +1104,7 @@ ags_matrix_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
  * Since: 0.3
  */
 AgsMatrix*
-ags_matrix_new(GObject *devout)
+ags_matrix_new(GObject *soundcard)
 {
   AgsMatrix *matrix;
   GValue value = {0,};
@@ -1114,11 +1112,11 @@ ags_matrix_new(GObject *devout)
   matrix = (AgsMatrix *) g_object_new(AGS_TYPE_MATRIX,
 				      NULL);
 
-  if(devout != NULL){
+  if(soundcard != NULL){
     g_value_init(&value, G_TYPE_OBJECT);
-    g_value_set_object(&value, devout);
+    g_value_set_object(&value, soundcard);
     g_object_set_property(G_OBJECT(AGS_MACHINE(matrix)->audio),
-			  "devout\0", &value);
+			  "soundcard\0", &value);
     g_value_unset(&value);
   }
 
diff --git a/src/ags/X/machine/ags_matrix_callbacks.c b/src/ags/X/machine/ags_matrix_callbacks.c
index 7bf9916..70820ab 100644
--- a/src/ags/X/machine/ags_matrix_callbacks.c
+++ b/src/ags/X/machine/ags_matrix_callbacks.c
@@ -18,13 +18,11 @@
 
 #include <ags/X/machine/ags_matrix_callbacks.h>
 
-#include <ags/widget/ags_led.h>
+#include <ags/object/ags_application_context.h>
 
-#include <ags/thread/ags_audio_loop.h>
+#include <ags/thread/ags_thread-posix.h>
 #include <ags/thread/ags_task_thread.h>
 
-#include <ags/object/ags_application_context.h>
-
 #include <ags/audio/ags_channel.h>
 #include <ags/audio/ags_recycling.h>
 #include <ags/audio/ags_pattern.h>
@@ -45,6 +43,8 @@
 #include <ags/audio/recall/ags_copy_pattern_channel.h>
 #include <ags/audio/recall/ags_copy_pattern_channel_run.h>
 
+#include <ags/widget/ags_led.h>
+
 #include <ags/X/ags_window.h>
 #include <ags/X/ags_navigation.h>
 
@@ -54,8 +54,6 @@ void ags_matrix_refresh_gui_callback(AgsTogglePatternBit *toggle_pattern_bit,
 				     AgsMatrix *matrix);
 
 extern const char *AGS_MATRIX_INDEX;
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 void
 ags_matrix_parent_set_callback(GtkWidget *widget, GtkObject *old_parent, AgsMatrix *matrix)
@@ -133,26 +131,25 @@ gboolean
 ags_matrix_drawing_area_button_press_callback(GtkWidget *widget, GdkEventButton *event, AgsMatrix *matrix)
 {
   if (event->button == 1){
+    AgsWindow *window;
+    
     AgsChannel *channel;
     AgsTogglePatternBit *toggle_pattern_bit;
+    
     AgsThread *main_loop, *current;
     AgsTaskThread *task_thread;
-    guint i, j;
 
-    main_loop = ags_application_context->main_loop;
-    task_thread = NULL;
+    AgsApplicationContext *application_context;
+    
+    guint i, j;
 
-    current = main_loop->children;
+    window = gtk_widget_get_toplevel(matrix);
 
-    while(current != NULL){
-      if(AGS_IS_TASK_THREAD(current)){
-	task_thread = (AgsTaskThread *) current;
-
-	break;
-      }
-
-      current = current->next;
-    }
+    application_context = window->application_context;
+    
+    main_loop = application_context->main_loop;
+    task_thread = ags_thread_find(main_loop,
+				  AGS_TYPE_TASK_THREAD);
 
     i = (guint) floor((double) event->y / (double) AGS_MATRIX_CELL_HEIGHT);
     j = (guint) floor((double) event->x / (double) AGS_MATRIX_CELL_WIDTH);
@@ -184,28 +181,24 @@ void
 ags_matrix_length_spin_callback(GtkWidget *spin_button, AgsMatrix *matrix)
 {
   AgsWindow *window;
+
   AgsApplySequencerLength *apply_sequencer_length;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
-  gdouble length;
-
-  main_loop = ags_application_context->main_loop;
-  task_thread = NULL;
-
-  current = main_loop->children;
-
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
 
-    current = current->next;
-  }
+  AgsApplicationContext *application_context;
+  
+  gdouble length;
 
   window = (AgsWindow *) gtk_widget_get_toplevel(GTK_WIDGET(matrix));
 
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
+
   length = GTK_SPIN_BUTTON(spin_button)->adjustment->value;
 
   apply_sequencer_length = ags_apply_sequencer_length_new(G_OBJECT(AGS_MACHINE(matrix)->audio),
@@ -266,33 +259,30 @@ ags_matrix_tact_callback(AgsAudio *audio,
 			 AgsMatrix *matrix)
 {
   AgsWindow *window;
+
   AgsCountBeatsAudio *play_count_beats_audio;
   AgsCountBeatsAudioRun *play_count_beats_audio_run;
   AgsToggleLed *toggle_led;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
+
+  AgsApplicationContext *application_context;
+  
   GList *list;
   guint counter, active_led;
   gdouble active_led_old, active_led_new;
-  GValue value = {0,};
 
-  main_loop = ags_application_context->main_loop;
-  task_thread = NULL;
-
-  current = main_loop->children;
-
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
-
-    current = current->next;
-  }
+  GValue value = {0,};
 
   window = AGS_WINDOW(gtk_widget_get_ancestor((GtkWidget *) matrix, AGS_TYPE_WINDOW));
 
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
+
   /* get some recalls */
   list = ags_recall_find_type(audio->play,
 			      AGS_TYPE_COUNT_BEATS_AUDIO);
diff --git a/src/ags/X/machine/ags_mixer.c b/src/ags/X/machine/ags_mixer.c
index 7a6a321..3333e9f 100644
--- a/src/ags/X/machine/ags_mixer.c
+++ b/src/ags/X/machine/ags_mixer.c
@@ -37,6 +37,7 @@
 #include <ags/audio/ags_recall_factory.h>
 #include <ags/audio/ags_recall.h>
 
+#include <ags/X/ags_window.h>
 #include <ags/X/ags_pad.h>
 #include <ags/X/ags_line.h>
 
@@ -83,8 +84,6 @@ static gpointer ags_mixer_parent_class = NULL;
 static AgsConnectableInterface *ags_mixer_parent_connectable_interface;
 
 extern const char *AGS_MIX_VOLUME;
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 GType
 ags_mixer_get_type(void)
@@ -293,7 +292,7 @@ ags_mixer_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -357,7 +356,7 @@ ags_mixer_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_oscillator.c b/src/ags/X/machine/ags_oscillator.c
index ba270ff..30e4e3c 100644
--- a/src/ags/X/machine/ags_oscillator.c
+++ b/src/ags/X/machine/ags_oscillator.c
@@ -47,8 +47,6 @@ void ags_oscillator_show(GtkWidget *widget);
  */
 
 static AgsConnectableInterface *ags_oscillator_parent_connectable_interface;
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 GType
 ags_oscillator_get_type(void)
@@ -269,7 +267,7 @@ ags_file_read_oscillator(AgsFile *file, xmlNode *node, AgsOscillator **oscillato
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -343,7 +341,7 @@ ags_file_write_oscillator(AgsFile *file, xmlNode *parent, AgsOscillator *oscilla
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_panel.c b/src/ags/X/machine/ags_panel.c
index 704a8fe..d3f9dff 100644
--- a/src/ags/X/machine/ags_panel.c
+++ b/src/ags/X/machine/ags_panel.c
@@ -89,8 +89,6 @@ static gpointer ags_panel_parent_class = NULL;
 static AgsConnectableInterface *ags_panel_parent_connectable_interface;
 
 extern const char *AGS_COPY_INPUT_TO_OUTPUT;
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 GType
 ags_panel_get_type(void)
@@ -305,7 +303,7 @@ ags_panel_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -371,7 +369,7 @@ ags_panel_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
@@ -402,7 +400,7 @@ ags_panel_set_pads(AgsAudio *audio, GType type,
 
 /**
  * ags_panel_new:
- * @devout: the assigned devout.
+ * @soundcard: the assigned soundcard.
  *
  * Creates an #AgsPanel
  *
@@ -411,7 +409,7 @@ ags_panel_set_pads(AgsAudio *audio, GType type,
  * Since: 0.3
  */
 AgsPanel*
-ags_panel_new(GObject *devout)
+ags_panel_new(GObject *soundcard)
 {
   AgsPanel *panel;
   GValue value = {0,};
@@ -419,11 +417,11 @@ ags_panel_new(GObject *devout)
   panel = (AgsPanel *) g_object_new(AGS_TYPE_PANEL,
 				    NULL);
 
-  if(devout != NULL){
+  if(soundcard != NULL){
     g_value_init(&value, G_TYPE_OBJECT);
-    g_value_set_object(&value, devout);
+    g_value_set_object(&value, soundcard);
     g_object_set_property(G_OBJECT(AGS_MACHINE(panel)->audio),
-			  "devout\0", &value);
+			  "soundcard\0", &value);
     g_value_unset(&value);
   }
 
diff --git a/src/ags/X/machine/ags_synth.c b/src/ags/X/machine/ags_synth.c
index fc1fec1..1c28fa8 100644
--- a/src/ags/X/machine/ags_synth.c
+++ b/src/ags/X/machine/ags_synth.c
@@ -109,8 +109,6 @@ void ags_synth_update(AgsSynth *synth);
 static gpointer ags_synth_parent_class = NULL;
 
 static AgsConnectableInterface *ags_synth_parent_connectable_interface;
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
 
 GType
 ags_synth_get_type(void)
@@ -450,7 +448,7 @@ ags_synth_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -528,7 +526,7 @@ ags_synth_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
@@ -572,12 +570,19 @@ ags_synth_set_pads(AgsAudio *audio, GType type,
 void
 ags_synth_update(AgsSynth *synth)
 {
+  AgsWindow *window;
   AgsOscillator *oscillator;
-  AgsDevout *devout;
+
   AgsChannel *channel;
   AgsApplySynth *apply_synth;
+
   AgsThread *main_loop, *current;
   AgsTaskThread *task_thread;
+
+  AgsApplicationContext *application_context;
+  
+  AgsSoundcard *soundcard;
+
   GList *input_pad, *input_pad_start;
   GList *input_line, *input_line_start;
   guint wave;
@@ -586,22 +591,15 @@ ags_synth_update(AgsSynth *synth)
   guint loop_start, loop_end;
   gdouble volume;
 
-  main_loop = ags_application_context->main_loop;
-  task_thread = NULL;
-
-  current = main_loop->children;
-
-  while(current != NULL){
-    if(AGS_IS_TASK_THREAD(current)){
-      task_thread = (AgsTaskThread *) current;
-
-      break;
-    }
-
-    current = current->next;
-  }
+  window = gtk_widget_get_toplevel(synth);
+  
+  application_context = window->application_context;
+  
+  main_loop = application_context->main_loop;
+  task_thread = ags_thread_find(main_loop,
+				AGS_TYPE_TASK_THREAD);
 
-  devout = AGS_DEVOUT(AGS_MACHINE(synth)->audio->devout);
+  soundcard = AGS_SOUNDCARD(AGS_MACHINE(synth)->audio->soundcard);
 
   start = (guint) gtk_spin_button_get_value_as_int(synth->lower);
 
@@ -674,7 +672,7 @@ ags_synth_update(AgsSynth *synth)
 
 /**
  * ags_synth_new:
- * @devout: the assigned devout.
+ * @soundcard: the assigned soundcard.
  *
  * Creates an #AgsSynth
  *
@@ -683,7 +681,7 @@ ags_synth_update(AgsSynth *synth)
  * Since: 0.3
  */
 AgsSynth*
-ags_synth_new(GObject *devout)
+ags_synth_new(GObject *soundcard)
 {
   AgsSynth *synth;
 
@@ -691,7 +689,7 @@ ags_synth_new(GObject *devout)
 				    NULL);
 
   g_object_set(G_OBJECT(AGS_MACHINE(synth)->audio),
-	       "devout\0", devout,
+	       "soundcard\0", soundcard,
 	       NULL);
 
   return(synth);
diff --git a/src/ags/X/machine/ags_synth_input_line.c b/src/ags/X/machine/ags_synth_input_line.c
index 9909195..b955d4b 100644
--- a/src/ags/X/machine/ags_synth_input_line.c
+++ b/src/ags/X/machine/ags_synth_input_line.c
@@ -75,9 +75,6 @@ void ags_synth_input_line_map_recall(AgsLine *line,
 static gpointer ags_synth_input_line_parent_class = NULL;
 static AgsConnectableInterface *ags_synth_input_line_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_synth_input_line_get_type()
 {
@@ -273,7 +270,7 @@ ags_synth_input_line_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -336,7 +333,7 @@ ags_synth_input_line_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/X/machine/ags_synth_input_pad.c b/src/ags/X/machine/ags_synth_input_pad.c
index 61d268f..312ea96 100644
--- a/src/ags/X/machine/ags_synth_input_pad.c
+++ b/src/ags/X/machine/ags_synth_input_pad.c
@@ -66,9 +66,6 @@ void ags_synth_input_pad_resize_lines(AgsPad *pad, GType line_type,
 static gpointer ags_synth_input_pad_parent_class = NULL;
 static AgsConnectableInterface *ags_synth_input_pad_parent_connectable_interface;
 
-extern pthread_key_t application_context;
-AgsApplicationContext *ags_application_context =  pthread_getspecific(application_context);
-
 GType
 ags_synth_input_pad_get_type()
 {
@@ -218,7 +215,7 @@ ags_synth_input_pad_read(AgsFile *file, xmlNode *node, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", xmlGetProp(node, AGS_FILE_ID_PROP)),
@@ -246,7 +243,7 @@ ags_synth_input_pad_write(AgsFile *file, xmlNode *parent, AgsPlugin *plugin)
 
   ags_file_add_id_ref(file,
 		      g_object_new(AGS_TYPE_FILE_ID_REF,
-				   "application-context\0", ags_application_context,
+				   "application-context\0", file->application_context,
 				   "file\0", file,
 				   "node\0", node,
 				   "xpath\0", g_strdup_printf("xpath=//*[@id='%s']\0", id),
diff --git a/src/ags/audio/file/ags_ipatch.c b/src/ags/audio/file/ags_ipatch.c
index 3ac2657..b4506dd 100644
--- a/src/ags/audio/file/ags_ipatch.c
+++ b/src/ags/audio/file/ags_ipatch.c
@@ -19,6 +19,7 @@
 #include <ags/audio/file/ags_ipatch.h>
 
 #include <ags-lib/object/ags_connectable.h>
+#include <ags/object/ags_soundcard.h>
 #include <ags/object/ags_playable.h>
 
 #include <ags/audio/file/ags_ipatch_sf2_reader.h>
@@ -57,7 +58,7 @@ signed short* ags_ipatch_read(AgsPlayable *playable, guint channel,
 			      GError **error);
 void ags_ipatch_close(AgsPlayable *playable);
 GList* ags_ipatch_read_audio_signal(AgsPlayable *playable,
-				    AgsDevout *devout,
+				    AgsSoundcard *soundcard,
 				    guint start_channel, guint channels);
 
 /**
@@ -196,7 +197,7 @@ ags_ipatch_init(AgsIpatch *ipatch)
 {
   ipatch->flags = 0;
 
-  ipatch->devout = NULL;
+  ipatch->soundcard = NULL;
   ipatch->audio_signal= NULL;
 
   ipatch->file = NULL;
@@ -843,7 +844,7 @@ ags_ipatch_finalize(GObject *gobject)
  */
 GList*
 ags_ipatch_read_audio_signal(AgsPlayable *playable,
-			     AgsDevout *devout,
+			     AgsSoundcard *soundcard,
 			     guint start_channel, guint channels)
 {
   AgsIpatch *ipatch;
@@ -852,7 +853,7 @@ ags_ipatch_read_audio_signal(AgsPlayable *playable,
   ipatch = AGS_IPATCH(playable);
 
   list = ags_playable_read_audio_signal(AGS_PLAYABLE(ipatch->reader),
-					ipatch->devout,
+					ipatch->soundcard,
 					0, 2);
 
   ipatch->audio_signal = list;
diff --git a/src/ags/audio/file/ags_ipatch.h b/src/ags/audio/file/ags_ipatch.h
index 7390941..cd5584d 100644
--- a/src/ags/audio/file/ags_ipatch.h
+++ b/src/ags/audio/file/ags_ipatch.h
@@ -23,8 +23,6 @@
 #include <glib-object.h>
 #include <libinstpatch/libinstpatch.h>
 
-#include <ags/audio/ags_devout.h>
-
 #define AGS_TYPE_IPATCH                (ags_ipatch_get_type())
 #define AGS_IPATCH(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_IPATCH, AgsIpatch))
 #define AGS_IPATCH_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_IPATCH, AgsIpatchClass))
@@ -52,7 +50,7 @@ struct _AgsIpatch
 
   guint flags;
 
-  AgsDevout *devout;
+  GObject *soundcard;
   GList *audio_signal;
 
   IpatchFile *file;

-- 
gsequencer packaging



More information about the pkg-multimedia-commits mailing list