> we don't care about non-power-of-two periods, i think. however, i do
> consider periods defined in units of times and not frames to be broken
> hardware design. it forces inefficiencies into the software that are
> totally unnecessary.
For what its worth, the SAOL standard has to deal with this problem
too, since the user gets to specify an integer k-rate and an
integer a-rate. Eric went for this solution:
5.8.5.2.2 krate parameter
<global parameter> -> krate <int>;
The krate global parameter specifies the control rate of the
orchestra. [...]
The krate parameter shall be an integer value between 1 and the
sampling rate inclusive, specifying the control rate in Hz. [...]
If the control rate as determined by the previous paragraph is not an
even divisor of the sampling rate, then the control rate is the next
larger integer that does evenly divide the sampling rate. The control
period of the orchestra is the number of samples, or amount of time
represented by these samples, in one control cycle.
---
This has been controversial, since it limits the ability to use
SAOL to emulate existing coding standards that have non-integer
relationships betweens frames and the sample rate. The win has
been decoder implementation simplicity.
-------------------------------------------------------------------------
John Lazzaro -- Research Specialist -- CS Division -- EECS -- UC Berkeley
lazzaro [at] cs [dot] berkeley [dot] edu www.cs.berkeley.edu/~lazzaro
-------------------------------------------------------------------------
Hello,
I just released a new version of tapiir. Tapiir now supports jack.
Tapiir can be found at
http://www.iua/~mdeboer/projects/tapiir/
Tapiir is a simple and flexible audio effects processor, inspired on
the classical magnetic tape delay systems used since the early days
of electro-acoustic music composition. It provides a graphical user
interface consisting of six delay lines, or "taps", which can
introduce an almost arbitrarily big or small delay to their inputs
and can be feed back to each other.
A wide set of effects can be easily achieved by properly configuring
and connecting the delay lines: complex echo patterns, resonances,
filtering, etc. Delays, interconnections and gains can all be
controlled in real time.
Maarten
reposting to the list, my email client had some hick-ups..
Paul Davis <paul(a)linuxaudiosystems.com> wrote:
> if you mean at JACK's level, then it prints out information about
> xruns. i think you mean something else, but i'm not sure what.
OK, but jackd is accessing a DMA buffer - where would that be located for USB devices which doesn't do any real DMA? (OK, maybe that's something for ALSA to figure out)
The debugging I was thinking about would be something more fine-grained than just xruns (as I'm not getting any xruns (well, if I choose a period size of 64 I'm getting lots of them).
I'm not really sure what to monitor either, just thinking out loud here - it might be interesting to find out where the actual playback and recording pointers are pointing when accessing the buffer to find out whether something is out of sync (it kind of sounds like that, that the beginning of the buffer gets overwritten with new data, or that the end of the buffer somehow isn't completely written when jackd grabs it). Not sure whether jackd can actually see that though (?). The two parts of the buffer (when using two periods) is laid out consecutively in memory, right? One possible explanation might be that jackd gets called a bit to early/late when the audio device/driver is switching buffers, but that would be kind of hard to actually see for jackd as a client to ALSA?
(I recognize the audio artifacts from the good old days of DOS demo coding of SoundBlaster DMA, at one point where I had screwed up the logic, writing in the "live" buffer, then the beginning of every period was anything but clean...)
This isn't CPU related, there's plenty of CPU time left, and it's occuring all the time, just curious where to start debugging (it seems like it's a jackd problem because aplay works fine, but then again, I guess that aplay doesn't mmap the buffer)..
/WernerJ
Hi LADers!
I released a realtime Music-visualization-program (my master's thesis)
on http://sonasound.sf.net.
It's probably more of academic use at the moment. Licensed under GPL.
Maybe there is some interest.
Features are:
- Waveform-Display
- short-time-spectrum
- sonogram
- spectrum-generation switchable between lpc and fft
- Major kinds of windowing functions choosable
- Different kinds of windowing functions are directly comparable via
live-switching
- Overlap of 50% can be switched on and off without stopping
- Buffer-Size and FFT-Size freely adjustable
- All Displays work from soundfile while playing or direct live-input
from soundcard
- Comparison of different spectrum-generation-methods via multiple
instances fo SonaSound possible
Libraries needed:
- fftw (www.fftw.org)
- glib >= 1.2
- gtk >= 1.2
- gtkglarea
- GL
- GLU
- portaudio (www.portaudio.com) (Yes, I know, switching to JACK might help)
- sndfile >= 1.0
There are many features I would like to add and a few
not-so-good-features I'd like to clean up.
Have fun*
Niklas
Hi.
I relased ZynAddSubFX 1.0.9 (a very poerfull software
synthesizer for Linux).
News:
- added keylimit to Part
- you can use multiple filter stges in order to make
very steep filter rolloffs (eg. 48 dB/octave)
- ADsynth - added noise mode and you can make fixed
frequencies; added the "Punch" parameter
- added an external program "Controller" which enables
you to use the mouse for MIDI controllers
- other improvements and bugfixes
See more at http://zynaddsubfx.sourceforge.net
Paul.
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/
Here's another take on that paste-it-together-out-of-C-code "blockless
processing" idea that was discussed a few months back.
Its incomplete and experimental, and I'm not sure how much further its
worth pursuing it (I'll keep it going for a while longer I think) but its
pretty interesting if you like this sort of thing:
http://www.sbibble.pwp.blueyonder.co.uk/amble/amble-0.1.1.tar.gz
Some (not all) of the demos require libsndfile and its headers.
Simon Jenkins
(Bristol, UK)
Hello LADies and LADdies!
What is new on the SuperCollider front?
I've seen there are some new files up on the page and will try to
compile them later today.
Take care,
Miha...
I'm trying to run a low latency kernel and audio applications on a
crusoe processor laptop.
Yes, I'm crazy.
I have patched a 2.4.20 kernel with the low latency, preemption, and
variable hz patches, as well as a modification to the alim15x3 DMA code
and an extra entry in the "unusual USB devices" list. I'm running recent
CVS checkouts of ALSA from Planet CCRMA.
The kernel works well, and the low latency patches really make the
system more responsive even under load. However, when I run
latencytest0.42/do_test blah blah, the system hangs while playing the
sound. It does not even display the xperf window. After a very long
time, Control-C stops the process.
When I run jack -R (jack 0.55) and freqtweak, freqtweak claims it gets
"shut down" by jack the first time I try to start it. The second time I
try to start it, it connects to jack and plays for a few seconds, but
then audio stops and the system hangs. I need to use sysrq or a power
cycle to restart.
I can send pretty good beer, the alim15x3 patch, and any other clues to
anyone who can help me with this.
--
(jfm3 2838 BCBA 93BA 3058 ED95 A42C 37DB 66D1 B43C 9FD0)
I have already got the sound data from sound card into
the buffer, and I've also finished it to encode the
data to gsm and send to another server. Right now I
need to store the sound data to some .wav file in the
server. How can I do it, ether from memory buffer or
gsm? Are there any API to do it?
Thanks.
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/