LMMS 0.4.6 released

Discuss anything new and newsworthy! See http://planet.linuxaudio.org and https://libreav.org/news for more Linux Audio News!

Announcements of proprietary software may fit better in the Marketplace.


Moderators: raboof, MattKingUSA, khz

tobydox
Posts: 2
Joined: Mon Dec 28, 2009 2:31 pm

Re: LMMS 0.4.6 released

Post by tobydox »

raboof wrote: Indeed your proposed fix above gets rid of the malloc() that caused trouble.
Ok, I'll do the allocation once at initialization time then.
raboof wrote: The next problem is locking: you can't lock in the process-callback, but the fifoBuffer used is using locking:
I'll have a look for a lockless queue/Fifo.

Anyways I'll be off for vacation for the next new days, so please don't expect any reactions from my side.
User avatar
funkmuscle
Established Member
Posts: 2807
Joined: Mon Jun 02, 2008 2:30 pm
Has thanked: 131 times
Been thanked: 33 times

Re: LMMS 0.4.6 released

Post by funkmuscle »

progress, YES!!! :D
SR
Established Member
Posts: 218
Joined: Wed May 07, 2008 6:01 pm
Location: Houston, Tx

Re: LMMS 0.4.6 released

Post by SR »

funkmuscle wrote:progress, YES!!! :D
Yes, this is encouraging. I first dabbled with LMMS a little over a year ago but couldn't dedicate much time to it because it only worked reliably with OSS on my system. It would be really awesome if it could become a regular part of my arsenal.
User avatar
autostatic
Established Member
Posts: 1994
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands
Has thanked: 32 times
Been thanked: 104 times
Contact:

Re: LMMS 0.4.6 released

Post by autostatic »

tobydox wrote:You're right the QVector-thing is not optimal. However there shouldn't be a problem with deep copy as QVector is just used for storing pointers here. In this special case, the concerned code at the beginning of AudioJack::processCallback() easily can be replaced by C99-Code:

Code: Select all

   jack_default_audio_sample_t * outbufs[channels()];
    for( int i = 0; i < channels(); ++i )
    {
        outbufs[i] =  (jack_default_audio_sample_t *) jack_port_get_buffer( m_outputPorts[i], _nframes );
    }
I did not have any chance to test whether this really improves things - maybe someone else here? The "#ifdef AUDIO_PORT_SUPPORT" codepath btw is currently not used so should not be guilty of xruns.
Hello Tobias, compiled LMMS 0.4.6 with the above code and played a tune in LMMS:

Code: Select all

configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 2 periods for playback
22:25:01.746 Server configuration saved to "/home/jeremy/.jackdrc".
22:25:01.748 Statistics reset.
22:25:01.749 Client activated.
22:25:01.753 JACK connection change.
22:25:01.758 JACK connection graph change.
SSE2 detected
**** alsa_pcm: xrun of at least 6.298 msecs
22:25:06.084 XRUN callback (1).
22:25:06.156 JACK connection graph change.
22:25:06.175 JACK connection change.
22:25:06.807 JACK connection graph change.
subgraph starting at qjackctl timed out (subgraph_wait_fd=16, status = 0, state = Running, pollret = 0 revents = 0x0)
**** alsa_pcm: xrun of at least 488.529 msecs
22:25:15.448 JACK connection graph change.
22:25:15.448 XRUN callback (2).
22:25:15.454 JACK connection change.
22:25:16.267 JACK connection graph change.
22:25:16.456 JACK connection change.
**** alsa_pcm: xrun of at least 0.440 msecs
22:25:56.255 XRUN callback (3).
**** alsa_pcm: xrun of at least 4.668 msecs
**** alsa_pcm: xrun of at least 10.038 msecs
22:26:02.785 XRUN callback (5).
**** alsa_pcm: xrun of at least 1.208 msecs
22:26:04.424 XRUN callback (1 skipped).
**** alsa_pcm: xrun of at least 9.452 msecs
22:26:44.423 XRUN callback (7).
**** alsa_pcm: xrun of at least 2.454 msecs
**** alsa_pcm: xrun of at least 7.855 msecs
22:26:46.520 XRUN callback (1 skipped).
**** alsa_pcm: xrun of at least 1.407 msecs
22:26:46.884 XRUN callback (10).
22:26:57.668 JACK connection graph change.
22:26:57.824 JACK connection change.
So I either did something wrong or performance is worse now.

Jeremy

Diff file: http://linux.autostatic.com/ubuntu/lmms-jack.patch
User avatar
raboof
Established Member
Posts: 1855
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 50 times
Been thanked: 74 times
Contact:

Re: LMMS 0.4.6 released

Post by raboof »

AutoStatic wrote:So I either did something wrong or performance is worse now.
That seems unlikely - a small improvement might be to store 'channels()' in a variable instead of calling it every iteration of the loop - but that really shouldn't change much.

The patch looks all-right to me.
User avatar
autostatic
Established Member
Posts: 1994
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands
Has thanked: 32 times
Been thanked: 104 times
Contact:

