Skip to content
Snippets Groups Projects
Commit d2f169a1 authored by Lyubomir Marinov's avatar Lyubomir Marinov
Browse files

When relaying RTP, routes RTCP Feedback Messages to their indicated recepient only.

parent 9213322e
Branches
No related tags found
No related merge requests found
......@@ -90,10 +90,10 @@ public static void fireRTCPFeedbackReceived(
|| (pt == RTCPFeedbackEvent.PT_TL))
{
int fmt = buffer[offset] & 0x1F;
RTCPFeedbackEvent evt = new RTCPFeedbackEvent(source, fmt, pt);
RTCPFeedbackEvent ev = new RTCPFeedbackEvent(source, fmt, pt);
for (RTCPFeedbackListener l : listeners)
l.rtcpFeedbackReceived(evt);
l.rtcpFeedbackReceived(ev);
}
}
}
......
......@@ -28,12 +28,12 @@ public class RTCPFeedbackPacket
/**
* SSRC of packet sender.
*/
private long senderSSRC = 0;
private final long senderSSRC;
/**
* SSRC of media source.
*/
private long sourceSSRC = 0;
private final long sourceSSRC;
/**
* Constructor.
......
This diff is collapsed.
......@@ -158,7 +158,7 @@ private static Component getVisualComponent(Player player)
* A list with RTCPFeedbackCreateListener which will be notified when
* a RTCPFeedbackListener is created.
*/
private List<RTCPFeedbackCreateListener> rtcpFeedbackCreateListners
private List<RTCPFeedbackCreateListener> rtcpFeedbackCreateListeners
= new LinkedList<RTCPFeedbackCreateListener>();
/**
......@@ -201,9 +201,9 @@ public VideoMediaDeviceSession(AbstractMediaDevice device)
public void addRTCPFeedbackCreateListner(
RTCPFeedbackCreateListener listener)
{
synchronized (rtcpFeedbackCreateListners)
synchronized (rtcpFeedbackCreateListeners)
{
rtcpFeedbackCreateListners.add(listener);
rtcpFeedbackCreateListeners.add(listener);
}
if (encoder != null)
......@@ -1411,9 +1411,9 @@ private void playerVisualComponentResized(
public void removeRTCPFeedbackCreateListner(
RTCPFeedbackCreateListener listener)
{
synchronized (rtcpFeedbackCreateListners)
synchronized (rtcpFeedbackCreateListeners)
{
rtcpFeedbackCreateListners.remove(listener);
rtcpFeedbackCreateListeners.remove(listener);
}
}
......@@ -1685,9 +1685,9 @@ protected Format setProcessorFormat(
this.encoder = encoder;
onRTCPFeedbackCreate(encoder);
synchronized (rtcpFeedbackCreateListners)
synchronized (rtcpFeedbackCreateListeners)
{
for (RTCPFeedbackCreateListener l : rtcpFeedbackCreateListners)
for (RTCPFeedbackCreateListener l : rtcpFeedbackCreateListeners)
l.onRTCPFeedbackCreate(encoder);
}
......
......@@ -50,8 +50,11 @@ public void addRTCPFeedbackListener(RTCPFeedbackListener listener)
{
if (listener == null)
throw new NullPointerException("listener");
if(!listeners.contains(listener))
listeners.add(listener);
synchronized (listeners)
{
if (!listeners.contains(listener))
listeners.add(listener);
}
}
/**
......@@ -61,7 +64,13 @@ public void addRTCPFeedbackListener(RTCPFeedbackListener listener)
*/
public void removeRTCPFeedbackListener(RTCPFeedbackListener listener)
{
listeners.remove(listener);
if (listener != null)
{
synchronized (listeners)
{
listeners.remove(listener);
}
}
}
/**
......
......@@ -24,4 +24,3 @@ public interface RTCPFeedbackListener
*/
public void rtcpFeedbackReceived(RTCPFeedbackEvent event);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment