denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Denemo-devel] Poor audio quality & the release


From: Richard Shann
Subject: [Denemo-devel] Poor audio quality & the release
Date: Sat, 18 Feb 2012 11:22:59 +0000

I have been reporting bad audio running the default denemo (portaudio
and fluidsynth). I think I have tracked this down to the very large
soundfont I am using (171 Mb virtually all of which is dedicated to just
one program, it is a one 4 sec sample per note soundfont which really
does sound like a musical instrument, apart from the note-termination
being missing - it just stops rather than snarling at the end).
So I think this is just down to my limited hardware (I note that
fluidsynth attempts to lock the soundfont in RAM and warns that this
does not succeed; I would be interested to know what hardware/software
it would succeed on ...)
So I don't think this is an issue for the release.
Issues known to me are
      * Accesses are made to start_time and end_time by the threads.
        These are stored as floating point numbers, giving times in
        seconds. I imagine they should be protected, as reading them
        halfway through a change could yield a NaN which might then give
        a floating point exception. It might be better to store these
        times as integer values.
      * The workaround I have put in for the cpu hogging uses a boolean
        to hold off the portaudio input thread from trying to get
        samples from Denemo until the main loop has fallen idle for the
        first time. The ready flag should also have protection, via
        g_atomic_int_get() I would imagine. However, perhaps this
        workaround is not going to be needed - perhaps we should move
        the entire initialization of the audio/midi system into an idle
        callback from the main loop, so that everything in Denemo is
        ready to roll before it is started?
      * Problems with the non-default build (alsabackend.c). Should
        these delay the release? The sort of knowledgeable folk who
        might use it will probably go to git.
Richard





reply via email to

[Prev in Thread] Current Thread [Next in Thread]