NetAudio

From XPUB & Lens-Based wiki

Netaudio

Trying to prototype a net audio exchange - a matrix of audio channels

netjack2

server

  • start jackd server
  • load network manager: jack_load netmanager
  • options jack_load netmanager -i "-h"

client

  • start Jack server running under the net backend: jackd -R -d net
  • use client soundcard jack_load audioadapter

Parameters:

  • -R real time
  • -S Async
  • Parameters jackd -d net –help
Parameters for driver 'net' (all parameters are optional):
        -a, --multicast_ip      Multicast Address (default: 225.3.19.154)
        -p, --udp_net_port      UDP port (default: 19000)
        -M, --mtu               MTU to the master (default: 1500)
        -C, --input_ports       Number of audio input ports (default: 2)
        -P, --output_ports      Number of audio output ports (default: 2)
        -i, --midi_in_ports     Number of midi input ports (default: 0)
        -o, --midi_out_ports    Number of midi output ports (default: 0)
        -n, --client_name       Name of the jack client (default: 'hostname')
        -t, --transport_sync    Sync transport with master's (default: 1)
        -m, --mode      Slow, Normal or Fast mode. (default: slow)

FOR WAN: jack_netsource

DESCRIPTION
       jack_netsource  The  Master  side  of a netjack connection. Represents the slave jackd -dnet in the master jack graph.  Most connection parameters are configured via the net‐
       source, and the slave will set itself up according to the commandline option given to jack_netsource.
       Netjack allows low latency audio connections over general IP networks. When using celt for compression, it is even possible to establish transatlantic links,  with  latencies
       not much over the actual ping time.
       But the main usecase is of course a LAN, where it can achieve one jack period of latency.

On server:

  • Start jack_netsource jack_netsource -H 10.0.1.6
  • Load network manager with address jack_load netmanager -i "-a 10.0.1.6"

On Client:

  • start Jack server running under the net backend with address of server: jackd -R -d net -a 10.0.1.6
  • send audio to jack “mpv somefile.mp3 -ao jack –jack-port=system:playback_1 system:playback_2 –loop 0”
  • Go back to server and connect client-hostname:jack_connect to system:playback_1 jack_connect hammerhead:from_slave_1 system:playback_1