Michał Badura | 19 Jul 21:27 2016
Picon

alsa_out alternative for OSX

Hello,

I have a Linux computer that is running a recording. I'd like to be able to also stream what is recorded to another computer through the network and listen to that with the speakers. I'm using Jack 1. I'm running jackd -d net on the slave computer, and jack_netsource on the recording one. Then, to play the sound through the speakers, I run alsa_out on the slave computer and connect the appropriate ports.

Now I'd like to be also able to listen on a computer with OSX (the recording computer stays the same). I've installed jack from Macports, but there is no Alsa for OSX. What can I do to get the same result?

Thank you,
Michal Badura
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
George Martínez | 9 Jul 18:02 2016
Picon

Fwd: MIDI in Jack

---------- Forwarded message ----------
From: "George Martínez" <latenciaalcontacto789 <at> gmail.com>
Date: Jul 9, 2016 3:49 PM
Subject: MIDI in Jack
To: <jack-devel <at> jackaudio.org>
Cc:

Hi :)

I will love to know how to use the Jack application with MIDI

Do I have to download virtual midi cables for that? Does it provides low latency MIDI?

Thank you and great app by the way

_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
micu | 8 Jul 11:40 2016
Picon
Picon
Gravatar

A way to get notified when the current timebase master resigns?

Hey guys,

Currently I am hacking in Jack transport support for a certain project.
And while doing that, I am wondering whether it is possible to get a 
notficiation when the current timebase master has stepped down.

Bascially what I have in mind for my client:

  * During startup, check if there is a timebase master and if not, be it
    (which I know is possible with jack_set_timebase_callback(..,1,...)).
  * In case there was another timebase master that resigns at a certain point 
    in time (leaves the graph, steps down for some reason,...),
    take over the timebase.

I couldn't figure out a way to get a notification (callback etc.) that the  
current timebase master just has stepped down.

Is there one? If not, is there a specific reason for that?

Your help would be highly appreciated.  

Kind regards,
micu
--

-- 
OpenPGP / GnuPG:	0xE4CB4E80
Fingerprint:		1A15 A480 1F8B 07F6 9D12 3426 CEFE 7455 E4CB 4E80

<<</>>

http://www.micuintus.de
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Stéphane Letz | 3 Jul 00:44 2016
Picon

Re: graph simplification using mathematics?

Yes indeed : a starting point here : Sarah Denoux, Yann Orlarey, Stéphane Letz, Dominique Fober, CALCUL
D’UNE EXPRESSION FAUST ÉQUIVALENTE À PARTIR D’UN GRAPHE D’APPLICATIONS

http://jim2016.gmea.net/actes

(although in french)

And in function here : http://faust.grame.fr/faustplayground/ when you export the final equivalent
patch. 

Stéphane

> Le 3 juil. 2016 à 00:20, Thomas Brand <tom <at> trellis.ch> a écrit :
> 
> On Sat, July 2, 2016 23:14, Stéphane Letz wrote:
>> Faust :  http://faust.grame.fr
>> 
> 
> Faust was the first thing that came to mind indeed. The introduction
> paragraphs in the documentation says
> 
> -specification language
> -describe signal processors from a mathematical point of view
> -free from implementation details
> 
> But right after that:
> -FAUST programs are fully compiled, not interpreted.
> 
> I can imagine to bundle FAUST code from different processors
> semi-automatically or handcrafted to one unit relatively easily. However i
> was thinking in a direction where the units live in a host still as single
> units, to be connected in different ways, and the host would dynamically
> derive a single math operation of the current graph. I understand this
> would include recompilation or some kind of JIT compilation in order to
> work. If possible at all, i think Faust would currently be the best fit,
> since it already offers some of the fundamental concepts needed to even
> think about doing something like this. That would allow large graphs with
> almost no context switches (this is pure speculation).
> 
> Greetings
> Tom
> 
>> 
>>> Le 2 juil. 2016 à 22:58, Thomas Brand <tom <at> trellis.ch> a écrit :
>>> 
>>> Hi,
>>> i wondered if the following scenario could work. Assuming DSP is
>>> basically maths, and the formula and variables for every plugin would be
>>> known, would it then be possible to magically simplify all formulas of
>>> all plugins to one single formula doing all in one step? Does this sound
>>> weird? Greetings
>>> Tom
> 
> 

