code: public void bind(boolean isLocal, boolean rtcpMux) throws IOException, IllegalStateException {
  		this.rtpChannel.bind(isLocal, rtcpMux);
  		if(!rtcpMux) {
  			this.rtcpChannel.bind(isLocal, this.rtpChannel.getLocalPort() + 1);
  		}
  		this.rtcpMux = rtcpMux;
  		
  		if(logger.isDebugEnabled()) {
  			logger.debug(this.mediaType + " RTP channel " + this.ssrc + " is bound to " + this.rtpChannel.getLocalHost() + ":" + this.rtpChannel.getLocalPort());
  			if(rtcpMux) {
  				logger.debug(this.mediaType + " is multiplexing RTCP");
  			} else {
  				logger.debug(this.mediaType + " RTCP channel " + this.ssrc + " is bound to " + this.rtcpChannel.getLocalHost() + ":" + this.rtcpChannel.getLocalPort());
  			}
  		}
  	}
docs: Binds the RTP and RTCP components to a suitable address and port.
  
  @param isLocal
  Whether the binding address is in local range.
  @param rtcpMux
  Whether RTCP multiplexing is supported.<br>
  If so, both RTP and RTCP components will be merged into one
  channel only. Otherwise, the RTCP component will be bound to
  the odd port immediately after the RTP port.
  @throws IOException
  When channel cannot be bound to an address.