一、从机端设置
1、以常规方式配置,驱动仍然为alsa,设置相对稳定的延迟参数,我选用128采样点数,3个缓冲区,44100采样率。
2、切换到option选项,勾选execute script after startup,添加服务启动时运行的脚本命令:jack_load netadapter -i "-P4 -C8"
脚本意思为加载网络适配器,创建4通道playback和8通道captrue。
如果创建超过7个通道,需要加-M参数修改发包数据大小,默认为1580(不加-M参数时)。
3、保存后start。点击connect,可看到从机端已创建8个输入和4个输出,这是基于网络的传输通道。
二、主机端设置:
1、以常规方式配置,驱动仍然为alsa,设置相对稳定的延迟参数,我选用128采样点数,3个缓冲区,44100采样率。
2、切换到option选项,勾选execute script after startup,添加服务启动时运行的脚本命令:jack_load netmanager
3、保存后start。点击connect,如果网络连接成功,可以看到8个输出和4个输入,这是基于网络的传输通道。
主机上的8个输出实际上就是从机的8个输入。
===================================================================================
以上例子中,从机声卡的line in输入信号,从主机声卡的line out输出。
===================================================================================
实际应用:
假设主机为多轨播放设备,从机开启服务后,会告诉主机,嘿,我有8个输入端口,你可以发送8个通道的音频给我,由我自己来混缩。
同时,从机可以发送4通道的音频给主机,例如麦克风信号,以实现对讲功能。
===================================================================================
一个主机可以连接多个从机,每个从机作为独立混缩设备。但目前仅在有线网络中使用。
此方案两台机器之间并不能真正的同步,因为他们均采用各自声卡的时钟,只是运用了软件方式解决同步问题,但这种方式确实比官方介绍的net驱动方式延迟更低,因为主要延迟并不是来自于网络,而是声卡本身。
===================================================================================
帮助文档:
jack_load netadapter -i "-help"
Internal client parameters:
-a, --multicast-ip Multicast address, or explicit IP of the master (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)
-n, --client-name Name of the jack client (default: 'hostname')
-t, --transport-sync Sync transport with master's (default: 0)
-l, --latency Network latency (default: 5)
-q, --quality Resample algorithm quality (0 - 4) (default: 0)
-g, --ring-buffer Fixed ringbuffer size (if not set => automatic adaptative) (default: 32768)
-c, --auto-connect Auto connect netadapter to system ports (default: false)
jack_load audioadapter -i "-help"
Internal client parameters:
-C, --capture Provide capture ports. Optionally set device (default: none)
-P, --playback Provide playback ports. Optionally set device (default: none)
-d, --device ALSA device name (default: hw:0)
-r, --rate Sample rate (default: 48000)
-p, --periodsize Period size (default: 512)
-n, --nperiods Number of periods of playback latency (default: 2)
-D, --duplex Provide both capture and playback ports (default: true)
-i, --in-channels Number of capture channels (defaults to hardware max) (default: 0)
-o, --out-channels Number of playback channels (defaults to hardware max) (default: 0)
-q, --quality Resample algorithm quality (0 - 4) (default: 0)
-g, --ring-buffer Fixed ringbuffer size (if not set => automatic adaptative) (default: 32768)
jack_load netmanager -i "-help"
Internal client parameters:
-a, --multicast-ip Multicast address (default: 225.3.19.154)
-p, --udp-net-port UDP port (default: 19000)
-c, --auto-connect Auto connect netmaster to system ports (default: false)
-s, --auto-save Save/restore netmaster connection state when restarted (default: false)