Kai Vehmanen | 22 May 2012 20:59

ecasound 2.9.0rc1

Hello,

somewhat faster than planned, I'm now facing a move (to a new apartment)
next month. That means I'm seriously running of development time for 2.9.0 
in May-June timeframe, so I'd really like to push 2.9.0 (or maybe 3.0.0, 
haven't decided yet) out as soon as possible. Once I need to tear down my 
home network, servers, home studio stuff, etc and pack for move, who knows 
when I'm back online. :P I do hate moving, but here's hoping the next 
place will last until retirement. ;)

So here's the first release candidate:
http://ecasound.seul.org/download/snapshots/ecasound-2.8.1+dev-20120522.tar.gz

This tarball will go out as 2.9.0, EXCEPT for two fixes:

- the etd/etm perf issue reported by S.Massy
- segfault with cop-add'ing a lot of etd (from S.Massy as well)

If all goes well, no other changes are needed. But do not stop reporting 
errors...I'll prioritize issues if/when they appear. But as of now, the 
two above things are the only two things severe enough not to make a 
release.

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
(Continue reading)

Julien Claassen | 22 May 2012 21:07
Picon

Re: ecasound 2.9.0rc1

Hello Kai!
   Thanks for this release candidate. I was wondering about another small 
feature - at least, I think, that it might be small. A pendant to stop-sync: 
start-sync, which only returns, until the engine is perfectly running.
   So now off to downloading, installing and testing.
   Thanks a lot!
   Warm regards
           Julien

=-=-=-=-=-=-=-=-=-=-=-=-
Such Is Life: Very Intensely Adorable;
Free And Jubilating Amazement Revels, Dancing On - FLOWERS!

======      Find my music at      ======
http://juliencoder.de/nama/music.html
.....................................
"If you live to be 100, I hope I live to be 100 minus 1 day,
so I never have to live without you." (Winnie the Pooh)

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Ecasound-list mailing list
Ecasound-list <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecasound-list

(Continue reading)

Kai Vehmanen | 27 May 2012 22:26

Re: ecasound 2.9.0rc1

Hi,

On Tue, 22 May 2012, Julien Claassen wrote:

> feature - at least, I think, that it might be small. A pendant to stop-sync:
> start-sync, which only returns, until the engine is perfectly running.

'stop-sync' is (and 'start-sync' would be) actually somewhat hairy to 
implement. The interface between user-interfaces and the engine is 
asynchronous (due to the realtime<->nonrealtime boundary), so providing 
synchronous services on top, requires a bit of work, and is prone to 
errors. There is constant threat of missing some corner case, leading to 
user-space never getting notfied (-> the ECI app calling 
'sync-foo' blocked infinitely and never returns).

One clear complicating factor is that while there's only ever one engine, 
multiple entities may be sending control message (JACK server, messages 
over OSC, messages over MIDI, messages over ECI, etc). E.g. in the most 
recent race discovered by S. Massy, the root problem in the end was that 
"stop-sync" was not enough... what really was needed was a
"stop-sync-and-make-sure-nobody-can-restart-the-engine-unless-I-alone-specifically-give-the-permission"
command.

This is not rocket science either, but I'd rather keep the amount of 
synchronous commands (towards the engine, chainsetup related commands are 
always syncrhonous) to a minimum. Probably some more general way to wait 
on events will be implemented sooner or later, that could be used to build 
whatever synchronous needs on top. But that'll be quite a bit of work to 
do, so not a short-term item.

(Continue reading)

Julien Claassen | 27 May 2012 22:33
Picon

Re: ecasound 2.9.0rc1

Hello Kai1
   You are right, start-sync is not worth it. But what happens, if the engine 
gets the start command? Will it be notified of that immediately? If so, 
could there perhaps be a status waiting in addition to stoppend and running? 
It's nothing major, just a question of beauty. I like beautiful things. :-)
   Warm regards
          Julien

=-=-=-=-=-=-=-=-=-=-=-=-
Such Is Life: Very Intensely Adorable;
Free And Jubilating Amazement Revels, Dancing On - FLOWERS!

