Gsequencer-9 review request privileged interfaces

Hi,

My name is Joël, I am the maintainer of “Advanced Gtk+ Sequencer” aka. GSequencer. I would love to provider a new major release of the software as gsequencer-9.

regards, Joël


This request has been added to the queue for review by the @reviewers team.

Hello @jkraehemann :slight_smile:

Given the snap’s functionality both requests make sense to me, hence this is a +1 (#voteFor) from my side for auto-connecting the personal-files and content interfaces to the gsequencer-9 snap.

1 Like

Hello!

This is also a +1 from me to grant the gsequencer-9 snap auto-connection for the declared content plug interface and the personal-files interface given the clear ownership of the config files requested. In addition, this is consistent with the privileges granted for gsequencer-8 in a previous request.

1 Like

Hi @jkraehemann!

I have a quick question before granting. Can you please specify exactly which content interfaces you are requesting for?

Concerning the personal-files interface, I went through the snapcraft.yaml, so I am guessing you are referring to thedot-gsequencer one.

Hi @yomonokio

I request for exactly 2 files content access. Both have configuration purpose.

The ags.conf TOML file configures soundcards, sequencers and generic section with ui refresh rate. The “threads“ group’s key max-precision gives you sync rate, I would recommend a value of 60 if not recording or playing MIDI keyboards.

$HOME/.gsequencer/ags.conf

Here is an example ags.conf file configuring pulseaudio:

[generic]
disable-feature=experimental
autosave-thread=false
segmentation=4/4
engine-mode=performance
rt-safe=false
gui-scale=1.0
update-ui-timeout=0.2

[soundcard-0]
backend=pulse
capability=playback
buffer-size=512
pcm-channels=2
format=16
samplerate=48000
device=ags-pulse-devout-0
use-cache=true
cache-buffer-size=4096

[recall]
auto-sense=true

[thread]
model=super-threaded
super-threaded-scope=audio
lock-global=ags-thread
lock-parent=ags-recycling-thread
thread-pool-max-unused-threads=8
max-precision=250

[osc-server]
auto-start=false
any-address=false
enable-ip4=false
ip4-address=127.0.0.1
enable-ip6=false
ip6-address=::1
server-port=9000
monitor-timeout=0.033333

AgsAudioLoop, AgsAudioThread and AgsChannelThread make usee of “audio“ priority key value. This affects what realtime priority audio processing threads get.

$HOME/.gsequencer/priority.conf

Here is an example priority.conf file configuring realtime priorities on linux.

[rt-thread]
libags=45
server-main-loop=45
audio-main-loop=45
audio=45
osc-server-main-loop=45
gui-main-loop=15
1 Like

Note that the icon-themes plug you got in your snapcraft.yaml is pointless, as the desktop, X11, wayland and audio-playback are …

Your app uses the gnome extension already, that will automatically add all these plugs and make sure the icon-themes one is automatically connected…

To see what an extension adds automatically you can comment out all the plugs for a test and run snapcraft expand-extensions in your source tree, that will print out the complete snapcraft.yaml with all bits the extension adds during build (there might also be layouts and environment settings/variables)

EDIT: oh, and pulseaudio is deprecated, audio-playback and audio-record replace it, so having it is redundant

1 Like

Hi @ogra

Thank you, I have just applied your changes.

regards, Joël

1 Like

Hi,

I just do explicit prime.

regards, Joël

+2 votes for and 0 against. Granting personal-files interface to gsequencer-9 . This is now live!