
org.jlibrtp.RTCPAVPFIntf Maven / Gradle / Ivy
The newest version!
/**
* Java RTP Library (jlibrtp)
* Copyright (C) 2006 Arne Kepp
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
package org.jlibrtp;
/**
* This is the callback interface for the AVPF profile (RFC 4585)
*
* It is optional, you do not have to register it.
*
* If there are specific events you wish to ignore,
* you can simply implement empty functions.
*
* These are all syncrhonous, make sure to return quickly
* or do the handling in a new thread.
*
* @author Arne Kepp
*/
public interface RTCPAVPFIntf {
/**
* This function is called when a
* Picture Loss Indication (PLI, FMT = 1) is received
*
* @param ssrcPacketSender the SSRC of the participant reporting loss of picture
*/
public void PSFBPktPictureLossReceived(
long ssrcPacketSender);
/**
* This function is called when a
* Slice Loss Indication (SLI, FMT=2) is received
*
* @param ssrcPacketSender the SSRC of the participant reporting loss of slice(s)
* @param sliceFirst macroblock address of first macroblock
* @param sliceNumber number of lost macroblocks, in scan order
* @param slicePictureId the six least significant bits of the picture identifier
*/
public void PSFBPktSliceLossIndic(
long ssrcPacketSender,
int[] sliceFirst, int[] sliceNumber, int[] slicePictureId);
/**
* This function is called when a
* Reference Picture Selection Indication (RPSI, FMT=3) is received
*
* @param ssrcPacketSender the SSRC of the participant reporting the selection
* @param rpsiPayloadType the RTP payload type related to the RPSI bit string
* @param rpsiBitString the RPSI information as natively defined by the video codec
* @param rpsiPaddingBits the number of padding bits at the end of the string
*/
public void PSFBPktRefPictureSelIndic(
long ssrcPacketSender,
int rpsiPayloadType, byte[] rpsiBitString, int rpsiPaddingBits);
/**
* This function is called when a
* Transport Layer Feedback Messages is received
*
* @param ssrcPacketSender SSRC of the packet sender
* @param alfBitString message
*/
public void PSFBPktAppLayerFBReceived(
long ssrcPacketSender,
byte[] alfBitString);
/**
* This function is called when a
* Transport Layer Feedback Messages is received
*
* @param ssrcPacketSender SSRC of packet sender
* @param FMT 1: NACK, 0,2-30: unassigned, 31: reserved
* @param packetID the RTP sequence number of the lost packet
* @param bitmaskLostPackets the bitmask of following lost packets
*/
public void RTPFBPktReceived(
long ssrcPacketSender,
int FMT, int[] packetID, int[] bitmaskLostPackets);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy