Re: [off-list] [LAD] Just an information for the coders of Rosegarden and Open Octave

View: New views
3 Messages — Rating Filter:   Alert me  

Parent Message unknown Re: [off-list] [LAD] Just an information for the coders of Rosegarden and Open Octave

by Emanuel Rumpf-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/11/9 Chris Cannam <cannam@...>:

> On Mon, Nov 9, 2009 at 4:04 PM, Ralf Mardorf <ralf.mardorf@...> wrote:
>> Chris Cannam wrote:
>>> If using the timer locks the system, then it's a kernel problem.
>>
>> Hm? It "seems" to be fine for Qtractor here.
>
> If a userspace application that is not running with RT privileges can
> lock the system, then the kernel is at fault.  And Rosegarden doesn't
> use RT privileges for MIDI, it uses the ALSA sequencer's in-kernel
> scheduling mechanism instead.
>
> I don't know anything about the hrtimer module and have never had a
> kernel with it installed, but from the description it seems to be
> presented as just another timer option for the ALSA sequencer kernel
> driver.  Selecting it as the timer for use by Rosegarden only means
> that Rosegarden tells the ALSA sequencer module to use that timer --
> Rosegarden does nothing with it itself.
>
> If that locks your machine, it's an ALSA or other kernel bug.
>


Hm. Looks like jackdbus and qtractor are working fine with the HRTimer here:

output of
lsmod | grep hrt

before jackdbus started:
snd_hrtimer             2532  0

after jackdbus started:
snd_hrtimer             2532  1

after qtractor started:
snd_hrtimer             2532  2    <=== number increases, no crash



Both (rosegarden and qtractor) use the alsa api,
while jackdbus uses the hpet api.
The alsa-driver seems to have code for both, hpet and hrt.




grep snd_timer_open (alsa api function)

from qtractor:
- -
tractorMidiTimer.cpp
91: if (snd_timer_open(&pTimer, szTimer, SND_TIMER_OPEN_NONBLOCK) >= 0) {


from rosegarden-svn:
- -
src/sound/AlsaDriver.cpp
322:            if (snd_timer_open(&timerHandle, timerName,
SND_TIMER_OPEN_NONBLOCK) < 0) {




--
E.R.

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Just an information for the coders of Rosegarden and Open Octave

by Emanuel Rumpf-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/11/9 Emanuel Rumpf <em.rumpf@...>:
>
> Both (rosegarden and qtractor) use the alsa api,
> while jackdbus uses the hpet api.
> The alsa-driver seems to have code for both, hpet and hrt.
>
>

There is another oddity:
When running jackdbus with the HRTimer selected,
but RG with the system-timer (because otherwise it would freeze the sys.)
I still can't use it, because of a message claiming my system would
not suffice for realtime audio editing:
"Out of processor power for real-time audio processing.  Cannot continue."
No playback allowed.
It's doing wrong math then.


--
E.R.

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Just an information for the coders of Rosegarden and Open Octave

by Emanuel Rumpf-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Additional info:

When selecting "HR timer", RG freezes the system in

src/sound/AlsaDriver.cpp
LINE 1498

when calling:
checkAlsaError(snd_seq_drain_output(m_midiHandle), "setCurrentTimer():
draining output to continue queue");


If that line is being commented out, it freezes any time later.


--
E.R.

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel