newsAdvanced Gtk+ Sequencer - News: Heavy cleaned code and critical bug-fix in GSequencer v0.7.73

 
 
Latest News
GSequencer v2.1.53 for debian buster posted by jkraehemann, Fri 08 Mar 2019 11:01:12 PM UTC - 0 replies
Get emotional as debian buster is going to be released posted by jkraehemann, Thu 07 Mar 2019 12:46:59 AM UTC - 0 replies
State of GSequencer in debian buster posted by jkraehemann, Sun 03 Mar 2019 07:08:32 PM UTC - 0 replies
handling LV2 iriref posted by jkraehemann, Wed 13 Feb 2019 10:20:49 AM UTC - 0 replies
fixed ref-count posted by jkraehemann, Sat 09 Feb 2019 02:46:41 PM UTC - 0 replies
[Submit News]
[79 news in archive]

Heavy cleaned code and critical bug-fix in GSequencer v0.7.73

Item posted by Joël Krähemann <jkraehemann> on Wed 28 Sep 2016 03:18:33 AM UTC.

About 4 days spending on compiler warnings and fixing them. So we could say I was really busy. Further recently I figured out a critical bug in ags_audio.c not cleaning up properly after shrinking lines. This was annoying since AgsFFPlayer caused to crash after selecting a Soundfont2 having less audio pads. During the clean there were detected some other issues not very important.

Refactored loading configuration from AgsSimpleFile

I have reduced some duplicated code as reading project files using the simple format. Everything is now setup by ags_xorg_application_context.c and not by ags_simple_file.c anymore. First the configuration gets extracted by a XPath expression and the loaded additionally to the default configuration.

Although the file is opened twice the change is appreciated very much.

Heavy code clean-up

4 days from morning till late evening working on fixing mismatched pointer types was horrible. But it was a chance to revisit the code and look for the right. There was an issue with AgsNotationEdit and AgsPatternEdit accessing a GList not correctly. Rather abusing the list as an instance of a certain type.

Yeah, over 30.000 lines of compiler output was really heavy. Now, you just get warnings of strings containing terminating null-byte or discarding qualifier. That's ok since everything in GSequencer is modular.

Exporting symbols lead me to decide to do the clean-up. As recognizing there are wrong named functions in the header files. How ever it's fixed now and should go straight forward yet.

Improved JACK synchronization and enabled multiple sinks

Blocking JACK callback on entry and signaling AgsJackDevout if done audio processing causes JACK to integrated better. That's why the Advanced Gtk+ Sequencer won't proceed processing until JACK is done.

AgsPanel got more useful there is now a connection editor available from machines context menu. Specify the wished mapping of AgsPanels line to the available soundcards. It's not very well tested but basically you can do more advanced setups using multiple soundcards.

OSS4 output is supported again 10 years ago dropped. The configure script can customize the build by --disable-alsa or --disable-oss flag. Both are enabled by default.

JACK Audio Connection Kit output is defaulted for now. Your configuration file can now contain numbered soundcards specifying each a possible device.

[soundcard-0]
backend=jack
samplerate=48000
buffer-size=512
pcm-channels=2
device=ags-devout-0
format=16

No messages in Heavy cleaned code and critical bug-fix in GSequencer v0.7.73

 

Back to the top


Powered by Savane 3.4