I am using react-native-video. In list of videos randomly some errors related to buffer occur, here is android studio logcat:
2023-07-31 10:09:11.516 434-434/com.myprj E/ExoPlayer Exception: com.google.android.exoplayer2.ExoPlaybackException: Source error
2023-07-31 10:09:11.517 434-434/com.myprj D/ReactExoplayerView: onStateChanged: playWhenReady=true, playbackState=idle
2023-07-31 10:09:11.517 434-1232/com.myprj I/ReactNativeJS: '==>VIDEO NOT LOADED', { error:
{ error:
{ errorException: 'com.google.android.exoplayer2.ExoPlaybackException: Source error',
errorString: 'Unrecognized media format' } } }
2023-07-31 10:09:11.518 434-12385/com.myprj I/hw-BpHwBinder: onLastStrongRef automatically unlinking death recipients
2023-07-31 10:09:11.521 434-12385/com.myprj D/MediaCodec: flushMediametrics
2023-07-31 10:09:11.521 434-12385/com.myprj D/MediaCodec: flushMediametrics
2023-07-31 10:09:11.525 434-12381/com.myprj I/hw-BpHwBinder: onLastStrongRef automatically unlinking death recipients
2023-07-31 10:09:11.526 434-8306/com.myprj E/BufferQueueProducer: [MediaCodec.release](id:1b20000006c,api:3,p:434,c:434) detachBuffer: slot 0 is not owned by the producer (state = FREE)
2023-07-31 10:09:11.526 434-8306/com.myprj E/BufferQueueProducer: [MediaCodec.release](id:1b20000006c,api:3,p:434,c:434) detachBuffer: slot 1 is not owned by the producer (state = FREE)
2023-07-31 10:09:11.526 434-12380/com.myprj D/SurfaceUtils: disconnecting from surface 0xb400006f97930520, reason disconnectFromSurface
2023-07-31 10:09:11.526 434-8306/com.myprj E/BufferQueueProducer: [MediaCodec.release](id:1b20000006c,api:0,p:-1,c:434) detachBuffer: BufferQueue has no connected producer
2023-07-31 10:09:11.526 434-12380/com.myprj D/MediaCodec: flushMediametrics
2023-07-31 10:09:11.527 434-12380/com.myprj D/MediaCodec: flushMediametrics
2023-07-31 10:09:15.470 434-8305/com.myprj D/BufferPoolAccessor2.0: evictor expired: 4, evicted: 0
2023-07-31 10:09:17.472 434-8305/com.myprj D/BufferPoolAccessor2.0: bufferpool2 0xb400006ef7f35508 : 0(0 size) total buffers - 0(0 size) used buffers - 0/4 (recycle/alloc) - 3/4 (fetch/transfer)
2023-07-31 10:09:17.472 434-8305/com.myprj D/BufferPoolAccessor2.0: bufferpool2 0xb400006ef7ec21f8 : 0(0 size) total buffers - 0(0 size) used buffers - 1/6 (recycle/alloc) - 2/4 (fetch/transfer)
2023-07-31 10:09:17.472 434-8305/com.myprj D/BufferPoolAccessor2.0: evictor expired: 2, evicted: 2
and if I exit the app and again want to play that video again, it will. I don't know what is the problem, and here is my player code:
<Video
ref={inlineVideoRef}
source={fullVideoPath}
style={styles.video}
resizeMode={isFullScreen ? 'contain' : 'cover'}
onProgress={onDoProgress}
onLoad={onLoadData}
controls
onEnd={onEndTriggered}
volume={1}
muted={isMuted}
repeat={repeat}
paused={paused || !play || !isFocused}
posterResizeMode="cover"
onError={onHandleError}
poster={getFullImageUrl(poster)}
onLoadStart={onLoadStart}
fullscreen={isFullScreen}
/>