Re: [LAD] Saving plugin presets

2009-01-17 Thread Anders Dahnielson
On Sun, Jan 18, 2009 at 00:04, Luis Garrido 
luisgarr...@users.sourceforge.net wrote:


 brush your shells and learn to dance the turtle.


And I can do the frug
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] Writing a library?

2008-09-05 Thread Anders Dahnielson
On Sat, Jul 26, 2008 at 00:03, Anders Dahnielson [EMAIL PROTECTED]wrote:



 On Wed, Jul 23, 2008 at 18:13, Anders Dahnielson [EMAIL PROTECTED]wrote:


 Here's a simple tokenizer for SFZ I wrote once upon a time in Python. Not
 sure if I got it completely right.


 Nope. E.g. it matches lokey= twice (once as lokey= with a value and as key=
 without a value). *Blushes*. LOL.


Ok, this is now an old thread. But to not appear as a complete fool I will
post some code that actually works. ;-)

[BEGIN PYTHON]

import sys

def parse(f):
token_stack = []
string_stack = []
for line in f:
# COMMENT
if line.startswith('//'):
continue
# DEFINITION
for token in line.split():
if token.startswith('') and token.endswith(''):
# HEAD
if string_stack:
token_stack.append( .join(string_stack))
string_stack[:] = []
string_stack.append(token)
elif token.find('=') != -1:
# HEAD
if string_stack:
token_stack.append( .join(string_stack))
string_stack[:] = []
string_stack.append(token)
else:
# TAIL
string_stack.append(token)
# EOL
if string_stack:
token_stack.append( .join(string_stack))
string_stack[:] = []
return token_stack

if __name__ == '__main__':
sfzf = open(sys.argv[1], 'r')
print parse(sfzf)
sfzf.close()

[END PYTHON]

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] [Linuxsampler-devel] jack, kernel, etc. versions priorities

2008-07-28 Thread Anders Dahnielson
On Mon, Jul 28, 2008 at 03:32, Garett Shulman [EMAIL PROTECTED] wrote:

 Hello, I had a great performing linux audio setup until I had to move to
 a newer kernel to get some hardware on a new motherboard to work. Now I
 can't seem to get decent performance and thought it might be helpful if
 folks could chime in with what versions, etc. they are using with decent
 success. In particular I'm having a very challenging time with Linux
 Sampler, which I had previously working very solidly but now regardless
 of numerous jack/ls version permutations segfaults when I create a jack
 driver in ls. Thanks! -Garett

 Kernel version? RT patch? Preemption mode? Audio hardware IRQ scheduling
 policy and priority?

 Alsa version if different from kernel?

 Jack version, scheduling policy and priority?

 Linux Sampler version (or cvs date), scheduling policy and priority?


Kernel version: 2.6.24.7-rt8
Preemption mode: Preempt RT (Ingo's patch)
IRQ scheduling: running rtirq
In limits.conf:

*   -   rtprio  0
@realtime   -   rtprio  99
@realtime   -   memlock 2048000
@realtime   -   nice-19

Jack version: 0.109.2
LinuxSampler version: CVS (compiled 19 july)

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] Writing a library?

2008-07-25 Thread Anders Dahnielson
On Wed, Jul 23, 2008 at 18:13, Anders Dahnielson [EMAIL PROTECTED]wrote:


 Here's a simple tokenizer for SFZ I wrote once upon a time in Python. Not
 sure if I got it completely right.


Nope. E.g. it matches lokey= twice (once as lokey= with a value and as key=
without a value). *Blushes*. LOL.

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] Writing a library?

