Closed crossle closed 10 years ago
Thanks for the bug report but please give a bit more context. Ideally, I need:
Thanks,
dalvikvm-heap I Clamp target GC heap from 67.821MB to 64.000MB
I Forcing collection of SoftReferences for 77208-byte allocation
I Clamp target GC heap from 67.813MB to 64.000MB
E Out of memory on a 77208-byte allocation.
dalvikvm I "AsyncTask #1" prio=5 tid=12 RUNNABLE
I | group="main" sCount=0 dsCount=0 obj=0x41c16268 self=0x5d8a2e28
I | sysTid=29879 nice=10 sched=0/0 cgrp=apps/bg_non_interactive handle=1569337984
I | state=R schedstat=( 2973449649 5915435853 8588 ) utm=250 stm=46 core=1
I at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
I at java.nio.MemoryBlock.allocate(MemoryBlock.java:125)
I at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:72)
I at com.google.android.exoplayer.hls.Packet.resizeSample(Packet.java:47)
I at com.google.android.exoplayer.parser.ts.TSExtractor$PESHandler.handlePayload(TSExtractor.java:135)
I at com.google.android.exoplayer.parser.ts.TSExtractor.readOnePacket(TSExtractor.java:393)
I at com.google.android.exoplayer.parser.ts.TSExtractor.read(TSExtractor.java:403)
I at com.google.android.exoplayer.parser.ts.TSExtractorWithParsers.read(TSExtractorWithParsers.java:37)
I at com.google.android.exoplayer.hls.HLSSampleSource$ChunkTask.doInBackground(HLSSampleSource.java:615)
I at com.google.android.exoplayer.hls.HLSSampleSource$ChunkTask.doInBackground(HLSSampleSource.java:1)
I at android.os.AsyncTask$2.call(AsyncTask.java:288)
I at java.util.concurrent.FutureTask.run(FutureTask.java:237)
I at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
I at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
I at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
I at java.lang.Thread.run(Thread.java:841)
I sure the memory have this problem.
hi, I have just reworked a bit the memory management. In addition to consume less memory, you can now override the maxBufferSize value for your application using HLSSampleSource.setMaxBufferSize().