Interface KeyFrameControl
-
- All Known Implementing Classes:
KeyFrameControlAdapter
public interface KeyFrameControlRepresents a control over the key frame-related logic of a VideoMediaStream.- Author:
- Lyubomir Marinov
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceKeyFrameControl.KeyFrameRequesteeRepresents a way for the remote peer of a VideoMediaStream to request a key frame from its local peer.static interfaceKeyFrameControl.KeyFrameRequesterRepresents a way for a VideoMediaStream to request a key frame from its remote peer.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddKeyFrameRequestee(int index, KeyFrameControl.KeyFrameRequestee keyFrameRequestee)Adds a KeyFrameRequestee to be made available through this KeyFrameControl.voidaddKeyFrameRequester(int index, KeyFrameControl.KeyFrameRequester keyFrameRequester)Adds a KeyFrameRequester to be made available through this KeyFrameControl.List<KeyFrameControl.KeyFrameRequestee>getKeyFrameRequestees()Gets the KeyFrameRequestees made available through this KeyFrameControl.List<KeyFrameControl.KeyFrameRequester>getKeyFrameRequesters()Gets the KeyFrameRequesters made available through this KeyFrameControl.booleankeyFrameRequest()Notifies this KeyFrameControl that the remote peer of the associated VideoMediaStream has requested a key frame from the local peer.booleanremoveKeyFrameRequestee(KeyFrameControl.KeyFrameRequestee keyFrameRequestee)Removes a KeyFrameRequestee to no longer be made available through this KeyFrameControl.booleanremoveKeyFrameRequester(KeyFrameControl.KeyFrameRequester keyFrameRequester)Removes a KeyFrameRequester to no longer be made available through this KeyFrameControl.booleanrequestKeyFrame(boolean urgent)Requests a key frame from the remote peer of the associated VideoMediaStream.
-
-
-
Method Detail
-
addKeyFrameRequestee
void addKeyFrameRequestee(int index, KeyFrameControl.KeyFrameRequestee keyFrameRequestee)Adds a KeyFrameRequestee to be made available through this KeyFrameControl.- Parameters:
index- the zero-based index at which keyFrameRequestee is to be added to the list of KeyFrameRequestees made available or -1 to have this KeyFrameControl choose at which index it is to be added in accord with its internal logic through this KeyFrameControlkeyFrameRequestee- the KeyFrameRequestee to be added to this KeyFrameControl so that it is made available through it
-
addKeyFrameRequester
void addKeyFrameRequester(int index, KeyFrameControl.KeyFrameRequester keyFrameRequester)Adds a KeyFrameRequester to be made available through this KeyFrameControl.- Parameters:
index- the zero-based index at which keyFrameRequester is to be added to the list of KeyFrameRequesters made available or -1 to have this KeyFrameControl choose at which index it is to be added in accord with its internal logic through this KeyFrameControlkeyFrameRequester- the KeyFrameRequester to be added to this KeyFrameControl so that it is made available through it
-
getKeyFrameRequestees
List<KeyFrameControl.KeyFrameRequestee> getKeyFrameRequestees()
Gets the KeyFrameRequestees made available through this KeyFrameControl.- Returns:
- an unmodifiable list of KeyFrameRequestees made available through this KeyFrameControl
-
getKeyFrameRequesters
List<KeyFrameControl.KeyFrameRequester> getKeyFrameRequesters()
Gets the KeyFrameRequesters made available through this KeyFrameControl.- Returns:
- an unmodifiable list of KeyFrameRequesters made available through this KeyFrameControl
-
keyFrameRequest
boolean keyFrameRequest()
Notifies this KeyFrameControl that the remote peer of the associated VideoMediaStream has requested a key frame from the local peer.- Returns:
- true if the local peer has honored the request from the remote peer for a key frame; otherwise, false
-
removeKeyFrameRequestee
boolean removeKeyFrameRequestee(KeyFrameControl.KeyFrameRequestee keyFrameRequestee)
Removes a KeyFrameRequestee to no longer be made available through this KeyFrameControl.- Parameters:
keyFrameRequestee- the KeyFrameRequestee to be removed from this KeyFrameControl so that it is no longer made available through it- Returns:
- true if keyFrameRequestee was found in this KeyFrameControl; otherwise, false
-
removeKeyFrameRequester
boolean removeKeyFrameRequester(KeyFrameControl.KeyFrameRequester keyFrameRequester)
Removes a KeyFrameRequester to no longer be made available through this KeyFrameControl.- Parameters:
keyFrameRequester- the KeyFrameRequester to be removed from this KeyFrameControl so that it is no longer made available through it- Returns:
- true if keyFrameRequester was found in this KeyFrameControl; otherwise, false
-
requestKeyFrame
boolean requestKeyFrame(boolean urgent)
Requests a key frame from the remote peer of the associated VideoMediaStream.- Parameters:
urgent- true if the caller has determined that the need for a key frame is urgent and should not obey all constraints with respect to time between two subsequent requests for key frames- Returns:
- true if a key frame was indeed requested from the remote peer of the associated VideoMediaStream in response to the call; otherwise, false
-
-