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.

Nod to David Linder from The Jim Pattison Broadcast Group in Vancouver, B.C. for the help with improving the functionality of this 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)

Integer, which we know from math class, is a whole number. Even though 1234/256=4.8203125 the integer value is just 4

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)

Back to math class; we have to multiply before we subtract.

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