Hello,
I try to squeeze as much performance as possible out of my upcomming
Linux synthesizer and try manual vectorization with following construct
in c, mainly to vectorize away multiplications :
typedef float v4sf __attribute__ ((vector_size(16)));
union f4vector
{
v4sf v __attribute__((aligned (16)));
float f[4] __attribute__((aligned (16)));
};
On AMD 64bit Turion (single core) on 64 Studio in 64bit mode this doesnt
improve performance at all, actually it even get worse. Is GCC that good
at optimizing on its own? I have no access to Intel processors at the
moment but would love to know how to benefit from SIMD optimizations of
float operations.
Sources on the web are rather thin...
Cheers,
Malte
--
Malte Steiner
media art + development
-www.block4.com-
Hi.
This is a very early announcement of a piece of software I am working
on which is currently sort of in its prototyping stage.
I recently played with optical music recognition, a pretty
interesting topic to a blind musician. The OMR software available
today is getting better, and some sheets I scanned actually produced
pretty usable results. However, only listening to MIDI files
is not very usable for learning music to me (all the on-screen score
display programs I know of are totally inaccessible to a blind user). So I
needed a way to represent the scanned data in a usable way to a blind
person. Braille music is an established standard, and
actually pretty nice once you managed to learn enough of it for it
to be useful. There is a commercial product around to transform
NIFF files to braille music, which costs 3 times as much as
the actual OMR software. This sillyness inspired me
to write something myself. Since NIFF is effectively dead,
and all major OMR programs these days do export to MusicXML
as well, I decided to use MusicXML as the base input format for
my project. Its also lots easier to develop than NIFF based
software since the file format is actually human-readable, not a binary format
and very easy to parse (XML).
That said, braille music is a very complex standard. FreeDots
as of now does only implement the very rudimentary basics, i.e. notes and rests,
interval symbols and some basic form of repetition detection. That said, it
has already been useful to myself as a tool to study music scores
for memorisation. FreeDots can already play
back the score (via MIDI) and also provides an interactive
mode for braille display users which allows you to "click" (using
the so-called cursor routing keys) on an individual braille music
symbol and have it played back to you. This is extremely useful (at least to
me) while learning to read braille music. If you aren't quite
sure what is written in a measure, just invoke the symbol you
are unsure about, and it will be played back.
I know that probably most people on this list do not have any use
for this software, but I also know that we have at least one other
blind user here. Since FreeDots is being developed on Linux (I
actually plan to port it to Windows as well so that blind users
can use it as an alternative to the unnamed, high-priced commercial
software available to do the same thing), I could not
resist to announce it here :-)
FreeDots is written in Python, using the lxml library for XML processing
and the pygame library for playing back MIDI output.
The design should make it relatively easy to add more input formats.
For instance, a Humdrum parser is one thing I'd like to have at some point.
MIDI should also be possible as an input format, but that would require a bit
of pseudo-AI for good results.
http://delysid.org/freedots.html
Why not use Lilypond?
There are several reasons why I did not use Lilypond for this project:
1. OMR programs do export to MusicXML, not .ly
I want a simple way to scan a sheet of music and be able to read it myself.
Since MusicXML is what the good OMR engines support, this format was
chosen as a starting point.
2. MusicXML has a nice and clear distinction between the graphical
representation of musical events, and the sound representation.
This makes it much easier to write code for braille music translation
if you are yourself blind, and can not look at the score you are
working with.
3. The Lilypond source code is unreadable to me. I've played with the
idea of adding a braille music export feature to lilypond since
years, but whenever I tried understanding enough of lilyponds
codebase to actually try to attempt such a thing, I failed completely.
The destinction between different output format rendering in
lilypond is not at all clear to me. I just dont understand
how to add a new output format. If anyone on this list
is knowledgeable enough to start such a project off,
I'd be more than willing to help to get the implementation
of the actual braille music formatting rules done, but I just
can't get the initial work required to add a new format to lilypond done.
--
CYa,
⡍⠁⠗⠊⠕ | Debian Developer <URL:http://debian.org/>
.''`. | Get my public key via finger mlang(a)db.debian.org
: :' : | 1024D/7FC1A0854909BCCDBE6C102DDFFC022A6B113E44
`. `'
`- <URL:http://delysid.org/> <URL:http://www.staff.tugraz.at/mlang/>
The 6th annual Linux Audio Conference has begun in Cologne, Germany. It
runs today through March 2nd, 2008. As with each previous year this
year's conference is streamed live over the internet in ogg theora via
icecast. The stream status page can be found at:
http://lac.linuxaudio.org
This year we are in the unique situation of having a Gigabit link
donated by CITIZENMEDIA: http://www.ist-citizenmedia.org/ They have
asked us to use up as much of their bandwidth as we can so they can see
how well the link performs. Please forward this information widely so
we can help them out.
This year the core team, Joern Nettingsmeier and myself, are recruiting
volunteers to spread the workload. To that end we have set up a mailing
list and irc channel to coordinate our efforts. If you are here in
Cologne for the conference please consider joining us. If you are not
coming, please enjoy the fruits of our labors by watching the streams
and participating via irc.
stream team mailing list: http://zhevny.com/mailman/listinfo/lac-streams
general conference chat: #lac2008 on irc.freenode.net
stream team tech talk: #lac2008-tech on irc.freenode.net
Thanks,
LAC streamteam
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Hi!
I got meself a new java runtime (1.6) which has support for ALSA midi,
so I thought that I would give Behringers BCEdit another go. This time
around it actually finds the BCR2000, but ... unfortunately it couldn't
save any edits back to the device. So I disassembled the application :-D
The main reason for disaster appears to be in
bcedit/ThreadSendScript.java where too much verbose error checking for
timeout causes the very timeout it is checking for and then also - for
no apparent good reason at all - closes the midi device underneath the
application, leading straight into a burn and crash.
I have an updated bcedit.jar here, so if anybody is interrested in
trying it out or placing it somewhere on the web, just give me a call.
Decompiled sources are available on request as well (beware though, not
everything builds just yet.)
License: Free as in Behringer ;)
--
mvh // Jens M Andreasen
LAC2008 -- The final countdown
The Linux Audio Conference 2008 is prepared. The organisation team of
LAC2008 is looking forward to welcoming the international Linux audio
community in Cologne. The conference is taking place at the Academy
of Media Arts (KHM) from February 28 to March 2, 2008. For detailed
information visit the LAC2008 website at http://lac.linuxaudio.org
The Conference
Participants of LAC2008 will experience four days crammed full
with presentations of new developments in Linux audio software. 20
talks by international experts are planned. The Soundlab of the
Academy is delighted to have Miller S. Puckette from San Diego as a
keynote speaker on Saturday. Admission to all presentations is free.
Remote visitors can follow the entire paper session plus selected
extras by means of our audio and video streams and can participate via
IRC channels.
The Concerts
There will be three concerts at the "Stadtgarten" in Cologne. Two of
these are "classical" concerts with a mixture of experimental,
improvised or taped music all made using Linux as main platform. A
third one, the "Club Night" will be an allnighter focusing on
electronic music with a club background. Artists from the USA and
Canada, Austria, UK, Poland and many other countries will play at
these events.
The Exhibition
The exhibition at LAC2008 will present sound art by students of the
Academy of Media Arts plus site-specific works by invited artists.
The Workshops
Learning is fun: the LAC2008 will host several exciting workshops for
your Linux audio brain training pleasure held by experts in the
respective fields. Topics include hardware hacking with a custom
Arduino board and software soldering using Pure Data and
SuperCollider. Additionally, space is available for adhoc workshops
and self organised meetings.
Further details including a full timetable is available on
http://lac.linuxaudio.org
Make noise, Tux!
--
Frank Barknecht and Martin Rumori
Chairs of LAC2008
The build didn't work for me at first.
Don't know if stuff works, but it compiles!
Workaround,
if slv2 doesn't compile set-fPIC:
CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer -fPIC" \
CXXFLAGS="${CFLAGS}" emerge -uDvNa slv2
then:
ln -s /usr/lib64/pkgconfig/slv2.pc /usr/lib64/pkgconfig/libslv2.pc
emerge ingen
stop emerge ingen after src unpack
ln -s /usr/lib64 \
/var/tmp/portage/media-sound/ingen-9999/work/ingen-9999/lv2/lv2/osc/.libs
ln -s /usr/lib64 \
/var/tmp/portage/media-sound/ingen-9999/work/ingen-9999/redlandmm/src/.libs
restart emerge
Hopefully complete.
The build didn't work for me at first.
Workaround:
ln -s /usr/lib64/pkgconfig/slv2.pc /usr/lib64/pkgconfig/libslv2.pc
emerge ingen
stop emerge ingen after src unpack
ln -s /usr/lib64 \
/var/tmp/portage/media-sound/ingen-9999/work/ingen-9999/lv2/lv2/osc/.libs
ln -s /usr/lib64 \
/var/tmp/portage/media-sound/ingen-9999/work/ingen-9999/redlandmm/src/.libs
restart emerge
To Stephane, and the team at Jackdmp.
I'm having a great run with the latest build, highly stable, and just keeps
going all day every day, even when i'm throwing orchestras at it.
I have a suggestion.
A lot of programmes seem to be going through a transition at the moment from
Alsa to Jack in the midi department. And the latest jack midi has been
delightful to use in its native environment.
Is there an opportunity here to include in Jack, a 'virtual' transition port
system of say 32 input and 32 output midi ports, that show in the gui
(Qjackctl) and enable the user to seamlessly link alsa midi into Jack midi?
An example would be, in the Jackmidi tab, a set of 'JAT ports' (32 input, 32
output), and the same in the Alsa tab? (32 input, and 32 output)
Or is something like this, for multiple midi ports, already available?
For us crusty middle aged orchestral chaps writing 'elevator music',
multiple midi ports are a must, and essential to controlling big templates
in various programmes, so any guidance, or feedback on this would be greatly
appreciated.
Alex.
Hello everyone!
First time poster, long time fan.
As a user (one of many) of LinuxSampler I'm/we're in dire need of a friendly
convolution reverb. Unfortunately I've not been able to compile JConv or
figure out how to configure BruteFIR to work with JACK and my collection of
IRs in WAVE and AIFF formats.
Frustrated I took a stab at writing a simple JACK client for the Freeverb3
convolution reverb. But I can't get it to work properly. Could anyone
knowledgeable take a look at it and help us out? I've posted the code of my
(more or less copy-and-paste) attempt here:
http://bb.linuxsampler.org/viewtopic.php?f=7&t=33#p291
TIA
--
Anders Dahnielson
<anders(a)dahnielson.com>
On Feb 15, 2008 5:13 PM, Anders Dahnielson <anders(a)dahnielson.com> wrote:
>
> On Fri, Feb 15, 2008 at 11:50 PM, Reuben Martin <reuben.m(a)gmail.com> wrote:
>
> > On Fri, Feb 15, 2008 at 4:27 PM, Anders Dahnielson
> >
> > <anders(a)dahnielson.com> wrote:
> > >
> > >
> > > On Fri, Feb 15, 2008 at 4:24 PM, Reuben Martin <reuben.m(a)gmail.com>
> wrote:
> > > >
> > > > On Fri, Feb 15, 2008 at 6:48 AM, Anders Dahnielson
> > >
> >
> > > I tried to unmask it (from the Gentoo Pro-Audio overlay) but I could not
> > > even get libdsp to build on my 64-bit system. Both jack_convolve and
> > > dssi_convolve are dependent on libconvolve which is dependent on libdsp,
> I
> > > guess.
> >
> > That's to do with some minor differences when compiling for x86_64.
> > Actually, this *should* be fixed already. I filed a bug for it myself
> > and it was (supposedly) taken care of. Make sure you've synced the
> > overlay.
> >
> > If it still doesn't work, the quick and dirty way to fix it is to add
> > -fPIC to your CFLAGS and CXXFLAGS while building these packages.
> >
>
> Still not compiling. Forgot to include the error I'm getting, here it is:
>
> x86_64-pc-linux-gnu-gcc -D_REENTRANT -D_THREAD_SAFE -D_ISOC9X_SOURCE
> -D_GNU_SOURCE -DUSE_MEMMOVE -DDSP_X86_64 -I. -I../Inlines -I/usr/include -c
> X86.c
> x86_64-pc-linux-gnu-gcc -D_REENTRANT -D_THREAD_SAFE -D_ISOC9X_SOURCE
> -D_GNU_SOURCE -DUSE_MEMMOVE -DDSP_X86_64 -I. -I../Inlines -I/usr/include -c
> X86-64.c
> X86-64.c: In function 'dsp_x86_64_iirf':
> X86-64.c:318: error: inconsistent operand constraints in an 'asm'
> make: *** [X86-64.o] Error 1
Apparently the new ebuild tries to use the x86_64 assembly that comes
with the package. It doesn't compile correctly with gcc 4.
Use the attached ebuild in it's place. Also remember to add -fPIC to
your CFLAGS / CXXFLAGS while building these three packages.
-Reuben