code: private void scheduleRtcp(long timestamp, RtcpPacketType packetType) {
          // Create the task and schedule it
          long interval = resolveInterval(timestamp);
          this.scheduledTask = new TxTask(packetType);
  
          try {
              this.reportTaskFuture = this.scheduler.schedule(this.scheduledTask, interval, TimeUnit.MILLISECONDS);
              // Let the RTP handler know what is the type of scheduled packet
              this.statistics.setRtcpPacketType(packetType);
          } catch (IllegalStateException e) {
              logger.warn("RTCP timer already canceled. No more reports will be scheduled.");
          }
      }
docs: Schedules an event to occur at a certain time.
  
  @param timestamp The time (in milliseconds) when the event should be fired
  @param packet The RTCP packet to be sent when the timer expires