On Friday 06 January 2012, you wrote:
> btw: is there a way to list available clients/ports from the api.
> I know that aconnect -i / -o does this, but is there a c/c++ function?
>
> Dave
The functions are: snd_seq_query_next_client() and snd_seq_query_next_port();
you need to loop calling these functions while they return a correct answer.
For instance, this is the relevant code in "aconnect.c" :
static void do_search_port(snd_seq_t *seq, int perm, action_func_t do_action)
{
snd_seq_client_info_t *cinfo;
snd_seq_port_info_t *pinfo;
int count;
snd_seq_client_info_alloca(&cinfo);
snd_seq_port_info_alloca(&pinfo);
snd_seq_client_info_set_client(cinfo, -1);
while (snd_seq_query_next_client(seq, cinfo) >= 0) {
/* reset query info */
snd_seq_port_info_set_client(pinfo,
snd_seq_client_info_get_client(cinfo));
snd_seq_port_info_set_port(pinfo, -1);
count = 0;
while (snd_seq_query_next_port(seq, pinfo) >= 0) {
if (check_permission(pinfo, perm)) {
do_action(seq, cinfo, pinfo, count);
count++;
}
}
}
}
See:
http://git.alsa-project.org/?p=alsa-utils.git;a=blob;f=seq/aconnect/aconnec…
I guess you already know the reference documentation site:
http://www.alsa-project.org/alsa-doc/alsa-lib/seq.html
Just for comparison, a similar enumeration using Drumstick looks like this:
QListIterator<PortInfo> it(m_Client->getAvailableOutputs());
while(it.hasNext()) {
PortInfo p = it.next();
cout << p.getClientName() << ":" << p.getPort();
}
See Drumstick's example "drumgrid":
http://drumstick.sourceforge.net/docs/drumgrid.cpp-example.html
Regards,
Pedro
Hi!
I was recently helping a small Dutch radio station run by volunteers to
set up their new studio.
It's a modular system with a 16 I/O firewire card:
http://www.d-r.nl/AXUM/AXUM.htm
We managed to support it in FFADO. The playback software runs on a
virtualised Windows machine that's talking to jackd via netjack (no idea
which one, the one with multicast and netmanager), so we can address
four individual stereo pairs.
This whole netjack thing isn't very stable, so the playback software
should be replaced by some native Linux client. Here's a screenshot of
the current Windows solution:
http://adi.loris.tv/radio.png
It is basically a set of four remotely controlled winamps (with ASIO
output plugin to talk to jackd) and a directory browser per player.
So "Jingles", "Muziek" and "Bladeren" are just shortcuts to directories
with media files, the drop-down menu on the left contains a list of even
more directories.
The filter is used for pattern matching.
Questions: Are you aware of any Linux solution that comes close to this?
If not, any recommendations if one would want to create such a four-deck
player? Leveraging VLC, mplayer, gstreamer?
This is surely going to be open source, so whoever is interested, feel
free to participate.
Cheers
Hi All,
Praxis LIVE is an open-source, graphical environment for rapid
development of intermedia performance tools, projections and
interactive spaces.
A new build of Praxis LIVE is now available for download. While this
is mainly a bug fix release, it does see the Praxis command line
player added to the main installation, and work which paves the way
for distributing Praxis projects as standalone applications (coming
separately in the next couple of weeks).
Website - http://code.google.com/p/praxis
Release notes - http://code.google.com/p/praxis/wiki/ReleaseNotes
Videos - http://praxisintermedia.wordpress.com/2012/07/30/video-rough-cuts-1/
If any of you who've been playing with Praxis LIVE would be interested
in submitting example projects for the next release, please get in
touch with me off-list.
Thanks and best wishes,
Neil
--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net
Hi there,
Does anyone have Steve Harris' new email address? steve(a)plugin.org.uk
fails with "550 5.1.2 Bad destination system address".
Anyway, some of you who package or copied code from meterbridge may be
interested in this as well.
-=-=-=-=-
Hi Steve,
Haven't seen you around much on LAD. I hope this email finds you well.
Are you still maintaining meterbridge? I've stumbled over a bug in 0.9.2
The IEC scale is not continuous. Attached patch resolves the issue.
I don't have access to the IEC-268-18 specs, so I can't tell if the
patch is correct, but it does fix the discontinuity between -60db and
-50db. To make it obvious, here's the annotated iec_scale(float db):
if (db < -70.0f) {
def = 0.0f;
} else if (db < -60.0f) {
def = (db + 70.0f) * 0.25f; // 0.0 .. 2.5
} else if (db < -50.0f) {
// def = (db + 60.0f) * 0.5f + 5.0f; // 5.0 .. 10.0 // bug? v0.9.2
def = (db + 60.0f) * 0.5f + 2.5f; // 2.5 .. 7.5 // fix!
} else if (db < -40.0f) {
def = (db + 50.0f) * 0.75f + 7.5; // 7.5 .. 15.0
} else if (db < -30.0f) {
def = (db + 40.0f) * 1.5f + 15.0f; // 15.0 .. 30.0
} else if (db < -20.0f) {
def = (db + 30.0f) * 2.0f + 30.0f; // 30.0 .. 50.0
} else if (db < 0.0f) {
def = (db + 20.0f) * 2.5f + 50.0f; // 50.0 .. 100.0
} else {
def = 100.0f;
}
Furthermore, the DPM image has a couple of problems:
The markers at -10, -19, -20, -25, -30, -35, -55 are off by one pixel
(they need to be moved 1px down), the -45db marker is correct.
The marks for -40, and -50 are missing and it's easy to mistake the
-45db and -55db marks to correspond to the -40db, -50db annotations.
Last but not least, the minus-signs of all annotation does not align
with the marks and the font used for the annotation text is somewhat
blurry..
All fixed in attached image.
Cheers!
robin
Hello all,
Release 1.2.0 of libzita-resampler now include the 'zretune'
app which resamples an audio file by (the inverse of) a ratio
given in cents. The output file will have the same nominal
sample rate as the input. The effect is to change the pitch
AND the lenght of the original file. For small pitch changes
(+/- a semitone) the modified length of a sample probably
won't matter much.
For example
zretune --cent 50 input.wav output.wav
will result in a file that sounds a quarter tone higher
and is about 1.5 percent shorter.
Enjoy !
--
FA
A world of exhaustive, reliable metadata would be an utopia.
It's also a pipe-dream, founded on self-delusion, nerd hubris
and hysterically inflated market opportunities. (Cory Doctorow)
Hi all,
Ico - director of linuxaudio.org - arranged to quadruple the disk-space
for our servers.
Amongst other things, this will allow us to host large
sample-collections (an endeavor Nils has started) as well as prepare for
videos from the upcoming Linux-Audio-Conference.
linuxaudio.org services will be offline for 5-10 mins later today
(around 45 min from now).
26/Sept - 16:00 UTC
thanks for your understanding.
robin
Hi,
Over the week or so, I've build some fuse filesystem filters flac files
on-the-fly
using the zita convolver. This makes it real easy to play
around with files and filters. In particular with systems that otherwise
don't support stream convolving, but just can read files.
This is in its early stages, but should be already pretty usable. To see
what is going on, it
includes a little webserver that gives a status page of what files are
currently being accessed.
(from the README:)
This fuse filesystem takes an original path to a directory with flac-files
and provides these files at the mount point. Accessing audio files will
automatically convolve these on-the-fly using the zita convolver by
Fons Adriaensen. You can directly use filter configuration files that you
have
for jconvolver/fconvolver.
https://github.com/hzeller/folve
So if this is something you're interested in, check it out, provide
feedback patches :)
-henner
We are pleased to announce that linux.conf.au 2013 (LCA2013) will once again
include the Multimedia and Music miniconf. LCA2013 will be held in
Canberra, Australia from 28 January to 2 February 2013, and the Multimedia
and Music miniconf provides an opportunity for produces and consumers of
multimedia and music content to meet and explore all aspects of production
and playback of music, audio and video on open-source platforms.
The Multimedia and Music miniconf call for papers is now open. We would
love to see wide-ranging proposals from across the FOSS multimedia and music
community:
- from developers of open-source multimedia and music software, discussing
new and upcoming features, clever solutions to problems or interesting
ideas they are exploring
- from users who have built up a workflow which they want to share
- from anyone who is doing awesome things with open-source audio and video
software that they want to tell the world about
Presentation slots of 20 and 50 minutes (plus 5 minutes question time) will
be available, with the number of 50 minute talks being determined by the
number of proposals received. Past Multimedia and Music miniconfs have
featured both user-focused tutorials and talks aimed at developers; please
browse our past miniconf websites to see the diverse range of presentations
we have had in the past:
* http://www.annodex.org/events/lca2013_mmm/#previous
To submit a proposal please email your proposal to one of the organisers as
described on our "Call for papers" page at:
http://www.annodex.org/events/lca2013_mmm/pmwiki.php/Main/CallForPapers
The call for papers is open-ended but priority will be given to those who
submit proposals prior to 30 October 2012.
For more information about the Multimedia and Music miniconf please contact
either Jonathan Woithe (jwoithe(a)atrad.com.au) or Silvia Pfeiffer
(silviapfeiffer1(a)gmail.com).
The FFADO project is pleased to announce the long-awaited version 2.1.0.
With improved stability, many bugfixes and a large number of newly supported
devices this version represents 2 years work by the small but dedicated
FFADO team. All users of FFADO are encouraged to upgrade.
This source-only release can be downloaded from
http://www.ffado.org/files/libffado-2.1.0.tgz
FFADO is brought to you thanks to the work of Daniel Wagner, Pieter Palmers,
Philippe Carriere, Adrian Knoth, Arnold Krille, Jonathan Woithe and the many
people who have tested FFADO against their devices, provided patches and
given suggestions.
Changes and additions in FFADO 2.1:
* Significantly improved support for the new "juju" firewire stack
found in
newer kernels
* Support for JACK freewheeling mode and set-buffer-size operation
* Lower CPU usage
* udev rules included in FFADO to give user access to audio device files
* More stable streaming
* Fix crash when realtime system clock was set
* Fix race conditions and invalid memory accesses on shutdown
* Fixes for clean compilation on recent gcc versions (up to 4.7)
* ffado-diag enhanced to aid debugging efforts
* Many bugs fixed
New DICE-based devices supported in FFADO 2.1 (up to 96 kHz rate only):
* Alesis (no mixer support):
io|14
io|26
Multimix16 Firewire
* FlexRadio Systems (no mixer support):
Flex-5000
* Focusrite:
Saffire PRO 40 (44.1 kHz, 48 kHz and 88.2 kHz only)
Saffire PRO 24
Saffire PRO 24 DSP (audio streaming and mixer only: no DSP)
Saffire PRO 14 (no mixer or router control)
Liquid Saffire 56 (experimental: 44.1/48 kHz only, no mixer/router)
* Lexicon (generic mixer):
I-ONIX_FW810S
* DnR (no mixer):
Axum Firewire IO card 16x16
* M-Audio (basic audio with generic mixer):
ProFire 2626
ProFire 610
* Presonus:
Firestudio Project (generic mixer)
Firestudio Tube (generic mixer)
Firestudio Mobile (no mixer)
Studiolive_1642 (no mixer)
Studiolive_2442 (no mixer)
* TCAT (audio only):
DiceII EVM (1)
DiceII EVM (2)
DiceII EVM (4)
* TC Electronic:
Konnekt 24D (no mixer support)
Konnekt 8 (no mixer support)
Studio Konnekt 48 (no mixer support)
Konnekt Live (no mixer support)
Desktop Konnekt 6 (no mixer support)
ImpactTwin (generic mixer only)
* Weiss Engineering Ltd. (no mixer support):
ADC 2
Vesta
Minerva
AFI 1
TAG DAC1
INT 202
DAC 202
Other new devices supported by FFADO 2.1:
* RME (no MIDI I/O support yet)
Fireface 400
Fireface 800
* MOTU
896 mk 3 (audio only, no mixer yet)
Traveller mk 3 (experimental)
Ultralite mk 3 (experimental)
Ultralite hybrid (firewire only, experimental)
* FCA-202, and possibly other Oxford FW-92x devices
* Mackie Onyx i
* M-Audio Ozonic (no mixer)
* Phonic HelixBoard 24 Universal (no mixer)
* Tascam IF-FW/DM (experimental, incomplete)
* Yahama GO46
Just spotted on YouTube: http://youtu.be/imkVkRg-geI
For those that don't know, JUCE is a monolithic C++ library that helps
you write cross-platform audio applications.
I am a bit concerned by the time it seems to be taking to do JIT
compilation. What do you think? Would you use it?
More details and discussion here:
http://rawmaterialsoftware.com/viewtopic.php?f=12&t=9793