_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Thomas Brand | 3 Jul 00:24 2016
Picon

Re: graph simplification using mathematics?

On Sat, July 2, 2016 23:14, Stéphane Letz wrote:
> Faust :  http://faust.grame.fr
>

Faust was the first thing that came to mind indeed! The introduction
paragraphs in the documentation says

-specification language
-describe signal processors from a mathematical point of view
-free from implementation details

But right after that:
-FAUST programs are fully compiled, not interpreted.

I can imagine to bundle FAUST code from different processors
semi-automatically or handcrafted to one unit relatively easily. However i
was thinking in a direction where the units live in a host still as single
units, to be connected in different ways, and the host would dynamically
derive a single math operation of the current graph. I understand this
would include recompilation or some kind of JIT compilation in order to
work. If possible at all, i think Faust would currently be the best fit,
since it already offers some of the fundamental concepts needed to even
think about doing something like this. That would allow large graphs with
almost no context switches (this is pure speculation).

Greetings
Tom

PS: jack-devel list added to reply

>
>> Le 2 juil. 2016 à 22:58, Thomas Brand <tom <at> trellis.ch> a écrit :
>>
>> Hi,
>> i wondered if the following scenario could work. Assuming DSP is
>> basically maths, and the formula and variables for every plugin would be
>> known, would it then be possible to magically simplify all formulas of
>> all plugins to one single formula doing all in one step? Does this sound
>> weird? Greetings
>> Tom
>>

_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Thomas Brand | 2 Jul 22:58 2016
Picon

graph simplification using mathematics?


Hi,
i wondered if the following scenario could work.
Assuming DSP is basically maths, and the formula and variables for every
plugin would be known, would it then be possible to magically simplify all
formulas of all plugins to one single formula doing all in one step? Does
this sound weird?
Greetings
Tom

_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
DjZU | 2 Jul 15:10 2016
Picon

Compiling jack2 in mixed mode

Hi there,

I've been happily using the pre-installed Jack2 that comes with Ubuntu 
Studio 14.04.3.
Now I require the ability to use more than 64 clients then tried to 
compile Jack2 from the package JACK 1.9.10 found at jackaudio.org/downloads
I'm running on a 64 bits machine but would like to get support for 32 
bits applications as well.

Configure runs fine with ./waf configure --prefix=/usr --dbus --profile 
--mixed --clients=256 --ports-per-application=2048 --alsa 
--libdir=/usr/lib/x86_64-linux-gnu/ --libdir32=/usr/lib/i386-linux-gnu/

Then build fails:
     (...)
     /usr/bin/ld: cannot find -ldbus-1
     (...)

I know it has something to do with the 32 bits library of dbus but need 
help to find out how to get them properly.
I have already the following installed:
     sudo apt-get install build-essential gcc-multilib g++-multilib 
fakeroot checkinstall
     sudo apt-get build-dep jackd2
     sudo apt-get install libdbus-1-3:i386

Am I still missing some libraries?
Is it about some environment variable?
Is it necessary to compile libdbus?

Thanks for your input.

DjZU
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Xavier Mendez | 22 Jun 18:33 2016
Gravatar

[patch] Fix bug with alsa_in/alsa_out latency

Hello,

Here's a quick fix for alsa_in and alsa_out, which currently set the 
playback latency of their ports to the target delay, but forget to 
convert this delay to JACK frames. See PR for more info.

https://github.com/jackaudio/jack2/pull/215
https://github.com/jackaudio/tools/pull/8

Also convert the result of jack_frames_since_cycle_start() into ALSA 
frames, before subtracting it from the delay for the controller.

Note that this change only has effect if ALSA and JACK sample rates 
differ, otherwise the behavior stays the same.

