media/libraries
claincly dba9d81640 Destroy eglSurface in FrameProcessor
Previously, FrameProcessor never had the usecase in which the output surface
is replaced, while previewing introduced this usecase.

When switching output surfaces, we need to destroy the EGL Surface linked to the
surface that is being swapped out, because an EGL surface is linked to the EGL
display (which is not destroyed even when releasing FrameProcessor).

A GL exception will be thrown in the following scenario if we don't destroy the
EGL surface:

1. Creates a Surface, the surface is identified by address 0x11
2. Sets Surface(0x11) on FrameProcessor. Eventually an EGL surface is created
  to wrap Surface(0x11)
3. Release FrameProcess, this releases the EGL context
4. Instantiate a new FrameProcessor, sets Surface(0x11) as the output
5. When FrameProcessor creates an EGL surface to wrap Surface(0x11), GL throws
  an exception, becasue Surface(0x11) has previouly been connected to an EGL
  surface.

PiperOrigin-RevId: 489590072
2022-11-22 10:06:58 +00:00
..
cast Rename getVideoSurfaceSize to getSurfaceSize 2022-11-16 12:15:05 +00:00
common Destroy eglSurface in FrameProcessor 2022-11-22 10:06:58 +00:00
database Mark all non-public IntDefs as only TYPE_USE 2022-02-21 16:56:36 +00:00
datasource Fix instrumentation tests not working via Gradle 2022-09-30 18:03:11 +00:00
datasource_cronet Handle buffers in DefaultAudioSink with AudioProcessingPipeline. 2022-11-16 12:07:58 +00:00
datasource_okhttp Annotate methods that always return this with @CanIgnoreReturnValue 2022-08-08 07:55:25 +00:00
datasource_rtmp Annotate methods that always return this with @CanIgnoreReturnValue 2022-08-08 07:55:25 +00:00
decoder Expect PresentationTime Discontinuity During Stream Transitions 2022-04-26 14:21:36 +01:00
decoder_av1 Fix Dackka parameter name error in Gav1Decoder and VpxDecoder 2022-11-10 14:48:37 +00:00
decoder_ffmpeg Fix Dackka/Metalava errors in av1, flac, ffmpeg, midi, and opus modules 2022-11-10 14:44:16 +00:00
decoder_flac Fix Dackka/Metalava errors in av1, flac, ffmpeg, midi, and opus modules 2022-11-10 14:44:16 +00:00
decoder_opus Remove @hide javadoc annotation from ExoPlayer GitHub 2022-11-22 09:58:02 +00:00
decoder_vp9 Fix Dackka parameter name error in Gav1Decoder and VpxDecoder 2022-11-10 14:48:37 +00:00
effect Destroy eglSurface in FrameProcessor 2022-11-22 10:06:58 +00:00
exoplayer Pass correct frame size for passthrough playback 2022-11-22 10:01:43 +00:00
exoplayer_dash Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 14:56:54 +00:00
exoplayer_hls Refactor transformation completion 2022-11-22 09:44:47 +00:00
exoplayer_ima Refactor transformation completion 2022-11-22 09:44:47 +00:00
exoplayer_rtsp Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 14:56:54 +00:00
exoplayer_smoothstreaming Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 14:56:54 +00:00
exoplayer_workmanager Reformat some javadoc 2022-02-18 14:54:02 +00:00
extractor Handle buffers in DefaultAudioSink with AudioProcessingPipeline. 2022-11-16 12:07:58 +00:00
session Mark broadcast receivers as not exported 2022-11-22 09:54:45 +00:00
test_data Docs: Update broken bitmap test README link. 2022-11-14 17:53:47 +00:00
test_exoplayer_playback Fix instrumentation tests not working via Gradle 2022-09-30 18:03:11 +00:00
test_session_common Align PlaybackStateCompat states with logic in MediaSessionConnector 2022-11-10 14:58:06 +00:00
test_session_current Load bitmaps for MediaBrowserCompat. 2022-11-22 09:53:40 +00:00
test_utils Refactor transformation completion 2022-11-22 09:44:47 +00:00
test_utils_robolectric Throw exception if a released player is passed to TestPlayerRunHelper 2022-11-22 09:59:05 +00:00
transformer Build TransformationResult only when transformation succeeded 2022-11-22 10:04:56 +00:00
ui Mark broadcast receivers as not exported 2022-11-22 09:54:45 +00:00
ui_leanback Refactor transformation completion 2022-11-22 09:44:47 +00:00