newsAdvanced Gtk+ Sequencer - News: GSequencer version 4.0.5 released

 
 
Latest News
GSequencer version 4.0.5 released posted by jkraehemann, Tue 24 May 2022 05:54:00 PM UTC - 0 replies
GSequencer version 4.0.x announcement posted by jkraehemann, Sat 26 Feb 2022 09:47:43 AM UTC - 0 replies
GSequencer version 3.14.3 released posted by jkraehemann, Tue 21 Dec 2021 08:14:10 PM UTC - 0 replies
deprecated AgsDevout, AgsDevin and AgsMidiin posted by jkraehemann, Wed 08 Dec 2021 12:30:55 PM UTC - 0 replies
GSequencer version 3.10.5 released posted by jkraehemann, Sun 29 Aug 2021 07:41:14 AM UTC - 0 replies
[Submit News]
[107 news in archive]

GSequencer version 4.0.5 released

Item posted by Joël Krähemann <jkraehemann> on Tue 24 May 2022 05:54:00 PM UTC.

Today, we released the new GSequencer major release version 4.0.0.

I was working on the version 4.0.x branch for 6 months. We migrated to Gtk4 and libsoup-3.0.

The migration to Gtk4 was a big task. Implementing GtkOrientable was a thing and for sure the removal of GtkContainer. But with these changes we have a better libgsequencer.so, now. The introduction of AgsConnectableFlags was affecting many objects in following shared libraries: libags.so, libags_thread.so, libags_server.so and libags_audio.so.

The hamburger menu replaced the traditional menubar, but it is still available. The editor's machine selector widget has seen some changes. You enable or disable machines by a popover menu. The machines are in order of machine's vertical box.

The wave form editor clipboard was fixed.

uniform API for utility functions

For all audio processing functions we have a matching utility header. The audio processing functions are tied to a boxed type. This struct allows you to prefault memory and adjusting parameters.

  • ags/audio/ags_chorus_util.h
  • ags/audio/ags_envelope_util.h
  • ags/audio/ags_fast_pitch_util.h
  • ags/audio/ags_fluid_iir_filter_util.h
  • ags/audio/ags_fluid_interpolate_4th_order_util.h
  • ags/audio/ags_fluid_interpolate_7th_order_util.h
  • ags/audio/ags_fluid_interpolate_linear_util.h
  • ags/audio/ags_fluid_interpolate_none_util.h
  • ags/audio/ags_fm_synth_util.h
  • ags/audio/ags_frequency_aliase_util.h
  • ags/audio/ags_hq_pitch_util.h
  • ags/audio/ags_lfo_synth_util.h
  • ags/audio/ags_linear_interpolate_util.h
  • ags/audio/ags_noise_util.h
  • ags/audio/ags_peak_util.h
  • ags/audio/ags_phase_shift_util.h
  • ags/audio/ags_resample_util.h
  • ags/audio/ags_sf2_synth_util.h
  • ags/audio/ags_sfz_synth_util.h
  • ags/audio/ags_synth_util.h
  • ags/audio/ags_time_stretch_util.h
  • ags/audio/ags_volume_util.h

Common fields for audio buffers are destination, destination_stride, source and source_stride or for presets buffer_length, format and samplerate. The struct's fields have getter/setter functions in general.

The format field was unified to use these formats:

  • AGS_SOUNDCARD_SIGNED_8_BIT
  • AGS_SOUNDCARD_SIGNED_16_BIT
  • AGS_SOUNDCARD_SIGNED_24_BIT
  • AGS_SOUNDCARD_SIGNED_32_BIT
  • AGS_SOUNDCARD_SIGNED_64_BIT
  • AGS_SOUNDCARD_FLOAT
  • AGS_SOUNDCARD_DOUBLE
  • AGS_SOUNDCARD_COMPLEX

The destination and source field usually have got the very same format. The functions take 1 argument, the box type struct as a pointer.

No messages in GSequencer version 4.0.5 released

 

Back to the top


Powered by Savane 3.9