Class FrameDropEffect
- java.lang.Object
-
- com.google.android.exoplayer2.effect.FrameDropEffect
-
@Deprecated public class FrameDropEffect extends Object implements GlEffect
Deprecated.com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.Drops frames to lower average frame rate to aroundtargetFrameRate
.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static FrameDropEffect
createDefaultFrameDropEffect(float targetFrameRate)
Deprecated.Creates aFrameDropEffect
with the default frame dropping strategy.static FrameDropEffect
createSimpleFrameDropEffect(float expectedFrameRate, float targetFrameRate)
Deprecated.Creates aFrameDropEffect
that keeps every nth frame, where n is theinputFrameRate
divided by thetargetFrameRate
.GlShaderProgram
toGlShaderProgram(Context context, boolean useHdr)
Deprecated.Returns aGlShaderProgram
that applies the effect.
-
-
-
Method Detail
-
createDefaultFrameDropEffect
public static FrameDropEffect createDefaultFrameDropEffect(float targetFrameRate)
Deprecated.Creates aFrameDropEffect
with the default frame dropping strategy.The strategy used is to queue the current frame, x, with timestamp T_x if and only if one of the following is true:
- x is the first frame,
- (T_x - T_lastQueued) is closer to the target frame interval than (T_(x+1) - T_lastQueued)
Where T_lastQueued is the timestamp of the last queued frame and T_(x+1) is the timestamp of the next frame. The target frame interval is determined from
targetFrameRate
.- Parameters:
targetFrameRate
- The number of frames per second the output video should roughly have.
-
createSimpleFrameDropEffect
public static FrameDropEffect createSimpleFrameDropEffect(float expectedFrameRate, float targetFrameRate)
Deprecated.Creates aFrameDropEffect
that keeps every nth frame, where n is theinputFrameRate
divided by thetargetFrameRate
.For example, if the input stream came in at 60fps and the targeted frame rate was 20fps, every 3rd frame would be kept. If n is not an integer, then we round to the nearest one.
- Parameters:
expectedFrameRate
- The number of frames per second in the input stream.targetFrameRate
- The number of frames per second the output video should roughly have.
-
toGlShaderProgram
public GlShaderProgram toGlShaderProgram(Context context, boolean useHdr) throws VideoFrameProcessingException
Deprecated.Description copied from interface:GlEffect
Returns aGlShaderProgram
that applies the effect.- Specified by:
toGlShaderProgram
in interfaceGlEffect
- Parameters:
context
- AContext
.useHdr
- Whether input textures come from an HDR source. Iftrue
, colors will be in linear RGB BT.2020. Iffalse
, colors will be in linear RGB BT.709.- Throws:
VideoFrameProcessingException
- If an error occurs while creating theGlShaderProgram
.
-
-