Calculating a multicast address from Livewire channel number
DESCRIPTION
All Livewire channels are an alias to an IGMPv2 multicast address. In a pure Livewire environment, you should never need to know a multicast address. In this document we will discuss how to obtain a multicast address should you need it for other purposes.
There are two methods
Method 1 - The easy way
Download this Excel spreadsheet.
When you run it, you can enter a Livewire channel number, exit the cell and the multicast address is displayed. Alternately (thanks David) enter the multicast address and exit the cell to get the Livewire channel number.
Here is a screenshot of several examples.
Method 2 - The manual way
All Livewire multicast channels are in the range 239.192.X.Y or 239.193.X.Y
- Addresses 239.192.X.Y are used for Source channels
- Addresses 239.193.X.Y are used for Backfeeds (headphone feeds, mix-minus, etc)
In order to calculate, by hand, a multicast address we need to solve for X and for Y.
Where;
X = Integer value of (LivewireCh/256)
Y = LivewireCh - (X*256)
EXAMPLE
Lets assume the Livewire channel is 23501
To solve for X
X = INT (LwCH / 256) -
X = INT (23501 / 256)
X = INT (91.80078125)
X = 91
So, our address is 239.192.91.Y
Now, to solve for Y
Y = LwCH - (X*256)
Y = 23501 - (91 * 256)
Y = 23501 - 23296
Y = 205
So our final address is 239.192.91.205
FOR EXTRA CREDIT
The reverse is also true. If you find yourself with a multicast address and you want to know what the Livewire channel is you can multiply X * 256 and add Y
So using our example;
(91 * 256) + 205 = 23501