All pastes #356423 Raw Edit

Something

public text v1 · immutable
·published 2007-02-15 02:13 UTC
rendered paste body
class timerListener implements ActionListener {
    public void actionPerformed(ActionEvent e) {
         	
      //Construct a DatagramPacket to receive data from the UDP socket
      rcvdp = new DatagramPacket(buf, buf.length);

      try{
	//receive the DP from the socket:
	RTPsocket.receive(rcvdp);
	
	//create an RTPpacket object from the DP
	RTPpacket rtp_packet = new RTPpacket(rcvdp.getData(), rcvdp.getLength());

	/*Fix for funky server!!!
	 * only process packets that are in order
	 * 
	 */
	
	//increment packet count	
	if(rtp_packet.getsequencenumber() > prev_seqnb) {
		
		prev_seqnb = rtp_packet.getsequencenumber();
		
		//print important header fields of the RTP packet received: 
		System.out.println("Got RTP packet with SeqNum # "+rtp_packet.getsequencenumber()+" TimeStamp "+rtp_packet.gettimestamp()+" ms, of type "+rtp_packet.getpayloadtype());
	
		//print header bitstream:
		rtp_packet.printheader();

		//get the payload bitstream from the RTPpacket object
		int payload_length = rtp_packet.getpayload_length();
		byte [] payload = new byte[payload_length];
		rtp_packet.getpayload(payload);
		
		
		
		//get an Image object from the payload bitstream
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		Image image = toolkit.createImage(payload, 0, payload_length);
		
		//display the image as an ImageIcon object
		icon = new ImageIcon(image);
		iconLabel.setIcon(icon);
	}
	else
		System.out.println("\n***Packet with SeqNum#: "+rtp_packet.getsequencenumber() +" dropped!***\n");
      	
      }
      	catch (InterruptedIOException iioe){
      		//System.out.println("Nothing to read");
      	}
      	catch (IOException ioe) {
      		System.out.println("Exception caught(timer): "+ioe);
      }
    }
  }