On Sun, Aug 15, 2010 at 4:29 PM, Daniel Worth <pipemanmusic(a)gmail.com> wrote:
> Awesome work, I'm very happy to see some work going into this.
Thanks! There's more coming... (the version i'm using now is
http://lalists.stanford.edu/lad/2010/08/0059.html , a patch to
http://nielsmayer.com/envy24control/mudita24-1.0.3.tar.gz ).
> Why is the adjustment for the
> DAC/ADC's on a different tab from the monitor/VU meters. It is an utter PIA
> to set levels by switching back a forth from one tab to another. I know it's
> how the windows gui handled it but IMHO it sucks.
We're discussing this very thing on Linux-Audio-Dev (see link above),
so I've cc'd the ongoing discussions using the same Subject line we've
been using.... (your original cc to Linux-audio-announce is going to
bounce; I took the liberty to redirect your cc to the appropriate
list).
-- Niels
http://nielsmayer.com
On 5 July 2010 09:27, Patrick Shirkey <pshirkey(a)boosthardware.com> wrote:
> On 07/05/2010 06:15 PM, James Morris wrote:
>>
>> really it is far too early for users to take any interest in this
>> program. but sometimes I just need some feedback about some of the
>> ideas i have before I can proceed further in its development.
>>
>>
>>
>
>
> I think LAU/LAD are good for that until a project gets a large enough user
> base to warrant it's own list.
>
Ok, after some considerable time it's now in the first steps of having
consequences of user interactions...
Meaning, you can drag a blue square around and the events in the
pattern are sequenced into it (when you release the mouse button that
is). As you should by now know, the position of the events is
translated into pitch and velocity.
It's enough to play around with for a few minutes :)
I recommend Will J Godfrey's 'Sweep Saw' Zyn/Yoshi patch.
Try it out:
git clone git://github.com/jwm-art-net/BoxySeq.git && cd BoxySeq &&
make && ./boxyseq
Just don't expect too much. You cannot edit the pattern unless you're
willing to experiment with C code (lines 63 to 84 of main.c for event
pattern, lines 87 to 105 for boundary settings) and recompile and
restart the program.
you'll need jack, glib, and gtk development packages installed beforehand.
still very early days here.
Cheers,
James.
Does anyone know of (or is there interest in creating) a
library of basic, low-level, audio mixing subroutines? This
would be analag to the BLAS[1], but for audio.
What I'm thinking is something like Ardour's SSE-optimized
mixing subroutines... and updating it for later
optimizations (SSE2, SSE3, ...).
Thanks,
Gabriel
[1] http://www.netlib.org/blas/
Fons just wrote "as far as i'm concerned, it would be cool to have
some help creating a "hybrid" matrix like i described to bearcat, to
avoid having to run separate ambdecs for tops and subs. the most
important thing would be another gain coefficient to match the subs to
the tops, similar to what you already have to tweak the two
psychoacoustic bands."
gain coefficient....what? I know that makes sense to the lot of you but
not to me. I'd like to fix that.
I love sound and i'm genuinely interested in sound theory, audio
recording, the effects of sound on the body and ambisonics. My problem
is that some of the things said on this list come across as Frontier
Gibberish because though i have the background in it as a hobby i don't
have the training or education (mine is in computer programming not
audio). Reading up on ambisonics lots of it is technical and i'd like
to be able to understand it.
So i want to educate myself. Does anyone have any suggestions for books
or what have you that i could pick up to give me a basic feel for how
all this works, basic accoustic sound theory? Should i pick up a book on
algebra 2 first? (i'm not a math-wiz. I finally passed Algebra 1 on the
2nd try). If i were to look at a college course for what books they
use, what course titles would i be looking for?
I probably won't get to the knowledge level of Fons or Jorn by reading
books an messing around with my equipment, but i'd sure like to try.
For what it's worth English is my first and last language when talking
about reading material.
Thanks folks. I appreciate it.
Hi Guys, I'm proud to announce my first project on gitorious:
TerminatorX. I took the code from the old project site, and have done
some heavy recoding:
The entire audio part: -Now tX relies exclusively on JACK, and I intend
to keep it so.
-New mixer behind the scene: All
Turntables are stereo, you can still load mono files and the stream will
be copied to the left and right. This is intentional, since it allows to
use stereo Plugins on mono files (some sweet LADSPA plugins are only i
stereo).
-Mono plugins are also usable, their output is simply doubled
-Extra stereo outputs per Turntable
-Support for Rubberband, tempo of
client turntables can be autosynced to the master turntable.
- Exclusive use of sndfile
-Rewriting of the sequencer part,
not all is functional
There is lots to do: -profiling, since tX crashes sometimes (actually
many times:))
- throw out old C code, where its
possible: tX relies on C-style Gtk, which is a pain in the neck for a C
++ programmer like me.
- there are many C-extern functions. To
hell with them, they are bad coding style.
- the gui still displays one channel,
also for stereo files.
- the sequencer has to be checked,
fixed. I actually would like to redesign it, but more later.
- the save and load routines have to be
checked, since I added some parameters which are not yet saved/loaded
All in all tX needs a redesign in 3 integral parts,ordered by priority:
-The sequencer (tX_seqpar) is a mess. I even didn't really bother to
look that deep into the code. As I understand it, it just records
changes of the parameters, then replays them. I think this could be done
easier, and in strict C++ style. I need some ideas on how to construct a
good model.
-The Load and Save routines: I would like to convert all classes to
serializable ones!! This is more transparent, and would allow for nice
things like network sessions (Imagine tX on multiple PCs running with
netjack, and saving the session to one instance on one PC!)
-Last but by far not least: The GUI. If you look at the code, you see
that Alexander did not make a clear line between the GUI and the engine.
I think this is important, for stability reasons. Second, its C-Style
Gtk and not portable.
So the plan is to open another branch, in order to rework the GUI so
that a) It is at least codewise seperated from the engine (e.g extra
namespaces).
b) It's pure C++ and c) its portable. I think the only choice there is,
is to switch to Qt, but I'll leave that open for discussion.
So hope you get in and grab the code at
http://gitorious.org/terminatorx . Theres no configscript, you have to
change the makefile to you needs.
Lets revive this wonderfull program.
Gerald
P.S Sorry for the poor documentation !!
On Wed, 2010-08-11 at 09:09 +1000, Geoff Beasley wrote:
> boyz,
>
> as a longtime user of multiple ice1712 cards (4) in a 'multi' array, one
> thing envy24contol never offered was a way of "assembling" or even
> seeing multiple cards from within a single instance. You can of course
> address different cards with the -c option, but it would make sense if
> this could be done within the a single instance; and given that it
> writes it's own config/.asoundrc type file then would it be possible for
> mudita24 to create a multi card array easily?
>
> i have always, like John Rigg, made my own .asoundrc(thanks John!) to
> run the alsa multi plug which just runs at boot, but this can be very
> difficult for the neebie to even understand let alone create themselves
> and it would be good if each card had it's own 'page' for tweaking and
> metering within a single app instance. whilst you're doing this fine
> work I thought I'd chime this in.
>
> 2c
>
> g.
You're referring to http://www.jrigg.co.uk/linuxaudio/ice1712multi.html?
I'm new to the multiple Envy24 cards world, since some weeks I've got a
second card, but I also had a time out.
Full ACK.
+2c
Ralf
Hi Guys, I'm proud to announce my first project on gitorious:
TerminatorX. I took the code from the old project site, and have done
some heavy recoding:
The entire audio part: -Now tX relies exclusively on JACK, and I intend
to keep it so.
-New mixer behind the scene: All
Turntables are stereo, you can still load mono files and the stream will
be copied to the left and right. This is intentional, since it allows to
use stereo Plugins on mono files (some sweet LADSPA plugins are only i
stereo).
-Mono plugins are also usable, their output is simply doubled
-Extra stereo outputs per Turntable
-Support for Rubberband, tempo of
client turntables can be autosynced to the master turntable.
- Exclusive use of sndfile
-Rewriting of the sequencer part,
not all is functional
There is lots to do: -profiling, since tX crashes sometimes (actually
many times:))
- throw out old C code, where its
possible: tX relies on C-style Gtk, which is a pain in the neck for a C
++ programmer like me.
- there are many C-extern functions. To
hell with them, they are bad coding style.
- the gui still displays one channel,
also for stereo files.
- the sequencer has to be checked,
fixed. I actually would like to redesign it, but more later.
- the save and load routines have to be
checked, since I added some parameters which are not yet saved/loaded
All in all tX needs a redesign in 3 integral parts,ordered by priority:
-The sequencer (tX_seqpar) is a mess. I even didn't really bother to
look that deep into the code. As I understand it, it just records
changes of the parameters, then replays them. I think this could be done
easier, and in strict C++ style. I need some ideas on how to construct a
good model.
-The Load and Save routines: I would like to convert all classes to
serializable ones!! This is more transparent, and would allow for nice
things like network sessions (Imagine tX on multiple PCs running with
netjack, and saving the session to one instance on one PC!)
-Last but by far not least: The GUI. If you look at the code, you see
that Alexander did not make a clear line between the GUI and the engine.
I think this is important, for stability reasons. Second, its C-Style
Gtk and not portable.
So the plan is to open another branch, in order to rework the GUI so
that a) It is at least codewise seperated from the engine (e.g extra
namespaces).
b) It's pure C++ and c) its portable. I think the only choice there is,
is to switch to Qt, but I'll leave that open for discussion.
So hope you get in and grab the code at
http://gitorious.org/terminatorx . Theres no configscript, you have to
change the makefile to you needs.
Lets revive this wonderfull program.
Gerald
P.S Sorry for the poor documentation !!
On Sat, Aug 7, 2010 at 6:10 PM, Geoff Beasley
<geoff(a)laughingboyrecords.com> wrote:
> Niels, great that you and Tim have fixed this app ;) One thing, can you
> explain what those 'profiles' are for and how to use them?
Envy24control uses the same mechanism as your system does (see
/etc/asound.state and amixer(1)) to save the state of your ALSA
devices between boots. The difference is this mechanism puts the file
under your control at ~/.envy24control/profiles.conf and allows you to
set eight different profiles: allowing you to save or restore up to
eight different "asound.state"-like configurations per card.
The different profiles are most useful for storing routings set in
"Patchbay/Router" panel, as well as "Hardware Settings" panel clock
rate, or external SPDIF/wordclock sync. On cards with switchable
spdif/optical ins (Terratec/Terrasoniq), you can persist this extra
level of "routing" -- which is useful for "matrix routing" between two
digitally-interconnected and sync'd computers. ( I use profiles named:
44dmix-to-1&2&spdif, 48dmix-to-1&2&spdif, spdmix-to-1&2&spdif,
44all-outs-pcm, 48all-outs-pcm, spdif-all-outs-pcm,
96dmix-to-1&2&spdif and 96all-outs-pcm. ).
When you have a combination of settings in envy24control that you want
to return to, just go to the "Profiles" panel, enter the name of the
profile into the first free text field (initially these will be
numbered "1" through "8"). After entering a descriptive name, click
"Save active profile." To restore a given profile, just click on the
"button" area surrounding the text field, or even click within the
text field. You'll notice the selected profile "button" indicates
activation via coloration. After changing profiles, go to, for
example, Patchbay/Router or "Hardware Settings" panels,and note that
the previously saved state was restored.
Note that significant amounts of setting data gets saved in these files:
> ll ~/.envy24control/
-rw-r--r-- 1 npm npm 115253 2010-08-07 23:10 profiles.conf
For comparison:
> ll /etc/asound.state
-rw-r--r--. 1 root root 128079 2010-08-07 18:15 /etc/asound.state
(That's for a system with two envy24-based cards installed, thus size
is large, causing "save" to produce a brief but noticeable pause in
the metering on a slower system or "ondemand" throttled system).
Niels
http://nielsmayer.com
PS: speaking of envy24 anybody know whether this will work in standard
alsa/linux:
http://www.lionstracs.com/store/msaudio-board-envy24-p-122.html
and are those i2s connectors, or ttl-level spdif? i guess if it's i2s
you have to get:
http://www.lionstracs.com/store/mixer-board-p-210.html (which looks
pretty cool, esp w/ the onboard dream-based hardware synth w/ large
sample ROM).