======      Find my music at      ======
http://juliencoder.de/nama/music.html
.....................................
"If you live to be 100, I hope I live to be 100 minus 1 day,
so I never have to live without you." (Winnie the Pooh)

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Ecasound-list mailing list
Ecasound-list <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecasound-list

(Continue reading)

Kai Vehmanen | 27 May 2012 23:06

Re: ecasound 2.9.0rc1

Hi,

On Sun, 27 May 2012, Julien Claassen wrote:

>   You are right, start-sync is not worth it. But what happens, if the engine
> gets the start command? Will it be notified of that immediately? If so,
> could there perhaps be a status waiting in addition to stoppend and running?

that's a good point. A "prefill/preroll/preparing" state indeed exist 
inside the engine, but is not published to clients at the moment. This is 
also a bit complicated as actions done in this state (filling disk i/o 
buffers), are something done also while already running (e.g. someone 
makes a live seek to a new position in some other transport-aware JACK 
application). So this forks of to yet another 
running-but-not-quite-running state. There's also the draining state 
nowadays (= running has stopped but existing buffers are still played out 
so audio is not cut off), and this is not published either.

The "finished" state itself is a variant of "stopped" already (stopped due 
to an end-of-stream condition), but as it is so old and part of legacy, it 
has been kept. But nowadays I do feel "started" and "stopped" is a pretty 
good abstraction level in the end.

> It's nothing major, just a question of beauty. I like beautiful things.

As for beatiful things, one thing I'd like to add is a new async event 
queue from engine to (multiple) clients. By subscribing to these events, 
any UI/app could get an accurate view of the engine state, and races 
inherent to multiple controllers, could be handled elegantly (event stream 
would show what actually happened, and the exact order of events. So 
(Continue reading)

Alessandro Ghedini | 23 May 2012 16:42
Picon
Gravatar

Re: ecasound 2.9.0rc1

On Tue, May 22, 2012 at 09:59:34PM +0300, Kai Vehmanen wrote:
> Hello,

Hi,

> somewhat faster than planned, I'm now facing a move (to a new apartment)
> next month. That means I'm seriously running of development time for 2.9.0 
> in May-June timeframe, so I'd really like to push 2.9.0 (or maybe 3.0.0, 
> haven't decided yet) out as soon as possible. Once I need to tear down my 
> home network, servers, home studio stuff, etc and pack for move, who knows 
> when I'm back online. :P I do hate moving, but here's hoping the next 
> place will last until retirement. ;)
> 
> So here's the first release candidate:
> http://ecasound.seul.org/download/snapshots/ecasound-2.8.1+dev-20120522.tar.gz
> 
> This tarball will go out as 2.9.0, EXCEPT for two fixes:
> 
> - the etd/etm perf issue reported by S.Massy
> - segfault with cop-add'ing a lot of etd (from S.Massy as well)
> 
> If all goes well, no other changes are needed. But do not stop reporting 
> errors...I'll prioritize issues if/when they appear. But as of now, the 
> two above things are the only two things severe enough not to make a 
> release.

I'm going to upload this rc to Debian experimental to make sure everything
builds fine (looks fine here, anyway). In the meantime see the attached patch
that fixes a few typos/spelling errors.

(Continue reading)

Kai Vehmanen | 27 May 2012 22:07

Re: ecasound 2.9.0rc1

Hi,

On Wed, 23 May 2012, Alessandro Ghedini wrote:

> I also see the following man errors:
>
> usr/share/man/man1/ecasound-iam.1.gz 774: warning [p 12, 6.8i]: cannot adjust line
> usr/share/man/man1/ecasound.1.gz 682: warning [p 11, 2.3i, div `an-div', 0.0i]: cannot adjust line

these files are created with yodl2man, so in theory it should be able to 
produce valid (enough) groff/.1 files. It seems these lines related to 
lines without any spaces for spltting long lines.

If someone has the time, patches to tweak the yodl input to get rid of 
these, are welcome.

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Ecasound-list mailing list
Ecasound-list <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecasound-list


Gmane