Re: LMMS 0.4.6 released

Post by autostatic »

Tested it with my onboard card and that one's not working properly with Karmic's RT kernel I think. So I'll give it a try with my UA-25.
hugues72
Posts: 2
Joined: Fri Jan 01, 2010 3:16 pm

Re: LMMS 0.4.6 released - Ubuntu 9.10 and LMMS 0.4.6 ppa - lmms

Post by hugues72 »

Hello,

I have recently installed Ubuntu 9.10, then LMMS 0.4.5, then Ubuntu Studio for Ubuntu 9.10. and finally upgraded LMMS 0.4.6 ppa-3

i loose sound...
when i do
sudo /etc/init.d/alsa-utils stop
sudo alsa force-reload
sudo /etc/init.d/alsa-utils start

it works once, then it does not work anymore at the next startup
it seems that the process lmms freezes


When I try to follow the LMMS tutorial, http://lmms.sourceforge.net/wiki/ind...Song_with_LMMS , I have got LMMS who freezes.

when i look into process status, i can find several lmms processes in status "futex_wait_queue_me"
i kill them, re-open lmms and i come to same situation after one sound played...

What can i do to re-establish a good environment?

thx u very much for any help.
roaldz
Established Member
Posts: 28
Joined: Sat May 02, 2009 3:21 pm
Location: Almelo, Netherlands
Contact:

Re: LMMS 0.4.6 released

Post by roaldz »

I completely agree. It's a pity my Firewire soundcard isn't supported in LMMS. I would really like decent jack support.
If only I could do some C..

It's true btw. LMMS works better in windows, really. Only the latency is not adjustable to a decent value to do some midi recording...
User avatar
autostatic
Established Member
Posts: 1994
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands
Has thanked: 32 times
Been thanked: 104 times
Contact:

Re: LMMS 0.4.6 released

Post by autostatic »

Did some more testing and the patch doesn't improve the performance of LMMS, actually it got worse.
User avatar
raboof
Established Member
Posts: 1855
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 50 times
Been thanked: 74 times
Contact:

Re: LMMS 0.4.6 released

Post by raboof »

AutoStatic wrote:Did some more testing and the patch doesn't improve the performance of LMMS, actually it got worse.
What exactly are you comparing? A home-compiled LMMS with the patch vs a home-compiled LMMS without it? Or a home-compiled LMMS with the patch vs an unpatched version you got somewhere else?
User avatar
autostatic
Established Member
Posts: 1994
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands
Has thanked: 32 times
Been thanked: 104 times
Contact:

Re: LMMS 0.4.6 released

Post by autostatic »

I'm comparing the Ubuntu debs that are in tobydox's PPA to the debs I compiled from the source of tobydox's debs with the patch applied. So roughly I just did apt-get source lmms, then applied the patch to the source and recompiled with debuild -us -uc. I can't exclude I made any mistakes, got home this morning around 6 in the morning after DJ'ing on a new year's party.
User avatar
raboof
Established Member
Posts: 1855
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 50 times
Been thanked: 74 times
Contact:

Re: LMMS 0.4.6 released

Post by raboof »

AutoStatic wrote:I'm comparing the Ubuntu debs that are in tobydox's PPA to the debs I compiled from the source of tobydox's debs with the patch applied. So roughly I just did apt-get source lmms, then applied the patch to the source and recompiled with debuild -us -uc. I can't exclude I made any mistakes
That should be a fair comparison... but the result is so unexpected :S. Could you try, just to make sure, comparing to a version compiled with debuild without the patch applied?
got home this morning around 6 in the morning after DJ'ing on a new year's party.
Nice ;)
StudioDave
Established Member
Posts: 753
Joined: Sat Nov 01, 2008 1:12 pm

Re: LMMS 0.4.6 released

Post by StudioDave »

I don't want to rain on anyone's parade, but this entire discussion should be taking place on the LMMS forum. At the least, someone should provide an awareness link to the LMMS boards so they know what's going on here. It is possible that someone there has some cogent ideas too.

Ignore if this has already been done. :)

Also, if anyone needs specific help with LMMS, please post to the LMMS site as well wherever else you've posted. The LMMS devs are like devs everywhere, they need to hear/read your input in order to work on the improvements users need.

Best,

dp
thorgal
Established Member
Posts: 739
Joined: Mon Apr 07, 2008 6:04 pm

Re: LMMS 0.4.6 released

Post by thorgal »

agree ... but we got some heads-up from one of the devs in this thread. So I guess they know about it :)
User avatar
autostatic
Established Member
Posts: 1994
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands
Has thanked: 32 times
Been thanked: 104 times
Contact:

Re: LMMS 0.4.6 released

Post by autostatic »

I already mailed a link to this thread to the LMMS mailinglist a few days ago. The response here is better and more constructive than on the mailinglist, that's why I posted some results.

Edit: increased the timeout to 5000ms for JACK. This eliminated the xruns. The patch eliminates the LMMS JACK client getting kicked. So the patch is an improvement.
Post Reply