google / google/ExoPlayer

Improve handling of discontinuities for TS streams

Open
#6,983 8 comments 0 reactions 1 assignee Claimed by @andrewlewis View on GitHub
enhancement low priority
Dominant language
Java
Stars
21.9k
Forks
6k
PR merge metrics
No merged PRs in 30d

Description

Exoplayer 2.11.2 (and any prev. version too)

```
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.upstream.Loader$UnexpectedLoaderException: Unexpected OutOfMemoryError: Failed to allocate a 100012 byte allocation with 66032 free bytes and 64KB until OOM
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:394)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:154)
at android.os.HandlerThread.run(HandlerThread.java:61)
Caused by: com.google.android.exoplayer2.upstream.Loader$UnexpectedLoaderException: Unexpected OutOfMemoryError: Failed to allocate a 100012 byte allocation with 66032 free bytes and 64KB until OOM
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:421)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.OutOfMemoryError: Failed to allocate a 100012 byte allocation with 66032 free bytes and 64KB until OOM
at com.google.android.exoplayer2.source.SampleQueue.commitSample(SampleQueue.java:688)
at com.google.android.exoplayer2.source.SampleQueue.sampleMetadata(SampleQueue.java:497)
at com.google.android.exoplayer2.extractor.ts.H264Reader$SampleReader.outputSample(H264Reader.java:470)
at com.google.android.exoplayer2.extractor.ts.H264Reader$SampleReader.endNalUnit(H264Reader.java:452)
at com.google.android.exoplayer2.extractor.ts.H264Reader.endNalUnit(H264Reader.java:231)
at com.google.android.exoplayer2.extractor.ts.H264Reader.consume(H264Reader.java:148)
at com.google.android.exoplayer2.extractor.ts.PesReader.consume(PesReader.java:136)
at com.google.android.exoplayer2.extractor.ts.TsExtractor.read(TsExtractor.java:338)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:982)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:391)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.