Re: ardour export + jamin
Kees van Veen <[email protected]> Fri, 15 Jan 2010 21:43:59 +0100
| Newsgroups | gmane.comp.audio.jamin.devel |
|---|---|
| Message-ID | <[email protected]> |
Was wrong about the abort(): after 4 times export and then play, it still aborted ... -------- Original Message -------- Subject: Re: [Jamin] ardour export + jamin From: Kees van Veen <[email protected]> To: Jack O'Quin <[email protected]> Date: Fri Jan 15 2010 21:34:13 GMT+0100 (CET) > Jack, > > Tried your fix, but it failed, i.e. again abort(), but not at the end > of the export, but after I'd let Ardour play again, so I figured that > the transition between the -t behaviour when freewheeling and back to > dsp thread would cause that, so I fiddled around with putting > io_cleanup() before changing the freewheeling static in the freewheel > callback and calling io_activate() again, but that didn't work. > > Then I tried in the freewheel callback to call > io_new_state(DSP_STOPPED), just before changing the freewheeling > static. Now I get - jamin internal error 35: invalid DSP state > transition: 010 -> 040 - each time I switch between export and play, > but it does not abort() anymore. Haven't listened to all of the > exported file, but at least the start of it seemed ok (mixed with the > TV noise of the family). Tried that several times in a row in one > ardour/jamin session. Since I tried that with the CVS version, I also > patched the Ubuntu standard version, ran that with the exact same > results. So the state transition is illegal, but I don't have enough > knowledge of jamin to figure that out, maybe this gives you some more > information as to a next step. All tests done with /usr/bin/jackd -R > -dalsa -dhw:0 -r44100 -p64 -n4 , I guess other frames/period settings > will be ok as well. Let me know if that would provide additional info, > I'll try that as well. > > Cheers, > Kees > > -------- Original Message -------- > Subject: Re: [Jamin] ardour export + jamin > From: Jack O'Quin <[email protected]> > To: Kees van Veen <[email protected]> > Date: Fri Jan 15 2010 03:11:13 GMT+0100 (CET) >> On Thu, Jan 14, 2010 at 3:35 PM, Kees van Veen >> <[email protected]> wrote: >> >>> Jack, >>> >>> I tried running Jamin from the Ubuntu repos (not even in debug, but >>> stripped) with the -T flag and jack -p64 -n4, which aborted, but no >>> file, no >>> stderr output (as I gather -T flag should provide). Remake in debug >>> made no >>> difference. >>> >> >> D'oh! The -T does nothing in the abort() case, where it's most >> needed. I'll try to come up with a fix for that later. >> >> >>> Then I tried the latest CVS tree, ./configure without options, make, >>> make >>> install. >>> (At first it wouldn't abort, tried it several times, but then I >>> discovered >>> my patched io.c was still in the tree :-[ , removed it, cvs update, cvs >>> diff, make, make install, then it aborted). >>> >> >> >> >>> Next, I noticed that running with the standard Ubuntu Jamin, but >>> with the -t >>> flag (and -p), no abort either, tried it twice with the Ubuntu Jamin >>> and >>> twice with the cvs Jamin. >>> >> >> That's good to know. Good idea to try -t. >> >> >>> All tests done with /usr/bin/jackd -R -dalsa -dhw:0 -r44100 -p64 -n4. >>> >>> What's next to try? >>> >> >> Given that -t seems to work, I worked up a simplified version of your >> patch that should solve your problem, hopefully without introducing >> any other artifacts or undesirable timing changes. Essentially, it >> does the same as -t, but only when JACK is freewheeling. I used your >> code for defining the JACK freewheel callback. >> >> Please give it a try both with and without freewheeling and at both >> large and small period sizes. >> >> There may be some DSP artifacts due to using a smaller FFT window that >> could cause slightly different output depending on whether >> freewheeling is enabled. Steve Harris probably knows whether this >> makes a difference or not. If it does, I doubt any differences would >> be audible. >> >> Regards, >> > > ------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev