code: public static RtcpPacket buildReport(RtpStatistics statistics) {
  		// TODO Validate padding
  		boolean padding = false;
  		
  		// Build the initial report packet
  		RtcpReport report; 
  		if(statistics.hasSent()) {
  			report = buildSenderReport(statistics, padding);
  		} else {
  			report = buildReceiverReport(statistics, padding);
  		}
  		
  		// Build the SDES packet containing the CNAME
  		RtcpSdes sdes = buildSdes(statistics, padding);
  		
  		// Build the compound packet
  		return new RtcpPacket(report, sdes);
  	}
docs: Builds a packet containing an RTCP Report.
  
  RTP receivers provide reception quality feedback using RTCP report
  packets which may take one of two forms depending upon whether or not the
  receiver is also a sender. The only difference between the sender report
  (SR) and receiver report (RR) forms, besides the packet type code, is
  that the sender report includes a 20-byte sender information section for
  use by active senders. The SR is issued if a site has sent any data
  packets during the interval since issuing the last report or the previous
  one, otherwise the RR is issued.
  
  Both the SR and RR forms include zero or more reception report blocks,
  one for each of the synchronization sources from which this receiver has
  received RTP data packets since the last report. Reports are not issued
  for contributing sources listed in the CSRC list. Each reception report
  block provides statistics about the data received from the particular
  source indicated in that block.
  
  Since a maximum of 31 reception report blocks will fit in an SR or RR
  packet, additional RR packets SHOULD be stacked after the initial SR or
  RR packet as needed to contain the reception reports for all sources
  heard during the interval since the last report. If there are too many
  sources to fit all the necessary RR packets into one compound RTCP packet
  without exceeding the MTU of the network path, then only the subset that
  will fit into one MTU SHOULD be included in each interval. The subsets
  SHOULD be selected round-robin across multiple intervals so that all
  sources are reported.
  
  @param statistics
  The statistics of the RTP session
  @return The RTCP packet containing the RTCP Report (SS or RR).