2008-07-23 Thread Anders Dahnielson
=',
'fillfo_freq=',
'fillfo_depth=',
] + [
'fillfo_depthcc%d=' % cc for cc in range(128)
] + [
'fillfo_depthchanaft=',
'fillfo_depthpolyaft=',
] + [
'fillfo_freqcc%d=' % cc for cc in range(128)
] + [
'fillfo_freqchanaft=',
'fillfo_freqpolyaft=',
# amplifier
'volume=',
'pan=',
'width=',
'position=',
'amp_keytrack=', 'amp_keycenter=', 'amp_veltrack=',
] + [
'amp_velcurve_%d=' % c for c in range(128)
] + [
'amp_random=',
'rt_decay=',
'output=',
] + [
'gain_cc%d=' % cc for cc in range(128)
] + [
'xfin_lokey=', 'xfin_hikey=',
'xfout_lokey=', 'xfout_hikey=',
'xf_keycurve=',
'xfin_lovel=', 'xfin_hilev=',
'xfout_lovel=', 'xfout_hilev=',
'xf_velcurve=',
]  + [
'xfin_locc%d=' % cc for cc in range(128)
] + [
'xfin_hicc%d=' % cc for cc in range(128)
] + [
'xfout_locc%d=' % cc for cc in range(128)
] + [
'xfout_hicc%d=' % cc for cc in range(128)
] + [
'xf_cccurve=',
# amplifier eg
'ampeg_delay=',
'ampeg_start=',
'ampeg_attack=',
'ampeg_hold=',
'ampeg_decay=',
'ampeg_sustain=',
'ampeg_release=',
'ampeg_vel2delay=',
'ampeg_vel2attack=',
'ampeg_vel2hold=',
'ampeg_vel2decay=',
'ampeg_vel2sustain=',
'ampeg_vel2release=',
] + [
'ampeg_delaycc%d=' % cc for cc in range(128)
] + [
'ampeg_startcc%d=' % cc for cc in range(128)
] + [
'ampeg_attackcc%d=' % cc for cc in range(128)
] + [
'ampeg_holdcc%d=' % cc for cc in range(128)
] + [
'ampeg_decaycc%d=' % cc for cc in range(128)
] + [
'ampeg_sustaincc%d=' % cc for cc in range(128)
] + [
'ampeg_releasecc%d=' % cc for cc in range(128)
] + [
# amplifier lfo
'amplfo_delay=',
'amplfo_fade=',
'amplfo_freq=',
'amplfo_depth=',
] + [
'amplfo_depthcc%d=' % cc for cc in range(128)
] + [
'amplfo_depthchanaft=',
'amplfo_depthpolyaft=',
] + [
'amplfo_freqcc%d=' % cc for cc in range(128)
] + [
'amplfo_freqchanaft=',
'amplfo_freqpolyaft=',
# equalizer
'eq1_freq=', 'eq2_freq=', 'eq3_freq=',
] + [
'eq1_freqcc%d=' % cc for cc in range(128)
] + [
'eq2_freqcc%d=' % cc for cc in range(128)
] + [
'eq3_freqcc%d=' % cc for cc in range(128)
] + [
'eq1_vel2freq', 'eq2_vel2freq', 'eq3_vel2freq',
'eq1_bw', 'eq2_bw', 'eq3_bw',
] + [
'eq1_bwcc%d=' % cc for cc in range(128)
] + [
'eq2_bwcc%d=' % cc for cc in range(128)
] + [
'eq3_bwcc%d=' % cc for cc in range(128)
] + [
'eq1_gain=', 'eq2_gain=', 'eq3_gain=',
] + [
'eq1_gaincc%d=' % cc for cc in range(128)
] + [
'eq2_gaincc%d=' % cc for cc in range(128)
] + [
'eq3_gaincc%d=' % cc for cc in range(128)
] + [
'eq1_vel2gain=', 'eq2_vel2gain=', 'eq3_vel2gain=',
# effects
'effect1=', 'effect2=',
]
stack = find_all_delimiters(string, delimiters)
stack.sort()
stack.reverse()
comment = False
tokens = []
while True:
try:
start = stack.pop()
end = stack.pop()
stack.append(end)
except IndexError:
break
if start[1] == '//':
comment = True
elif start[1] == '\n':
comment = False
continue
if not comment:
tokens.append(sfz[start[0]:end[0]].rstrip().split('=', 1))
return tokens