Xavi
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Xavier Mendez | 19 Jun 19:29 2016
Gravatar

Suggestion for two new tools

I'd like to suggest two new tools. I find myself using them frequently 
whenever I'm dealing with sets of outputs / inputs of different 
latencies, or sometimes when I'm using software that adds noticeable 
(i.e. >= 15ms) latency.

I think it would be best to add them as standard JACK tools because:

- They perform a very basic task.
- JACK has almost no latency-related tools AFAIK.
- They demonstrate the power of JACK's latency API and could serve
as [non-trivial] examples for devs trying to understand it.

What do you think? I've attached a patch with both tools. If they get 
included, I'll write documentation about its usage and the latency API 
in general. Below is a summary of what they do:

## jack_lsync

Synchronizes a set of ports for playback or capture, by inserting 
appropriate delays to compensate for latency. Example:

Suppose you have one output `playback_1` with 20ms output latency, and 
another output `playback_2` with 50ms output latency:

     jack_lsync -a2 &
     jack_connect lsync:output_1 playback_1
     jack_connect lsync:output_2 playback_2

lsync will insert a 30ms delay on the first output, giving you two 
outputs of 50ms latency. Instead of connecting to the original outputs, 
you'd connect to `lsync:input_1` and `lsync:input_2` respectively.

## jack_lset

Corrects the reported latency of a port. Example: to increment the 
playback latency of `port` by 30ms:

    jack_lset 30ms &
    jack_connect lset:output_1 port

Then connect everything to `lset:input_1` instead of `port`.

Clients should ideally set the correct latency at their ports, or 
provide an option (as with -I and -O) for users to set them. This is not 
the case in practice, and there are also a number of legitimate reasons 
why users may want to correct latency externally.
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Markus Grabner | 13 Jun 00:04 2016
Picon

fractional frame rates for alsa_in and alsa_out

	Hi!

A while ago I initiated work on a Linux driver for Line6 devices (now under sound/usb/line6 in the Linux
kernel tree). Some of these devices have weird sample rates (39062.5Hz, derived from the 10MHz USB clock
divided by 256). The alsa_in and alsa_out jack clients are convenient tools to use such Line6 devices
together with more standardized hardware operating at, e.g., 48kHz. However, alsa_in only supports
integer sample rates, and even after a couple of minutes, alsa_in doesn't detect the correct resampling
factor 1.2288 (48000/39062.5), but still reports the initial approximated value 1.228816
(48000/39062). Admittedly, the error isn't too big, but is larger than the error of high-quality crystal
oscillators. And, after all, why use an approximation if we know better?

I modified alsa_in and alsa_out such that they accept a sample rate in floating point format (command line
option "-r") and query the fractional sample rate from the ALSA driver to compute the initial estimation
of the resampling factor (see attached patch).

What do you think about this patch?

        Kind regards,
                Markus
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
marcin@saepia.net | 9 Jun 12:02 2016
Picon
Gravatar

shm registry full errors

Hello,

at some point I am getting the following errors from JACK

Jun  9 11:57:19 001-can1-plumber jackd[21110]: shm registry full
Jun  9 11:57:19 001-can1-plumber jackd[21110]: Cannot create shared memory segment of size = 422
Jun  9 11:57:19 001-can1-plumber jackd[21110]: JackShmMem::new bad alloc
Jun  9 11:57:19 001-can1-plumber jackd[21110]: Cannot open client
Jun  9 11:57:19 001-can1-plumber jackd[21110]: Cannot create new client

Max locked memory for this process is set to 134217728 while launching JACK via systemd.

It effectively causes JACK to hang.

I am using 1.9.10 (commit 1ed50c92) on ubuntu 16.04.

The configure flags are --clients=500 --ports-per-application=4 (I am not reaching 500 clients limit when that occurs, they are around 250).

JACK is started with dummy driver, and --port-max set to 2000.

What is the reason for hitting SHM limit? Can I overcome this in any way?

m.
_______________________________________________
Jack-Devel mailing list
Jack-Devel <at> lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org

Gmane