Sorry, meant to include this link:
http://developer.apple.com/documentation/DeveloperTools/gcc-4.0.1/gcc/Compl…http://www.gnu.org/software/libc/manual/html_node/Complex-Numbers.html
'nando's C++ usage looked a bit cleaner to me, IMHO.
Taybin
-----Original Message-----
From: Artemiy Pavlov <artemio(a)kdemail.net>
Sent: Dec 13, 2005 3:22 PM
To: The Linux Audio Developers' Mailing List <linux-audio-dev(a)music.columbia.edu>
Subject: [linux-audio-dev] dealing with complex numbers
Hey everybody!
This may be a little bit off-topic, but can anyone suggest me any reading on
how to use complex numbers in C or C++? Is there any library or ++ classes
for such computations?
I'd appreciate any help.
Thanks!
With respect,
Artemiy.
Hey everybody!
This may be a little bit off-topic, but can anyone suggest me any reading on
how to use complex numbers in C or C++? Is there any library or ++ classes
for such computations?
I'd appreciate any help.
Thanks!
With respect,
Artemiy.
Hi
On Tues Nov 22 I wrote:
> I've recently moved a system over to Slackware 10.2 which utilises NPTL and
> I'm aware of the issues NPTL has raised in the past. Based on a comment on
> the Jack website though I sort of assumed that things were now in hand and
> that Jack had a workaround in place for the issue.
>
> Despite this I have found that jackd itself (when run using set_rtlimits)
> gives an error (-11, EAGAIN) when "creating realtime thread".
I have since discovered (thanks to strace) that the problem lies in an
mmap2() call which requests a size of around 8MB. It appears to be part of
the NPTL pthread_create() function. The error returned by mmap2() (EAGAIN)
indicates either a locked file or "too much locked memory" (according to the
manpage). Because this is an anonymous map the problem must have been the
latter. Increasing the "locked memory" limit from 20MB to 40MB made jackd
start without having to resort to the LD_ASSUME_KERNEL hack.
Another problem then surfaced: with jackd running under NPTL, jack
applications using NPTL (eg: ardour) suddenly started to require all of
their memory to be lockable. For ardour with a large session this can get
quite large (I saw 130MB at one point last night).
So, with jackd running with LD_ASSUME_KERNEL = 2.4.19 and a memlock limit of
20MB everything worked and ardour (with NPTL - ie: without LD_ASSUME_KERNEL)
was obviously not trying to lock excessive amounts of memory. With jackd
running with NPTL and a large enough memlock limit things work but jack
clients appear to require much more memory be locked.
One thing I will try next is recompiling ardour; perhaps there's something
funny there. In any case though, does any of this ring a bell with anyone?
Regards
jonathan
David Kastrup writes:
> On another note: it would seem like a simple enough task to let the
> recording start with the first non-zero sample. ... I'd also like to prune
> trailing zeros at some point of time.
Although it is not a native ALSA app (due mainly to me not having the time
to port it yet), batchrec does this. It still works with ALSA through the
OSS emulation layer; adding native ALSA support is on my todo list for the
next few months. You can grab it from
http://www.physics.adelaide.edu.au/~jwoithe/batchrec-1.2.0.tgz
It's pretty raw (no configure script yet) but shouldn't be too hard to
compile on most systems.
Batchrec can be requested to wait for signal above a certain amplitude
before it records. It will also stop recording after the same threshold has
been present for a user-specified time (if desired); at that point recording
will stop, the file will be closed and the program will then wait for signal
above the threshold again. I've used it extensively with analog inputs
(hense the use of a threshold rather than exactly 0). The only fly in the
ointment will be whether the SPDIF input on your soundcard can be mapped in
the OSS emulation layer in such a way that OSS applications can use it.
Regards
jonathan
Hello,
All I am trying to do is compile an x86_64 kernel on i386 machine. It
dos not work:
$ ARCH=x86_64 make oldconfig
<no errors>
$ ARCH=x86_64 make
CHK include/linux/version.h
SPLIT include/linux/autoconf.h -> include/config/*
CC arch/x86_64/kernel/asm-offsets.s
arch/x86_64/kernel/asm-offsets.c:1: error: code model 'kernel' not
supported in the 32 bit mode
make[1]: *** [arch/x86_64/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2
What gives? Do I need a different compiler to build for x86_64?
Shouldn't this Just Work?
Lee
Hi everyone,
Can anyone give me any examples of Free audio software being used by
professionals?
Anywhere where it performs better, or simply doesn't cost two or more
body parts to use?
Quick answers get bonus points.
James
--
"I'd crawl over an acre of 'Visual This++' and 'Integrated Development
That' to get to gcc, Emacs, and gdb. Thank you."
(By Vance Petree, Virginia Power)
After several frustrating weeks playing with my Audiophile USB I'mgoing to punt and get something else.
For the archives: ALSA users interested in high-end capture should_not_ buy this device.(FWIW it sucks in windows too)
- Its only a USB 1.1 device and 24bit 96k is half-duplex only.- Its (almost) S24_3BE so you have to use plughw or jackd has to bepatched to use it. I say almost because the few times I did get thecard to record something I had to reorder the byte data to get it notto sound like white noise.- As of ALSA 1.0.10 capture is broken.
So I'm looking for a replacement. I bought this card because it had areally good recording specs (I just missed the half-duplex part) and Idont' need a pro-multi channel since all I'm tyring to do is recordLPs to CD.
Can someone recommend a 24bit 96kHz full-duplex card that they thinkhas good enough recording specs for LP's that not going to cause me topull all my hair out trying to work with ALSA.
--Richard A. Smith
Dear LAD'ers,
our Department of Music-Informatics at the Johannes Gutenberg University
of Mainz is organizing a little workshop with introductory courses on
Faust, SuperCollider and Q by Yann Orlarey (Grame, Lyon), Stefan Kersten
(TU Berlin) and me. The workshop is sponsored by the "Interdisciplinary
Working Group of Music and Arts Informatics" of the Johannes Gutenberg
University, so it's free, and takes place at the Institute of Musicology
(Philosophicum, Jakob-Welder-Weg 18 on the campus) on Tuesday, Dec 20th
2005, from 14:00 h to 18:00 h.
If you'd like to participate, then please *please* register (just mail
me at Dr.Graef(a)t-online.de or my secretary, Mrs. Felicitas Volke, at
volke(a)uni-mainz.de). Registration is free but mandatory, as we can only
accommodate a limited number of participants. If you register, please
also indicate whether you can bring your own laptop, as the Linux PC and
MIDI equipment available for the workshop is even more restricted than
the amount of available chairs, coffee and Christmas cookies. ;-)
More information can be found in the attached text file. Information on
how to find us on the campus is available at
http://www.uni-mainz.de/zentral/75.php. You can also contact me at
Dr.Graef(a)t-online.de if you have any further questions.
Please feel free to pass this around to your friends, colleagues and
other mailing lists as you see fit.
Cheers,
Albert Graef
--
Dr. Albert Gr"af
Dept. of Music-Informatics, University of Mainz, Germany
Email: Dr.Graef(a)t-online.de, ag(a)muwiinfa.geschichte.uni-mainz.de
WWW: http://www.musikinformatik.uni-mainz.de/ag
Workshop
Modern Computer Music and DSP Programming Tools
Location: Johannes Gutenberg-Universität Mainz, Philosophicum,
Jakob-Welder-Weg 18, Alter Fakultätssaal (Room P 01-185)
Date: Tuesday, Dec 20th 2005, from 14:00 h to 18:00 h
Workshop language: English
The number of participants is limited, (free) registration is required.
Registration: Tel.: +49 (0)6131 3925142, Email: volke(a)uni-mainz.de
Programme:
14:00 h Albert Gräf (University of Mainz): Functional Multimedia Programming
with Q
15:00 h Yann Orlarey (Grame): FAUST
Coffee Break
16:00 h Stefan Kersten (Technical University of Berlin): SuperCollider
18:00 h End
14:00 h Albert Gräf: Functional Multimedia Programming with Q
This presentation gives a hands-on introduction to the equational programming
language "Q", and some of its facilities for multimedia programming. Q can
best be described as a kind of modern-style "functional scripting language."
Q's multimedia library comprises interfaces to Grame's MidiShare and Faust, as
well as an OSC-based SuperCollider interface, and thus provides the necessary
tools to create advanced computer music applications in the context of a
very-high-level, non-imperative programming language.
Albert Gräf is head of the Dept. of Music-Informatics at the Institute of
Musicology of the Johannes Gutenberg University Mainz. His research interests
include the mathematical theory of music and advanced functional programming
tools for computer music and other real-time multimedia applications.
15:00 h Yann Orlarey: FAUST
FAUST (Functional AUdio STreams) is a programming language for real-time
signal processing and synthesis that targets sample-level high-performance
signal processing applications and audio plugins. FAUST proposes an innovative
approach to signal processing that combines two programming models: functional
programming and block diagram composition, in a highly structured textual
syntax that can be compiled into efficient C/C++ code. The presentation will
give an overview of the main features of the language and its compiler through
several simple and practical examples.
Composer and researcher in computer music, Yann Orlarey is currently the
Scientific Director of Grame - Centre National de Création Musicale in
France. His main research interests are music programming languages, with a
particular focus on lambda-calculus and functional programming, and real-time
distributed systems. He is the author and co-author of various musical
softwares and systems including MidiShare.
16:00 h Stefan Kersten: SuperCollider
SuperCollider is a real-time synthesis engine and object oriented composition
language. This course introduces the architecture and the working environment
on OSX and Linux and provides an introduction to basic synthesis techniques
and sequencing strategies.
Stefan Kersten (*1978) is currently studying communication and computer
science at the Technical University of Berlin. He has ported SuperCollider to
Linux and is the author of SCUM, SuperCollider's GUI module for Linux. He uses
SuperCollider for most of his projects in research and music.
Minor bug fixes since last release.
Notable changes:
* Attempt to let client timeout option work again on realtime mode
* Let jackd quit gracefully when USB soundcard or power cable is
unplugged
* Better support for US428 USB soundcard
* SSE/E3DNow mixing support. Disabled by default. Enable with --
enable-dynsimd
JACK is available at http://jackit.sf.net and our new website http://
jackaudio.org.