sfzf = open(sys.argv[1], 'r')
sfz = sfzf.read()
sfzf.close()
print tokenize_sfz(sfz)

[END PYTHON]

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] Writing a library?

2008-07-23 Thread Anders Dahnielson
On Wed, Jul 23, 2008 at 15:25, Julien Claassen [EMAIL PROTECTED] wrote:

 Hi!
   Paul: As I understood the sfz format is text-based. I didn't take a look.
 But depending on what it looks like, a parser generator might be good
 advice.
   If the SFZ is an xml variant libxml might be better suited.
   Kindest regards
  Julien


Here's what a snippet from a SFZ file looks like:

[BEGIN SFZ]

/
// Region Name: NOTE E_

region
sample=E_1.wav
key=52
lovel=111 hivel=127

region
sample=E_2.wav
key=52
lovel=86 hivel=110

region
sample=E_3.wav
key=52
lovel=71 hivel=85

region
sample=E_4.wav
key=52
lovel=0 hivel=70


/
// Region Name: NOTE F_

region
sample=F_1.wav
key=53
lovel=111 hivel=127

region
sample=F_2.wav
key=53
lovel=86 hivel=110

region
sample=F_3.wav
key=53
lovel=71 hivel=85

region
sample=F_4.wav
key=53
lovel=0 hivel=70

[END SFZ]

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev


Re: [LAD] Freeverb3 convolution + JACK

2008-02-15 Thread Anders Dahnielson
On Fri, Feb 15, 2008 at 3:59 PM, Fons Adriaensen [EMAIL PROTECTED]
wrote:

 On Fri, Feb 15, 2008 at 01:48:12PM +0100, Anders Dahnielson wrote:

  Unfortunately I've not been able to compile JConv or

 What problem do you have with compiling jconv ?



After emerging clthreads and zita-convolver and the other dependencies on
Gentoo Linux (thanks to the pro-audio overlay) and the proceed to compile
jconv manually, giving me this:

$ make
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o jconv.o jconv.cc
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o config.o config.cc
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o jconfig.o jconfig.cc
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o jclient.o jclient.cc
g++ -L/usr/local/lib64 -o jconv jconv.o config.o jconfig.o jclient.o
-lzita-convolver -lfftw3f -lsndfile -lclthreads -ljack -lpthread -lrt
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o fconv.o fconv.cc
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o fconfig.o fconfig.cc
g++ -L/usr/local/lib64 -o fconv fconv.o config.o fconfig.o -lzita-convolver
-lfftw3f -lsndfile -lpthread -lrt
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o mkwavex.o mkwavex.cc
mkwavex.cc:30: varning: konvertering från strängkonstant till char* bör
undvikas
g++  -O3 -Wall -MMD -MP -DVERSION=\0.2.0\  -c -o impdata.o impdata.cc
impdata.cc: In member function int Impdata::sf_open_read(const char*):
impdata.cc:264: fel: SFC_WAVEX_GET_AMBISONIC deklarerades inte i detta
definitionsområde
impdata.cc:264: fel: SF_AMBISONIC_B_FORMAT deklarerades inte i detta
definitionsområde
impdata.cc: In member function int Impdata::sf_open_write(const char*):
impdata.cc:306: fel: SFC_WAVEX_SET_AMBISONIC deklarerades inte i detta
definitionsområde
impdata.cc:306: fel: SF_AMBISONIC_B_FORMAT deklarerades inte i detta
definitionsområde
make: *** [impdata.o] Fel 1

(sorry about the error messages in Swedish)

Using:

jconv-0.2.0
libclthreads-2.2.1
zita-convolver-0.1.0
fftw-3.1.2
libsndfile-1.0.17-r1
jack-audio-connection-kit-0.109.0

Output from uname -a:

Linux monolith 2.6.23-gentoo-r3 #2 SMP Sun Jan 20 16:23:51 CET 2008 x86_64
Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz GenuineIntel GNU/Linux

-- 
Anders Dahnielson
[EMAIL PROTECTED]
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev