Typically, the Audio MIDI Setup application is enough for most users to manage their audio interfaces, including routing audio to/from an AVB audio interface. For those users needing more control over the AVB routing, or for those users who are simply curious about the deeper workings of AVB on macOS, the `avbutil` command is for them.
The `avbutil` command is included in macOS since macOS Sierra, which was the first macOS release supporting AVB. Coincidentally, it was also the first macOS release that supported Thunderbolt, which happens to be a corresponding requirement for supporting AVB on Mac hardware.
- AVDECC Entity Controller
The AVDECC Entity Controller window is used to see the available AVB devices on the network, and to see (and in some cases alter) their active configurations.<tbody bgcolor="lightblue"></tbody>
|💡||Tip:The controller window is started by opening Terminal, and calling the `avbutil` command.|
``` $ avbutil --controller launch ```
``` $ avbutil avbutil 900.12
avbutil> controller ```
Once started, a window will appear that lists all the available AVB devices on the network. Here you can see three different MOTU audio interfaces that are currently connected.
- AVB Audio Entity Configuration
The AVB Audio Entity Configuration window shows the active configuration of an AVB audio entity.<tbody bgcolor="lightblue"></tbody>
|💡||Tip:The configuration window is opened by selecting Audio Entity Configuration from the Window menu, or by typing Cmnd-1.|
Entities can be selected by clicking on their names. In the image above, the MOTU 16A is currently selected. By default, no entities are selected.
- Simple Virtual Audio Entity Configuration
The Simple Virtual Audio Entity Configuration window allows the AVB capable Ethernet interfaces of the system to become active AVB entities on the network.
Once enabled, audio can be routed to/from the Mac as though it were an audio interface. This makes it possible for two Mac computers to exchange audio with one another over the network, and for one Mac to remotely manage the AVB connections of another mac using the AVDECC Entity Controller.<tbody bgcolor="lightblue"></tbody>
|💡||Tip:The configuration window is opened by selecting Simple Virtual Audio Entity Configuration from the Window menu, or by typing Cmnd-2.|
- AVDECC Connection Matrix
|💡||Tip:The matrix window is opened by selecting AVDECC Connection Matrix from the Window menu, or by typing Cmnd-4.|
Talkers are listed across the top, and Listeners across the left.
In the image above, one can see that the Stream 1 and 2 outputs of the MOTU 24Ai device are patched to the Stream 1 and 2 inputs of both the MOTU 16A and MOTU 24Ao devices. This means that both the 16A and 24Ao devices will receive exactly the same signals. (To note, MOTU AVB streams are 8 channels wide, so this example demonstrates the routing 16 channels of audio.)
The settings demonstrated can also be achieved using the MOTU Pro Audio Control user interface. Any changes made in the MOTU UI will also be reflected in real-time on the connection matrix UI.
- Known avbutil versions
OS | Version | .0 | .1 | .2 | .3 | .4 | .5 | .6 | .7 |
| ------- | ------ | ------ | ------ | -- | ----- | -- | ----- | ----- |
macOS Big Sur | 11.0 | 900.12 | 900.12 | | | | | | | macOS Catalina | 10.15 | | | 800.17 | | | | | 850.1 | macOS Mojave | 10.14 | | | | | 740.1 | | 760.6 | | macOS High Sierra | 10.13 | | | | | | | | | macOS Sierra | 10.12 | | | | | | | 506.1 | |
(*) v740.1 needs to be verified.
- Alternative AVDECC Controllers
[L-Acoustics](https://www.l-acoustics.com/) provide a set of open source libraries for controlling AVB entities using the AVDECC protocol that is compliant with the Milan specifications of the Avnu Alliance. The libraries are available at https://github.com/L-Acoustics/avdecc.
[Pivitec](http://www.pivitec.com/) once produced AVB hardware that interfaced with the Avid S3L console. They provided their own AVDECC Controller to manage the hardware. It is still possible to download their [AVDECC Controller](http://www.pivitec.com/avdecc-controller/), although it has not been updated since mid-2015.