Interface VideoMediaStream

  • All Superinterfaces:
    MediaStream
    All Known Implementing Classes:
    VideoMediaStreamImpl

    public interface VideoMediaStream
    extends MediaStream
    Extends the MediaStream interface and adds methods specific to video streaming.
    Author:
    Emil Ivov, Lyubomir Marinov
    • Field Detail

      • REQUEST_RETRANSMISSIONS_PNAME

        static final String REQUEST_RETRANSMISSIONS_PNAME
        The name of the property used to control whether VideoMediaStream should request retransmissions for lost RTP packets using RTCP NACK.
    • Method Detail

      • addVideoListener

        void addVideoListener​(VideoListener listener)
        Adds a specific VideoListener to this VideoMediaStream in order to receive notifications when visual/video Components are being added and removed.

        Adding a listener which has already been added does nothing i.e. it is not added more than once and thus does not receive one and the same VideoEvent multiple times

        Parameters:
        listener - the VideoListener to be notified when visual/video Components are being added or removed in this VideoMediaStream
      • getKeyFrameControl

        KeyFrameControl getKeyFrameControl()
        Gets the KeyFrameControl of this VideoMediaStream.
        Returns:
        the KeyFrameControl of this VideoMediaStream
      • getLocalVisualComponent

        Component getLocalVisualComponent()
        Gets the visual Component, if any, depicting the video streamed from the local peer to the remote peer.
        Returns:
        the visual Component depicting the local video if local video is actually being streamed from the local peer to the remote peer; otherwise, null
      • getQualityControl

        QualityControl getQualityControl()
        Gets the QualityControl of this VideoMediaStream.
        Returns:
        the QualityControl of this VideoMediaStream
      • getVisualComponent

        @Deprecated
        Component getVisualComponent()
        Deprecated.
        Since multiple videos may be received from the remote peer and rendered, it is not clear which one of them is to be singled out as the return value. Thus getVisualComponent(long) and getVisualComponents() are to be used instead.
        Gets the visual Component where video from the remote peer is being rendered or null if no video is currently being rendered.
        Returns:
        the visual Component where video from the remote peer is being rendered or null if no video is currently being rendered
      • getVisualComponent

        Component getVisualComponent​(long ssrc)
        Gets the visual Component rendering the ReceiveStream with a specific SSRC.
        Parameters:
        ssrc - the SSRC of the ReceiveStream to get the associated rendering visual Component of
        Returns:
        the visual Component rendering the ReceiveStream with the specified ssrc if any; otherwise, null
      • getVisualComponents

        List<Component> getVisualComponents()
        Gets a list of the visual Components where video from the remote peer is being rendered.
        Returns:
        a list of the visual Components where video from the remote peer is being rendered
      • movePartialDesktopStreaming

        void movePartialDesktopStreaming​(int x,
                                         int y)
        Move origin of a partial desktop streaming MediaDevice.
        Parameters:
        x - new x coordinate origin
        y - new y coordinate origin
      • removeVideoListener

        void removeVideoListener​(VideoListener listener)
        Removes a specific VideoListener from this VideoMediaStream in order to have to no longer receive notifications when visual/video Components are being added and removed.
        Parameters:
        listener - the VideoListener to no longer be notified when visual/video Components are being added or removed in this VideoMediaStream
      • updateQualityControl

        void updateQualityControl​(Map<String,​String> advancedParams)
        Updates the QualityControl of this VideoMediaStream.
        Parameters:
        advancedParams - parameters of advanced attributes that may affect quality control