Package org.webrtc

Class RtpSender

java.lang.Object
org.webrtc.RtpSender

public class RtpSender extends Object
Java wrapper for a C++ RtpSenderInterface.
  • Field Details

    • nativeRtpSender

      private long nativeRtpSender
    • cachedTrack

      @Nullable private MediaStreamTrack cachedTrack
    • ownsTrack

      private boolean ownsTrack
    • dtmfSender

      @Nullable private final DtmfSender dtmfSender
  • Constructor Details

    • RtpSender

      public RtpSender(long nativeRtpSender)
  • Method Details

    • setTrack

      public boolean setTrack(@Nullable MediaStreamTrack track, boolean takeOwnership)
      Starts sending a new track, without requiring additional SDP negotiation.

      Note: This is equivalent to replaceTrack in the official WebRTC API. It was just implemented before the standards group settled on a name.

      Parameters:
      takeOwnership - If true, the RtpSender takes ownership of the track from the caller, and will auto-dispose of it when no longer needed. `takeOwnership` should only be used if the caller owns the track; it is not appropriate when the track is owned by, for example, another RtpSender or a MediaStream.
      Returns:
      true on success and false on failure.
    • track

      @Nullable public MediaStreamTrack track()
    • setStreams

      public void setStreams(List<String> streamIds)
    • getStreams

      public List<String> getStreams()
    • setParameters

      public boolean setParameters(RtpParameters parameters)
    • getParameters

      public RtpParameters getParameters()
    • id

      public String id()
    • dtmf

      @Nullable public DtmfSender dtmf()
    • setFrameEncryptor

      public void setFrameEncryptor(FrameEncryptor frameEncryptor)
    • dispose

      public void dispose()
    • getNativeRtpSender

      long getNativeRtpSender()
      Returns a pointer to webrtc::RtpSenderInterface.
    • checkRtpSenderExists

      private void checkRtpSenderExists()
    • nativeSetTrack

      private static boolean nativeSetTrack(long rtpSender, long nativeTrack)
    • nativeGetTrack

      private static long nativeGetTrack(long rtpSender)
    • nativeSetStreams

      private static void nativeSetStreams(long rtpSender, List<String> streamIds)
    • nativeGetStreams

      private static List<String> nativeGetStreams(long rtpSender)
    • nativeGetDtmfSender

      private static long nativeGetDtmfSender(long rtpSender)
    • nativeSetParameters

      private static boolean nativeSetParameters(long rtpSender, RtpParameters parameters)
    • nativeGetParameters

      private static RtpParameters nativeGetParameters(long rtpSender)
    • nativeGetId

      private static String nativeGetId(long rtpSender)
    • nativeSetFrameEncryptor

      private static void nativeSetFrameEncryptor(long rtpSender, long nativeFrameEncryptor)