Seing that HDMI interfaces are getting implemented everywhere - a bit
like S/PDIF before that, but now with 8 uncompressed channels @192k and
24 bits - does anybody know what kind frame sizes are used and what the
implications would be for realtime audio-processing? (.. as opposed to
buffering up and re-playing pre-recorded material from a DVD.)
Not that I am aware of anything reasonable to connect to at the
receiving end yet - but who knows, that might change.
On Wed, Dec 02, 2009 at 12:39:27PM -0800, Ken Restivo wrote:
> Does the "partition" parameter in the conf file affect this?
Yes, it determines the minumum partition size that will be
used. The only difference between the two examples I posted
is the value of this parameter, 256 or 4096.
> On the reverbs I've been using successfully with freewheeling
> mode, the "partition" is set to 2048, which is very high compared
> to the setting in the sample reverbs tthat come with jconv.
Which means you will have significant delay. If the reverb is
use as an effect (rather than to recreate real room acoustics)
this could actually be beneficial.
On a single processor machine freewheeling should just work,
and not depend on this paramter.
Ciao,
--
FA
Wie der Mond heute Nacht aussieht !
Ist es nicht ein seltsames Bild ?
lieven moors:
>>
>>> I want to repeat the same Arp, until there is an update to the text file.
>>> One arp is allready
>>> loaded in each ringbuffer in main(). When the file is modified, a second one
>>> is added, and
>>> process skips to the second one. Since I have only space for two arps in the
>>> buffer, there
>>> should always be exactly one which is readable. I know it is a bit weird,
>>> but it seems to
>>> work, apart from the problem I described.
>>>
>>
>> sounds as if you might want to look into atomic pointer and/or integer
>> exchange instead, to get lock-free double buffering.
>>
>> ringbuffers are generally for passing streaming data/events.
>>
>>
> Could you give me a hint on how to use atomic pointers?
I've used the lockless lifo/fifo-queue implementations found in
midishare a few times. Those are really simple to use:
http://midishare.sourceforge.net/
First of all,
Apologies for cross-posting.
If it is not too much of a trouble, I was wondering if I could ask fellow
FOSS enthusiasts to help us in "digging" & "reddit-ing" our L2Ork
announcement posted on reddit and dig earlier today.
Links to the posts can be found below:
<http://www.reddit.com/r/reddit.com/comments/aa12z/who_says_penguins_cannot_
sing_introducing_l2ork/>
<http://digg.com/linux_unix/Introducing_L2Ork_World_s_First_Linux_Laptop_Orc
hestra>
Once again, apologies for the OT nature of this post.
Sincerely,
Ivica Ico Bukvic, D.M.A.
Composition, Music Technology
Director, DISIS Interactive Sound & Intermedia Studio
Assistant Co-Director, CCTAD
CHCI, CS, and Art (by courtesy)
Virginia Tech
Dept. of Music - 0240
Blacksburg, VA 24061
(540) 231-6139
(540) 231-5034 (fax)
ico(a)vt.edu
http://www.music.vt.edu/faculty/bukvic/
I'm happy to announce a new guitarix release
guitarix is a simple Linux Rock Guitar amplifier and is designed
to achieve nice thrash/metal/rock/blues guitar sounds.
Guitarix uses the Jack Audio Connection Kit as its audio backend
and brings in one input and two output ports to the jack graph.
Release 0.05.2-1 comes with some changes:
* remove dependency of the boost library
(Many thanks to "thrasher13b" for the patch)
* fix missing "./" in ./debian/rules reported
by GMag (AV Linux)
* add 2 Channel gain and delay chooser to the
Jconv settings widget.
* add scroll/zoom mode to the wave view
* reworked Jconv settings widget UI
* various GUI and feature clean-up's
have fun
Comments and suggestions are welcome.
________________________________________________________________________
The standalone version of guitarix is based on GTK2+.
But guitarix is also released as a suite of LADSPA plugins
and can be used in e.g. ardour.
guitarix is licensed under the GPL.
Project page with screenshots:
http://guitarix.sourceforge.net/
download:
http://sourceforge.net/projects/guitarix/
For capture, guitarix uses the external application
'jack_capture' (version >= 0.9.30) written by Kjetil
S. Matheussen. If you don't have it installed,
you can look here:
http://old.notam02.no/arkiv/src/?M=D
For extra Impulse Responses, guitarix uses the
convolution application 'jconv' created by Fons Adriaensen.
If you don't have it installed, you can look here:
http://www.kokkinizita.net/linuxaudio/index.html
I(hermann) use faust to build the prototype and will say
thanks to
: Julius Smith
http://ccrma.stanford.edu/realsimple/faust/
: Albert Graef
http://q-lang.sourceforge.net/examples.html#Faust
: Yann Orlary
http://faust.grame.fr/
regards
Hermann Meyer & James Warden
------------------------------------------
guitarix-dev team
hello everyone,
I am trying to write a c++/qt4 jack client which mix 2 inputs and has a jack
output. The problem is that currently jack gets zombified too often and I would
like some info on how can I debug the exact reason this happens. I suspect
it's the way the app is written and I am planning to rewrite it but I need
some advices first.
The way it's currently written makes use of mutexes and locks to pass the
data beetween a custom global buffer. Is this the reason for not synchronizing
good enough and zombifies jack or it's something else that screw things? Should
I use a ringbuffer (which, to my understanding is lock-free and doesn't need
mutexes) to get the work done, and if so, are there any jack2 example of this
or some hints for what I should be aware of? Or have I misunderstand something
completely?
Please, any recommendation of how I can eliminate this "jack zombified" thing
and understand the whole realtime issue is welcome.
Thank you in advance.
Dear fellow Linux enthusiasts and consortium members,
Please allow me to bring to your attention the upcoming L2Ork debut:
On December 4th Virginia Tech DISIS (<http://disis.music.vt.edu>) Linux
Laptop Orchestra (L2Ork, <http://l2ork.music.vt.edu>) will hold its first
sneak preview debut performance on Virginia Tech (VT) campus, Squires Studio
Theatre, starting at 7pm. Admission is free.
At noon on the same day, L2Orkists will also host a demo booth outside the
Commonwealth Ballroom in Squires Student Center (VT campus) demoing how
L2Ork works.
For additional info on L2Ork and a video preview of L2Ork in rehearsal:
<http://l2ork.music.vt.edu>
Facebook Event Page:
<http://www.facebook.com/home.php#/event.php?eid=180832548428&ref=mf>
Sincerely,
Ivica Ico Bukvic, D.M.A.
Composition, Music Technology
Director, DISIS Interactive Sound & Intermedia Studio
Assistant Co-Director, CCTAD
CHCI, CS, and Art (by courtesy)
Virginia Tech
Dept. of Music - 0240
Blacksburg, VA 24061
(540) 231-6139
(540) 231-5034 (fax)
ico(a)vt.edu
http://www.music.vt.edu/faculty/bukvic/
Hi,
I'm trying to do a simple effect in the frequency domain, nothing extraordinary.
I need to apply various gains to specific frequencies.
For this purpose, I want to process a 16bit audio input stream, block by block,
apply a hanning window, do a fft, now apply my effect, and then an inverse fft,
followed by overlap and add buffering.
For now, I'm simply trying to do all of this without applying any effect, just
to see if my time to frequency and back conversion is correct.
I managed to do this in Octave. Now, I'm trying to do it in C with fftw and the
sound I obtain is like "shivering". It's recognizable but severely altered. I've
spent hours on this, it just won't work.
Attached :
- freqfilter.m: my working octave version
- transform.h and transform.c: time -> frequency -> time routines
- transformtest.c: test program
Could anyone tell me what's wrong with this C code?
Thanks in advance
--
Olivier
Hi Nedko :)
today I tried to compile LADI, but it failed for openSuse 11.2 x86_64
and 64 Studio 3.0-beta3 x86_64. Please take a look at the attachments.
Cheers,
Ralf
suse11-2:/usr/src/ladish-0.1/flowcanvas # ./waf configure
Checking for program gcc : ok /usr/bin/gcc
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for gcc : ok
Checking for program g++ : ok /usr/bin/g++
Checking for g++ : ok
Checking for libgvc >= 2.8 : ok
Checking for gtkmm-2.4 >= 2.10.0 : ok
Checking for libgnomecanvasmm-2.6 >= 2.6.0 : ok
Checking for header boost/shared_ptr.hpp : ok
Checking for header boost/weak_ptr.hpp : ok
Global configuration
Install prefix : /usr/local
Debuggable build : False
Strict compiler flags : False
Build documentation : False
FlowCanvas Configuration
Auto-arrange : True
Anti-Aliasing : True
'configure' finished successfully (0.730s)
suse11-2:/usr/src/ladish-0.1/flowcanvas # ./waf
[snip]
'build' finished successfully (15.788s)
suse11-2:/usr/src/ladish-0.1/flowcanvas # ./waf install
[snip]
'install' finished successfully (0.074s)
suse11-2:/usr/src/ladish-0.1/flowcanvas # cd ..
suse11-2:/usr/src/ladish-0.1 # ./waf configure
[snip]
Install prefix : /usr/local
Build liblash : no
WARNING: D-Bus session services directory as reported by pkg-config is
WARNING: /usr/share/dbus-1/services
WARNING: but service file will be installed in
WARNING: /usr/local/share/dbus-1/services
WARNING: You may need to adjust your D-Bus configuration after installing jackdbus
WARNING: You can override dbus service install directory
WARNING: with --enable-pkg-config-dbus-service-dir option to this script
'configure' finished successfully (1.034s)
suse11-2:/usr/src/ladish-0.1 # ./waf configure --prefix=/usr
Checking for program gcc : ok /usr/bin/gcc
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for gcc : ok
Checking for program g++ : ok /usr/bin/g++
Checking for g++ : ok
Checking for dbus-1 >= 1.0.0 : ok
Retrieving D-Bus services dir : ok
Checking for uuid : ok
Checking for header expat.h : ok
Checking for glib-2.0 : ok
Checking for dbus-glib-1 : ok
Checking for gtk+-2.0 : ok
Checking for libglade-2.0 : ok
Checking for flowcanvas >= 0.4.0 : ok
boost headers : Version 1_39 (/usr/include)
==================
ladish-0.1 exported from 0d1ac13dd396785602ea157b5acb12f81da17b63
Install prefix : /usr
Build liblash : no
'configure' finished successfully (0.745s)
suse11-2:/usr/src/ladish-0.1 # ./waf
Waf: Entering directory `/usr/src/ladish-0.1/build'
[ 1/41] cxx: gui/canvas.cpp -> build/default/gui/canvas_3.o
[ 2/41] copy: daemon/dbus.service.in -> build/default/org.ladish.service
[ 3/41] git_ver: -> build/default/version.h
tarball from git revision 0d1ac13dd396785602ea157b5acb12f81da17b63
[ 4/41] cc: jack_proxy.c -> build/default/jack_proxy_1.o
[ 5/41] cc: catdup.c -> build/default/catdup_1.o
cc1: warnings being treated as errors
../jack_proxy.c: In function ‘jack_proxy_set_parameter_value’:
../jack_proxy.c:588: error: ‘type’ may be used uninitialized in this function
Waf: Leaving directory `/usr/src/ladish-0.1/build'
Build failed
-> task failed (err #1):
{task: cc jack_proxy.c -> jack_proxy_1.o}
suse11-2:/usr/src/ladish-0.1 #
root@64studio:/usr/src/ladish-0.1/flowcanvas# ./waf configure
Checking for program gcc : ok /usr/bin/gcc
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for gcc : ok
Checking for program g++ : ok /usr/bin/g++
Checking for g++ : ok
Checking for libgvc >= 2.8 : ok
Checking for gtkmm-2.4 >= 2.10.0 : ok
Checking for libgnomecanvasmm-2.6 >= 2.6.0 : ok
Checking for header boost/shared_ptr.hpp : ok
Checking for header boost/weak_ptr.hpp : ok
Global configuration
Install prefix : /usr/local
Debuggable build : False
Strict compiler flags : False
Build documentation : False
FlowCanvas Configuration
Auto-arrange : True
Anti-Aliasing : True
'configure' finished successfully (1.610s)
root@64studio:/usr/src/ladish-0.1/flowcanvas# ./waf
Waf: Entering directory `/usr/src/ladish-0.1/flowcanvas/build'
[1/9] cxx: src/Canvas.cpp -> build/default/src/Canvas_2.o
[2/9] cxx: src/Connectable.cpp -> build/default/src/Connectable_2.o
In file included from /usr/include/graphviz/gvc.h:20,
from ../src/Canvas.cpp:32:
/usr/include/graphviz/types.h:26:1: warning: "FALSE" redefined
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
from /usr/include/glib-2.0/glib/gtypes.h:30,
from /usr/include/glib-2.0/glib/galloca.h:30,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/gobject/gtype.h:26,
from /usr/include/glib-2.0/gobject/gboxed.h:26,
from /usr/include/glib-2.0/glib-object.h:25,
from /usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:31,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:24,
from /usr/include/glibmm-2.4/glibmm.h:27,
from /usr/include/gtkmm-2.4/gtkmm.h:29,
from /usr/include/libgnomecanvasmm-2.6/libgnomecanvasmm.h:29,
from ../flowcanvas/Canvas.hpp:24,
from ../src/Canvas.cpp:27:
/usr/include/glib-2.0/glib/gmacros.h:167:1: warning: this is the location of the previous definition
In file included from /usr/include/graphviz/gvc.h:20,
from ../src/Canvas.cpp:32:
/usr/include/graphviz/types.h:27:1: warning: "TRUE" redefined
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
from /usr/include/glib-2.0/glib/gtypes.h:30,
from /usr/include/glib-2.0/glib/galloca.h:30,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/gobject/gtype.h:26,
from /usr/include/glib-2.0/gobject/gboxed.h:26,
from /usr/include/glib-2.0/glib-object.h:25,
from /usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:31,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:24,
from /usr/include/glibmm-2.4/glibmm.h:27,
from /usr/include/gtkmm-2.4/gtkmm.h:29,
from /usr/include/libgnomecanvasmm-2.6/libgnomecanvasmm.h:29,
from ../flowcanvas/Canvas.hpp:24,
from ../src/Canvas.cpp:27:
/usr/include/glib-2.0/glib/gmacros.h:171:1: warning: this is the location of the previous definition
[3/9] cxx: src/Connection.cpp -> build/default/src/Connection_2.o
[4/9] cxx: src/Ellipse.cpp -> build/default/src/Ellipse_2.o
[5/9] cxx: src/Item.cpp -> build/default/src/Item_2.o
[6/9] cxx: src/Module.cpp -> build/default/src/Module_2.o
[7/9] cxx: src/Port.cpp -> build/default/src/Port_2.o
[8/9] copy: flowcanvas.pc.in -> build/default/flowcanvas.pc
[9/9] vnum_cxx_link: build/default/src/Canvas_2.o build/default/src/Connectable_2.o build/default/src/Connection_2.o build/default/src/Ellipse_2.o build/default/src/Item_2.o build/default/src/Module_2.o build/default/src/Port_2.o -> build/default/libflowcanvas.so build/default/libflowcanvas.so.2
Waf: Leaving directory `/usr/src/ladish-0.1/flowcanvas/build'
'build' finished successfully (14.397s)
root@64studio:/usr/src/ladish-0.1/flowcanvas#
Building LADI and installing LADI tools for 64 Studio 3.0-beta3 seems to
be fine, *when ignoring the warnings for flowcanvas*, but I had no time
to check if the installs will work. So compiling only for Suse failed.